Underground 2 Revived
Play Need for Speed: Underground 2 (2004) in Chrome and Firefox with WebGPU graphics, Web Audio, up to 120 fps widescreen, controller support, free roam and Online races with friends. Fan project, not
翻譯準備中
一款現代且輕量的 DragonRealms 客戶端。
AI 翻譯
A modern, lightweight client for DragonRealms.
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗No install required — Magiloom also runs as a web app at magiloom.com/app. It works in any modern desktop or mobile browser, and on your phone you can use Add to Home Screen to install it as a full-screen app (with push notifications for your alerts).
Just sign in and play — there's nothing to install and nothing to configure. Your game session even survives briefly minimizing the app, so a quick switch away won't drop your character.
Magiloom comes in two flavors, and it helps to picture what's happening behind the scenes.
flowchart LR
subgraph you["Your devices"]
desktop["🖥️ Desktop app"]
web["🌐 Web app<br/>(browser / phone)"]
end
server["☁️ Magiloom server<br/><i>always-on butler</i>"]
vault[("🗄️ Storage vault<br/><i>never forgets</i>")]
game["🐉 DragonRealms<br/>game servers"]
friend["🌐 Another player"]
desktop -->|connects directly| game
web -->|connects through| server
server -->|holds your connection<br/>+ runs Lich| game
server <-->|settings · scripts · maps · messages| vault
friend <-->|character-to-character<br/>messaging| server
classDef device fill:#6467dc,stroke:#4a4dc0,color:#fff
classDef cloud fill:#d07400,stroke:#a85c00,color:#fff
classDef store fill:#2f855a,stroke:#22633f,color:#fff
classDef gm fill:#444,stroke:#222,color:#fff
class desktop,web,friend device
class server cloud
class vault store
class game gm
The desktop app is self-contained. When you run it on your computer, it talks directly to the DragonRealms game servers. Everything — your connection, your settings, your Lich scripts — lives on your machine. Nothing else is needed.
The web app can't do that, because a browser (especially on a phone) isn't allowed to open the kind of raw connection the game needs, or to run Lich. So instead of connecting to the game itself, the web app connects to a small always-on Magiloom server that runs in the cloud. Think of it as your personal butler that sits between your browser and the game:
The storage vault. Attached to that server is a piece of permanent storage — a mounted volume, in tech terms. It's basically a hard drive in the cloud that never forgets. Whenever you change a setting, save a Lich script, explore a new room on the automapper, or send a message to another player, it gets written to this vault. Servers can restart or update, but the vault keeps everything safe and waiting.
The neat part is what this unlocks:
In short: the desktop app is the go-it-alone option, and the web app + cloud server + storage vault is the always-on, sync-everywhere, message-your-friends option. Same Magiloom either way — pick whichever fits how you play.
Prefer a native desktop app? Grab the latest installer from the Releases page.
| Platform | File |
|---|---|
| Windows | Magiloom-Setup-x.x.x.exe |
| macOS | Magiloom-x.x.x.dmg |
| Linux | Magiloom-x.x.x.AppImage |
Windows note: You may see a SmartScreen prompt on first launch. Click More info → Run anyway. This is expected for apps without a paid code-signing certificate.
For a full feature walkthrough, see the Player Guide.
Lich is optional — Magiloom works as a standalone client without it.
lich.rbw (e.g. C:\Ruby4Lich5\Lich5\lich.rbw).Once connected with Lich active, ;commands route through Lich's scripting engine.
Magiloom also has its own built-in script engine for classic .cmd scripts — the same format used by the Wizard and Genie front-ends. Unlike Lich, this needs no Ruby and no extra setup: it runs right inside the app and works on any connection, direct or through Lich.
.cmd files.Scripts are triggered with a leading . (to keep them distinct from Lich's ;):
.hunt — run the hunt.cmd script.hunt orc — run it with an argument (available inside the script as %1).stop / .kill — halt all running scriptsThe engine aims for full Genie compatibility, so common commands like put, echo, pause, match/matchwait, waitfor, goto, gosub, variables, counters, and conditionals all work as you'd expect. You can even wire scripts into your aliases and triggers so they fire automatically.
| Layer | Technology |
|---|---|
| Shell | Electron 31 |
| UI | React 18 + Jotai |
| Build | electron-vite + electron-builder |
| Protocol | Simutronics SGE / GSIV XML |