Cinder State Dev Blog #3 “So We Rebuilt The Networking Too.” Read More
For a brief moment, we thought we were finally settling into stable ground after the World Partition migration and hardening work. That feeling lasted approximately five minutes. Once the World Partition side of the project started becoming stable, another realization hit. If Cinder State is going to support the kind of persistent large-scale multiplayer environment we’re planning long term, we needed to migrate away from Unreal Engine’s legacy replication system and move to Iris Replication instead (honestly we didn’t even realize it existed for a long time because it remained experimental). Which, naturally, meant voluntarily reconstructing another major piece of backend infrastructure in the middle of development.
"I am Jack's broken spirit."
Why We Switched to Iris Replication
Replication is one of the most important systems in any multiplayer game. It’s responsible for synchronizing information between the server and connected players. Everything from movement and combat to inventories, interactions, actor state, and streaming behavior eventually depends on replication behaving correctly.
Initially, the project was still running on Unreal’s older legacy replication architecture. And to be clear, legacy replication absolutely works. Plenty of successful games still use it. But after deeper testing with World Partition, large-scale streaming behavior, persistent systems, and Join-In-Progress support, it became obvious that continuing to build on the older architecture would eventually become a limitation.
At some point we stopped asking “Can we make this work?” and started asking “Are we building on the right long-term foundation?”
The Migration Process
The migration itself was not particularly enjoyable. Some systems transitioned smoothly. Others immediately broke in infuriating and surprising ways. There were several moments where replication appeared to function correctly until dedicated-server testing exposed synchronization problems that only occurred under real multiplayer conditions. Which is always fun. Nothing builds confidence like a system working perfectly right up until actual players exist.
A huge portion of the last several days has involved:
- Reworking replication architecture
- Verifying replicated actor behavior
- Validating Join-In-Progress behavior
- Correcting desync scenarios
In other words: a lot of backend work players will hopefully never notice.
Which is honestly the ideal outcome for networking infrastructure. If players are actively noticing replication systems, something has usually gone catastrophically wrong.
Testing and Verification
The good news is that the migration was ultimately successful. At this point, the project has now successfully verified Iris replication integration, dedicated server functionality, inventory/container replication, and replicated interaction systems across multiplayer testing. Several systems have now been tested repeatedly both manually and through dedicated-server workflows to ensure stability under real multiplayer conditions instead of isolated editor-only testing.
Why This Matters Long Term
The recent development work has not been particularly flashy from the outside (sound familiar?). There are still no cinematic reveals, no heavily scripted gameplay trailers, no fake “vertical slice” pretending the project is secretly finished. Instead, most of the work has focused on making sure the project’s technical foundation can actually survive long term once the world becomes more populated, more persistent, and significantly more chaotic.
Persistent multiplayer worlds place enormous pressure on networking systems, especially once inventories, streamed actors, persistence systems, infrastructure, and future gameplay mechanics all begin interacting simultaneously. A lot of recent development has essentially been preventative maintenance for disasters that have not happened yet. Which is less exciting than adding fifty gameplay systems immediately, but dramatically more important if we want those future systems to actually function reliably.
What Comes Next
Now that both the World Partition migration and Iris replication transition are successfully integrated and verified, development can finally begin shifting back toward gameplay systems and larger persistent-world infrastructure. That said, networking and replication stability remain the highest priority moving forward. At this stage of development, almost every new system eventually leads back to the same question:
“Does this actually replicate correctly under real multiplayer conditions?”
Because in a project like this, replication is not just another backend feature sitting quietly in the background. It is the foundation everything else eventually depends on. Inventories, interactions, persistence, streaming behavior, containers, player-built systems, future logistics infrastructure, all of it ultimately succeeds or fails based on whether the multiplayer architecture remains stable as complexity increases.
The goal moving forward is not simply to add more systems as quickly as possible. The goal is to build systems that continue functioning reliably once large numbers of players begin interacting with them simultaneously inside a persistent world environment. That is a very different challenge than building isolated gameplay mechanics in controlled testing environments.
A lot of games can look impressive in carefully edited trailers or short gameplay demonstrations. The real test happens later, when players begin spending hundreds of hours inside the world actively trying to stress, exploit, overload, or unintentionally break every system they interact with.
So now, with two very large pieces of the backend infrastructure implemented and verified with the future in mind, we can return to the "normal" development path.
- Greg (lead Developer)
- Logan (co-founder)