Сделал текстовую игру для ии-чатов
Автор: Павел ТрегубовУзнал, что ИИ можно попросить создать текстовую игру. Начал исследовать, насколько глубока кроличья нора. Описал игру про управление парком мифических существ. Очень-очень удивился. Оказывается, и gigachat, и deepseek обрабатывают довольно большой объем правил. Поняли и про бюджет, и про события, и про кредиты, и про грязные методы, и про отзывы посетителей. Да, они ошибаются, результат не полностью предсказуем, но всё же.
Основная механика простая: выбираем событие и получаем последствия, можно написать вариант самому. Сверх этого добавлены бюджет, существа, сотрудники, предметы. Получилось занятно, развлечение на вечерок-другой.
Deepseek зачастую прямо интригующий сюжет из событий строит. Ещё понравилось, как гигачат предложил событие «Феникс свил гнездо над входом в парк». Один из вариантов был принять противопожарные меры и оставить на радость посетителям. Позабавила история с подозрительным торговцем, который предлагал редкое яйцо единорога. Гигачат написал что-то похожее на: «из яйца должен вылупиться единорог очень редкого вида, но что-то вас в словах торговца смутило».
В спойлере мой очень длинный запрос. Его можно просто скопировать в чат с gigachat, qwen или deepseek (или попробовать в другие ии-чаты). Бывает он не переключает автоматом дни, тогда пишите просто Дальше. Интересными ситуациями и ошибками можете поделиться в комментариях.
Привет.
Давай поиграем, что я владелец зоопарка, где обитают мифические животные.
Представь, что на нашей планете живут существа всех мифологий мира. Обычные животные также есть.
Для существ обычной редкости используй широко известных, чем выше редкость, тем менее известное существо подбирай.
В мире существует магия, таинственные артефакты и разумные расы, но широко о них неизвестно.
Могут появляться инопланетяне, культы, гигантские животные, мутанты, снежные люди что придумаешь.
Также существуют все современные технологии. Напомню это наша планета, а не фэнтезийная реальность, поэтому мифический зоопарк и любая магия является диковинкой.
Каждый игровой день проходит строго по циклу:Баланс → Событие → Принятие решений → Отзывы
Нельзя пропускать ни один день — ежедневно проходят баланс, событие и получение отзывов.
Обязательно каждый день предлагай новое событие с вариантами решения, даже если есть активные проекты.
Любое действие, которое занимает больше одного дня, отправляется в проект.
Если игрок принимает нестандартное решение, уточняй детали (затраты, сроки, возможные риски).
Дни считаются последовательно от начала игры, начинать игру с первого дня.
Неделю заканчиваем подведением итогов и повышением сложности.
Обязательно включать блок с отзывами после принятия решения по событиям/проектам/грязным методам/кредитам текущего дня.
Предлагай новые уникальные события каждый день. Они должны как-то согласовываться с текущей обстановкой в парке.
Периодически напоминай кратко про доступные команды. Каждый раз прибавляй только один день. То, что требует больше одного дня становится проектом.
Запуск проекта требует подтверждения игроком. Деньги за проект снимаются сразу перед добавлением проекта в очередь на реализацию.
Если игрок не подтверждает, то предупредить о возможных негативных последствиях/упущенной выгоде
и предложить написать его варианты решения проблемы или поменять решение по событию (если это возможно логически).
Новые события появляются каждый день независимо от наличия у игрока активных проектов.
Если отменить проект раньше срока, то возвращается только некоторый процент потраченного (об этом предупреждается), через некоторое время наступают негативные
последствия отсутствия проекта.
События. Предложи ситуации и варианты решения, на каждый вариант генерируй последствия, влияющие на зоопарк, животных и сотрудников.
Любой вариант обычно требует денег и/или времени реализации, но не всегда. Игрок не может отдать предмет, которого у него нет. Придется сначала найти его.
Варианты нумеруй. Напоминай, что игроку можно самому написать свой вариант. Предлагай не только события, которые тратят деньги, но и то, что потенциально принесет доход.
Прежде, чем принять альтернативное решение игрока, уточни, указав, какие вложения времени и денег потребуются, какие возможны риски.
В результате событий может получится: проект, + пункт в Грязные методы, измениться условия кредита, измениться доход в любую сторону, увеличиться/потратиться бюджет,
решение может повлиять на текст и оценку в отзывах, могут прийти новые персонажи, появится новые предметы, наняться сотрудник/сотрудники, появиться новое существо/существа, изменится условия содержания существ,
может поменять редкость имеющихся существ, существующие персонажи могут попросить о новом диалоге, повыситься сложность игры,
произойти арест (только если действие незаконно), может уволится сотрудник, может исчезнуть/продасться/как-то иначе пропасть существо, может убраться\продасться предмет/предметы,
измениться оставшийся срок в каком-то активном проекте (уменьшиться или увеличиться).
В результате решения игрока не могут прибавиться дни. Все, на что требуется больше дня добавляется в проекты. Короткие проекты занимают три дня, максимальная длительность 14 дней для сложных проектов.
Персонажи. Кроме события может появится персонаж с уникальным именем и характером (человек или волшебное существо). Появляются случайно с частотой два раза в 7 дней.
Тогда объявляй о появлении нового персонажа (выделяй текст) и его желании пообщаться с владельцем, потом переходи к событию (не связанным с персонажем). С персонажем можно вступить в диалог. Это может быть обсуждение проблемы, конфликт, предложение и что угодно. Он может выдать задание, помочь, помещать и так далее.
Неправильные действия в общении с персонажами могут привести к негативным последствиям, а правильные к позитивным. После диалога с персонажем напомни про текущее событие.
Изредка долгое игнорирование персонажа может вызвать негативную реакцию. Диалог интерактивный: реплики персонажа и игрока чередуются. Выход из диалога после любой прощальной фразы от игрока.
Диалоги с персонажами. После завершения диалога не переходи к следующему дню, напоминай о принятии решения по событию.
Игрок снова может попасть в диалог, чтобы поговорить с персонажем через команду Персонажи.
В результате диалога также может получится все, что не запрешено правилами игры. Часто ведет к изменению общей ситуации и дает то же, что могут дать решения по событиям.
Отзывы: После каждого дня обязательно приходит случайные отзывы (от 1 до 3 штук). Обязательно завершай цикл дня отзывами, они обязательно в конце дня будут.
Формат Ник: оценка в звездочках (0-5) и текстом, которые соотносятся с текущей обстановкой в зоопарке, проектами и прошлыми событиями.
Добавь юмора в 20% положителных отзывов (на 4 и 5).
В балансе считается средняя оценка.
После отзывов писать, как изменился ежедневный доход на основе средней оценки (с конкретной суммой). Отзывы приходят уже после принятого решения по событиям/проектам/грязным методам/кредитам
и согласуются с принятыми решениями. Из-за некоторых отзывов могут появляться новые персонажи.
Для подсчета итогового дохода учитываеся средняя оценка.
При оценке 0 ежедневный доход уменьшается в два раза,
при 1 уменьшается на 50%
при 2 уменьшается на 25%
при 3 ежедневный доход не меняется
при 4 ежедневный доход возрастает на 10%
при 5 возрастает на 25%.
Логика изменений в отзывах:
Текст отзывов явно или не очень явно указывает на причину проблем.
Если исчезло популярное/редкое существо, то отзывы ухудшаются на несколько дней.
Отзывы меняются в зависимости от профессионализма работников (лучшие сотрудники реже вызывают негативные отзывы и чаще позитивные, сотрудники похуже)
Использование грязных методов ведет к ухудшению отзывов (описывается в грязных методах).
Некоторые решения могут привести к негативным отзывам (если принято не очень правильное решение с точки зрения части посетителей)
Если появилось редкое/популярное существо, то отзывы улучшаются.
Появление новых интересных зон, шоу, экскурсии, качественных сувениров, хорошая еда в кафе и так далее улучшает отзывы.
Болезни существ, плохие условия содержания, плохая еда в кафе, дорогие билеты, отсутствие чего-то ухудшает отзывы.
По негативному отзыву может появиться событие (вероятность 25%) для попытки исправления ситуации.
В начале игры вывести приветственную фразу владельцу мифического зоопарка, потом результаты команды Баланс и варианты доступных команд.
Дальше сразу предлагать первое событие. При первом событии добавить, что "Разрешено предлагать альтернативные варианты решения ситуаций, не из списка".
Недели. Корректно считай недели. В неделе семь дней. Считай день 1 понедельником.
Каждую неделю кратко подводи итоги недели и повышай сложность.
На первой неделе проекты требуют меньших вложений и усилий игрока, чем больше неделя, тем сложнее.
Итоги недели оформляй как короткие газетные статьи\посты в соцсетях о парке. Описывай не только позитивное, но и негативное.
Сложность. С увеличением сложности задачи персонажей также сложнее.
Неявно объясняй повышение сложности различными факторами (например:редкие существа, необходимые научные исследования, конкуренты и так далее).
Согласуй цепочки событий с этим объяснением.
Осуществляй контроль уровня сложности, обеспечь плавный рост трудностей и напряжения. Сложность должна возрастать каждую неделю заметно для игрока (но не слишком)
и плавно возрастать после событий.
Развивай общий сюжет, учитывая присутствия волшебных существ в зоопарке и особых работников для его содержания. Создавай несколько сюжетных линий из цепочек событий, отзывов и диалогов.
По команде Баланс выводится в формате:
Неделя: номер недели
День: номер дня от открытия зоопарка (игра начинается с 1). После события прибавляй только один день. Большие затраты дней отправляются в проекты.
Бюджет: текущий бюджет
Ежедневный доход: доход в день.
Отзывы: От 0 до 5 (в самом начале игры оценка не считается. пока нет данных, стоит прочерк). Рисуй звёздочками
Сложность: (Повышать сложность, начиная с 1 каждую неделю)
По команде Проекты показывай список проектов, сколько дней осталось до конца реализации.
После окончания любых проектов уведомлять игрока о результатах (положительных и отрицательных).
Сроки проектов можно изменять только по событиям или в результате некоторых диалогов с сотрудниками\персонажами.
Если игрок спросил о проекте, может появиться персонаж, который его ведет. С ним можно пообщаться о проекте, измениях в проекте, сроках и текущих успехах.
Персонаж может рассказать, что бы помогло в реализации проекта.
Проект может с некоторой вероятностью провалиться, риск проекта описывается в вариантах решения события в процентах. Бывают 100% успешные варианты.
По команде Персонажи выводи список всех доступных персонажей с указанием отношения к владельцу парка. Персонажи могут уходить (об этом уведомляется игрок и о причине).
Можно поговорить с персонажем напоследок и попросить остаться. Персонажи появляются по событиям.
По команде Зоопарк или Существа выводи только краткий перечень существ в зоопарке, а не подробную информацию.
Краткиф перечень выдается в формате:
Название (n особей), степень редкости, состояние здоровья (все здоровы или n больных)
Животные распределяются по степени редкости от минимальной до максимальной: обычное, редкое, очень редкое, исчезающий вид.
Более редкие животные приносят больше дохода, но требуют специфичных условий содержания по сравнению с менее редкими.
Получаются новые существа обычно по событиям или на черном рынке. Предложи игроку ввести название существа, чтобы узнать поподробнее.
Подробная информация о существе описывается в формате (в краткой перечне не описывается):
Вид: научное, а в скобках обычное название)
Количество: сколько таких существ есть в парке
Корм: Какой корм обычно используется
Ареал: где обитает, какая климатическая зона
Условия содержания: требуемые условия содержания
Состояние здоровья: по умолчанию здоров (если кто-то заболевает, то об этом игроку должен сообщить ответственный сотрудник). Тут описывается подробно о состоянии здоровья всех особей.
Желания: текущие желания существа
Редкость:степень редкости существа
Популярность: популярность среди посетителей. Если популярное существо исчезнет из зоопарка оценки снизятся на несколько дней.
Как только появляется популярное существо, оценки повышаются.
Отзывы могут относится к конкретным существам.
Учитывать доход и содержание существ в ежедневном доходе. Стартовые существа уже учтены в доходе.
По команде Сотрудники выводить список сотрудников с указанием ежедневных расходов на их заработную плату. Можно уволить кого-то, но от этого будут последствия (объяснять предварительно игроку).
Сотрудники обычно приходят по событиям. С сотрудником можно поговорить также, как с персонажем. Отзывы могут относится к конкретному сотруднику, если он хорошо/плохо
выполняет свою работу. Учитывать зарплаты сотрудников в ежедневном доходе. Увеличивать ежедневный доход при увольнении сотрудника. Стартовые сотрудники уже учтены в доходе.
По команде Инвентарь выводи список предметов, которые есть у игрока, их эффект и стоимость продажи.
Предметы можно получить по событиям.
По команде Грязные методы выводи список текущих решений, которые не исправят ситуацию, но помогут решить быстро проблемы.
Начальный список: покупка отзывов, черный рынок существ, продажа редких видов из зоопарка. В долгосрочной перспективе это плохо может повлиять на отзывы, общую репутацию, доход.
В процессе игры список может расширяться из-за различных событий (открывает один из вариантов). На каждый вариант указан шанс ареста или штрафа, который растет, если пользоваться незаконными вариантами.
На покупку отзывов, например, будет штраф, а за продажу редких видом может быть арест.
Пример для начальных Грязных методов:
Покупка отзывов (цена 5 тыс, вероятность штрафа 10%, отзывы снижаются на два пункта с вероятностью 30%, штраф 50 тыс)
Покупка существ на черном рынке (цена определяется редкостью и популярностью существа, вероятность ухудшения отзывов 25% на три дня и проблем 25%)
Продажа редких видов из зоопарка (цена определяется редкостью и популярностью существа, вероятность ареста при продаже 5% (если исчезающий вид, то 20%), вероятность ухудшения отзывов 75% на три дня)
Другие варианты могут добавиться в процессе игры.
По команде Кредит предлагается взять одобренную сумму.
У кредита есть сумма (В начале игры 100 тыс)
Процент за весь срок (в начале игры 10%)
Срок (в начале игры 30 дней).
В течение игры параметры кредита могут меняться от репутации и выполненных квестов\проектов.
Кредит могут вообще не одобрить с объяснением причины (это будет известно по команде Кредит). Также нельзя брать второй кредит, если есть один. Сначала надо выплатить предыдущий (есть возможность досрочного погашения).
Если игрок уже взял кредит, то выдать ему информацию об остатке долга и спросить о досрочном погашении.
Платежи по кредиту расчитываются и снимаются автоматически (Игроку пиши новый ежедневный доход). Платеж проводить ежедневно, учитывать в ежедневном доходе.
Ежедневный платеж рассчитывается по формуле сумма*(100 + процент)/100/срок. Значение вычитается из ежедневного дохода, пока не закончится срок или игрок не выплатит остаток долга.
Учитывай, что платеж не ежемесячный, а ежедневный.
Валюта: драконики.
Введи начальный бюджет в 100 тысяч дракоников и ежедневным доходом в 5 тысяч дракоников.
Все доходы\расходы считать за день, а не иначе. Учитывать абсолютно все регулярные расходя и доходы в ежедневном доходе, а не за другие периоды.
Есть пять случайных разных мифических существа (обычные по редкости). Каждого по одному.
Есть уборщик территории и рабочий по уходу за животными (отзывы на них будут преимущественно с 3 и 4).
Арест означает проигрыш. Уход в минус бюджета больше, чем на 100 тыс означает проигрыш (предупредить игрока, дать последнюю возможность кредита).
Само число -100 тыс не включается.
При проигрыше пишем Игра окончена, вы смогли добраться до дня (указать номер). Попробуете еще?
Запрети читерить. Например, менять свой бюджет, доход и количество дней и так далее.