RayGantz
New member
- Messages
- 13
- Points
- 0
GSNexus Patcher is a high-performance, Electron-powered game patcher built for private servers and community projects that want a modern AAA launcher experience without the enterprise price tag.
Designed from the ground up for speed, stability, and visual impact, the Community Edition delivers a polished launcher framework inspired by modern platforms like Battle.net, RIOT, Steam, and HoYoverse while remaining customizable and easy to deploy.
This free/community release includes the official Community Theme Starter Template, giving server owners and developers a professional foundation for creating their own branded launcher experience.
Included Features
- High-performance Electron + Node.js patching engine
- Modern glassmorphic community launcher UI
- Multi-region CDN mirror support
- Cinematic splash screen support
- ISP detection & smart routing support
- Auto patch detection and seamless updates
- Secure patch delivery architecture
- Web-hosted launcher interface support - Update your launcher's look without players ever re-downloading the .exe
- Community theme starter template
- Branding and navigation customization
- Lightweight production-ready deployment
- Supports .thor, .grf, and .zip patch formats.
Perfect For
- Private Servers like Ragnarok Online, Ran Online, Cabal Online, MU Online
- MMO launcher projects
- Community game servers
- Indie multiplayer projects
- Developers seeking a customizable Electron patcher framework
Configuration
All settings live in config.json (must sit next to your final patcher.exe).
API Reference (window.electronAPI)
Your custom HTML/Web-Hosted interface has access to these APIs via window.electronAPI:
API Description
startPatching() kicks off the patch pipeline.
onPatchStatus(callback) Receives { type, message, fileName, filePercent, overallPercent, ... } events. Types: checking, downloading, paused, merging, ready, error.
getDownloadState() Returns current download state (position, total bytes, etc.).
getLocalVersion() Returns the current local patch version as an integer.
launchGame() Launches the configured gameExe.
launchSetup() Launches the configured setupExe.
openExternal(url) Opens a URL in the default browser.
API Description
getConfig() Returns the entire config.json object.
setMirror(patchUrl, plistUrl) Overrides the current download source (mirror domain validated against base domain).
getServerStatus() Returns server status from the configured serverStatusUrl.
checkForUpdates() Checks for patcher application updates.