Роглайк «Долго и трудно»

Добавлен , опубликован
Уже некоторое время пишу пошаговую 2д с видом сбоку.
В общем это что-то среднее между классическим роглайк и идеей террарии, в которые я добавил пару несложных фишек.
Одна из особенностей это развитие, жизнь мира. Пока игрок ходит, мир вокруг не ждёт его, а просчитывается, развивается и изменяется. Вторая особенность в том, что я делаю эту игру полностью настраиваемой через встроенный редактор. Вплоть до того, что игрок может на основе этого редактора создать свою игру, совсем другую.
Сам я ставлю идею "редактор в первую очередь" как основную. Потому что я подхожу с точки зрения разработчика. Если смотреть как игрок, то конечно разницы не так много. Прописано ли поведение существ в коде, или задаётся в редакторе, для игрока не так актуально.
Вот пара скринов на начало 15-го года.
Тут кадр из игры.
А вот тут кадры из редактора.
Это настройка поведения существ. Достаточно гибкая, в общем на ней можно писать полноценные программы, хоть и крохотные.
Тут общий экран редактора и начало настройки игровых существ.
Сейчас в игре сделано несколько типов основных сущностей. Ядро жизни это разумные подземные карлики, они честно ищут руду, добывают её, ищут и добывают доски, из которых строят различные здания. Куют оружие и доспехи, сражаются с враждебными существами.
И самое главное, злоумышляют Судный День. Они построят Машины судного дня, раньше или позже. А когда построят все пять, активируют их. Поэтому первая цель игрока создать себе убежище, в котором попытаться переждать коллапс мира, и выйти потом в мир новый.
Стоит добавить, что суть геймплея проекта достаточно точно соответствует названию. Весьма трудно, и достаточно долго.
Проект пишу на языке C++, поддерживается win-api либо sdl2-api, благодаря чему можно собирать как виндоус, так и нативную линукс версию. Основная всё таки виндовая, работу веду в среде code::blocks на компиляторах gcc, open watcom и borland си.
Скриншот исходников проекта.
Демку игры для теста я с радостью дам всем, кому это интересно. Но открыто выкладывать её пока не буду, игра слишком на ранней стадии.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
14
По наличию честных расчетов всего игрового мира концепция напоминает Dwarf Fortress.
29
На самом деле файлы по 1.5мб кода только пугают...
Такого просто не должно быть. Нигде и никогда.
14
Doc, файлы исходников в 1,5 мб вряд ли бывают. :) Речь идёт о суммарном объёме всех исходников в проекте.
2
Локен, ок, когда будет стабильный билд вышлю.
GeneralElConsul, в точку. Ну наверное не продолжение, всё таки, а бледная копия уставшего человека. Будет всё попроще, однако идея в целом именно та.
Графон как видно сразу, не тот, и сущностей в разы меньше. Однако я надеюсь что могут найтись и плюсы по сравнению с той игрой.
Doc, ха, верно подметил. Но мир несовершенен, ещё и не такое бывает. На самом деле работать вполне удобно с таким большим файлом. Контрл+ф, вбиваю имя функции, энтер. Вот все неудобства.
2
Kozinaka, про то, напоминает ли дварф фортресс, сказать трудно.Во первых, дф настолько меня пугает, что я не более, чем смотрел по нему летсплеи. Не осмеливаясь пытаться освоить. Он чертовски пугает. Я хочу верить, что долготрудный так пугать не будет.
Сущностей будет на порядки меньше, всё по идее должно быть доступно для освоения за пару вечеров.
alexprey, нет, в классическом текстовом формате восемь бит на символ.
Я стараюсь писать код очень старательно, и по своим стандартам качественно. Поэтому обеспечиваю совместимость со многими старыми си компиляторами, которые не знали юникода.
14
sb3d:
Во первых, дф настолько меня пугает, что я не более, чем смотрел по нему летсплеи.
Аналогичный случай в нашем колхозе! :)
Кет:
там на скрине mgame.cpp 1,5 МБ.
Воистину! Они и вправду существуют!
У меня похожий процесс в проекте. На работе я делаю как положено - дроблю на функции, оборачиваю в объекты, а в домашнем проекте можно не думать о тех, кто будет читать код, и делать всё под себя. Я разделяю объекты/методы на части только тогда, когда они перестают умещаться в моей голове. А это сильно реже, чем требуется по этикету.
В итоге объектный подход потихоньку вырождается в процедурный. Есть большие жирные классы типа "Отрисовщик сцены", "Графический движок", "Игровой движок" внутри которых просто вызовы процедур-методов. Местами, конечно, есть наследование, иерархия и прочее, но только при необходимости. Не перед кем демонстрировать трушность ООП.
34
я тоже хочу потестить =)
очень интересно будет поиграть.
2
Kozinaka, код на скрине я начинал писать в ноябре 2012-ого, и там планировался простенький спрайтовый софтварный движок (vanilla rusk engine), чтобы делать маленькие игры. Потом и начал делать маленький проектик. В четыре файла: данные, сам редактор, главный цикл, и игры. И то мне казалось, ну зачем данные в отдельный файл?
Когда маленький проектик через год стал продавливать пол, грозясь под своим весом провалиться в ад, менять было уже поздно.
H, конечно.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.