Erupe 9.3.0
This is the largest Erupe release in the project's history: 900 commits, ~100,000 lines of new code, and three years of work since 9.2.0. Almost every game system has been touched. 9.3.0 brings back more features from the original Frontier, is faster and more stable.
⚔️ Game Systems
Raviente
The siege system has been fully reworked (v3). Party broadcasting, the ID system, and semaphore handling now behave correctly. Server operators can also configure latency tolerance and max players for Raviente sessions.
Quests
Quest enumeration has been completely rewritten with a caching system. Event quests now cycle correctly with database-driven rotation, and season/time overrides are supported. The stamp card system is implemented with retro stamp rewards. Quest marks are now correctly labelled.
Conquest / Earth Status
Multiple war targets are now supported. Handlers are rewritten and a status override option is available for operators.
Festa
Bonus categories and trial voting are implemented. Version-gated info works correctly for S6.0 and Z2. Forward.5 servers no longer crash on trials that reference monsters added after F.5 (post-em106), and item 7011 is correctly filtered out for pre-G1 clients.
Achievements
Rank-up popups now appear in-game when your achievements level up, using per-character level tracking — exactly as on retail.
Diva Defense
Point accumulation is implemented: quest points and bonus points are now stored and tracked per character per event, RE'd from the ZZ client DLL. Complete implementation will come in a next release.
Warehouse
Completely rewritten (v2) with correct serialization across all supported game versions.
Distribution System
Fully rewritten with proper item typing and version support.
Trend Weapons
Implemented.
Guild
- Monthly guild item claims are now tracked per character per type (standard / HLC / EXC)
- Alliance application toggle was hardcoded to always-open — now respects the actual setting (#166)
- Clan Changing Room is supported
Gacha
- Fixed for G1–GG clients (protocol differences vs. ZZ — thanks @Sin365)
- Panics from misconfigured entries are now guarded
- The reward pool is validated before currency is charged — you will never be billed for a broken gacha
MezFes
Weekly ticket resets now work correctly.
🐛 Bug Fixes
- Lobby search was returning all reserved players instead of only quest-bound ones, inflating
the visible lobby count — fixed to match retail (#167) - G-rank Workshop / Master Felyne (Cog) caused a client softlock — fixed (#180)
- Mercenary save —
rasta_id=0was silently overwriting your Rasta partner, preventing game
state from saving (#163) - RP was inconsistent between clients — fixed
- Incomplete saves on disconnect — character data is now persisted even during ungraceful
disconnects - Transmog / armor appearance shown to other players was stale after saves — cache now
invalidated correctly - Sky Corridor race condition that wiped skill data — fixed (#85)
- House theme corruption on save — fixed (#92)
- HunterNavi savedata was being clipped (last 2 bytes lost) — fixed
- Cafe duration and item costs for G1–G5.2 clients — fixed
- Friends & clanmates display was limited incorrectly — fixed
- Festa rewards were inflated — fixed
🌐 Client Version Support
9.3.0 supports 40 client versions from Season 1.0 through ZZ, configured via ClientMode.
Notable additions:
| Platform | Status |
|---|---|
| PC (G10–ZZ) | Primary |
| PC (G1–G9.1) | Save pointers corrected, gacha and DecoMyset fixed |
| PC (Forward.4–F.5) | Full ClientMode support added |
| PC (Season 6.0) | Savedata, encryption, semaphore, and terminal log fixed |
| Wii U (G3–Z2) | WIIUSGN support |
| PS3 | PS3SGN, PSN linking, trophy course |
| PS Vita | VITASGN, PSN linking |
🛠️ Server Operator Quality of Life
First-run setup wizard
If config.json is missing, a web-based setup wizard launches at http://localhost:8080 and guides you through database connection, schema initialization, and server settings. No more manual SQL.
Automatic database migrations
The server binary now contains all SQL and runs migrations automatically on startup. No more pg_restore, manual patch ordering, or tracking which scripts you've applied.
Save data protection
Two tiers of corruption defense: bounded decompression, buffer overflow guards, size limits, SHA-256 checksums on every load, atomic transactions, per-character save mutexes, and rotating 3-slot backups every 30 minutes.
Operator tools
- Operator accounts and ban system
- NG word filter (ASCII and SJIS)
- Custom command prefixes with
/help
⬆️ Upgrading
Warning
Back up your database before upgrading.
Note
You no longer need to use an UPDATE.sql. Erupe now handles database creation and migrations automatically on startup.
- Go 1.25+ required (was 1.21)
- Existing databases: the server will auto-detect and apply all missing migrations on first startup, including a catch-up migration for partially-applied patch schemas. No manual steps needed.
config.json: your existing config will continue to work. Seeconfig.reference.jsonfor all available options.
Full changelog: CHANGELOG.md and v9.2.0...v9.3.0
Docker Image
This release is also available as a Docker image:
docker pull ghcr.io/Mezeporta/Erupe:v9.3.0What's Changed
- Fix pointerGender offset by @BlackhawkGT in #65
- feature/vita by @sekaiwish in #66
- Make README.md adequate to Markdown Styling Standards by @Evotushon in #67
- dynamic tune values by @sekaiwish in #72
- clean: added config to readme by @stratic-dev in #75
- fix/transit-message by @sekaiwish in #78
- Feature: Databased Event Lists & Dynamic Seasons Dev Option by @matthe815 in #73
- feature/psn-link by @sekaiwish in #79
- implement customisable Raviente latency by @sekaiwish in #80
- fix/chat-commands-args by @sekaiwish in #83
- fix/ravi-v3 by @sekaiwish in #84
- rename instances of gook to goocoo by @sekaiwish in #86
- Forward.5 Fixes by @Samboge in #87
- Correct leftover instances of "gook" to goocoo in #88
- feat: added scenario counter driven by database by @stratic-dev in #74
- fix/optimise-guild-treasure by @sekaiwish in #93
- Added paxes fix and missing fields to db by @stratic-dev in #91
- Update signv2server to return more data by @rockisch in #95
- fix/rework-distributions by @sekaiwish in #97
- Fix: Re-add Seasons & Bug Fixes by @matthe815 in #96
- fix/legacy-distitem by @sekaiwish in #100
- Implement auto-cycle event quests by @Malckyor in #81
- Implement final changes for custom launcher by @rockisch in #101
- Add dev proxy config by @rockisch in #99
- feat: Custom prefixes and basic help command by @matthe815 in #104
- Make sure signv2 returns user token ID by @rockisch in #105
- fix/goocoo by @sekaiwish in #107
- feat: Password resetting by Discord integration by @matthe815 in #103
- Bump golang.org/x/crypto from 0.15.0 to 0.17.0 by @dependabot[bot] in #108
- i18n proposal by @sekaiwish in #110
- feature/moderation by @sekaiwish in #111
- fix config mismatch by @sasospanner in #113
- Docker support by @stratic-dev in #112
- feature/warehouse-v2 by @sekaiwish in #115
- fix/weekly-stamps by @sekaiwish in #118
- Feature/screenshot api by @stratic-dev in #117
- Feature/ps4 by @stratic-dev in #119
- docker updates by @Nageld in #120
- feature/ngword by @sekaiwish in #125
- fix/quest-stamps by @sekaiwish in #126
- Bump golang.org/x/net from 0.18.0 to 0.23.0 by @dependabot[bot] in #121
- modified NetcafeDefaults to contain the retail Netcafe point rewards. by @Brentdbr in #130
- Bump golang.org/x/net from 0.23.0 to 0.33.0 by @dependabot[bot] in #131
- update branch by @sekaiwish in #133
- fix/packet-queue by @sekaiwish in #134
- Bump golang.org/x/crypto from 0.31.0 to 0.35.0 by @dependabot[bot] in #137
- Bump golang.org/x/net from 0.33.0 to 0.38.0 by @dependabot[bot] in #138
- Fix typos in Docker README by @gab3-dev in #144
- alpelo object system backport by @sekaiwish in #151
- doc: rewrite README, add CONTRIBUTING.md and SECURITY.md by @Houmgaor in #153
- Feat/independent channel servers by @Houmgaor in #159
- fix(rengoku): prevent Sky Corridor race condition from wiping skill data (#85) by @Houmgaor in #157
- fix: soft-delete guild posts instead of hard-deleting by @Houmgaor in #154
- Resolve the issue of G1 and GG, gacha cat not being usable. Already c… by @Sin365 in #150
- Update go.mod by @sasospanner in #170
New Contributors
- @BlackhawkGT made their first contribution in #65
- @matthe815 made their first contribution in #73
- @Samboge made their first contribution in #87
- @Malckyor made their first contribution in #81
- @dependabot[bot] made their first contribution in #108
- @sasospanner made their first contribution in #113
- @Nageld made their first contribution in #120
- @Brentdbr made their first contribution in #130
- @gab3-dev made their first contribution in #144
- @Houmgaor made their first contribution in #153
- @Sin365 made their first contribution in #150