-
Notifications
You must be signed in to change notification settings - Fork 2
Releases
Where to get Genie 5 and what changed in each build. Downloads live on the Releases page; the latest release is always the one to grab. For how to install each download, see Installation; for staying current after that, Keeping Up to Date.
Genie 5 is alpha. Versions are tagged
v5.0.0-alpha.N. Builds are unsigned for now (Windows/macOS show a first-launch warning — see Installation); signed Windows builds are expected from an upcoming release.
A focused point release that fixes where Genie keeps its data. Previously a portable copy could still read and write the per-user OS folder (%APPDATA% on Windows) instead of its own; now data beside the executable always wins, so a portable unzip is truly self-contained.
📡 Still on the beta channel — that's intentional. Every alpha ships as a GitHub pre-release, so the Core updater defaults to beta; that's what lets Help → Check for Updates see new alpha builds. Already on an earlier alpha? Open the Updates dialog and you'll be offered alpha.4.1 as a delta.
Fixes
-
Portable-first data discovery — a copy of Genie with its data folder beside the
.exenow runs fully local; nothing is read from or written to the per-user OS folder. The old build only did this when agenie5.portablemarker file was present, which the release zip wasn't reliably shipping — so portable installs leaked into%APPDATA%(#38, #74). - First-run location prompt — a fresh install with no data in either place now asks where to keep it (portable, beside the exe — the default; or your user folder). The choice persists and is never asked again. See Application Folders.
The biggest alpha to walk the lands of Elanthia yet: .js scripting, connect-by-typing, and two new tools for the tinkering adventurer — plus a satchel of scripting and mapper fixes to ease the road ahead.
📡 Still on the beta channel — that's intentional. Every alpha ships as a GitHub pre-release, so the Core updater defaults to beta; that's what lets Help → Check for Updates see new alpha builds. Already on an earlier alpha? Open the Updates dialog and you'll be offered alpha.4 as a delta.
Scripting
-
JavaScript (
.js) array scripts — run.jsscripts alongside.cmd, on a pure-C# Jint engine (no native deps; identical on Windows/macOS/Linux). Agenie.*API coversput/send,waitFor/waitForRe/matchWait,pause, timers, and session/script vars — straight-line procedural code with real blocking calls. Memory + runaway-loop guards included (#21). -
#connect/#reconnect/#lichconnect— log in by typing or from a script (Genie 4 parity): saved-profile, explicit, and reconnect-last forms, plus the Lich variant; passwords masked in history (#46). -
New reserved variables —
$gamehost/$gameport(resolved game endpoint),$roomnote;$zoneidnow reads0off-map (#45).
Tools
- Analyst Capture — a redacted, recipe-driven session capture (raw XML + parsed streams + a meta sidecar) for parser/analysis work; other players' speech is stripped by default.
-
Performance overlay — live per-stage pipeline timing (Parse / Scripts / JavaScript / Triggers / Highlights / …) plus a running-
.jslist, behind the Performance menu.
Fixes
-
#gotono longer floods the game — it waits for a confirmed room change between moves instead of overrunning the typeahead buffer (#69). - Mapper — auto-hiding Details flyout; the Mapper floats by default; a new top-level Maps menu.
- Docking — blank tool panels after a close/reopen are fixed.
- Connect errors are now immediate and specific (bad password, character already in game) instead of a ~50-second retry loop.
A quality-of-life batch that closes a run of community-reported issues, plus mapper-aware scripting.
📡 Still on the beta channel — that's intentional. Every alpha ships as a GitHub pre-release, so the Core updater defaults to beta; that's what lets Help → Check for Updates see new alpha builds. Already on an earlier alpha? Open the Updates dialog and you'll be offered 3.6 as a small delta. See Keeping Up to Date.
Scripting
-
Mapper variables for scripts —
$roomid,$zoneid, and$zonenamenow track the mapper's current location (Genie 4 parity), so scripts can branch on where you are. Thanks to @dylb0t (#67, #45). -
Room/zone tags +
#goto @tag— tag rooms or zones from the mapper, then route to the nearest room carrying a tag. -
Paused/delayed scripts resume reliably — fixed a stall where
pause/delaycould hang a script (#61). -
#edit <script>opens the script in your editor instead of running it (#63).
Interface
-
Character-Account identity in the title bar and profile picker, e.g.
Renucci-MONIL(#4). - Browser-style selection — click-drag to select across multiple lines in the Game window and copy (#34).
- Docking — draggable centre splitters; a panel dragged to a new spot keeps that spot after floating or closing (#35).
- Windowed (MDI) document mode with Genie 4-style window decorations (#52).
- Config — per-profile settings with a global fallback (#60); Room-panel fields wrap; script output is classified as Script Lines.
A connection/mapper/quality-of-life batch, and the build we're using to exercise the in-app update cycle end-to-end.
📡 You're on the beta channel — that's intentional. Every alpha ships as a GitHub pre-release, so Genie now defaults its Core updater to the beta channel. That's what lets Help → Check for Updates see new alpha builds. On alpha.3.2? Open the Updates dialog and you should be offered 3.4 as a small delta — install it and the app restarts on the new version. (Switching to stable shows "up to date" until 5.0.0 ships — stay on beta to ride the test releases.) See Keeping Up to Date.
Connecting
- Connection-mode dropdown in the Connect dialog — Direct (SGE login) or Lich proxy (local); the dialog shows the right fields for each, and the choice saves with the profile.
-
Command-line startup — launch pre-pointed at a connection, no dialog:
Genie.exe --profile=<name>, orGenie.exe --host=127.0.0.1 --port=8000to attach to a local Lich proxy. Handy for headless-Lich setups and external launchers. - Per-profile data folder — optionally keep a character's data (Config, Scripts, Maps, Plugins, Logs) in a folder you choose, e.g. a synced drive or USB stick. Blank = the default location.
Mapper & quality of life
-
#goto/#go2— the typed/scripted equivalent of clicking a room: an attended, roundtime-gated walk by room id, note label, or title. Esc / any typed command / a disconnect interrupts it. -
Numpad movement macros seeded on a profile's first run (NumLock on):
8/2/4/6= n/s/w/e,7/9/1/3= diagonals,5= out,0= down. Edit or remove any in the Macros panel. - Open Scripts Folder now opens exactly the folder the script engine loads from.
Policy posture (clarified) — the policy docs now centre on DR's Scripting Policy: the line is being responsive to the game, not keeping the window focused, and it's the player's call. The auto-walk idle pause is now optional and off by default.
Secure SGE auth (TLS) — the Direct login handshake can now connect over TLS (port 7910) with a pinned server certificate, instead of the plaintext port. Plaintext remains available as a fallback.
Fix — recovered a class of silently-dropped game text when the server merges a response onto a held-item update.
- Dock layout close→reopen restore — closing and reopening a panel now restores it to its prior place in the docked tree instead of dropping it to a default spot.
The headline: Genie 5 now has native downloads for all three platforms. This is the cross-platform companion to alpha.3 — the same codebase, plus the Linux and macOS binaries that weren't ready when alpha.3 first shipped. It adds platforms, not features.
First-ever native Genie client on Linux and macOS:
- 🐧 Linux x64 —
Genie5.AppImage, a single-file executable for Ubuntu / Fedora / Debian / Arch / etc. - 🍎 macOS Apple Silicon (M1+) —
Genie5-osx-Setup.pkginstaller, orGenie5-osx-Portable.zip. - 🍎 macOS Intel (pre-2020) —
Genie5-osx-x64-Setup.pkg/Genie5-osx-x64-Portable.zip.
On each of these platforms the in-app updater handles subsequent releases, just like Windows. Pick your download in the Installation tables.
Already on Windows alpha.3? This is offered to you as a tiny delta through the in-app updater — nothing changes behaviourally.
Read before you run:
-
macOS — unsigned, so Gatekeeper blocks the first launch. Right-click → Open, or
xattr -d com.apple.quarantine <path>. (details) -
Linux —
chmod +x Genie5.AppImagefirst; install FUSE (sudo apt install libfuse2) if you see a FUSE error; minimal distros may needfontconfig. (details) - Windows — unchanged from alpha.3; SmartScreen still warns until builds are signed (code-signing is planned for an upcoming release).
⚠️ Linux and macOS are brand-new, alpha-tier platforms here. CI builds them cleanly, but no live-app smoke test has happened on either OS yet. First-tester reports — what works, what's broken, what renders with a weird font — are very welcome: file an issue or post in Discord.
The release that made Genie 5 self-updating — no more downloading a fresh zip every version.
-
Integrated updater — one Help → Check for Updates dialog with three channels: Core (the app, via Velopack binary-diff updates that install and restart from inside the app), Maps (zone XML from the community repo), and Plugins (DLLs from configured feeds, with a new
#plugincommand to inspect / install / remove). The Help menu shows a badge when an update is available. It's an in-process system — distinct from Genie 4's separateLamp.exe. See Keeping Up to Date. -
Windows installer —
Genie5-win-Setup.exeregisters the app for auto-updates; from an alpha.3 install onward, new releases arrive in-app. - Code-signing pipeline (in progress) — a tag-triggered workflow that submits the Windows build to the SignPath Foundation for approval and signing. This build is still unsigned; code-signing is expected to land in an upcoming release.
These predate the current download/updater setup but mark where major subsystems landed:
-
alpha.2 — Plugin system shipped: load plugins from
Plugins/with no rebuild, per-plugin isolation, the#plugincommand, and the Experience-tracker example. See Plugins. -
alpha.1 — first public alpha: SGE + Lich + replay connections, the StormFront XML parser, the GameState engine, the full Genie 4
.cmdscript engine and all the rule engines, the mapper with click-to-walk, per-character encrypted profiles, and dockable panels.
For what's planned versus shipped, see the project roadmap. Wiki pages flag still-unshipped features with 🚧.
- Installation — pick and install the right download.
- Keeping Up to Date — the in-app updater.
- Troubleshooting & FAQ — first-launch and platform gotchas.
Genie 5 — a cross-platform DragonRealms client · Repository · Discord · GPL-3.0
Alpha software. Pages describe current behavior; 🚧 marks roadmap items that aren't shipped yet.
🐤 Start here
🚶 Everyday use
- Connecting & Profiles
- The Interface
- Text-to-Speech
- Configuration & Rules
- Scripting
- The Mapper
- Updating Maps & Scripts
- Lich 5 Integration
🏃 Going deeper
- Scripting Reference
- JavaScript Scripting
- Cross-Zone Travel
- Plugins
- Keeping Up to Date
- AI Advisor (planned)
- Policy Compliance
- Architecture
- Building from Source
- Troubleshooting & FAQ