[Release] Ashes of Creation — Server Emulator (Early-Access client)

Newbie Spellweaver
Joined
Oct 2, 2023
Messages
13
Reaction score
21
Hey everyone,

GitHub: https://github.com/Bearusx/AoC-RiseOfPhoenix

Sharing a project I've been working on for a while. Now that AoC's Alpha-2 servers are shut down for good, the retail client just sits there with no backend to talk to. This is a from-scratch reverse-engineered server emulator that gets the client to log in, load Verra, possess your character, and render the world — all against a local loopback.

I'm posting this here because I'd love for more people to get involved and turn this into an actual functioning emulator. Right now it's me, There's enough working to prove the approach is viable, and enough left to do that nobody's going to finish it solo. UE5 RE folks, server emu devs, anyone who wants to dig into protocol work — we can take this from "client connects and renders terrain" all the way to a real playable emulator. The foundation is there.

It's NOT a populated game server today. No combat, no NPCs with AI, no quests, no economy. What it is: a working UE5 / IntrepidNetDriver wire-protocol implementation built on captured replays + IDA Pro decompilation of the client. Open source, open development.


🟢 What works right now

  • StatelessConnect handshake + NMT negotiation
  • Auth, character select, lobby transitions
  • LoadMap → Verra_World_Master, World Partition initializes
  • PC + Pawn + PlayerState replicated, NetGUIDs registered
  • ClientRestart RPC, ServerAcknowledgePossession flows back
  • Pawn spawned at real Riverlands coordinates (-777762.2, 616611.1, 15944.1 cm)
  • Verra terrain visible (HLOD level), player nameplate at correct location
🟡 In progress

  • (LastGoodPacketRealtime not advancing — need continuous actor traffic, fix is PM148)
  • World Partition cells unload after loading screen ends (HLOD-only view, no detailed foliage)
  • No visible body mesh — CharacterAppearanceComponent replication needs more work
  • ServerMove parsed but not echoed (no movement reconciliation yet)
🔴 Not in scope (yet)

  • Multi-client testing
  • Server-side game logic (AI, combat, persistence)
  • Anything beyond PC/Pawn/PlayerState in the schema
So you can connect → see Verra terrain → look around Currently working on PM148 to keep sessions alive indefinitely.


📸 Screenshot (in-game, possessed):

1778245336030 - [Release] Ashes of Creation — Server Emulator (Early-Access client) - RaGEZONE Forums


imag - [Release] Ashes of Creation — Server Emulator (Early-Access client) - RaGEZONE Forums

This is a replay! The first picture is native

⚙️ Tech

  • C++ / CMake / vcpkg
  • Stock UE5 wire protocol (PacketNotify, bunches, NetGUID exports, RepLayout) + AoC-specific extensions (FIntrepidNetGUID 128-bit, custom flags at UNetConnection+0x240)
  • Captured pre-shutdown replays as ground truth (replay_data.bin in repo)
  • ~350 IDA Pro decomp dumps included in docs/ida-dumps/ so anyone can verify RE claims
🔍 How it was figured out

  1. Disassembly of AOCClient-Win64-Shipping.exe (the IDA decomps are in the repo)
  2. Captured-replay byte-level analysis (YLPR replay format walker + per-packet decoders included)
  3. Empirical probe iteration for RPC handle indices and ambiguous wire-format fields
  4. SDK IN GITHUB

📦 GitHub: https://github.com/Bearusx/AoC-RiseOfPhoenix

Includes:

  • Full source (C++)
  • Captured replay fixture (fixtures/replay_data.bin, 7.4 MB plaintext)
  • IDA decomp dumps (docs/ida-dumps/, ~350 files / 44 MB)
  • Build + launch scripts (Windows / VS2022)
  • Progress milestone notes inline in source comments (search for PM107, PM118, PM146, etc.)
Build: Visual Studio 2022 + CMake + vcpkg. Bring your own retail AoC client. Default path C:\Ashes of Creation\Game, override with GAME_ROOT.

Run: launch_all.bat currently plays back the captured replay and patches in our minted NetGUIDs / spawn coords. The PM148+ roadmap replaces this with full live actor synthesis.

Run: launch_all_native.bat runs the from-scratch live actor synthesis

🤝 Looking for contributors

Especially valuable areas:

  • Wire-format gaps — any Mismatch read log line is fertile ground
  • Disassembly cross-references against AoC's RepLayout customizations
  • More captured-replay analysis (extracting property fixtures from existing pcaps)
  • Documentation — every PM tagged in source has a story; not all of them are written up
If you've worked on UE5 server emu or done similar protocol RE on other titles, would love to compare notes.


⚖️ Legal

  • No game assets, art, audio, or Blueprint source included or redistributed
  • No live Intrepid service contacted — everything is local loopback only
  • EOSSDK proxy explicitly redirects auth calls AWAY from real Epic/Intrepid services
  • Educational reverse-engineering, non-commercial
  • Not affiliated with Intrepid Studios. If they ask, the repo gets archived

Cheers.
 
Last edited:
This is amazing. I'll join as soon as I can. I made a fork for now
 
Last edited:
An owner of this repository has limited the ability to open a pull request to users that are collaborators on this repository.

 
Hey thanks for being Intrested in this I didn’t find the time to update as I left for trip, I can add collaborators in github just send me your username
 
Hey thanks for being Intrested in this I didn’t find the time to update as I left for trip, I can add collaborators in github just send me your username
Got it.

Can you add me please ?
notyesbut
 
This is very cool, congrats on all the progress and thanks for sharing.
Couple quick forum tips in case they're helpful to you Bearus - while this forum section gets eyes from people interested in reverse engineering, you may find more success looking for people to help out with your effort in our Team Recruitment section, and once you're ready, feel free to release to our MMO Plus Developments section to share with others when you want more eyes to try out the release :).

Will be rooting for your continued success of the project, again, very awesome to see.
 
Hey whats up men? do you have the link for download the client? i don't have the cliente
 
Hey whats up men? do you have the link for download the client? i don't have the cliente
Look like you not use search to find another thread..
 
thats so nice!! I'll join you guys, but I'll probably do an rework on this to work serverfiles with typescript, I think would be more fast to develop.
 
Hey Bearus I did made some improvements, can we chat? I added dynamic login and made a bunch of rework… mostly to typescript and bun environments, so gets easier to setup environment and find contributors.
I’m still need to start RepLayout which I need to study more, characters are still been rendered with same bard class, and characters name are patched.

Also made some small progress on player controller protocol, can we chat? I don’t know if you would like me to open a PR or can I create another repo? Since mine is focused on TS language due to effortless programming language compared to C++ which would add more complexity

Add me on GitHub my username is “atrikx” I also left my contact info there, I’m waiting for you contact 🙏🏼
 
Hey Bearus I did made some improvements, can we chat? I added dynamic login and made a bunch of rework… mostly to typescript and bun environments, so gets easier to setup environment and find contributors.
I’m still need to start RepLayout which I need to study more, characters are still been rendered with same bard class, and characters name are patched.

Also made some small progress on player controller protocol, can we chat? I don’t know if you would like me to open a PR or can I create another repo? Since mine is focused on TS language due to effortless programming language compared to C++ which would add more complexity

Add me on GitHub my username is “atrikx” I also left my contact info there, I’m waiting for you contact 🙏🏼
yes of course, I will not be able to contribute until end of the month I can add you on GitHub I've sent you an invitation on GitHub
 
Could also add me? :) AinzDerErste on Github.



Made progress on the character stats and adributes. Having a working Levelsystem and other smaller fixes like persistence beyond restart.
 
Back