Start with the rules, then the software
Making a private server breaks into five jobs: check what the publisher allows, pick server software, set up a database and host, configure the game world, and then find players. The first job is the one most guides skip. Some games ship an official server program you may run; others have no server software at all, so any private version must be an unofficial rebuild.
This guide is a planning overview, not a click-by-click install for any one game. It links to the project pages you will need, and to our private servers directory if you would rather join an existing community than run your own. Nothing here is legal advice.
Three kinds of game, three difficulty levels
How hard this is depends mostly on the game. Titles that ship dedicated server software are the easy case. Open-source emulators are the middle case. Games with neither are essentially projects for experienced programmers.
| Type | Examples | What you run | Typical effort |
|---|---|---|---|
| Official server software | Terraria, Minecraft, Rust | The publisher's dedicated server program | Hours |
| Official framework with licensing | FiveM | Cfx.re server files plus a free license key | A day or two |
| Open-source emulator | Ragnarok, WoW 3.3.5, Travian clones, osu! | Community code, a database and a client | Days to weeks |
| Rebuilt from scratch | Most closed MMOs | Reverse-engineered server | Months or longer |
The Terraria wiki recommends a dedicated server over the in-game Host and Play option, noting that the server only saves the world automatically every dawn. Terraria's default port is 7777, which you forward on your router for internet play. FiveM's documentation tells you to register a free license key on the Cfx Portal first and offers txAdmin as an easier setup route.
Minecraft sits in the same easy group: Mojang permits running its Java server software, which is why such a large ecosystem of community networks exists. Rust community servers run Facepunch's dedicated server, optionally with Oxide plugins. If you want a feel for what finished servers look like before building your own, browse Minecraft, Rust and Terraria listings and compare how each presents rules, wipe schedules and modpacks.
Choosing emulator software
For MMOs, the realistic path is an existing open-source project, not writing everything yourself. A few real examples, with details taken from each project's own pages:
| Project | Targets | License | Notes |
|---|---|---|---|
| TrinityCore | WoW 3.3.5a (build 12340), Cataclysm Classic 4.4.2 and current master | GPL-2.0 | C++ framework derived from MaNGOS |
| AzerothCore | WoW | GPLv2 | Describes itself as a 'Complete Open Source and Modular solution for MMO' |
| MaNGOS | WoW Vanilla (Zero), TBC (One), WotLK (Two), Cataclysm (Three), MoP (Four) | Open source | Cataclysm and MoP branches described as needing work |
| rAthena | Ragnarok-style MMORPGs | GPL-3.0 | Needs MySQL or MariaDB 5 or newer |
| bancho.py | osu! private servers | MIT | Python 3.11+, developed mainly by the Akatsuki team |
Check the license: GPL projects require you to share your modifications if you distribute them. Also note that an open-source server does not come with the game's art, maps or client. Those belong to the publisher, and distributing them is a separate legal question. See our glossary for terms like core, database and client patch.
The build checklist
- 1
Pick the game and version
Decide the era (for example WoW vanilla or MapleStory v83). Your client and server versions must match.
- 2
Choose software and read its install guide
Use the project's own documentation, not a forum post from years ago.
- 3
Prepare the host
A home PC is fine for testing. For public play most operators rent a VPS or dedicated machine, then lock down the firewall.
- 4
Set up the database
Most emulators store accounts and characters in MySQL or MariaDB. Make backups automatic from day one.
- 5
Configure rates and content
Start close to the official game; adjust later. Our rates guide explains common settings.
- 6
Test with friends
Run a closed beta, fix crashes, then publish the connection steps.
A VPS, per Wikipedia, is 'a virtual machine sold as a service by an Internet hosting company'. It shares hardware with other customers, so performance can vary, but it is usually cheaper than an equivalent physical machine.
Costs, risks and common mistakes
Costs fall into hosting, protection, domain and website, and your own time. We do not quote prices here because they vary by provider and region, but the pattern is consistent: a test server costs close to nothing, a public one needs a stable host, and a popular one needs protection against floods of traffic. Our rates guide covers the in-game side of the numbers; budget for staff time as well.
| Mistake | Why it hurts | Fix |
|---|---|---|
| Mismatched client and server versions | Players cannot log in or see wrong items | Publish the exact client build you support |
| No backups | One bad update wipes every character | Automate daily database dumps and test a restore |
| Selling gameplay advantages early | Early adopters leave and word spreads | Keep the shop cosmetic or delay it |
| Leaving default admin passwords | Accounts and the host get compromised | Change every default before opening |
| No staff plan | Cheaters and griefers drive players away | Recruit moderators before launch |
Security matters in both directions. Players worry about malware in custom launchers, and Jagex's stance on RuneScape private servers, as summarised by the RuneScape Wiki, cites 'the risk of malware and theft of personal information'. Publish checksums for your client, and keep the launcher simple. The safety guide lists what players check.
Launching and keeping players
Getting the server running is the easy half. Players need a website, a simple client download, clear rules and a way to report bugs. Operators who list on directories such as ours can use the list your server page; see also the community-building guide and the wipes guide before deciding whether progress will reset.
- A public rules page that states what the shop sells and what it does not
- One-click or one-page client download, with the exact version named
- A status page or Discord channel for downtime announcements
- A written wipe policy, so players know whether progress is permanent
Run your own vs join an existing one
Run your own
- Full control over rates and rules
- You carry hosting, security and staffing
- Takes weeks before the first player logs in
- Legal exposure is yours
Join an existing server
- Playable within an hour
- Established population and staff
- Less control over rules
- Still check safety and terms
- Terraria default port
- 7777
- TrinityCore 3.3.5 client build
- 12340
- rAthena database
- MySQL/MariaDB 5+
Forward it for internet play
3.3.5a, from its README
Per its README