Животные

Текстовые игры возвращаются? Новые сферы применения, а также некоторые руководства и ресурсы для разработки

Недавно мы в Beeline Cloud поднимали тему забытых RFC из 90-х, а сегодня решили обсудить феномен текстовых игр. Кроме того, собрали руководства и веб-ресурсы, которые помогут запустить подобный проект или протестировать кастомные игры. Не только для развлечения В 1970-х компьютерные игры были, конечно же, редкостью. Тем не менее, тогда появилась первая интерактивная текстовая приключенческая игра — Colossal Cave Adventure. Проект представил американский программист и спелеолог Уильям Краутер, вдохновившись опытом исследования Мамонтовой пещеры в Кентукки. Учитывая временной период и выбранный жанр, неудивительно, что игровой процесс был прост. На экране появлялись описания локаций, а игроку нужно было вводить команды, состоящие из глагола и существительного — например, «съесть еду» или «зажечь лампу» — чтобы исследовать пространство и решать головоломки. Два других заметных проекта того периода — игры Zork и Hitchhikers guide to the Galaxy от Infocom — повлияли на становление жанра и стали своего рода «стандартом» текстовых игр. Кстати, для Hitchhikers guide to the Galaxy Дуглас Адамс, автор оригинального произведения, написал ряд головоломок. В наши дни текстовые игры (и визуальные новеллы) — это скорее нишевые жанры, но с активным комьюнити, развивающим такие проекты и движки для их создания. Примером может быть Ren’py, с помощью которого разрабатывают простые текстовые новеллы или более амбициозные проекты, используя Python-скрипты. Другой пример — движок Twine, который позволяет создавать игры, обладая минимальными навыками разработки. Несмотря на тот факт, что текстовые игры остаются нишевыми проектами, это не мешает им находить применение в науке и образовательной деятельности. Так, в 2023 году специалисты из Университета Глазго в Великобритании представили текстовую новеллу Evenir Case Files, которая должна помочь научить студентов-историков критическому мышлению. По сюжету главного героя — хранителя записей и документов при Совете магов королевства Эвенир — просят разобраться: правильным ли было решение осудить ведьму. Игроку дается 30 внутриигровых дней на исследование локаций и изучение документов. Далее игрок должен выстроить аргументацию, используя изученный контент. Под видом расследования — а, возможно, даже судебной драмы — игрок на самом деле учиться анализировать, сопоставлять и отбирать нужную информацию. Когда сценарий подкидывает новые вводные, пользователь вынужден все переоценить и даже усомниться в своей версии событий. На этом принципе и строится методология обучения критическому мышлению. В то же время сегодня в нишу текстовых игр достаточно органично вписываются системы ИИ. Если раньше разработчикам приходилось вручную составлять описания мест, предметов и взаимодействий с неигровыми персонажами, то теперь команды полагаются на LLM, особенно в масштабных проектах. Они позволяют не только генерировать описания локаций и квестов, но и запоминать контекст действий игрока, выстраивая повествование и адаптируя сценарий на лету. Примером может быть AIDungeon — текстовый фэнтезийный симулятор, повествованием в котором управляет система ИИ. Или LLMarena — это проект, в котором два бойца соревнуются на арене, которую «контролирует» ИИ-алгоритм. Игрок, управляя одним бойцом, должен напечатать, каким способом он рассчитывает победить. При этом нужно использовать как можно меньше символов. Чем выше уровень сложности — тем сильнее оппонент (и надежнее защита от инъекции промптов). При этом влияние оказывается взаимным: LLM-модели помогают развивать текстовые игры, а последние, в свою очередь, становятся инструментом для проверки возможностей систем ИИ. Например, такой бенчмарк — под названием TextWorld — представили исследователи из Microsoft Research, а также Тилбургского и Макгиллского университетов в 2019 году. TextWorld использует логический движок, который автоматически создает игровые миры, наполняет их объектами и препятствиями и генерирует квесты с целевыми состояниями и путями их достижения. Этот инструмент подходит для оценки логики, навыков планирования и языкового понимания у ИИ-агентов. Кстати, далее мы подготовили подборку интересных (и необычных) проектов в духе DIY и профильных руководств для тех, кто хочет написать собственную текстовую новеллу. Как написать свой проект с нуля Возможно, самый простой гайд по текстовым играм. Материал о том, как написать текстовую адвенчуру на Python за 20–30 минут. Он предназначен для начинающих разработчиков, поверхностно знакомых с этим ЯП. Автор — Кайл Лирер, fullstack-инженер, подготовил данный материал, чтобы познакомить читателей с ключевой терминологией на примере полезного проекта. Гайд стартует с самых основ — истории текстовых игр, их структуры с точки зрения геймдизайна. Далее автор объясняет принципы планирования игрового процесса: как игрок будет взаимодействовать с контентом, как устроена механика выбора и многие другие особенности проектирования текстовых игр. Intra: записки о разработке текстовой игры с LLM. Статья заинтересует тех, кто хочет сделать текстовую игру с LLM-системой. Автор — разработчик из Mozilla Иэн Бикинг — подготовил этот материал после участия в хакатоне по созданию подобной адвенчуры. И в этом руководстве он делится опытом. Речь идет о работе с промптами, понимании логики игрока, а также о том, на что обратить внимание в технической части: библиотеки, фронтенд и визуальные элементы. Кстати, автор признает, что руководство неидеально и «накидывает» десятки моментов для потенциальных улучшений. Как написать текстовую игру на C64 BASIC. Этот материал будет интересен ценителям текстовых адвенчур и ретрожелеза. Его написал Крис Гарретт, автор сайта Retro Game Coders. Сперва Гарретт раскрывает принципы работы с памятью и приводит примеры некоторых полезных операторов. Ну а в подразделе, посвященном созданию игры Choose Your Own Adventure, автор рассказывает, как структурировать повествование и игру — и, разумеется, подкрепляет слова примерами [в целом руководство «совместимо» с любым компьютером, который поддерживает BASIC Version 2 и другие версии CBM BASIC]. Пара площадок для энтузиастов KathaaVerse. Если вам когда-то хотелось оказаться внутри существующей книги, этот проект будет кстати. Платформа позволяет превратить любую книгу в текстовую игру. Разработчик пишет, что можно даже поменять жанр произведения (например, превратить «Дюну» из научной фантастики в нуар-детектив). В каждом разделе собраны популярные среди массового читателя тексты. Единственный (но жирный) минус — работает проект пока далеко не идеально, и истории часто «ломаются». Например, один из пользователей пишет: «Я попробовал пройти «Хоббита», и все началось с того, что я пил чай с Гэндальфом. Раздался стук в дверь, я открыл ее, и на пороге был Гэндальф-волшебник!». Несмотря на это, платформа нашла отклик в комьюнити, и над проблемами уже активно работают: дорабатывают промпты, улучшают память системы ИИ и не только. The Interactive Fiction Competition. Эта платформа не заточена под создание текстовых игр и графических новелл, однако она может служить неплохим источником вдохновения. The Interactive Fiction Competition — это, пожалуй, самое масштабное «соревнование» для фанатов жанра, в котором участвуют сотни разработчиков. Проекту больше 30 лет, а началось все в 1995 году, когда Грэм Нельсон, энтузиаст интерактивной литературы, представил язык inform. Вместе с Кевином Вилсоном, таким же фанатом текстовых игр, они запустили первое соревнование [тогда оно проходило еще в сети Usenet]. Отправить игру на конкурс может любой желающий. Для понимания масштаба — в 2023 году на конкурсе представили более 70 работ с призовым фондом 5,2 тыс. долларов. Пользователи отмечают, что в архивах IFComp есть настоящие находки для ценителей. WrittenRealms. Это — своеобразный современный взгляд на Multi-User Dungeons, текстовые игры (как правило, фэнтезийные), рассчитанные на несколько игроков, популярные в 80-е годы, преимущественно в США. Платформу представили два гика, пожелавшие дать пользователям возможность создавать не только фэнтезийные миры, но и прописывать уникальных персонажей для их исследования. WrittenRealms работает в браузере — есть редактор, в котором можно создавать комнаты, предметы, существ, квесты с головоломками и интерактивами. TDungeon. Бонус в качестве завершения — маленькая текстовая игра на основе системы типов TypeScript. Попробовать можно по ссылке в «подвале» репозитория проекта. Beeline Cloud — secure cloud provider. Разрабатываем облачные решения, чтобы вы предоставляли клиентам лучшие сервисы. Дополнительное чтение в нашем хабраблоге:

Фильтры и сортировка