Terreno generado proceduralmente

La generación procedural, o por procedimientos, es un enfoque de desarrollo que utiliza algoritmos para generar contenido de manera automática. Esto incluye la generación de niveles, terrenos, misiones, personajes y otros elementos en videojuegos. En lugar de diseñar a mano cada componente del juego, se utilizan algoritmos para crearlos de forma dinámica, lo que permite una mayor variabilidad y rejugabilidad creando niveles únicos en cada ocasión.

A continuación te voy a enseñar los pasos a seguir para crear sencillos bosques con espesura y delimitaciones cohesionadas:

  1. Llenaremos toda la matriz con tierra 🟫, simbolizando que no hay árboles en todo el terreno.
  2. Coloca aleatoriamente 10 árboles 🌲 en la matriz.
  3. Recorre cada una de las casillas de la matriz. En el caso que te encuentre una tierra 🟫 donde tenga un árbol 🌲 en alguno de sus ejes (horizontal, vertical o diagonal), aleatoriamente debe plantarse una semilla 🫘 o dejarla como tierra 🟫.
  4. Cuando se termine de recorrer toda la matriz, transforma todas las semillas 🫘 en árboles 🌲.
  5. Vuelve a repetir las tareas 3 y 4 todas las ocasiones que creas necesarios (te recomiendo 3). Más pasadas implica bosques más grandes.
  6. Imprime por consola cada línea de la matriz.

Aquí puedes ver una de las generaciones.

🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫
🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫
🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫
🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🌲 🟫 🌲 🌲 🟫
🌲 🟫 🟫 🌲 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🌲 🌲 🟫 🌲 🌲
🌲 🌲 🟫 🌲 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🌲 🌲 🌲 🌲 🟫
🌲 🌲 🌲 🌲 🌲 🌲 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🌲 🌲 🌲 🌲 🟫
🟫 🌲 🌲 🌲 🌲 🌲 🌲 🌲 🟫 🌲 🟫 🟫 🟫 🟫 🟫 🌲 🌲 🌲 🌲 🌲
🌲 🌲 🌲 🌲 🌲 🟫 🌲 🌲 🌲 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🌲 🌲 🟫 🌲
🌲 🌲 🟫 🌲 🌲 🟫 🌲 🌲 🌲 🌲 🌲 🟫 🟫 🟫 🟫 🟫 🌲 🌲 🟫 🟫
🟫 🌲 🌲 🟫 🟫 🟫 🌲 🌲 🌲 🌲 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫
🟫 🟫 🟫 🟫 🌲 🌲 🌲 🌲 🌲 🌲 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫
🟫 🟫 🟫 🟫 🌲 🌲 🌲 🌲 🌲 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫 🟫
🟫 🟫 🟫 🟫 🟫 🌲 🌲 🌲 🟫 🌲 🌲 🌲 🟫 🌲 🟫 🌲 🟫 🌲 🌲 🟫
🟫 🟫 🟫 🟫 🟫 🟫 🌲 🌲 🌲 🌲 🌲 🟫 🟫 🟫 🌲 🟫 🟫 🌲 🟫 🟫
🟫 🟫 🟫 🟫 🌲 🌲 🌲 🌲 🌲 🌲 🌲 🌲 🟫 🌲 🟫 🌲 🌲 🌲 🌲 🌲
🟫 🟫 🌲 🟫 🌲 🌲 🌲 🌲 🟫 🌲 🌲 🌲 🌲 🟫 🌲 🌲 🌲 🌲 🌲 🟫
🟫 🌲 🌲 🌲 🌲 🌲 🌲 🌲 🌲 🌲 🌲 🌲 🟫 🌲 🌲 🌲 🌲 🌲 🟫 🌲
🟫 🌲 🟫 🌲 🌲 🌲 🟫 🌲 🌲 🌲 🌲 🌲 🌲 🌲 🟫 🌲 🌲 🌲 🟫 🟫
🟫 🌲 🌲 🌲 🌲 🌲 🌲 🌲 🌲 🌲 🌲 🟫 🌲 🌲 🟫 🟫 🟫 🟫 🟫 🟫

A partir de aquí las posibilidades son infinitas. ¿Tal ves incluir un castillo 🏰 en algún lugar y un camino de baldosas 🟦 para llegar hasta él? Lo dejo en tus manos.