Редактор текстовых квестов для телеграма

Примерно год назад я наткнулся на текстовый квест в телеграме @QuestGameBot, там рассказывается увлекательная история о человеке, который очнулся где-то под водой и пытается понять, что вообще происходит. Концепция таких квестов мне понравилась, но я не нашел готовых решений, которые бы позволяли создавать подобные текстовые игры.

Скриншот телеграм бота @QuestGameBot
Скриншот телеграм бота @QuestGameBot

В то же время один мой товарищ попросил ему помочь в изучении языка программирования PHP. Как известно, лучше все изучать сразу на практике. Но для практики нужно было придумать проект. (товарищ в итоге слился)

Я подумал, что звезды сошлись и надо делать!

Кажется, что ты обманываешь, есть много платформ для разработки текстовых квестов

Что-то такое должны сказать люди в теме. И действительно, если поискать на dtf есть статьи про создание текстовых квестов:

Но есть один нюанс. (с)

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

Поэтому мне очень нравится решение с квестом в месседжерах. Они есть уже практически у всех. Но делать поддержку сразу всех платформ очень сложно, поэтому я остановился пока на телеграме.

Каким должен быть редактор?

Когда мы видим сюжет какой-нибудь нелинейной RPG игры, например ведьмака, мы видим результат работы огромной команды писателей, разработчиков, дизайнеров. В книге «Кровь, пот и пиксели» показано люди создают игры, а потом выгорают и перестают заниматься геймдевом.

Но разработчиков мотивирует не только любовь к созданию игр, но и деньги. Они не могут позволить себе бросить работу просто потому что надоело. Нужно оплачивать квартиру, кормить семью, кота, закрывать кредит за машину.

Как это связано с редактором? Все просто. Я делаю инструмент для других людей и мне хотелось бы, чтобы процес создания игр был максимально прост и понятен с одной стороны. С другой, чтобы игра удивляла игрока. И, к сожалению, это два противоположных конца. Чем интереснее игра, тем дольше и сложнее ее разрабатывать. А значит люди, которые захотят попробовать сделать супер игру в редакторе, будут просто бросать разрабоку на половине пути (и это в лучшем случае).

Первая идея была сделать редактор, который бы позволял разрабатывать линейные сюжеты, но у игрока были бы различные параметры. Например, количество жизней. Каждый неправильный ответ на вопрос, уменьшает количество жизней. Доходишь до конца, побеждаешь.

Редактор текстовых квестов для телеграма

Но такой подход убивает основную фишку игр — нелинейность. Поэтому пришлось от него отказаться.

Второй подход — это редактор дерева диалогов. В зависимости от решения, игрока перекидывает на ту или иную ветку. От параметров пользователя на первых парах пришлось отказаться, но зато я получил возможность нелинейного сюжета.

Как устроен процесс создания игры

Для создания игр был разработан диалоговый редактор в браузере. Как мне кажется, выглядит он довольно интуитивным. Текстовый квест — это по сути дерево диалогов, в котором мы переходим к той или иной ветке, в зависимости от ответов. Дерево состоит из вершин и дуг. Вершина содержит текст, который будет отображен пользователю и варианты ответов. Дуги соединяют ответы с другими вершинами.

Лучше всего это показать на видео.

Процесс создания дерева с нуля
Дерево с большим количеством связей
Дерево с большим количеством связей

Для того чтобы сыграть в игру, нужно начать диалог с ботом в телеграме, бот предложит список доступный игр.

Редактор текстовых квестов для телеграма

При выборе игры запускается диалог, который был создан в редакторе.

И для чего это все я написал?

Работа над редактором все еще продолжается, нужно прикрутить загрузку изображений, добавить параметры игрока и влияние ответов на эти параметры. Но какой смысл все это делать, если нет людей, которые бы пытались делать текстовые квесты? Короче!

ИЩУ ЛЮДЕЙ, КТО ХОЧЕТ делать ТАКИЕ квесты

Я не знаю интересно ли это кому-нибудь, я не знаю зачем это делать, но надо же чем-то заниматься. Поэтому я делаю этот редактор и возможно кто-то захочет делать на нем квесты.

Если заинтересовались пишите в телеграм

3232
20 комментариев

я так с девушками общался

3
Ответить

Комментарий недоступен

2
Ответить

Очередной велосипед. Экпортируешь из того же twine в его формат и берёшь готовый парсер для обработки ботом.

1
Ответить
Автор

То есть сначала нужно использовать twine, затем другой программой парсить и заливать. Звучит сложнее чем, когда все в браузере :)

1
Ответить

Сорян за некропост, но я вот вообще не могу найти, как из twine перенести в телеграм, не вижу ни одного решения.
Мог бы ткнуть, куда смотреть?

Ответить

Подобный бот хорош и в коммерции - для создания скриптов. Не нужно подписки, каких то сложных парней для CRM - открыл телегу и ебашь. Круто! Найдите спонсоров среди комерсов! Чаты, группы в фейсбуке. Правда, этим нужно отдельно заниматься...

1
Ответить

Так оно типа будет добавлять просто истории боту или чо?

Ответить