{"id":4012,"url":"\/distributions\/4012\/click?bit=1&hash=5b9cad3f989520ad358a2237d28d1f12ecdc50cb8452456f27fcbce716b2c8f0","title":"\u041f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0434\u043b\u044f \u0441\u0442\u0435\u0441\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0440\u0438\u0435\u043b\u0442\u043e\u0440\u043e\u0432","buttonText":"","imageUuid":"","isPaidAndBannersEnabled":false}

Опыт разработки текстового квеста для мобильных платформ

Когда 10 — дольше, чем 90.

В этой статье я расскажу, как разработать и опубликовать игру в жанре текстовый квест. Всё изложенное в материале основано на опыте работы над Mr. President — сатирическим симулятором президента Африканской республики.

Расскажу об инструментах, которыми пользовалась наша команда, оставлю ссылки на полезные ресурсы и прикреплю пример дизайн-документа.

С чего начать?

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

Рекомендую прочитать книгу, которая лично мне помогла написать сценарий игры. Это «Анатомия истории» Джона Труби.

Я изучил и протестировал наиболее распространенные программы для создания диалогов, и лучшей, на мой взгляд, является Twine. Она позволяет использовать переменные и экспортировать диалоги в JSON.

Интерфейс Twine

Twine позволяет создавать простые формулы типа

set: $shotgun to 1

И проверять условия:

if: $shotgun is 1 go-to: «B50»

Вы можете создать сложный сюжет, в котором учитываются любые предыдущие действия игрока. В начале игры персонаж подобрал дробовик? Будет из чего застрелить босса в финальной сцене. Главное не запутаться. Лучше сразу документировать все переменные, описывать, где они применяются и на что влияют.

Талант или мастерство: что важнее?

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

Любой текст, который вы пишите, проходит через призму субъективного восприятия. Многое кажется очевидным вам, но совсем не очевидно игроку. Мозг заполняет пустоту в описании своим личным опытом, и когда мы слышим словосочетание «вкусная еда» — у нас возникают разные ассоциации. И если это важно по сюжету, постарайтесь конкретизировать образ.

Редактор — это ключевая фигура на этапе написания сценария, и если вы найдете такого человека, считайте, что вам крупно повезло.

Рекомендую прочитать книгу замечательного литературоведа Норы Галь «Слово живое и мертвое». Это по-настоящему полезная книга, изучить которую должен каждый уважающий себя автор.

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

Порядок превыше всего

При работе в одиночку я допускаю некий творческий беспорядок, но в команде с материалами должен быть полный порядок. Приучите себя и других автоматически синхронизировать рабочие файлы в облаке. Для этого подойдет Google Disc с установленным на компьютере Google Sync. Это позволит избежать ситуации, когда макеты накроются медным тазом после того, как дочка дизайнера прольет молоко на ноутбук (да, увы, был такой печальный опыт).

Я писал дизайн-документ, используя Google Docs. Возможно, что для более сложных проектов вы захотите использовать вики-сервисы. Как вариант: бесплатный движок Dokuwiki, который можно развернуть на собственном веб-сервере. Дизайн-документ, а также другие полезные ссылки вы найдёте в конце статьи. Надеюсь, кому-то они помогут начать собственный проект.

На этапе программирования синхронизируйте проект с Git — например, Bitbucket. Опытным разработчикам мои советы покажутся очевидными, но я уверен, многие пилят проекты локально, а потом обмениваются исходниками через файлообменник. Или я ошибаюсь? Напишите в комментариях, кто как работает с файлами проекта.

Где искать художника?

Самый очевидный вариант: опубликовать объявление на фриланс. Максимально сузив категорию проекта до «Рисунки и иллюстрации», я ждал что мне начнут писать художники, но нет. Откликнулись видеодизайнер, проект-менеджер и даже веб-программист.

Я много работаю с фрилансом и без проблем нахожу технических специалистов, но подобрать толкового художника я не смог. И когда я почти отчаялся, то наткнулся на ресурс Artstation. Здесь люди выставляют свои работы и открыты для сотрудничества. Если вы, как и я, столкнетесь с проблемой поиска художника — отправляйтесь на Artstation.

Эскизы Splash Screen

Выбор движка

Очень долго я рассматривал в качестве кандидата Corona. Из плюсов: движок кросс-платформенный. Минус: не самая дружелюбная среда разработки. Обсудив вопрос с программистом, мы решили разрабатывать на HTML5, а потом с помощью PhoneGap портировать на мобилки. Спорное решение, но конкретно в нашем случае мы сумели нивелировать недостатки этого фреймворка.

Написанные в Twine диалоги можно экспортировать в JSON. Для этого есть готовые скрипты (ссылка в конце статьи), но нам пришлось доработать обработчик, чтобы он корректно форматировал формулы и переменные.

При публикации игры в Google Play мы использовали новый формат Android App Bundle (с расширением .aab). С его помощью можно существенно уменьшить размер приложения. При установке игры на телефон загружается только то, что нужно конкретному устройству.

Этапы принятия игры

