tło
Prowadzę serwer Minecraft, na którym zamierzam zaprojektować miasto początkowe o dość dużej skali. Mam szereg rzeczy, takich jak znaki reguły i klatki mobów, chciałbym tam postawić budynki. Samo miasto będzie bardzo duże i rozproszone, najlepiej do 1000 na 1000 bloków.
Same budynki będą miały sześciany lub prostokątne ślady, które są oparte na określonej kostce podstawowej, podobnie jak wszystkie wielokrotności 3 bloków. Ulice i odległość między budynkami będą miały korzystnie szerokość 5-11 bloków, w zależności od znaczenia ulicy.
Kiedy zacznę plan miasta, będę dokładnie wiedział, jak duże mają być budynki i ile będzie.
Problem
Problemem jest zaprojektowanie układu dla miasta. Oczywiście z czymś na taką skalę, a ja pochodzę ze środowiska programistycznego, a nie ze środowiska urbanisty, trudno jest nawet zacząć owijać się wokół problemu.
Problem polega konkretnie na tym, że chcę, aby miasto wyglądało tak naturalnie, jak to możliwe. Oczywiście byłoby to dość łatwe do zbudowania na prostym wzorze siatki, ale chcę uniknąć siatki lub czegokolwiek, co wygląda jak siatka, w miarę możliwości.
Pytanie
Jakie algorytmy mogę zastosować, aby pomóc mi zaprojektować je za pomocą kodu? Myślałem, że wyglądałoby to najbardziej naturalnie, gdybym w jakiś sposób używał fraktali, ponieważ Minecraft wykorzystuje fraktale już w trakcie generowania terenu, a miasto wydaje się naturalnie rosnąć w strukturze fraktalnej.
Myślę, że pod pewnymi względami jest podobny do algorytmu odtwarzania tetris, więc jeśli ktoś ma rozwiązania, które istnieją w tym kierunku, to też by pomogło. Wyobrażam sobie coś, w czym będę w stanie zdefiniować kształty, których chcę użyć, a następnie oprogramowanie iteruje, dopóki nie znajdzie najbardziej „optymalnego” rozwiązania dla równomiernego rozmieszczenia budynków. Czy istnieje już coś, co pomogłoby mi rozwiązać ten problem za pomocą Pythona, najlepiej w formie wizualnej za pomocą pygame?
Oczywiście ma to również interesujące implikacje dla generowania miast w ogóle w projektowaniu gier, więc jestem bardzo podekscytowany, aby zobaczyć, jakie jest najlepsze rozwiązanie.
edytuj Żeby było jasne, właśnie szukam układu w tym momencie, ponieważ budynki zostaną zaprojektowane i wbudowane w grę.