Что такое Exsomnia?

Это рабочее название моего личного проекта, начатого в июне 2013-го года. Когда-нибудь в отдалённом будущем это должна быть полноценная игра в жанре RPG / Adventure.

На какой стадии находится разработка?

К сожалению, с далёкого уже 2013-го года сделано было не так уж много. Первый год разработки был полностью потрачен на создание редактора (конечно же, незавершённого). По итогам в 2014-м году - создана простенькая техно-демка (до недавнего времени лежавшая на этой самой странице). Затем, по множеству неуважительных причин, разработка на долгое время прекратилась вообще - не считая редких коротких всплесков, связанных опять же с доработками редактора.

Всерьёз вернулся к проекту (параллельно с основной работой) я только осенью 2017-го, несколько месяцев потратив на... угадайте что? Правильно: опять на доработки и рефакторинг редактора! :) Впрочем, к новому году мне это немного поднадоело, и у меня появилось настойчивое желание сделать наконец хоть что-нибудь относительно играбельное. Спустя два месяца, на этой странице я готов представить результат - первое демо с маленьким кусочком реального сюжета будущей Exsomnia.

Так а что с редактором?

Редактор, с недавних пор сменивший название с первоначального рабочего "Dragoned" (сокращение от "Dragon Editor") на пафосное Isolde (Isometric Old-school Editor), всё ещё очень далёк от того, чтобы считаться завершённым. В нём уже есть довольно много действительно полезного функционала, которым мне даже удаётся иногда пользоваться для разработки игры. В то же время, он кишит и множеством экспериментальных фичей разной степени удачности, а некоторые архитектурные решения сильно затрудняют дальнейшую полноценную разработку. План приведения всего этого в относительный порядок у меня имеется, однако, как нетрудно догадаться, времени на это уйдёт ещё очень много...

На чём всё это сделано?

В основном - на C++. Для интерфейса редактора используется Qt. Для игровых скриптов - Python. Для рендера - Direct3D 9, fixed pipeline (да, до сих пор... не спрашивайте). Также используется множество сторонних свободных библиотек (подробнее - см. титры в самой игре), но никаких "серьёзных" движков. Большая часть кода - движки для рендера, интерфейса, всевозможные вспомогательные фреймворки - написаны лично мной, хоть и с использованием уже упомянутых сторонних библиотек. Правда, пописывать на досуге эти движки и фреймворки я начал ещё задолго до старта проекта Exsomnia - году эдак в 2009-2010.

Где можно хоть что-нибудь увидеть?

Да прямо здесь!

Exsomnia: сюжетное демо, версия 0.1.5

Редактор: Isolde v0.5 build 709

Примечание: в этой версии нет практически никаких "механик" - ни инвентаря, ни навыков, ни, тем более, боёвки. Только одна (довольно пустая) локация, множество диалогов и одна загадка, которую на момент написания этого текста, несмотря на несколько этапов упрощения, ещё никто не разгадал целиком и правильно без подсказок. :( Так что на текущий момент Exsomnia правильнее будет воспринимать не как RPG, а как изометрический недоквест. Всё остальное будет позже. Однажды...

Для запуска, возможно, потребуется предварительно установить MS Visual C++ 2017 Redistributable.

Поддержку Windows XP - не обещаю (давно не проверял, у меня самого сейчас Windows 8.1). Однако знаю нескольких человек, успешно прошедших эту версию на Linux с помощью Wine.

Как пользоваться этим редактором?!

Для ответа на этот вопрос я когда-то давно подготовил серию видео, наглядно показывающих процесс создания небольшого тестового проекта "с нуля" (не считая нескольких заранее подготовленных картинок). Большая часть этих видео писалась ещё в 2014-м году, однако и сегодня они покрывают практически все основные возможности редактора, хотя, безусловно, с тех пор кое-что менялось и дорабатывалось.

К сожалению, на запись голосовых комментариев меня пока не хватило. :)

Так что смотреть можно под любимую музыку - слушать там всё равно нечего.

...А можно и не смотреть. ;)


1 - Создание тайлсетов для ландшафта.

2 - Генерация простейших изометрических спрайтов с помощью "Изометризатора".

3 - Создание листов спрайтов.

4 - Редактор карт.

5 - Поддержка топдауна, миксер спрайтов.

6 - Поддержка кадровых анимаций, создание актёров (персонажей).

7 - Скриптовые триггеры.

8 - Тайлинг спрайтов.

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

© 2013-2018 by Andrey Antsut a.k.a. Kirinyale