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
翻译准备中
Create and run your own Minecraft server with a few clicks — no command line, no config files. Mods & plugins from Modrinth, play with friends over the Internet, automatic world backups, and a server that sleeps when empty and wakes when someone joins. Windows, Linux & macOS.
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
Create, configure and share Minecraft servers on Windows, Linux and macOS from one app — no .bat
files, black console windows or editing config files by hand.查看完整 README ↗English · Español
Create, configure and share Minecraft servers on Windows, Linux and macOS from one app — no .bat
files, black console windows or editing config files by hand.
All in one window, in English, Spanish, Portuguese, French and German.
Open each one to see it in action.
MC-ServerLauncher-Setup-x.y.z.exe from the latest release.The first time, Windows SmartScreen may warn (new app, no Windows code-signing certificate yet): click More info → Run anyway.
Linux: grab the
.AppImagefrom the same release. macOS: the.dmg; it isn't Apple-signed yet, so the first time right-click the app → Open.
"+ New" → Create a new one → a name, the type and the version → tick I accept the Minecraft EULA → Create server. The app downloads the official server, checks its checksum, sets up the port and starts it.
Already have one? Add one I already have reads the folder (type, version, port and memory) and changes nothing in it.
In the Mods (or Plugins) tab, search, click Install and that's it: the build that fits your server is downloaded, together with any libraries it needs.
With Playit.gg on, the public address appears on its own within seconds; click Copy and send it to your friends. Tunnels shows every tunnel on your account and fixes the ones that don't belong.
Automatic backups happen by themselves. For one by hand, Back up now in the Backups tab; Restore takes the world back to that moment (with the server stopped, after asking you to confirm; the current world is saved first, in case you change your mind).
When there's a new version, a banner appears at the top: Update downloads it, checks it and installs it. When it opens again, What's new tells you what changed. It works the same on Windows, Linux and macOS.
run.bat / server.properties, and
installs the correct Java (Temurin) if needed. Fabric, Forge and NeoForge use mods; Paper and Purpur
use plugins. The same panel can use a folder that already exists: it recognises the type, the
Minecraft and loader versions, the port and the memory, and changes nothing in the folder.Share to the Internet with Playit.gg — connect your account from Tunnels by pasting a one-time setup code. The app creates the tunnel and runs the Playit agent for you — you install nothing — and the address appears on its own within seconds. The app ships no secret of its own (the credential lives in a small proxy).
Tunnels — every tunnel on your account in one table: it flags the ones that lead nowhere, the duplicates and the shared ports, with a button to fix each one, and lets you rename or delete them.
Connection test — Test connection on the Playit card measures each stretch on its own — your server, your internet (latency, download and upload, via Cloudflare), the Java tunnel and the Bedrock one — and says in one sentence whether lag comes from your PC, your line or the tunnel. The technical details (min/avg/max, jitter, loss, peak throughput, samples) are one click away, with a report to copy.
Play from Bedrock too — one checkbox installs Geyser and Floodgate, picks a free UDP port, creates the second (UDP) tunnel and sets the public port Geyser must advertise. The Bedrock port is changed in each server's settings, and two servers are never given the same one. It depends on the server type:
| Type | From Bedrock | Why |
|---|---|---|
| Paper, Purpur | Works | Plugins run on the server alone, so a Bedrock client needs nothing. |
| Fabric | Works | With the mod-content checkbox: Hydraulic converts what the mods add. |
| NeoForge | Sometimes | It connects, but any mod the client is required to have shuts Bedrock out, and Hydraulic no longer publishes for NeoForge. |
| Vanilla, Forge | No | Geyser publishes no build for them. |
Bedrock players seeing modded content — on Fabric, one more checkbox installs Hydraulic (GeyserMC's own) and Fabric API. Its authors call it very early development, and the app says so.
Play from other Minecraft versions — one checkbox installs ViaVersion and ViaBackwards (plugin servers only).
The window: side rail, server list and a running server
New server, inside the window
Mods & plugins browser
Player management
Server settings
| Windows x64 | Windows ARM64 | Linux x64 | macOS (Apple Silicon & Intel) |
|---|---|---|---|
.exe installer | Via x64 emulation | AppImage | DMG |
git clone https://github.com/JuanP-G/MC-ServerLauncher.git
cd MC-ServerLauncher
dotnet run --project McServerLauncher
# Self-contained build (users install nothing):
dotnet publish McServerLauncher -c Release -r win-x64 --self-contained
Built with Avalonia / .NET 9. The small Java agent that helps servers give memory back (agent/) is
embedded as a jar and rebuilt byte for byte with python agent/build.py; publishing the app needs no JDK. The Windows installer is x64 only (Inno Setup
ArchitecturesAllowed=x64compatible); there's no separate x86 or native ARM64 build.
Documentation: architecture, contributing guide and a full API reference, published with DocFX at https://juanp-g.github.io/MC-ServerLauncher/docs/.
Explore the code: to get your bearings before opening the first file, the architecture article opens with two maps (how the pieces fit, and what happens when a server starts), and two sites draw the repository by themselves: DeepWiki, a wiki by topic whose pages list the files they come from and where you can ask the code questions, and GitDiagram, one clickable diagram of the whole app. Both are written by an AI: they can be wrong and DeepWiki's diagrams do not always render, so when they disagree with the architecture article, the article wins.
[!TIP] Wondering how something works? DeepWiki has a chat with an AI that knows the whole repository and answers by citing the files each thing comes from. For example:
- “How is a backup restored without losing the world?”
- “Where is it decided when a server goes to sleep?”
- “What do I have to touch to add a server type?”
Data: under %APPDATA%\McServerLauncher\ (~/.config/McServerLauncher/ on Linux and macOS):
servers.json, settings.json, the installed java\, the console logs\ (kept 14 days, at most 50 MB a day), the store's
cache\, what the clean-up panel remembers in content\, what the app has learned about each server's memory in memory\ (its last 30 sessions, and the Java versions that refused the memory agent in memory-agent-failures.json), the playit-agent\ binary, the instance.lock that keeps the app to one running copy, and, on
Linux/macOS, .secret.key. Each server keeps its backups in its own backups\ folder, and a hidden .mcserverlauncher-memory\ folder
beside its world with the GC log (two rotating files, 16 MB at most) and the memory agent's jar and two small files; the world backup
never reads it.
Privacy: nothing is sent anywhere to be collected — there is no telemetry. What stays on this computer: the player history (joins, leaves, deaths, advancements and, unless you turn it off in Settings → Players, chat; 90 days by default, never IP addresses) and the console logs above, which keep every line — chat and the IPs in login lines included — whatever the history settings say. What the app asks other services for, and what they see besides your IP: Mojang, Paper, Purpur, Fabric, Forge and NeoForge (server downloads, and Mojang a player's name when you add them to the whitelist), Modrinth and GeyserMC (mods and plugins), Adoptium (Java), GitHub (updates, and the store's catalogue of topics and summaries, a public file downloaded at most once a day), Playit (tunnels, through the app's proxy when linking an account) and mc-heads.net (each player's avatar, by name, in the player history).
Extra Java flags: there is no field for them in the app, but each server in servers.json has an
ExtraJvmArgs entry (empty by default) that is added to the Java command line after the memory flags, for
flags such as Aikar's. If they set the memory (-Xmx, a collector other than G1, how memory is returned) the
server runs in Manual memory mode and the app leaves its memory alone, and if they configure -Xlog the app
does not ask for its own GC log. Edit it with the app closed, since the app rewrites the file as it runs.
Contributing: pull requests are welcome. Start with CONTRIBUTING.md — the short version of the full guide: how to build and test, the code style, and the rule that documentation moves with the code, in both languages.
MIT — free to use, modify and redistribute, including commercially, as long as the copyright notice stays. Provided as is, without warranty. Third-party software is listed in NOTICE.
Minecraft is a trademark of Mojang Studios / Microsoft; this project is not affiliated with or endorsed by them. The Minecraft server files, Java runtimes, mods and the Playit.gg agent the app downloads belong to their respective owners and keep their own licences.
tick querytpsplayers/max and a reachability signal. Its pencil opens
Appearance: the image, the name and both lines of the MOTD — the 16 colours by name, recent ones,
gradients, bold, italics, underline and strikethrough, and any hex colour on Paper and Purpur — with
the card itself as the preview. The format bar shows what the text under the cursor already has.server.properties setting explained in plain
words. Changes wait in a save bar that only appears when there is something to save, and leaving with
unsaved changes is stopped right there. On a narrow window the index becomes a strip of chips.