Ren'Py это бесплатный кросс-платформенный движок, который поможет вам сделать сюжетную игру. Это может быть:
Визуальная новелла, история, рассказанная с помощью текста, изображений, звуков и музыки. Скриптовый язык Ren'Py позволяет писать визуальные новеллы просто и эффективно, профессиональный программист для создания игры не понадобится.
Симулятор, например, симулятор свиданий или тайм-менеджер тоже можно написать на Ren'Py, используя поддержку языка Python. Движок сам позаботится о таких вещах, как постоянство и эффективный рендеринг, позволяя программисту сфокусироваться на интерфейсе и логике игры. Более того, скриптовый язык Ren'Py, на котором так просто писать визуальные новеллы, позволит добавить сюжетные вставки в ваш симулятор.
Возможности визуализации и геймплея Ren'Py могут быть расширены пользователем и достаточны для создания любой двумерной сюжетной игры.
Бесплатность
На Ren'Py можно делать как коммерческие, так и бесплатные игры. Хотя движок и его библиотеки являются open source, лицензирован от таким образом, что вы можете сами выбрать, будут у вашей игры открытые исходники или нет. Для распространения игры на Ren'Py вам не придется платить создателям движка или кому-то еще.
Кросс-платформенность
Одно из главных преимуществ Ren'Py - его кросс-платформенность.
Windows 2000+ (x86)
Mac OS X 10.4+ (x86 и ppc)
Linux (x86, glibc 2.3+)
Движок может компилировать отдельные версии игр для всех этих платформ. Пользователю не придется ничего дополнительно скачивать - игры запустятся сразу.
Скриптовый язык
В Ren'Py используется простой язык, основанные на тексте. Вот небольшой отрывок из игры:
label family:
scene bg beach2
with dissolve
"Вскоре Мэри нарушила тишину, задав мне вопрос."
show mary dark smiling
with dissolve
m "Я немного рассказала о своей семье... но еще не спрашивала о твоей. Какая она?"
p "Здесь на острове я живу с моими тетей и дядей, а дома - с мамой, папой и сестрой."
m "Сестрой? Старшей или младшей?"
Как видно в этом примере, взятом из настоящей игры, работа со скриптом Ren'Py требует ненамного больше усилий, чем простой набор сюжетного текста. Движок даже позволяет сокращать имена персонажей и печатать m вместо "Мэри".
Ren'Py позволяет назначить персонажам и изображениям переменные. С ними очень просто вносить изменения, не переписывая всю игру. Скрипт также позволяет добиться того, чтобы определенные изображения или текст оставались неизменными на протяжении всей игры.
Вместе с движком поставляется тектовый редактор jEdit, но скриптовый язык Ren'Py основан на тексте и это позволяет работать с ним в текстовых редакторах на ваш выбор. Есть также сторонние инструменты для проверки правописания и сравнения двух версий игры.
Возможности скриптового языка:
- Отображение диалогов и мыслей
- Игрок может делать выборы с помощью меню
- Показ и скрытие изображений
- Переходы между экранами
- Проигрывание музыки, звуков и голоса
- Переходы по меткам
- Использование переменных
- Использования языка Python для более сложных задач
Начиная с версии 6.10 появилась возможность произвольно анимировать положение камеры, делая небольшие клипы из одного или нескольких сменяющихся изображений:
Настройки по умолчанию
Ren'Py по умолчанию включает все возможности, которые игрок ожидает от визуальной новеллы. По желанию их можно отключить, но каждая новая игра будет иметь:
- Главное меню, отображаемое перед началом игры
- Игровое меню для загрузки, сохранения и настроек
- Выбор между полноэкранным и оконным режимами
- Независимая настройка громкости музыки, звуков и голоса
- Возможность промотки текста, с ограничением на уже пройденное
- Автоматическая промотка текста на любой скорости, причем более длинный текст остается на экране дольше
- Возможность скрыть текст, чтобы игрок мог рассмотреть фон
- Отмотка на предыдущие экраны, где можно сделать другой выбор
- Предварительная загрузка фоновых изображений, ускоряющая их вывод на экран
Настройки внешнего вида и локализация
У разработчика игры множество возможностей настроить Ren'Py под свою игру:
- Отображение текста в режиме NVL, когда на экран выводится несколько абзацев текста одновременно
- Изменение внешнего вида меню с помощью тем
- Стили, с помощью которых можно детально настроить вид игры
- Можно менять шрифт, его размер, цвет и вид. Текстовые тэги позволяют применять эти свойства к отдельным блокам текста.
- Ren'Py был переведен на множество языков, включая русский
Ren'Py поддерживает шрифты TrueType и некоторые шрифты, основанные на изображениях. Движок сам запакует все ресурсы в архивный файл формата RPA - это предотвратит их случайный просмотр игроком (для защиты от спойлеров).
На движке Ren'Py сделано уже более 180 игр, из них несколько на русском языке.
Полезные ссылки: Официальный сайт движка - Подробное описание и форум на английском языке Русская страничка движка - Локализованная версия движка и Руководство для начинающих
Описание движка по материалам официального сайта.
Перевод (с сокращениями) мой.