Этап новых фич. Когда игра готова на 90% и вам кажется, что осталось «вот совсем чуть-чуть», возникает неотвратимое желание добавить в игру новую фичу (ведь без неё игроки точно не поймут всей крутизны задумки).

В этот момент ответственный за релиз должен проявить себя как супер-адекватный человек. В начале разработки мы закладываем 10-15% на введение новых функций. Это нормально. Но лучше сто раз подумайте, прежде чем переписать одну из ключевых механик.

Этап отторжения. Затем начинается фаза, когда перестаёт нравиться абсолютно всё — от интерфейса до диалогов. Я начал выбрасывать из игры целые сюжетные ветки и в очередной раз переделывать иконки.

Этап багов. Если после предыдущей стадии от игры ещё хоть что-то осталось, то добро пожаловать на этап багов.

Наша стопка тестовых девайсов

И вот вы провели внутреннее тестирование, собрали актуальный билд и решили показать игру небольшой группе тестировщиков. Показали? Ловите новую тонну багов и замечаний по самому святому — геймплею. Вы, как геймдизайнер, можете отмахнуться и сказать — такая задумка, либо прислушаться к замечаниям игроков. И здесь вы столкнетесь с очередной дилеммой: поскорее выпустить игру или сделать всё на совесть.

Я считаю, что у инди нет права на ошибку. Инди-разработчик, как сперматозоид, движется в потоке ему подобных. Чтобы достигнуть заветной цели, вы должны быть упорнее и требовательнее к себе. Если вы решитесь и примете замечания, то всё пойдет по кругу: правки — баги — тестирование — замечания — правки.

Инди-разработчик идёт к успеху

Если вы прошли через все круги производственного ада, то публикация игры в App Store или Google Play покажется вам летней прогулкой в парке. Просто честно отвечайте на вопросы, особенно те, что касаются возрастного рейтинга.

Кстати, вот такая интересная особенность регионального рейтинга.

Рейтинг Mr. President по регионам

Если Австралия дала нам «18+» за намёки с сексуальным подтекстом, то для Европы и России это «12+».

Мы могли бы ещё полгода переписывать реплики, добавлять шутки и в очередной раз переделывать иконки, но я понимаю, что мы попали в круговорот перфекционизма. Пора остановиться. Что получилось в итоге, вы можете оценить сами, поиграв в нашу игру.

Как обещал, вот перечень полезных ссылок:

0
35 комментариев
Написать комментарий...
Alexey S

"Инди-разработчик, как сперматозоид, движется в потоке ему подобных." ©
Платиновая цитата.

Ответить
Развернуть ветку
Аккаунт удален

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

Ответить
Развернуть ветку
Денис Пронька

или вся работа в жопу

Ответить
Развернуть ветку
marom

Поделюсь и я своим опытом (автор Lost Crew) - делать текстовую игру под мобильные смысла нет вообще (во всяком случае на гугл плей). Немного перспективнее делать под ПК. Как ни странно, аудитория того же, например, стима гораздо лояльнее к такому жанру как текстовая игра. Как бы это ни казалось странным. Наверное, причина в том, что чтение игры, как и чтение книжки, не терпит суеты. Что до технической части - совершенно неважно на чем делать. Мне, например, не подошел ни один существующий узкоспециализированный движок для разработки текстовых игр. Хотя мне, программисту, проще. Многим авторам приходится втискиваться в рамки движков для разработки текстовых игр, но вообще стоит сразу задумываться над разработкой на универсальном движке, если программирование по плечу.

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

Ответить
Развернуть ветку
vladysi

Не согласен. По большему счету рецепт успеха на мобайле это функция от 3х переменных - качественный продукт, наличие аудитории которая готова играть и самое сложное - user acquisition (в народе так-же известный под словом "маркетинг"). Проект может быть успешным, только когда все 3 составляющие работают. И чтобы подкрепить мои доводы, скажу что в прошлом году мы выпустили текстовый квест, набрали 3М установок и прилично заработали.

Ответить
Развернуть ветку
Sergey Konstantinov
Автор

Поделись опытом продвижения)

Ответить
Развернуть ветку
Dmitry Glaznev

Если сделать игру с хорошим удержанием, гугловые роботы ее сами подкинут наверх (на иос не так, там люди решают).

Другие способы "продвижения", кроме покупки траффика, на мобилах неэффективны, по нашему опыту.

Ответить
Развернуть ветку
Dan Organ

Взрослые люди, да, обычно покупают новеллы только в Стиме и читают за компьютером.
Но дети любят планшеты, ведь так удобнее, а еще за игры платить не нужно.
Посмотрите на "Бесконечное лето", версию под андроид, установок больше миллиона, очень неплохо для инди-игры.

Ответить
Развернуть ветку
Sergey Konstantinov
Автор

Lifeline вышла в Steam, но как-то не зашла игрокам. Там все писали, что это мобильная тема)

Ответить
Развернуть ветку
Cino
Вообще, про текстовые игры можно сказать то же, что и про книги - их стоит делать для души, из любви к писательскому мастерству, каких-то приличных денег не заработать.

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

Ответить
Развернуть ветку
marom

