Todos los proyectos
Software

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.

CxmakeGitHub ActionsENet (fork)UDPOpenSSL / libsodium (según encryptor)

¿Tienes una necesidad similar?

Hablemos de tu proyecto. Te ayudo a adaptar este enfoque a tu propio contexto.