All projects
Software

CrzGames - RCENet (enhanced ENet fork for UDP)

ENet fork focused on IPv6, encryption and network observability

A hardened ENet fork for real-time multiplayer networking.

The client need

Context

CrzGames networking requirements exceeded what standard ENet provided for production workloads.

Problem

Core features were missing for IPv6 support, flexible encryption and precise disconnect/ACK event handling.

Goal

Build a compatible but stronger ENet fork tailored to high-demand UDP game traffic.

What’s at stake

  • Increase UDP transport security

  • Differentiate timeout disconnects from intentional disconnects

  • Track reliable packet acknowledgements more precisely

The proposed solution

What was built

RCENet implemented in C with multi-platform CI and native package distribution.

Why this choice

Owning the fork makes it possible to ship critical networking features without waiting on upstream release cadence.

How it answers the need

Added ENetEncryptor, ENET_EVENT_TYPE_DISCONNECT_TIMEOUT and reliable packet acknowledgement callbacks.

Key features

  • Full IPv6 + IPv4 support

  • ENetEncryptor system (AES, ChaCha20, etc.)

  • Dedicated ENET_EVENT_TYPE_DISCONNECT_TIMEOUT event

  • Acknowledgement callback on reliable fragmented packets

  • Multi-platform build/distribution (desktop, mobile, Steam Linux)

Results

  • Safer and more observable UDP stack in production

  • Better incident handling for network failures

  • Reusable networking core for RCNET and CrzGames games

Tech stack

Technical choices used on this project.

CxmakeGitHub ActionsENet (fork)UDPOpenSSL / libsodium (encryptor-dependent)

Do you have a similar need?

Let’s talk about your project. I help you adapt this approach to your context.