MushRog

Una plaza para esperar al grupo

12 de octubre de 2026 mecanicaarquitetura

Traducción automática, aún sin revisar.

Entre el login y la pelea ahora hay un lugar. Es una ciudad pequeña, con una plaza y una fuente en medio, cuatro edificios alrededor y un portal al norte que lleva a la sala de la Salamandra. Llegas con tu equipo, ves quién anda cerca, platicas y se van juntos a la sala. Al volver, sales por el mismo portal.

Por qué

En el documento de diseño la ciudad siempre fue el corazón social del juego, en el espíritu de Ragnarok: donde se arma el grupo, se presume el equipo y se platica. También era la prueba de red más seria de la fase 1. En una sala son cuatro personas, en una ciudad pueden ser cientos, y no se puede mandar la posición de todos a todos.

Cómo funciona

El mapa está dividido en celdas del tamaño de una pantalla. Cada jugador solo recibe a quienes están en las celdas de alrededor y a menos de 560 píxeles. Para dejar de ver a alguien, esa persona tiene que pasar de 720 píxeles; esa diferencia entre los dos números evita que la gente parpadee en el borde de la pantalla. El servidor solo manda posición cuando algo cambió cerca de ti, y si todos a tu alrededor están quietos llega un paquete por segundo, nada más para confirmar que la conexión sigue viva. El nombre, la clase y la apariencia de cada jugador llegan una sola vez, la primera vez que lo ves. Después solo van posición y dirección.

Medimos con cien jugadores caminando al azar por la ciudad y salió menos de tres milisegundos por tick, en un presupuesto de cincuenta.

El chat local llega a quienes estás viendo y aparece en un globo sobre la cabeza. Con “/g” al principio, llega a todos los conectados. Son cinco mensajes cada cinco segundos y luego hay que esperar. Los edificios tienen colisión y te deslizas por la pared en vez de trabarte en ella. Por ahora son bloques de colores con el nombre escrito (herrero, tienda, almacén, taberna) y ninguno abre todavía.

La prueba automática ahora hace el recorrido completo: dos bots llegan a la ciudad, se ven, se mandan mensajes en local y en global, rodean la fuente hasta el portal, entran a la sala, pelean y regresan a la ciudad.

Siguiente paso

Una sala de mobs para farmear, llaves de cofre y loot personal. Después, bots a montones para ver la ciudad con cien personas de verdad.

Cambios

  • feat(city): hub city with proximity replication, chat and portal

    CityState (movement, building collision with sliding, portals) and InterestGrid (screen-sized cells, enter 560 px / leave 720 px). Server sends static player info once per viewer and positions only when something nearby changed (1 s keepalive), at 10 Hz. Local chat goes to visible players with speech bubbles; /g goes to everyone; rate limited. Portal moves the player into the boss room; leaving returns to the portal exit. Client gets CityView with camera, ChatUI, and a leave button in the room. 100 players cost under 3 ms per city tick. The network test now walks the full loop: city, chat, portal, room, back.

← Volver al devlog