The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Выпуск игры Free Heroes of Might and Magic II (fheroes2) - 0..."
Отправлено Ordu, 06-Окт-21 15:10 
> В экспериментальных настройках есть опция повторяемости битв, которую мы добавили по желаниям
> пользователей.

Круто! Но, только битв? Я вроде даже видел это, сложно сказать, я не регулярно играю. Помню, что в fheroes2 удвоение мобов работало рандомом: если оно причиняет неудобств, можно грузануться с сейва, и избежать его. Может для этого надо было, после загрузки с сейва лишний раз дёрнуть генератор случайных чисел, каким-нибудь игровым способом -- я не выяснял, но я сталкивался с тем, что вот оно есть, а вот хоп и нету.

Лет двадцать назад, когда конкретно зависал в homm2, очень серьёзно исследовал как там работает save/load (не то, чтоб намеренно исследовал: я просто использовал save&load для решения игровых задач) и пришёл к выводу, что он сохраняет несколько состояний rnd. Точно свои находки я не воспроизведу, но, предположу, что у них один для битв, один для всего мира, и у каждого из AI свой собственный генератор. То есть, ежели я грузанулся с сейва, и точно так же или как-то иначе свой ход сделал, то AI будет делать то же самое, что он делал в первый раз, его поведение может измениться только если я изменил видимые ему свойства мира, типа побольше/поменьше армии к нему подтащил. Если же разные альтернативные развития ситуации выглядят для него одинаково, то он будет вести себя одинаково в них. Уж не знаю, есть ли у каждого грибочка, под которым рандомные ресурсы генерятся, своё собственное состояние генератора, но я не удивлюсь, если да. Хотя не, если ресурсы под грибочком генерить не тогда, когда туда игрок заглядывает, а на стыке недель, и пользовать для этого генератор, который вообще никак не зависит от действий пользователя (мировой), то будет работать как надо: последовательность генерящихся ресурсов хоть и будет детерминированной для данной игры, таким образом независимой от пользователя, вооружённого save&load'ом, но всё же недетерминированной в том смысле, что опыт предыдущих игр на этой карте не говорит ничего о том, что на этой неделе вывалится из-под грибочка.

Но мне кажется, что все эти сложности решаются проще, не обязательно заводить и тщательно продумывать сохранение множественных состояний генераторов псевдослучайных чисел, можно добавленить режим IronMan: сейв удаляется после загрузки с него; а вместо двух кнопок "Save" и "Quit" одна кнопка "Save&Quit". Мне очень нравится этот режим, потому что я слабовольный игроман, и если я вижу действенность save-load'а, то мне не удержаться от эксплуатации этой тактики. Как я не пытаюсь себя ограничивать, всё кончается тем, что, совершив какую-нибудь совсем уж глупость, я говорю "это не считается", гружусь с сейва, и потом по нарастающей начинается -- всё большее количество моих провалов попадают в категорию "не считается".

IronMan можно обойти копируя файлы сейвов, но это уже само по себе добавляет порог сложности для реализации save&load'а, которого может быть достаточно, чтобы помочь слабой воле воздержаться от save&load'а. Это какая-то сложная психология в работе, но для меня она работает.

> К удобствам хочу добавить удобства сортировки войск. В оригинале это
> жалкое меню с двумя стрелочками так удручало... У нас и скроллинг
> работает тоже. :)

О, да. Это тоже. Возможность поделить войска не несколько равных частей -- офигенно, в оригинале я часто забивал на это, потому что влом было. Или не объединял, когда надо, чтобы потом снова не делить. Но... То есть не, я соглашусь, свести преимущества fheroes2 перед homm2 к чему-то одному невозможно: множество мелочей, которые может и несущественны, взятые по-отдельности, но кумулятивный их эффект бесспорно существенен.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру