Как стать автором
Обновить

Комментарии 37

Тут ещё есть такая тонкость, как не только соответствие игровых событий цифрам, но и соответствие цифр здравому смыслу.
Когда в XCOM штурмовик (с использованием всех возможных перков) делает подряд 4 выстрела из дробовика в цель размером с автобус, стоящую на соседней клетке, и ни разу не попадает, то всем пофиг на то, что это вписывается в «вероятность попадания 70%».
Сюда ещё можно добавить несоответствие визуальной анимации пролетария пули сквозь цель, но фиксацию промаха в логах.
НЛО прилетело и опубликовало эту надпись здесь
А еще в последнем XCOM вшито динамическое изменение сложности: при идеальном прохождении ваши бойцы начинают чаще промахиваться, а враги чаще попадать. Но если вы играете плохо (обратная ситуация), то игра начинает вам «подыгрывать».
С меткостью кстати не все так просто. Меня игроки для моего рогалика долго просили добавить меткость и шанс промаха. Но когда я подумал на эту тему, я увидел всего две альтернативы, и обе мне не понравились:

1. Начальная меткость довольно низкая. Имеется широкое поле для прокачки персонажей и ее апгрейда (что хорошо), но получаем описанную вами ситуацию — когда в начале игры вроде бы тренированные спецназовцы не могут в упор попасть в крысу из пистолета. Что меня тоже адово бесило в играх где такое было сделано.
2. Начальная меткость высокая. Но тогда не получится ее прокачивать. Если в начале игры у персонажей меткость уже около 80-90%, то у нас остается очень мало процентов, которые можно добить скиллами или предметами. Неинтересно получается, характеристика есть, а качать ее нельзя (или почти бесполезно).

В итоге и непонятно, как лучше быть.
ИМХО, меткость должна работать более широко, чем просто попал-не попал. Должен быть ещё и случайный множитель урона. Плюс должна зависеть не только от расстояния и препятствий, но от типа оружия. Это будет обыгрывать и то, что не каждое попадание наносит существенный урон цели, и отражать особенности оружия.
Например:
снайперская винтовка — шанс промаха на оптимальной дистанции 20%, но зато большой урон и высокий шанс крита (или ваншота)
дробовик — на оптимальной дистанции шанс промаха 5%, но и в 70% урон пройдёт лишь частично, а шанс крита очень низок
огнемёт — 100% попадание, 100% урон, но без критов и можно зацепить себя, если цель слишком близко
что-то типа того.
И конечно оно должно напрямую зависеть от размера и скорости врагов. Попасть в крысу (реалистичного размера) из пистолета на самом деле довольно сложно, но вот в слона из дробовика шанс должен быть 100%.
Я в некоторых новых играх видел, когда меткость влияла только на разброс урона. Так что тоже вариант.
(1-0.7)^4=0.0081
Если ты за прохождение делал такое 100 раз, то шанс увидеть такое хотя бы один раз 1-(1-((1-0.7)^4))^100)=0.55
В ХСОМ много испытаний и там гарантированно будут безумные совпадания.

Более того, если у ты обсуждаешь это на форуме где еще 10 человек, которые играли в ХСОМ, то это увеличивает силу невероятного еще в 10 раз. Шанс того что ты услышишь совершенно невероятную историю о том что штурмовик за два хода сделал 6 выстрелов с шансом 70% и все промахи, будет равно 51%.
Ни кто не спорит что при вероятности попадания в 70% это возможно. Вопрос в том какого фига вероятность попасть в рядом стоящий автобус из дробовика всего лишь 70%.
Автобус живой и не хочет быть застреленным, поэтому у него есть шанс отбить ствол оружия в сторону или уклониться или перекатиться за укрытие.

Можно еще поставить мод Long War (куча всего, в том числе разрешает 100% точность) и поставить галочку угловой размер, который увеличивает шанс попасть поблизости.
В таком случае я хочу видеть, как противник отбивает ствол оружия в сторону, уклоняется или перекатывается за укрытие. Видеть как спецназовец мажет в упор по неподвижному противнику я не хочу.
Как это не прискорбно, но разработчики основные силы бросили на визуальную часть, а не на физику и мелкие детали. И выиграли от этого, что уже хорошо, так как такая реализация лучше похороненной франшизы.
в Fallout 4 есть подобное, недавно наткнулся
Про определяемый действиями игрока исход, вспомнилось, как наткнулся на дыру в одном из генераторов Diablo 2. База выпадающих из стоек с оружием/броней предметов определялась действиями игрока после входа на карту, и можно было без проблем подобрать маршрут, который обеспечивал нужный вид вещи в подавляющем большинстве случаев. Правда там явно работало несколько генераторов, так что повлиять на то, будет вещь обычной, магической и т.д. было нельзя.
Но для реалтаймовой и динамичной игры с достаточно глубокой механикой, даже удивительно, что возможность элементарной эксплуатации ГСЧ можно было наткнуться в процессе обычной игры, а не при углубленном ковырянии в механике.
Не знаю почему, но в голове сразу всплыла Lineage 2 со своим «генератором случайностей»
от параметра accuracy зависела вся физ.атака у героев, от значений в одну-две-три единицы была огромная зависимость в попаданиях. Там сдвиг исчислялся для игрока в единицах по факту в % и больших, или же это мои — Ошибочные допущения в оценке вероятностей? =)
НЛО прилетело и опубликовало эту надпись здесь
Этой статье явно не хватает комментариев Wargaming по поводу теории заговора. Надеюсь что хотя бы лет через 10-20 когда/если игра закроется они поделятся информацией о своих манипуляциях с генератором случайных чисел.
В Sacred были случайные награды за сдачу квестов — вещь от мусорного до легендарного качества. Наткнулся случайно, когда кот сел на клавишу быстрой загрузки и я за квест получил совсем другую вещь, не ту, что минуту назад.
После этого прохождение игры стало очень простым.
Ага) Боевой маг, ледяные осколки и призрачный луг. У других персонажей нет смысла слишком высоко вкачивать навык, потому что катастрофически растёт кулдаун. А у боевого мага призрачный луг кулдаун уменьшает.
Если я правилно помню, там была система, которая повышала шанс выпадения хороших предметов со временем, и сбрасывала добавочную вероятность после получения. Помню еще, что на старте игры, если не учить руны по первому времени, то они начинали чаще падать.
Вероятность выпадения рун зависела от количества уже имеющихся рун. Поэтому ради максимального задротства имело смысл сначала просто побегать, а потом сдавать квесты.
Проще нового персонажа создать, а потом передать руны через сетевую игру. Еще их дублировать можно, но это уже читерство.
Когда я играл в сейкред, о сетевой игре я мог лишь только мечтать)
Так напарник-то и не нужен, можно одному играть. Там весь фокус в том, что при сетевом прохождении кампании можно независимо загружать и сохранять мир и героев.

