Концепция
Первоначальной целью было научиться играть на шаблонах Jebus Cross/Jebus Outcast в Heroes III. Тем не менее, выступление против реального соперника или участие в рейтинговой игре может быть сложной задачей и требует определенных усилий. Для новичков очень полезно практиковаться, играя против компьютерного интеллекта (КИ). Однако даже при максимальной сложности, победить КИ не составляет особого труда, поскольку шаблоны часто предоставляют возможность быстро добиться преимущества на ранних этапах. В результате новички, играя против КИ, часто ограничиваются лишь "разбегом" к сокровищнице, после чего либо завершают игру, либо без труда побеждают компьютерного соперника. Мне хотелось бы добавить элемент интриги или финальное столкновение, даже если противником является компьютер. Улучшение компьютерного интеллекта — это сложная задача (хотя мы рассматриваем её для будущего). Поэтому решил воспользоваться простой идеей: перед финальной битвой или к третьей неделе, дадим КИ несколько "сотен медведей" для уравновешивания шансов.
Процесс работы
Для реализации этого трюка существует множество методов, но был выбран наиболее простой (на первых порах) — редактирование данных в сохранённой игре. Процесс работы выглядит следующим образом:
- Выбираем определённую сохранённую игру, например, 134.GM1.
- Применяем к ней трейнер с нужными настройками.
- Скачиваем отредактированный файл.
- Запускаем игру из этого сохранения.
- Продолжаем игру в обычном режиме, но уже с усиленными противниками.
Код в открытом доступе
Кроме основной задачи, я стремлюсь поддержать и развить Геройское сообщество, поэтому весь программный код находится в открытом доступе на GitHub. В дальнейшем планирую использовать его для других различных задач, связанных с Heroes III.
Этап раннего тестирования
На данный момент проходит этап раннего тестирования, и код ещё не идеален, поэтому могут возникнуть некоторые проблемы. Активно работаю над их устранением, а также занимаюсь отслеживанием и исправлением ошибок. В будущем по мере возможности также буду расширять функционал.
Когда Jebus Cross добавишь?
Как только найдется время и вдохновение! Вы можете "подопнуть" этот процесс через Бусти. Ведь Jebus Cross — это не просто шаблон, это наука. И очень легко все сделать неправильно. На Ауткасте по-проще, там всё более предсказуемо.
Для чего ты это делаешь?
В первую очередь, чтобы самому тренироваться. При этом не люблю писать код тяп-ляп, поэтому решил сделать хороший интерфейс доступа к модели Героев 3. Ну а дальше пришло понимание: почему бы не выложить это на всеобщее использование. Плюс оформил это ввиде сервиса, чтобы все могли легко им пользоваться без знаний python.
Зачем трейнер, если можно играть с реальными людьми?
Новички, как правило, хотят погрузиться в мир Героев и освоить турнирные шаблоны. С компьютером удобно тренироваться, но интриги в финалке маловато. Для опытных же... Ну, скажем так: не всегда удобно тащить соперника в перелёт на Мальдивы, чтобы порубиться в Герои в самолёте!
Поддерживается ли SoD версия игры?
Код для работы с SoD есть, но я его ниразу не проверял, поэтому скорее всего не заработает из коробки. Если очень надо, то можно легко добавить.
Чем отличаются сложности в твоём трейнере?
Пока что — коэффициентом увеличения армии. Но в планах добавить изюминку в распределении сил и новые механики для оппонентов. Следите за обновлениями!
Есть ли план прокачать оппонента с какой-то конкретной механикой: дракогеддон или берсерк?
Безусловно! Это одна из ключевых целей. Хотим не только усилить армию, но и добавить мудрые стратегии от лучших игроков. Главное — научить ИИ их эффективно применять.
Сам то играешь в Герои?
Постоянно! Но каждый раз, как начинаю играть, сразу чешутся руки что-то доработать в коде. Кодирование или Герои – вечный дилемма!
Когда подкачиваешь оппонента, удаляешь ли то что ему дал с карты из коробок?
Нет, во-первых пусть ещё подкачается с коробок. А во-вторых, у меня сейчас нет поддержки даже "чтения" карты, чтобы с неё забирать кое-какую важнейшую информацию. Про редактирование пока даже не заикаюсь.
Немного об этом проекте
Над проектом работаю в свободное от основных дел время, погружаясь в код долгими ночами перед монитором, питаясь кружкой горячего кофе. Делаю по мере наличия сил, времени и критичности задач, создавая не просто программу, а историю, которая вдохновит многих. В целом данная версия УЖЕ позволяет тренироваться, поэтому руки чешутся вновь погрузиться в мир Героев III и прочувствовать каждое приключение на картах Enroth'а.
Полезные ссылки:
Что есть по проекту:
Актуальный список планируемых улучшений лучше всего смотреть на Бусти в виде поставленных целей. Все заявленные цели рано или поздно будут достигнуты (если не возникнет форс мажора) даже несмотря на отсутствие финансирования. Поддержка монетой той или иной цели увеличивает моё внимание к ней.
Для всех, кто желает стать частью этой уникальной истории, предложения и замечания приветствуются на Бусти. Если у вас есть идеи по коду, пожалуйста, напишите прямо в наш гитхабный репозиторий. И если вы готовы вносить свой вклад, создайте pull request, и вместе мы сделаем игровое сообщество ещё лучше!
С теплом в сердце и кодом в руках, TechnoCore