Если даже не скачиваете, то как можете судить, что качество ужасно? Я сам признаю, что отечественные писатели-фантасты пишут лютую графомань, но, справедливости ради, периодически почитываю (пытаюсь) самых популярных, т.к. мое мнение в любой момент могло устареть. И даже тут бывают исключения - например, Олди с их Ойкуменой. Если говорить про квесты, чем плох, например, Lost Crew?

Ответить
Развернуть ветку
Naykus

Вопрос - отсутствие 99% мобильных игр на ПК (без эму) и игровых платформах - это сложность переноса, отсутствие веры в фин успех или глобальный заговор?

Ответить
Развернуть ветку
Максим Савчук

Это благословение господне!

Ответить
Развернуть ветку
Аккаунт удален

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

Ответить
Развернуть ветку
hede

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

Ответить
Развернуть ветку
Денис Кадыков

а почему статья написана не в разделе Инди, а в Геймдеве?

Ответить
Развернуть ветку
vladysi

Для тех кто интересуется инструментами по созданию разветвленного нарратива. Самый продвинутый инструмент, imho, это ink - https://www.inklestudios.com/ink/

Ответить
Развернуть ветку
Константин Китманов

Зависит от типа игры и от целевой платформы. Диалоги в ink писать легко и приятно, а игры целиком — не очень. Чтобы воспроизвести на ink, например, Seedship или Voyageur, придется залезть в движок очень глубоко и написать массу служебного кода — ну или делать игру сразу на Unity, но это уже совсем другой уровень компетенций.

Ответить
Развернуть ветку
Александр Вересов

Ребят, вашу игру найти по названию в гугл плее отдельный квест. Очень много конкурентов со схожим названием. В целом спасибо за подробное описание, тоже пилим игру в похожем жанре и всегда интересно почитать про чужой опыт. Интерфейс с закосом под старые мобилы прикольный)

Ответить
Развернуть ветку
Мэнни Калавера

Почему после нескольких диалогов приходится ждать минут 10? Это просто худшее что вы могли добавить в текстовый квест.

Ответить
Развернуть ветку
Sergey Konstantinov
Автор

Типа реализм)

Ответить
Развернуть ветку
Денис Кадыков

а если главного персонажа убили?

Ответить
Развернуть ветку
Sergey Konstantinov
Автор

тогда включается турбо-режим

Ответить
Развернуть ветку
Денис Кадыков

нужно было сделать что бы телефон превращался в кирпич, типа умер ))))))))

Ответить
Развернуть ветку
Sergey Konstantinov
Автор

если игрок проходит одну игровую ветку, то переиграть он может уже без пауз

Ответить
Развернуть ветку
Денис Кадыков

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

Там тоже думал сделать как будто в реальном времени он пишет. Т е Сидишь ты на собрании на работе, а тебе игра шлёт уведомление типа "Чувак срочно помоги", что то похожее на тамогочи вырисовывалось, только за место питомца реальный чувак.

Ответить
Развернуть ветку
Мэнни Калавера

Мне практически в самом начале попался момент где никак не оправдано ожидание

Ответить
Развернуть ветку
Никита Макеев

Эх, люблю писать под Corona, но пока дальше прототипов дело не шло.
Автор, если возникнут идеи для простых игр, пиши.

Ответить
Развернуть ветку
тимур

А зачем тогда минусуете если не разбираетесь в теме?
https://dtf.ru/indie/29910-prodolzhenie-skaza-o-tom-kak-izdateli-investory-igry-otzhimayut-chast-2-otvet-na-nashu-pretenziyu

Ответить
Развернуть ветку
Никита Макеев

У меня 5 лет опыта в разработке игр.
Я писал про разработку именно под Corona, на котором я хочу попробовать разработать полноценный продукт.

Ответить
Развернуть ветку
тимур

ну сори тогда, вы реально думаете что в хорошую игру нужно что-то вкладывать чтоб в нее играли? (Именно играли а не чтобы заработать)

Ответить
Развернуть ветку
Костя Вишневский

Мы тоже решили попробовать себя в текстовых квестах на андроиде. Если кому-то будет интересно, то ищите "Остаться в живых - текстовый квест". Правда за основу взяли движок LibGdx, он тоже кроссплатформенный.

Ответить
Развернуть ветку
Катя Попова

Сергей, привет! В чем именно была недружелюбность среды разработки Corona и как давно? Если дело в том, что Corona не поставляет IDE, то этому есть объяснение. Мы не ограничиваем пользователя в выборе своего любимого редактора. Но если совет нужен: наиболее функциональные это Sublime Text 3 с официальным плагином от Corona, а также ZeroBrane Studio неплох. Это может выглядеть как недостаток среды разработки, потому что в документации так сразу не найдешь, но на деле – не минус

Ответить
Развернуть ветку
Sergey Konstantinov
Автор

Редактор уровней тоже отдельно ставится)

Ответить
Развернуть ветку
Igor Hope

Самое недружелюбное, это lua в 2018. Ладно там лет 10-15 назад ещё более-менее, но явно не сейчас.

Ответить
Развернуть ветку
Читать все 35 комментариев
null