CrzGames - RCENet (fork ENet mejorado para UDP)
Fork de ENet centrado en IPv6, cifrado y observabilidad de red
Un fork de ENet reforzado para networking multijugador en tiempo real.
La necesidad del cliente
Contexto
Los requisitos de red de CrzGames superaban lo que ofrecía ENet estándar en producción.
Problema
Faltaban piezas clave para IPv6, cifrado flexible y separación precisa entre desconexiones por timeout y voluntarias.
Objetivo
Crear un fork compatible pero más sólido para tráfico UDP de juego con alta exigencia.
Lo que está en juego
Mejorar la seguridad del transporte UDP
Distinguir timeout de desconexión voluntaria
Tener trazabilidad fina de ACK en paquetes fiables
La solución propuesta
Qué se construyó
RCENet en C con CI multiplataforma y distribución de paquetes nativos.
Por qué esta elección
Tener control del fork permite entregar mejoras críticas sin depender del ritmo de releases upstream.
Cómo responde a la necesidad
Se añadieron ENetEncryptor, ENET_EVENT_TYPE_DISCONNECT_TIMEOUT y callbacks de ACK por paquete fiable.
Funcionalidades clave
Soporte completo IPv6 + IPv4
Sistema ENetEncryptor (AES, ChaCha20, etc.)
Evento dedicado ENET_EVENT_TYPE_DISCONNECT_TIMEOUT
Callback de ACK en paquetes fiables fragmentados
Build/distribución multiplataforma (desktop, móvil, Steam Linux)
Resultados
Stack UDP más seguro y observable en producción
Mejor gestión de incidentes de red
Núcleo de red reutilizable para RCNET y juegos CrzGames
Stack técnico
Decisiones técnicas usadas en este proyecto.
¿Tienes una necesidad similar?
Hablemos de tu proyecto. Te ayudo a adaptar este enfoque a tu propio contexto.