Veloren, un videojuego de mundo abierto desarrollado en Rust, se distingue por su arquitectura basada en un Sistema de Entidades y Componentes (ECS) y su enfoque en la generación procedural física. A diferencia de los juegos tradicionales con jerarquías de clases, Veloren emplea ECS para gestionar más de 500 jugadores simultáneos en un servidor de 48 hilos, logrando una utilización de núcleo del 50% sin necesidad de fragmentación de mundo. Esta elección técnica permite una escalabilidad superior a la de la mayoría de los juegos multijugador, que suelen limitar la interacción entre entidades o reducir el alcance del juego.
El desarrollo de Veloren presenta desafíos únicos derivados de la naturaleza del ECS. Se han identificado errores como la asignación incorrecta de componentes de objetos y la detección de ciclos de monturas, que han requerido correcciones para evitar comportamientos caóticos. Además, el juego trata a los jugadores y los NPCs de la misma forma: comparten el mismo controlador de movimiento, el mismo árbol de habilidades y el mismo sistema de experiencia. Esta dualidad simplifica la lógica del juego, aunque introduce complejidades en la física, como la caída de NPCs si no se gestiona correctamente el momento y la fricción.
En cuanto al terreno, Veloren evita las estructuras de datos estándar como matrices 3D o árboles octáveos, optando por una estructura interna llamada 'chonks'. Este sistema ofrece un equilibrio óptimo entre coherencia de caché y acceso aleatorio. El juego pre-genera el mundo completo en una resolución baja y lo detalla al acercarse, permitiendo características complejas como ríos que fluyen hacia abajo. A diferencia de la generación procedural estética, Veloren prioriza la consistencia física y la simulación de procesos como la erosión hidráulica, asegurando que elementos como los ríos y las montañas sigan reglas físicas lógicas y coherentes.
