Repository navigation
Upstream branches
Which of upstream's branches holds which kind of work, why gameplay isn't on the default branch, and where a change should go. Read it before you go looking for a system, because the one you want may live on another branch. What we build because of it is on the Roadmap.
flowchart TD
GR["game_rework<br/>infrastructure and wire"] --> EX["expedition<br/>combat, AI, content"]
GR --> LR["loot-rework<br/>loot"]
GR --> FK["this fork<br/>open ground"]
| Branch | Holds | Last commit | Against game_rework
|
|---|---|---|---|
game_rework |
The default branch and the pull request target: client message models, networking, the split into broker services, Aspire | 2026-09-28 | |
expedition-evil-from-the-ether |
Spells, combat, crowd control, AI, forced movement, public events, instance and tutorial scripting | 2026-10-07 | 75 ahead, 34 behind |
loot-rework |
Loot generation, group loot rules, loot messages | 2026-10-07 | 7 ahead, 0 behind |
| Branch | State |
|---|---|
develop |
Last commit 2022-12-03, and fully contained in game_rework
|
master |
Last commit 2023-06-05; the old release line |
communities, spells-v2-gr and a sibling of it |
Dead or absorbed |
game_rework is the foundation. The maintainer is reworking the server's infrastructure there: the message models, the network layer, the move to broker services and the Aspire host. Gameplay on it is thin on purpose.
The expedition branch is where gameplay is being rebuilt. The maintainer describes it as proof-of-concept combat work that will eventually be merged back into game_rework (#567). Its spell code replaces game_rework's nearly wholesale.
It's ahead on behaviour and behind on the wire. It forked before much of game_rework's message work landed: counted on 2026-10-13, it modelled 796 opcodes against game_rework's 927, and it has no friendship handlers and no story folder. Code written against either branch has to expect the merge.
loot-rework sits right on game_rework's tip, so it can land as a fast-forward any day.
| Change | Branch |
|---|---|
| Message models, networking, infrastructure, anything on open ground | game_rework |
| Combat, AI, instances and their content | expedition-evil-from-the-ether |
| Loot | Leave it to loot-rework
|
| Anything on upstream's own rework list | Raise it upstream first; outside fixes there tend to be redone |
Upstream decides on its Discord, not in pull request threads, so a design question belongs there first.
| Repository | What it is |
|---|---|
NexusForever.Wiki |
The source of emulator.ws, upstream's documentation, published with GitBook. AGPL-3.0 |
NexusForever.WorldDatabase |
SQL dumps for the optional world database |
NexusForever.SpellWorks |
A spell information viewer |
Nexus.Archive |
The library for the client's index and archive files, used from NuGet |
NexusForever.Tools |
Standalone tools, kept out of the main repository |
NexusForever.Launcher |
A client launcher |
NexusForever.PacketParser |
A packet parser, last touched in 2018 |
The main repository's own GitHub wiki stopped being updated in 2024; emulator.ws is where upstream's documentation lives now.
| Page | Covers |
|---|---|
| Roadmap | What we build because of this split, and what we stay out of |
| Taking a change upstream | Opening a pull request against the right branch |
| Syncing with upstream | Bringing game_rework into the fork |
Guides
- Running it locally
- Using the web console
- Adding a player feature
- Verifying a feature
- Taking a change upstream
- Syncing with upstream
Explanation
- Server architecture
- Login handshake
- Game tables
- Branches and workflow
- Upstream branches
- Contributing
- Galactic Archive
- Account entitlements
Reference
- Processes and projects
- File formats
- Databases
- Web console
- Galactic Archive messages and storage
- Code style
- Code patterns
- Pull requests
Design
About this wiki