Фон
Я запускаю сервер minecraft, де я збираюся створити місто-початківець досить великих масштабів. У мене є ряд речей, таких як правила знаків та клітки, які я хотів би розмістити там у будинках. Саме місто буде надзвичайно великим і розкинутим, бажано розміром до 1000 на 1000 блоків.
Самі будівлі матимуть кубічні або прямокутні сліди, які базуються на певному базовому кубі, як і всі кратні з 3 блоків. Вулиці та відстань між будинками будуть переважно шириною 5-11 блоків, залежно від важливості вулиці.
Коли я розпочну план міста, я точно буду знати, наскільки я хочу, щоб будівлі були і скільки їх буде.
Проблема
Проблема - це розробка планування для міста. Очевидно, що з чимось подібним масштабом, і мені виходить з фону програмування, а не з планування містобудівників, досить складно навіть почати обертати голову навколо проблеми.
Проблема конкретно в тому, що я хочу, щоб місто виглядало максимально природно. Звичайно, це було б досить просто побудувати на простому шаблоні сітки, але я хочу максимально уникати сітки або будь-чого, що схоже на сітку.
Питання
Якими алгоритмами я можу користуватися, щоб допомогти мені розробити його за допомогою коду? Я думав, що це буде виглядати найбільш природно, якби я якось використовував фрактали, оскільки мінекрафт використовує фрактали вже в своєму поколінні місцевості, а місто, схоже, росте за фрактальною схемою природним шляхом.
Я думаю, що це певним чином схоже на алгоритм гри в тетріс, тому якщо у когось є рішення, які існують в цьому напрямку, то це також допоможе. Я зображую щось, де я зможу визначити форми, які я хочу використовувати, і програмне забезпечення потім ітераціює, поки не знайде найбільш «оптимальне» рішення для рівномірного розподілу будівель. Чи існує щось, що допоможе мені вирішити цю проблему за допомогою python, бажано візуально, використовуючи pygame?
Природно, це також має цікаве значення для генерації міста взагалі в ігровому дизайні, тому я дуже рада бачити, що найкраще рішення.
редагування Для того, щоб було зрозуміло, я просто шукаю макет на цьому етапі, оскільки будівлі будуть проектуватися та будуватися в грі.