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

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

 

 

После прохождения очередной концовки "Бесконечного лета» (одна из наиболее популярных русскоязычных новелл) я обратила внимание на строку в титрах: "Игра сделана при помощи RenPy". Погуглив что такое это загадочное RenPy (как выяснилось - гибкий движок для игр подобного жанра), я загорелась созданием собственной новеллы, потому что: 

1. очень простой синтаксис;

2. добавление изображений/аудио/видео не вызывает проблем (а ведь это самое важное, учитывая количество спрайтов,  CG, саундтреков);

3. удобный интерфейс.

 

 

RenPy можно бесплатно скачать с официального сайта. После установки вы можете пройти очень подробное обучение в виде диалога с персонажем Эйлин. Но скажу пару слов о главных компонентах новеллы.

 

1)  Для начала стоит выбрать редактор, в котором вы будете писать код: Atom, jEdit, Editra.

2) Открыв файлы сценария, не стоит пугаться непонятного кода, комментарии могут прояснить многие моменты. Главный файл для вас - scripts.rpy, в котором и пишется игра.

 На начальном этапе при запуске будет следующая картина:

 

 

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

Синтаксис следующий:

"имя_персонажа" "реплика"

Чтобы упростить запись имени и задать его цвет, можно использовать следующую конструкцию:

define короткое_имя_персонажа = Character('полное_имя', color="код_цвета").

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

"реплика"

Посмотрим, как это выглядит в действии:

 

 

 

Успех игры напрямую зависит от качества текста. Написание сценария - не дело одного дня, так что стоит отнестись к этому этапу со всей серьезностью. 

 

4) Самое время добавить фон и изображение персонажа. Так как в игре следует передавать эмоции героев, то возникает необходимость часто менять спрайты на экране. Для удобства все используемые изображения нужно добавить в папку игры images. К примеру, нужно отобразить персонажа на фоне в его левой части, а после реплики поменять эмоцию:

 

scene название_фоновой_картинки

show название_спрайта at left

"имя_персонажа" "реплика"

show название_спрайта at left

 

Как это выглядит:

 

 

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

 

5) Добавление аудио записывается в одну строчку:

 

play music "music/название_песни.mp3"

 

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

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

 - библиотеки бесплатных звуков и мелодий

 - поиск энтузиастов, которые напишут саундтрек бесплатно

 - покупка лицензии на использование мелодий

 - самостоятельная работа над саундтреком (в наше время для этого не нужно иметь музыкальное образование и инструмент)

 

6) Стандартный интерфейс выглядит довольно уныло. Начинающим будет сложно вносить кардинальные изменения в GUI, но можно, как минимум, выбрать свой фон и переделать навигацию. Если до этого мы использовали файл scripts.rpy, то теперь писать код придется в  первую очередь в gui.rpy. Вот что получилось при модификации нескольких строк и добавления своего шрифта:

 

 

 

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

 

Дарья Прядка

Популярні статті

Читати далі