Последняя стабильная версия Rust, минимальная версия OpenGL - 2.0
.
Стабильно работает на 64-разрядных Window 10. На остальных системах не проверялась.
Для Linux требуется установить версию ALSA для разработки: libasound2-dev
для Debian и Ubuntu и alsa-lib-devel
для Fedora (см. cpal).
Для сборки и запуска игры запустите команду cargo run --release
.
Клавиши клавиатуры:
- F5 - скриншот
- Space - "далее" для диалогов
- окно игры не сразу фокусируется после перехода с помощью
win + tab
на Windows - при медленном передвижении курсора мыши в главном меню заметны резкие передвижения кнопок
Новеллу можно переделать на свой вкус, заменив все диалоги и текстуры. Ниже описаны возможности и правила редактирования (требуется перекомпиляция при добавлении новых файлов).
Запомните: все текстовые файлы имеют кодировку UTF-8
, а картинки формат png
, и не стоит добавлять файлы, не соответствующие правилам, в папки ресурсов - это может привести к ошибкам.
За ход игры, а точнее, за последовательность диалогов, обоев и героев отвечает файл ./resources/page_table.txt
.
В нём содеражатся блоки страниц с номерами обоев и диалогов. Все страницы идут по порядку, сверху вниз.
При изменении его требуется перекомпиляция проекта, иначе изменения не вступят в силу.
Формат страничных блоков:
[любая информация (в одну строчку)]{
wallpaper = [название обоев]
dialogue = [название диалога]
}
Пример:
В школе {
wallpaper = Класс
dialogue = Как-то там классный диалог
}
Название диалогового файла - Как-то там классный диалог.txt
.
Название обоев - Класс.png
.
Диалоги находятся в папке ./resources/dialogue
.
Файлы диалогов должны именоваться следующим образом: [название диалога].txt
.
Пример: Как-то там классный диалог.txt
.
В начале файла идёт заголовок:
{
[краткое имя] = [полное имя].[дополнительная черта] (положение на экране)
О = Оскар
К = Кломанс.злой
GordonDead = Gordon.dead (Right)
GordonAlive = Gordon.alive (Left)
}
Дополнительная черта нужна лишь для разделения разных текстур одного персонажа. Дополнительные черты нужно указывать и в имени файла текстур персонажа (см. в разделе Персонажи
).
Положения на экране:
Left - Слева с краю
LeftCenter - Центр левой половины
CenterLeft - Левее центра
Center - Центр
CenterRight - Правее центра
RightCenter - Центр правой половины
Right - Справа с краю
Положение на экране можно определить в ручную; по умолчанию стоит значение Center
.
Если у нескольких персонажей одно положение, то они будут наслаиваться друг на друга.
После заголовка идёт сам диалог:
[краткое имя] - [однострочный диалог]
О - Какая хорошая сегодня погода.
Для вставки имени игрока используются {}
:
О - Какая хорошая сегодня погода.
O - Да, {}?
{} - Согласен с вами, Оскар. (здесь имя игрока будет заменено местоимением 'Я')
Для вставки пустого имени (для мыслей, предыстории и т.п.) используется _
:
_ - Сегодня мой первый день в школе.
Пример всего файла и связанных ресурсов:
{
О = Оскар
К = Кломанс.злой
}
_ - Мы решили сходить в парк, прогуляться.
О - Какая хорошая сегодня погода.
O - Да, {}?
{} - Согласен с вами, Оскар.
{} - Что скажете, Кломанс.
К - Да ничего интересного.
Текстуры персонажей:
Кломанс.злой.png
,
Кломанс.добрый.png
,
Оскар.png
.
Все изображения должны быть в формате png
и находятся в папке ./resources/images
.
Обои и задние планы находятся в папке ./resources/images/wallpapers
.
Обои главного меню и конечная заставка игры находятся там же. Пути ./resources/images/wallpapers/main_menu_wallpaper.png
и ./resources/images/wallpapers/ending_wallpaper.png
соответственно.
Обои для самой игры находятся в папке ./resources/images/wallpapers/game
.
Имена обоев должны совпадать с теми, что записаны в вашем файле ./resources/page_table.txt
.
Пример: Класс.png
.
Текстуры персонажей находятся в папке ./resources/images/characters
.
Все текстуры для героев должны именоваться либо так: [имя персонажа].png
; либо так: [имя персонажа].[дополнительная черта].png
.
Дополнительная черта используется для разделения разных текстур одного персонажа. При упоминании его в диалогах дополнительные черты тоже вписываются.
Примеры:
Оскар.png
,
Кломанс.злой.png
,
Gordon.dead.png
.
Путь текстуры для окна с диалогами - ./resources/images/dialog_box.png
;
для картинки во время загрузки - ./resources/images/cat.png
и ./resources/images/loading_screen_assets.png
;
для иконки окна - ./resources/images/window_icon.png
;
для курсора мыши - ./resources/images/mouse_icon.png
.
Основная тема находится в папке ./resources/music
. Файл должен именоваться audio.mp3
и быть в формате mp3
.
Пока что есть только два типа шрифта - главный и диалоговый. Диалоговый нужен для отображения диалогов и имён в диалогах (очевидно), а главный для всего остального.
Поддерживаются форматы ttf
и otf
.
Путь для главного - ./resources/fonts/main.font
.
Путь для диологового - ./resources/fonts/dialogue.font
.