Просто выкидываем первым героем все руны на землю, сохраняемся, заходим в это сохранение вторым героем и подбираем их. Можно загружать сохранение несколько раз…
Где ж ты был 15 лет назад?
Помимо использования честного генератора (пусть и с подстройкой), можно вообще
сгенерировать последовательности результатов случайных действий, заранее их «причесать» (то есть пройтись по ним, вычистить из них всякие бесячие вещи типа двух промахов подряд) и зашить в игру просто в виде массива констант. Это такой промежуточный вариант между 3 и 4.

Вспоминается еще пример из какой-то HOMM, где у призраков был большой шанс уклониться от атаки, что делало их убийство довольно нетривиальным. Но в механике игры было зашито что трех уклонений подряд быть не может, если призраки уклонились два раза то третий удар 100% пройдет. Игроки быстро начали это абьюзить — брали много мелких стеков слабых юнитов, били призраков пока не получали два промаха подряд, затем били их основным мощным стеком со 100% шансом уничтожения.
НЛО прилетело и опубликовало эту надпись здесь

Стоило бы воспользоваться простейшими знаниями теории вероятности, есть формула Бернулли

Не нравится, когда в играх корректируют «случайности» по принципу если шанс выпадения предмета 10%, значит на сотку случаев будет десять выпадений.
Теряется весь смысл этой случайности, исчезает бесконечность возможных вариантов развития событий (пять предметов подряд, или ноль на длительной серии).

Но для казуалов это заходит, такой «рандом» они считают правильным.

Вариант подобного "подкорректированного" случайного исхода есть в игре Годвилль.


Во время дуэли влияния игроков (атаки или лечилки) сгруппированы в блоки. Внутри блока гарантируется осечка ровно одного влияния.


Допустим, блок из 6 влияний — 5 из них гарантированно сработает, одно даст осечку (это может быть как самое первое, так и самое последнее — случайным образом, но всегда строго одно).


Это делает игровую механику более интересной, так как исход можно отчасти просчитать (и использовать против соперника) — по сравнению с честным рандомом.

Есть еще один вариант.

if( меткость > состояниезащиты) {состояниезащиты += уклонение; нанестидамаг;}
else {состояниезащиты -=меткость; показатьуклонение;}

Тут вообще нет рандома, очень просто, и дает равномерные легко просчитываемые шансы. В некоторых играх встречал. Обозвать могут «шансом» или честно указать как фичу.
Это такой запас уклонения (или выносливости).
Сам задумываюсь уже довольно давно воспользоваться таким.

Можете вспомнить пару игр с такой механикой? Вы бы мне очень помогли, это будет отличным дополнением к следующей статье.
Это есть в Path of Exile, механика evasion, правда там еще много чего намешано.
И еще вроде в Диабло 2 было, механика брони. Других игр не могу вспомнить.

В ПоЕ начальное состояниезащиты равно уклонению, и если у врага точность меньше твоего уклонения ты получаеш гарантированное уклонение, иначе гарантированный хит. Если уклонение у тебя больше в N раз, то N первых ударов в уклонение уходит, а потом получаешь урон. Если уклонение у тебя меньше в N раз, N первых ударов наносит урон, а потом уклонение. Счетчик состояниезащиты сбрасывается через 4 секунды без получаемый ударов.
В долгой битве (точностьврага/(точностьврага+уклонение))=%полученныхударов

Довольно интересная механика, позволяющая стратегии вроде наскочил-ударил-отскочил. Правда в ПвП неочень, дает очень сильный бонус быстрым и вертлявым, они становятся неуязвимыми.

Можно поиграться с начальным значением состояниезащиты,
если 0 то первый удар всегда проходит
если равно уклонению, то по выше описанному сценарию
если равно Х, то при меткости выше Х, то первый удар всегда проходит, иначе всегда промах.
Весьма оригинальный способ ухода от проблем случайной меткости.
Так реализована удача/мораль в онлайн игре «Герои войны и денег».
В итоге, например, прокачав удачу, будешь ее получать строго через раз (и это описано в правилах как фича)
5% получения критического урона он NPC врага — маловероятно, риск можно игнорировать;
1% риск падения сосульки, если пройти под крышей с капающими метровыми сосульками — ещё чего, лучше обойти с другой стороны тротуара;

Если сосулька упадёт, то сделать load saved game не получится. :(
Так она зато промахнуться может. Или броню не пробить.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории