Ves que este es un juego basado en mosaicos y el jugador se mueve a través de los mosaicos con interpolación lineal. El paso de tiempo bloqueado es muy importante para un juego basado en física. También se le llama tasa de ticker fija. Tener una física determinista es importante porque entonces podrías tener muchos clientes y el servidor si necesitas, simulando la física con diferentes FPS y obteniendo el mismo resultado.
Entonces, limitaciones del servidor, como cuántos... odio esta pregunta, ¿cuántos CCU puede tener un servidor? Quiero decir, puedes encontrar algún material en internet que la gente logró tener 1 millón de conexiones WebSocket en un solo servidor, pero eso no es muy realista. Podrías lograr eso principalmente con conexiones inactivas, sin intercambiar ningún mensaje, y eso no es realista en absoluto. Lo que pude lograr es que en un servidor barato, un servidor WebSocket que ejecuta un juego de cartas/tablero que es muy lento en el ritmo de mensajería, el servidor podría manejar 3K concurrent conexiones. Pero no recomendaría tener una sola sala con tantas conexiones. De 50 a 100 sería lo ideal, y si necesitas más conexiones que eso, puedes tener más salas en otros servidores para manejar esta carga. Entonces, sí, entonces entra en juego la escalabilidad. Y escalabilidad, las salas viven en memoria en Coliseus, por lo que las salas son con estado y los juegos son generalmente con estado, por lo que realmente necesitas, no puedes usar enfoques sin estado para, para juegos no entiendo cómo la gente siempre recomienda ser sin estado cuando se escalan cosas. Y hay una capa de persistencia que permite a cualquier nodo hacer emparejamientos. Entonces, para resumir, así es como funciona la reserva de semillas en un solo servidor y cuando tienes varios servidores, la solicitud de reserva de semillas llegaría al balanceador de carga y sería reenviada a cualquiera de los servidores activos. Y luego cualquiera de los servidores activos devolvería la reserva. Y entonces, teniendo esta información, podemos hacer la solicitud de WebSocket directamente al servidor en el que vive esa sala. Entonces, ¿cuántos CCUs puede manejar Koliasis? Depende. Sí, no lo sé. Depende de tu juego. Tienes límites de CPU y memoria, y todos los tienen, no importa si estás usando Koliasis o no. Entonces, para Koliasis en sí, recomendaría evitar tener un estado de sala muy grande, lo cual aumentaría el rendimiento de tus salas, y optimizar tus bucles de juego para usar la menor cantidad de ciclos de CPU posible. Entonces sí, ya me estoy quedando sin tiempo aquí. Las herramientas adicionales que tenemos son este monitor para desarrollo, puede ser realmente útil. Una prueba de carga para crear pequeños bots y pruebas, hasta dónde pueden llegar tus servidores con pruebas de carga automatizadas.
Algunos juegos geniales hechos con Coliseus. Este fue el primer juego bien hecho con Coliseus por Tiny Dolby, todavía está disponible aquí, creo que esto se lanzó en 2015. Esto es hecho por la comunidad, se llama el Shooter IO de código abierto, se puede encontrar aquí en este enlace. Raft Force, yo y Tiny Dobbins hicimos con Default Engine, también es un juego web disponible aquí. School Break hecho por Tobias, también está disponible para jugar aquí. Y Kurka.io es el primer shooter de jugadores que he visto que está usando Coliseus y es muy divertido. Y finalmente, Night's Edge de Lightfox Games.
Comments