Estoy diseñando un juego que funciona en un motor de mosaico clásico, pero cuyo mundo se genera al azar. ¿Existen juegos o algoritmos existentes que hacen esto? Los algoritmos de generación de procedimientos que he encontrado nunca utilizan un sistema de mosaico ... ¿Cuál sería la mejor manera de generar un "mundo" completo utilizando un sistema de mosaico? No estoy hablando de laberintos de bloques, sino de un "mapa mundial" general gracias
22
Respuestas:
Su pregunta lo lleva al campo de la generación de contenido procesal.
Generación mundial basada en mosaicos derivada de métodos continuos / analógicos
Por continuo, quiero decir algo que no son mosaicos, algo que es analógico, un ejemplo es un mapa vectorizado. Puede usar cualquier técnica continua para la generación y luego cuantizarla. Por ejemplo, genere una imagen de ruido Perlin de alta resolución, luego reduzca su resolución para que se ajuste al tamaño de su mosaico y muestree los píxeles para proporcionarle un mapa de altura. (Los mapas de altura pueden ser un excelente punto de partida para su mundo). Esto se debe a que mencionó ver fuentes que no le mostraban qué hacer con respecto a cómo aplicarlo a los mosaicos.
Generación mundial basada en mosaicos utilizando un enfoque de talla "parpadeante"
Con un enfoque basado en mosaicos (celdas), puede hacer una especie de generación ciega en la que genera el mundo poco a poco sin mirar más allá de, por ejemplo. los azulejos directamente vecinos, pero esto tiende a parecerse al trabajo de un insecto. Esto es típico de CA (autómatas celulares), y muestra poca inteligencia a mayor escala.
Generación mundial basada en mosaicos utilizando una visión mundial más amplia, de arriba hacia abajo
Esto toma un enfoque más inteligente para construir el mundo mosaico por mosaico, ya que primero lo construirá región por región. De esta manera, obtienes control sobre, por ejemplo. diferentes biomas, regiones políticas, etc., como lo ha hecho Tarn Adams en Dwarf Fortress. Por supuesto, esto requiere que pienses un poco sobre cómo te gustaría dividir tu mundo. Hay muchas formas, tendrá que hacer su propia investigación.
La generación de contenido procesal es un tema bastante amplio, por lo que deberá leer bastante antes de tener una idea sólida de lo que realmente quiere y cómo hacerlo: el diablo siempre está en los detalles . Por esa razón, algunas buenas fuentes para esto son la lista de correo rec.games.roguelike.development (una tonelada de información sobre mundos de procedimientos basados en mosaicos), las páginas de programación de juegos de AmitP (consulte "Otros temas") y por último, pero no menos importante, el contenido de procedimiento Wiki Generación .
fuente
La generación procesal es un tema inmenso. ¿Qué tan profundo estás dispuesto a ir?
Las respuestas de Nick Wiggill son de primera categoría. Añadiría a eso sugiriendo que mire algunos métodos matemáticos para crear un terreno aleatorio coherente.
El ruido Perlin ofrece una excelente manera de crear una aleatoriedad suavizada y funciona muy bien para todo tipo de terrenos. Simular la erosión puede dar una impresión realista de altura (aunque es posible que no lo necesite ya que está haciendo un juego basado en fichas)
Muchas de las técnicas discutidas en documentos como este por Oddlabs , creadores de Tribal Trouble, funcionan bien en 2D y también a bajas resoluciones. Si se siente más cómodo con este tipo de enfoque, vale la pena aprender estas técnicas.
fuente
El espacio procesal de Spelunky : una gran introducción a la generación de contenido procesal por Darius Kazemi
Spelunky es un juego en 2D de Derek Yu que tiene algunos niveles de procedimiento excelentes.
También hay una wiki de contenido procesal http://pcg.wikidot.com/
fuente