Desktop Maze
Привет всем ещё раз!
Что это? Игрушка под рабочим названием Desktop Maze, изначально клон, ну а в перспективе не более чем идейный наследник казуального рогалика [[Desktop Dungeons]].
Как это? Игра пишется полностью на Пайтоне с использованием модуля cocos2d. В бинарник я превращаю всё это художество при помощи PyInstaller. Вся существующая на данный момент графика сделана в GIMP'е и paint.NET'е, тестовые звуки в Bfxr'е.
Что уже есть? Процедурная генерация уровней (требует тщательной обработки), возможность полной кастомизации игры, уничтожение врагов и условие победы, главное меню, логирование.
Что будет скоро? Поддержка аудио (на данный момент звуки не проигрываются), набор героев и классов, весь интерфейс пользователя, сбор внутриигровой статистики.
Теперь о чём хотел бы попросить. Я уже заметил про полную кастомизацию игры. То есть каждый может оформить свою сборку DM, со своими наборами спрайтов для уровней, звуками и графическим оформлением вообще. После добавления классов персонажей и большего числа врагов я планирую добавить возможность настраивать и это.
Потому - каждый желающий может взять текущую демку, нарисовать для неё тестовые паки уровней и протестить. Любые вопросы и пожелания (в том числе по будущим классам, возможностям, оформлению) только приветствуются.
Спасибо!)
UPD для тех, кто решит нарисовать тестовый набор спрайтов:
- в папке levels создайте новую папку с желаемым именем
- в неё поместите новые спрайты
- скопируйте из существующих папок с уровнями файл descr.txt
- отредактируйте его так, чтобы имена спрайтов в нём и в папке совпадали; имя уровня в этом файле можно указать произвольное, не связанное с именем папки
- обратите внимание на регистр: png и PNG это разные вещи
- значения sprite_size и level_dim менять стоит, только если хочется острых ощущений :)
- обычно игра пишет об ошибках в логи в папке logs. К сожалению, я ещё не охватил весь перечень возможных негараздов, но в любом случае приведённая там информация может быть полезной
- 01 октября 2011, 23:43
- 05
Спасибо. Поправил. Перекачай пожалуйста.
Круто. Отличать бы еще "туман войны" от фона.. А сколько планируется классов и т.п.? И вообще, чем это так радикально будет отличаться от DD?
Дада, туману войны выйти из тени!
Ок, добавлю спрайт пола.
Про классы ничего не скажу пока, ещё думаю. В первом выпуске хотелось бы 4 штуки, возможно, напишу свои мысли на днях, если интересно.
По поводу «отличаться» ответил чуть ниже.
Полная кастомизация на мой взгляд не нужна, разве что для того, чтобы разработчик поработал и сделал несколько скинов\схем. :)
Играть играется, но это явно пока просто проба пера - игры нет, т.к. нет задачи игроку, кроме перебора путей.
Кто-то должен задать этот вопрос: А зачем вообще клонировать DD, если есть DD? Придумать свои правила гораздо легче и приятнее, чем ползти под хвостом чужой славы.
Ну, клонировать DD в своё время хотелось просто ради опыта и удовольствия.
Сейчас тупо клонировать уже не хочется, потому я открыт для предложений :)
Полная кастомизация нужна и она будет :)
Сразу не понял что это за "Пайтон", ведь это же Питон, там Y стоит и читается как И. Вот если бы был "Pithon", тогда спору нет, там "АЙ".
Я написал абсолютно правильно, уж поверь :)
ну ладно ) спорить не буду ))) Может я не прав.
Язык назван в честь них, а они никак не питоны
Я нарисовал спрайты, переименовал их как надо, заменил ими спрайты из папки basic - пункт меню "start with basic" перестал работать. Пошел другим путем: создал в папке levels новую папку, кинул спрайты туда, все как надо настроил - игра перестала запускаться. Что я делаю не так?
В папке logs лежат логи игры. Если там есть записи, начинающиеся с ERROR или WARNING, скопируй сюда, пожалуйста.
Таких записей нет
Хм, тогда ещё одна просьба: заархивируй папку со своим уровнем и кинь мне. Я проверю у себя, что не так.
отправил
Ок, уже разобрались :)
Эх, жаль не знал про PyInstaller когда сам интересовался Кокосом. Шаманство с py2exe тогда меня отвратило от питона вообще. Ну и производительность.
Эхъ, люблю я рогалики, не все, не всегда, но люблю. Пусть это даже будет частично клон ДД, но даёшь развитие сей прекрасной идеи)
Ещё думаю покалякать спрайты, может чего толкового выйдет, чем можно будет поделиться))
Ого, на питоне? Одобряю (:
Кстати, не поделишься впечатлениями от cocos2d?
Штука добротная.
Из плюсов простота и достаточно широкие возможности. Есть встроенный интерпретатор Python (в моём exe-шнике можешь нажать ctrl+i).
Из минусов ужасная, просто кошмарная документация. При том, что для cocos2d для iOS всё отлично. А здесь иногда приходится гуглить казалось бы очевидные вещи.
Ну и вот нашёлся баг, при котором стоящие рядом спрайты почему-то рисуются с промежутком между собой. Не знаю, вина ли Кокоса или pyglet'а, который под низом, но буду разбираться.
Там есть класс для tilemap?
Что есть tilemap?
http://en.wikipedia.org/wiki/Tile_engine
http://ru.wikipedia.org/wiki/Тайловая_графика
o_0
Ээ, разве эту шнягу не реализует сам программист?
Собственно, нечто подобное и у меня сделано.
Можно, конечно, и самому это все сделать, но хороший 2D движок\фреймворк должен иметь этот функционал из коробки.
Если просто из спрайтов делать - это не то. Смысл тайлмапа (массива из тайлов) в том, что это обычно отдельный объект, со своей особой реализацией и оптимизацией. В идеале, отрисовка обычно отличается от динамических спрайтов, можно делать большие и сложные уровни, которые не нагружают систему, тысячи тайлов могут обрабатываться как один объект.
Ну, вот. Я, впрочем, пока не пользовался, потому не могу ничего сказать.
Немного вестей с полей:
На выходных собираюсь сделать второй билд и выложить на суд строгой публики. Надеюсь, что будет полностью готовый выбор персонажа, звуки, ну и часть одного из левел-паков :)