Sto realizzando un semplice gioco di strategia 4X nello spazio in cui ogni nodo è un punto di interesse (un pianeta, un asteroide e così via).
Per generare casualmente una mappa, seguirei i passaggi seguenti
Decidi quanti tipi di ciascun nodo avrà la mappa (forse, diciamo, 5 pianeti simili alla Terra, 10 pianeti sterili ecc.)
Posiziona ogni tipo di nodo sulla mappa.
Per il passaggio 2 vorrei avere una diffusione uniforme di ciascun tipo di nodo. Quindi, per esempio, inizierei posizionando tutti i pianeti simili alla terra. Se faccio semplicemente un rand (map.width, map.height) per determinare la posizione, potrei finire per raggruppare tutti i pianeti simili alla terra, il che darà vantaggio al giocatore che inizia in quella zona.
Esistono metodi, come l'utilizzo di diverse funzioni grafiche o di rumore, che potrebbero generare una sequenza di coordinate (x, y) che si estendono l'una dall'altra. Allo stesso modo, ci sono modi per generare coordinate vicine tra loro?