Думаю, большинству программистов хотелось написать свою игрушку. Кому-то хотелось реализовать свой RPG мир, кто-то грезил своей стрелялкой, а вот я всегда хотел сделать свой квест.
Примерно год назад с предложением поучаствовать в дипломном проекте ко мне обратилась подруга, непосредственно приблизившаяся к защите. У меня давно зрела идея реализовать собственный квест, но все как-то не доходили руки, да и знакомые художники, готовые помочь в реализации этой идеи отсутствовали. Но именно в этот момент, я понял, что пора вытащить соображения и опыт в этом направлении и заняться написанием своей игры более серьезно. Собственно, в качестве дипломного проекта и было предложено реализовать свою игру.
Сразу оговорюсь, что студентка не программист и училась по специальности «дизайн в информатике» (или что-то аналогично-невразумительное), так что не стоит ожить каких-то суровых алгоритмов. С статье проиллюстрированы этапы создания квеста и выложены некоторые материалы по работе.
Я постараюсь рассказать о том, какие этапы были пройдены на пути к успеху, что пришлось и как пришлось реализовать, и от чего отказаться.
Выбор жанра
В жанр квестов я влюбился c моей первой игры — Broken Sword 2. Колоритные персонажи, продуманный, захватывающий сюжет, оригинальный юмор — этим мне запомнились игры этого жанра в их золотую пору. Естественно, как и у любого программиста у меня давно зрело желание написать свою игру, но постоянно что-то мешало: отсутствие сюжета, художника или желания. В момент, когда ко мне обратилась подруга, я решил, что откладывать больше нельзя и пора браться за дело!
В первую очередь были изучены материалы по квесто-производству, доступные в интернете. Часть статей я уже публиковал: Как написать Адвенчуру? и Механика головоломок в адвенчурах. Могу добавить пару отличных работ по гейм дизайну: Fundamentals of Game Design, Advanced game design, The Art of Game Design. Конечно, было море пересмотренных ресурсов и материалов, но эти оказали и пара других (перевод которых, надеюсь, я представлю в ближайшем времени) наибольшее влияния.
За образцы, конечно, были взята классика жанра: Broken Sword, Diskworld, Botanicula, Machinarium, etc. Изначально, игра планировалась куда более взрослой, но, в итоге, все пришло к детской, мультяшной графике. Такой выбор, конечно, обусловлен персональными предпочтениями художника, а также тем фактом, что подходящее детское произведение, на которое можно было бы опереться значительно проще найти.
Работа над игрой
Выбор движка
В первую очередь встала задача выбора игрового движка, соответствующего ряду критериев:
- Открытый для модификаций
- Простая и понятная реализация
- Ориентированность на жанр
В качестве кандидатов попали следующие проекты:
В итоге, после анализа существующих решений выбор пал на Alpaca Engine. Несмотря на то, что проект достаточно давно не обновлялся, движок (хотя, это не движок в классическом понимании этого термина, а скорее просто шаблон, по которому пишется игра) оказался вполне удобоваримым для целей написания квеста. Конечно, не хватало многих интересных фич (Parallax Layering, сплошной, смещаемый уровень), но их было решено реализовать самостоятельно, в случае если останется время. Но, конечно, при написании диплома времени всегда не хватает…
Сюжет
Изначально мне хотелось сделать жесткую игру с уникальным сюжетом в стиле хорора (Sublustrum, The Black Mirror, Still life, etc), но быстро стало ясно, что сценаристы не зря едят свой хлеб и было решено последовать совету Пабло Пикассо. По сути, в сюжете для квеста должны присутствовать следующие критерии: поле для загадок, интересная и захватывающая история. В итоге, за основу было выбрано произведение Филипа Пулмана «Золотой компас» из трилогии темные начала.
Разработка персонажа
С разработкой персонажа не возникло серьезных проблем. Несколько пробных вариантов:
И Лира со статичным деймоном готова:
Окружение
Изначально планировалось ограничится одной комнатой и не расползаться мыслью по древу:
Но уже после первых этапов работы стало ясно, что количество предметов на одну сцену крайне выросло и без разделения не обойтись. В первую очередь провели декомпозицию по существующим головоломкам с базовыми скетчами:
Дальше, ориентируясь на классические британские интерьеры был воссоздан кабинет:
Загадки
В квестах существует достаточно много типов загадок, есть даже свои паттерны, но из-за ограничения по времени мы решили остановиться на следующих типах загадок:
- Банальная охота за пикселями
- Взаимодействие предметов
- Взаимодействие с окружением
В целом, ничего уникального, классический набор задач из золотой эры квестов. Дальше, игровые головоломки были проиллюстрированы комиксами:
Результаты
После того, как идея, движок и стилевое оформление было выбрано (а это заняло примерно три месяца), реализация не заставила себя долго ждать. Конечно, пришлось столкнуться с рядом проблем в существующем движке и порыться в его содержании, но ведь в этом и состоит работа инженера.
Получился, конечно, не квест мирового уровня, но на мой взгляд очень достойная работа, особенно для не IT специалиста:
P. S. Девушка успешно защитилась на отлично!
Автор: Silf