А теперь о Гранд-Плане
Я тут подумал... А зачем нам делать просто «приложение для D&D», когда можно сделать Абсолютный Лучший Единый Модулятор Безграничных Импровизаций (Конструктор)?!
Что это будет за зверь?
Представьте: вы заходите в приложение и говорите ему: «Сегодня я играю не в D&D. Сегодня у меня авторский сеттинг про боевых хомяков-киборгов в викторианском Лондоне». И приложение такое: «Окей, босс, погнали!».
В нашем конструкторе вы сможете:
- Изобрести велосипед (и приделать к нему турбины): Описывать любые характеристики, навыки и умения. Хотите «Интеллект»? Пожалуйста. Хотите «Уровень стресса от общения с родственниками»? Без проблем!
Для описания объектов можно добавить разные поля (свойства): текст, цифры, ссылки на ресурсы в сети и т.д. (в проработке списки и поля типа да/нет).
Так например, для описания значений характеристик и навыков в D&D нужно минимум 70 полей: каждая из 6 характеристик описывается двумя числами и признаком владения спасброском, а 18 навыков также описываются числами в виде значений и бонусов + владением навыком. В нашем же случае в пресете мы заготовили почти 2 сотни параметров: поля для заметок, ссылок, выпадающие списки и др. элементы для упрощения жизни и детальной проработки персонажа. И это только один из блоков, а ведь есть еще владения, состояния, инвентарь (где каждый предмет описан десятками параметров) и магией (там ещё хуже). Есть еще расы (виды), предыстории, классы - работы тут будет еще много.
- Дерево связей (или адская паутина): Вы сможете задавать вложенность и связи. Типа: «Если Сила хомяка больше 10, то навык "Грызть паркет" получает бонус +2, а Харизма падает, потому что у него набиты щеки».
Чтобы было удобнее управлять своей системой каждый каталог можно разделить на группы и подгруппы, внутри которых объекты и будут существовать. Сейчас мы работаем над связями, чтобы значения полей передавались из свойства к свойству и пересчитывались автоматически (например, в зависимости от уровня персонажа растет бонус мастерства, который бает бонусы к навыкам и предметам, которыми владеет персонаж).
- Сам себе геймдизайнер: Даже если какой-то экзотической системы (типа «Медведи на велосипедах» или «Мир Тьмы») изначально не будет в базе — вы сможете «закодить» её внутри приложения ручками. Без знания C++ и жертвоприношений старыми новым богам.
В проработке у нас и редактор переменных, чтобы перекидывать значения между страницами персонажа и меть доступ к подсказкам по пересчёту (а далее будет только больше автоматизации)
А теперь реальность...
Пока я это писал, у меня самого вспотели ладошки от масштаба. Поэтому, чтобы мы не утонули в бесконечном кодинге «Системы Всего», наш текущий фокус — старая добрая D&D 5e.
Почему? Потому что это наш полигон. Мы оттачиваем все эти сложные связи, формулы и вложенности на правилах «Пятерки» (pathfinder пока трогать боимся, там слишком мудро). Как только мы убедимся, что D&D работает как швейцарские часы (ну, или хотя бы как советский будильник — громко и надежно), мы откроем шлюзы для всего остального.
Короче: Мы строим систему, которая позволит вам играть во что угодно, даже если это игра по мотивам вашего сна после вчерашней пиццы. Но начнем с классики.
Терпения нам всем. И пожелайте удачи моим нейронам — им сейчас тяжелее всего планировать эту архитектуру «гибкости 80-го уровня».
P.S. Если увидите меня на улице, шепчущего под нос "переменная выносливости зависит от квадрата ловкости...", не пугайтесь. Это просто процесс проектирования конструктора.