Форт — это карточная игра, рассчитанная на двух-четырех игроков. Дмитрий Французов — магистрант института прикладной математики и компьютерных наук ТГУ — оцифровал карты игры и добавил к игровому процессу искусственный интеллект. В чём заключается суть игры, как появилась идея создания её электронной версии и какие трудности возникли при реализации — рассказываем в материале.
«Форт» — это…
По данным из открытых источников, существует две настольные игры с названием «Форт» от разных издателей. Мы будем говорить о «Форте» от Hobby World.
Суть игры, со слов Дмитрия, следующая: у нас есть колода карт, и мы сразу же начинаем играть, так как ни правил, ни дополнительных приготовлений не требуется. Достаем карту, на которой написано, что надо делать, например: «берите карту по кругу». Берём другую карту, а на ней указано правило. Таким образом, правила дополняются, расширяются по ходу игры.
Концепция игры заключается в том, что на середине стола лежат «форты», а в руках игроков — персонажи. У персонажей есть числовые значения «силы» карты, по аналогии с «валетом», «дамой» и другими. Чем выше значение персонажа, тем сильнее карта. Персонажами с одинаковыми числовыми значениями можно захватывать «форты». Однако нужно помнить, что другие игроки могут отвоевать твой захваченный слабозащищённый «форт». Цель: захватить как можно больше «фортов», они появляются постепенно по ходу игры, всего их — восемь штук.
Раунд длится достаточно быстро, так как в колоде есть три карты с изображением песочных часов. Когда выпадает третья карта песочных часов, заканчивается раунд и начинается подсчет «фортов», затем колода перемешивается, и игра продолжается.
По мнению Дмитрия, «Форт» среди «настольщиков» (любителей настольных игр — прим.ред.) не очень популярен. И изначально он вместе со своей подругой хотели «оцифровывать» более известную настольную игру — «Чужая планета» — но она уже существует в электронном виде. Поэтому выбор пал на малоизвестную, но любимую Дмитрием «настолку».
Процесс создания электронной версии «Форта»
Дмитрий начал работу над проектом в рамках курсовой работы, будучи студентом
ИПМКН ТГУ, совместно со своей подругой-одногруппницей. Изначально идея создания электронной версии «Форта» воспринималась как: «во прикольно, сейчас сделаю игру». Она планировалась как полноценная онлайн-игра с возможностью играть с незнакомыми людьми. Однако при реализации задуманного плана Дмитрий столкнулся с трудностями и изменил концепцию проекта. На первых этапах возникли сложности в программировании игры, а потом — в разработке искусственного интеллекта.
Если вас не пугают трудности и вы хотите создать подобную игру, то идите по следам Дмитрия:
- Спроектируйте и утвердите схему игры;
- Поймите, что утвержденная схема не работает, и перепишите её программный код;
- Потеряйте единомышленника, с которым начинали этот путь;
- Усложните задачу: обучите непонятный вам искусственный интеллект и добавьте его в игру;
- Создавайте игру на протяжении двух лет, постоянно сталкиваясь с вопросами по типу: «А в чём заключается актуальность? А зачем и кому это надо? А если поменять игру на что-то другое, то что изменится?»;
- Начните воспринимать этот процесс, как необходимость, устаньте от него и начните другой проект.
Дмитрий закончил развивать игру, оставив её на стадии «полупрототипа». Он планировал опубликовать электронную версию «Форта» в открытом доступе и с этой целью писал издателям игры, но ответа не получил. Скорее всего, его разработка будет опубликована, но когда именно — неизвестно.
Причем тут искусственный интеллект?
Помимо игры в «Форт» с друзьями, вашим соперником может выступить искусственный интеллект. Он легче адаптируется к изменениям внутри игры, менее предсказуем, но труден в разработке.
«Согласитесь, не у всех есть друзья, вообще не все любят играть в настолки, и почему бы не поиграть с кем-то? Я подумал, что было бы прикольно, если собралось три человека, а четвертого — не хватило, и его заменил искусственный интеллект, как будто четыре игрока играют. ИИ гораздо проще адаптируется к каким-то изменчивым ситуациям, которые могут происходить в игре» — Дмитрий Французов.
Добавить ИИ в «оцифровку» «Форта» Дмитрия вдохновила игра Skyrim, а точнее модификация энтузиастов. Они «прикрутили» к неигровым персонажам (NPC) в компьютерной игре Chat-GPT — генеративную искусственную сеть. Теперь, подходя к NPC, ты слышишь: «О, ты отправлялся туда-то, как твои дела?», потому что они запоминают твои действия. Благодаря этой модификации «мир» игры ожил, обогатился процесс взаимодействия с ним.
«ИИ — очень интересная вещь, которая может создать интересный опыт, в отличие от дерева решений, на котором всё в основном основывается», — подумал Дмитрий.
Кроме этого, он посчитал, что обучить ИИ легче, чем создать «дерево решений». Суть «дерева решений» заключается в программировании игры по схеме: «Если…, то…, если…, то…», где вводить все данные необходимо вручную. Разные «деревья решений» используются для разных ситуаций. Такой механизм делает возможным просчитывание поведения игры и использование одной и той же стратегии для победы.
С целью облегчить работу и сделать исход игры непредсказуемым, Дмитрий самостоятельно обучил искусственный интеллект — это оказалось далеко нетривиальной задачей. При разработке ИИ программист обращался за помощью к друзьям, так как «слабо понимал, как он работает». Тем самым, в надежде облегчить задачу — не вводить все данные вручную — Дмитрий наоборот больше намучился при обучении искусственного интеллекта. Как он сам заверил, он больше не будет работать с нейронными сетями.
Тем не менее, программист считает, что оцифровывать настольные игры стоит, так как возможность собраться компанией за общим столом и поиграть в «настолки» есть не всегда, также как и шанс поиграть в дорогостоящую или нигде больше не продающуюся настольную игру. Сейчас Дмитрий занимается разработкой приложения по поиску бесплатной психологической помощи.
Автор: Мария Вопиловская