Ren'Py
Тип | Ігровий рушій |
---|---|
Розробник | Том «PyTom» Ротамел |
Перший випуск | 24 серпня, 2004 |
Стабільний випуск | 8.1.1 (7 червня, 2023 ) |
Платформа | |
Операційна система | Windows, Linux і macOS |
Мова програмування | Python, Cython |
Доступні мови | Англійська, повна підтримка UTF-8 |
Стан розробки | Активний |
Ліцензія | Ліцензія MIT |
Репозиторій | github.com/renpy/renpy |
Вебсайт | renpy.org |
Ren'Py (від ren і Python) — безплатний, вільний і відкритий ігровий рушій для створення як некомерційних, так і комерційних візуальних новел (графічних квестів з діалоговою системою) у 2D-графіці. Підтримує платформи Windows, Linux і Mac OS X, також запуск ігор підтримується на Android і iOS. Автором рушія є Том «PyTom» Ротамел (англ. Tom Rothamel).
Понад 1250 ігор використовують рушій Ren'Py, переважна більшість з яких англійською мовою. [1] Документація рушія доступна англійською, японською та китайською мовами.
Огляд[ред. | ред. код]
В можливості рушія входить створення розгалужених діалогових потоків, збереження та відкати до потрібних точок сценарію, різні варіації переходів між сценами, створення різноманітних меню вибору, DLC та інше. Є можливість відігравати відео як в повноекранному режимі, так і в формі анімованих спрайтів. Для опису потрібних анімацій використовується описова мова ATL (Animation and Translation Language). Також є можливість анімувати керівні елементи графічного інтерфейсу.
Скриптова система в Ren'Py максимально спрощена, та використовується як послідовний опис подій в грі. Є можливість вставляти блоки Python-коду в сценарний потік, що значно збільшує потенційні можливості в ігровій сцені.
Додаткові інструменти можуть допомогти запакувати всі ігрові ресурси в архів а також провести скрипти через обфускацію (заплутування джерельних кодів з метою захистити авторську логіку). Проте ці заходи не дуже надійні для захисту авторського контенту та можуть бути оминуті спеціалізованими інструментами (напр. unrpa[2]).
Ren'Py побудований на pygame, який своєю чергою використовує бібліотеку SDL для роботи з графікою.
Стандартно, рушій підтримує Windows, останні версії Mac OS X та Linux, а також може бути запущений на Android та iOS 7. Але через свою відкритість та мінімальне використання сторонніх бібліотек може бути портований практично на будь-яку платформу, яка підтримує Python та SDL.
Опис[ред. | ред. код]
Ren'Py поширюється безкоштовно. Автори рушія просять творців ігор внести гру в загальний каталог на сайті розробника. Ren'Py є програмою з відкритим вихідним кодом і може бути вільно модифікованим і використаним як для некомерційних, так і комерційних цілей. Створені на ньому ігри будуть з відкритими вихідними кодами або не обов'язково з відкритим.
Створення простих ігор в цьому конструкторі за складністю передбачена для будь-кого (тобто не обов'язково знати мову програмування), але для більш складних ігор необхідно вивчити і застосовувати скриптову мову Python: є можливості для створення оригінальної манги, в тому числі підключення відео і використання різних спецефектів на рушії; також є можливість підключати міні-ігри, системи підрахунку параметрів для ускладнення ігрового процесу. Є можливість редагувати нетекстовий скрипт проекту прямо з гри за допомогою внутрішнього ігрового інструменту Інтерактивний директор.
За стандартом Ren'Py вже налаштовано на створення типової гри жанру візуальних новел та містить:
- Головне меню з можливістю налаштування, збереження і завантаження гри;
- Автоматичне збереження гри;
- Відкат для повернення раніше показаного екрану;
- Інтелектуальне завантаження зображень, яке завантажує зображення у фоновому режимі, що запобігає затримкам під час гри;
- Підтримку керування грою за допомогою миші, клавіатури або геймпада;
- Режим показу на весь екран та у вікні;
- Можливість пропускати текст при відтворенні, в тому числі можливість показувати лише текст, який не був показаний раніше;
- Автоматичну прокрутку тексту без використання клавіатури, що може бути зручно при великих обсягах тексту;
- Можливість приховувати текст так, що користувач може бачити зображення за ним;
- Здатність самостійно змінити гучність музики, звукових ефектів та голосу.
Також при використанні нової версії GUI 7 є безліч нововведень:
- Історія, яка дає змогу відтворювати вже прочитані діалоги;
- Екран довідки, який показує при виклику основні клавіші керування на клавіатурі, миші та геймпаді;
- Налаштування екрана «Про гру», спочатку містить назву і версію гри, версію Ren'Py і ліцензію;
- Оптимізація під мобільні пристрої за стандартом.
Графіка і якість гри, створеної в даному конструкторі, залежить більшою мірою від авторських умінь малювання.
Також рушій дає можливість:
- Представляти текст як в ADV, так і в NVL-стилі;
- Налаштувати практично будь-який елемент інтерфейсу.
Використання в іграх[ред. | ред. код]
Деякі з ігор, створених на Ren'Py
Примітки[ред. | ред. код]
- ↑ Ren'Py Games List. Архів оригіналу за 12 квітня 2017. Процитовано 11 квітня 2017.
- ↑ A program to extract files from the RPA archive format. Архів оригіналу за 2 березня 2017. Процитовано 11 квітня 2017.