Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/scaledteam/enramti
Enramti это движок для визуальной новеллы на основе Love2D и Lua (LuaJIT)
https://github.com/scaledteam/enramti
love2d lua visual-novel visual-novel-engine
Last synced: about 1 month ago
JSON representation
Enramti это движок для визуальной новеллы на основе Love2D и Lua (LuaJIT)
- Host: GitHub
- URL: https://github.com/scaledteam/enramti
- Owner: scaledteam
- License: gpl-2.0
- Created: 2022-01-24T16:19:27.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2022-02-01T14:50:19.000Z (about 3 years ago)
- Last Synced: 2024-11-09T01:14:00.586Z (3 months ago)
- Topics: love2d, lua, visual-novel, visual-novel-engine
- Language: Lua
- Homepage:
- Size: 1.95 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Enramti
Enramti это движок для визуальной новеллы на основе Love2D и Lua (LuaJIT)## С чего начать
Самый простой метод - скачать последний релиз и начать редактировать сценарий, добавлять фоны и прочее.https://github.com/scaledteam/Enramti/releases/
Для более глубокого понимания можно посмотреть следующие прямые трансляции, связанные с данным движком:
https://www.youtube.com/watch?v=Krs6hwA75c8
https://www.youtube.com/watch?v=0w72ZXHQx2g
## Принцип построения сценария
Сценарий пишется на удобном для восприятия языке, где каждая строчка является одним кадром в новелле. Вот пример:
```
Я подумал тогда об этом, и решил направится вперёд.
```
Данная строчка отобразится в игре как мысли главного героя. Попробуем составить диалог:
```
Фон: Помещение
Персонажи:
Соня
Соня: Приветствую тебя Главный Герой! Как поживаешь?
ГГ: Нормально поживаю.
В этот момент я начал думать что что-то не так. Откуда взялась Соня и почему все забыли имя главного героя?
ГГ: Мне пора бежать.
Фон: Улица
Персонажи:
Я убежал от неё, не попрощавшись.
```
Слово "Персонажи" является ключевым, и список персонажей, разделённый табуляцией (клавишей TAB) является списком персонажей, отображённых на экране.
Если написать это слово без списка, экран очистится от персонажей.
Чтобы описать имя собеседника, необходимо разделить его двоеточием. Важно отметить, что имя не может содержать пробелов.
Это обусловлено сложностью в разделении двоеточия в предложении и имени персонажа.
Слово "Фон" тоже является ключевым, оно позволяет выбрать текущий фон.Данные кодовые слова работают как модификаторы, складываясь в память и применяясь при первой же сказанной фразе или выборе.
## Система выборов
```
Соня: Я так хочу куда-нибудь пойти сегодня! Хочешь пойдём прямо сейчас?
Выбор:
Пойти с ней
Отложить встречуМетка: Пойти с ней
Дать: Пошёл с Соней
ГГ: Отличная идея, пойдём прямо сейчас!
Соня: Ура!
Переход: Конец выбораМетка: Отложить встречу
ГГ: Нет, давай в другой раз.
Соня: Как жалко!
Переход: Конец выбораМетка: Конец выбора
Так или иначе, нам нужно подготовится сегодня. Займёмся делом.
```
В данном контексте происходит простой выбор, который в любом случае приводит к одной и той же ситуации. Персонажи пойдут гулять позже, поэтому сейчас не происходит разветвления сюжета. Но чтобы запомнить, что главный герой что-то выбрал, используется кодовое слово "Дать", которое кладёт ему предмет в инвентарь. Оно может использоваться для разветвления в будущем. Подробнее смотрите файл `script.txt` .