Operator Guide

Server Operators

Connect your EQEmu world server to this login server so players can find and join your world. Want ToB client players too? See Supporting ToB Clients.

Quick Start — Add worldserver.eqemulator.dev

Add a new loginserver entry to your eqemu_config.json. Your server will appear in the directory within seconds of connecting.

{
  "server": {
    "world": {
      "loginserver2": {
        "host": "worldserver.eqemulator.dev",
        "port": "5998"
      }
    }
  }
}

Restart your world server after saving the config. That's it — your server is now listed on eqemulator.dev.

Running Both Login Servers

Your world server can register with multiple login servers simultaneously. Keep your existing loginserver1 entry for eqemulator.net and add eqemulator.dev as a second:

{
  "server": {
    "world": {
      "loginserver1": {
        "host": "login.eqemulator.net",
        "port": "5998",
        "legacy": "1"
      },
      "loginserver2": {
        "host": "worldserver.eqemulator.dev",
        "port": "5998"
      }
    }
  }
}

Your server appears on both server lists. Players connecting through either login server can reach your world. The "legacy": "1" flag is required for login.eqemulator.net (auto-detected if hostname contains "login.eqemulator.net").

Configuration Options

Loginserver entry fields

FieldRequiredDescription
hostYesLogin server hostname or IP
portYesLogin server port (usually 5998)
accountNoWorld server account name (for registered servers)
passwordNoWorld server account password
legacyNoSet to "1" for login.eqemulator.net compatibility

Naming convention

Loginserver entries are numbered sequentially: loginserver1, loginserver2, loginserver3, etc. The world server iterates through all numbered entries on startup.

Registration

This login server currently accepts unregistered servers. You do not need an account/password to list your server — just add the config entry and connect.

In the future, server registration may be required to claim your server profile, add a description, and manage your listing.

How Player Authentication Works

This login server runs LSPX (Login Server Proxy), which means existing eqemulator.net accounts work here automatically.

Transparent to players

When a player logs in with their eqemulator.net credentials, they are verified against eqemulator.net and cached locally. No re-registration needed. Password changes on eqemulator.net are synced automatically on next login.

What this means for your server

Players connecting through eqemulator.dev use their existing eqemulator.net credentials. From your world server's perspective, it works identically to connecting via eqemulator.net. Players keep their same account IDs and characters.

New client

Supporting ToB Clients

Players using the ToB client can now log in to EQEmulator.dev. They see every server in the list, but can only enter worlds that have been set up for ToB. Here is what that takes on your side.

No new ports for you

ToB clients log in on port 15900, which lives on our loginserver. You don't open anything new. Your world keeps registering withworldserver.eqemulator.dev on TCP 5998 exactly as before, and your loginserver config entries don't change.

Checklist

  1. 1
    Back up your database. Do this before moving your server to develop-v2.
  2. 2
    Build world and zone from upstream EQEmu/Server develop-v2. That branch includes the ToB patch (common/patches/tob*.cpp). Older builds can't talk to ToB clients.
  3. 3
    Install the ToB patch file. Copyutils/patches/patch_TOB.conf from the source tree into your server's patches directory, next to patch_RoF2.conf.
  4. 4
    Allow ToB in World:SupportedClients. The rule must include TOB, or be left blank to allow every client.

    On develop-v2 the default is RoF2,TOB. That blocks Titanium, SoF, SoD and UF players. If you support those clients, add them to the rule or leave it blank.

  5. 5
    Keep your world's client port on UDP 9000. The ToB client always connects to world on 9000, so a world on a custom port won't work for ToB players.

How a ToB login flows

  1. The ToB client logs in to login.eqemulator.dev:15900 and gets the server list.
  2. The player picks your world. The client connects to your world on UDP 9000. If your world doesn't accept ToB, entry fails here.
  3. From there, zoning works the same as for any other client, using your usual zone ports.

Until your world supports ToB, ToB players will get an error when entering it, so let your community know which clients you support.

Troubleshooting

My server isn't appearing in the list

Check your world server logs for loginserver connection messages. Ensure worldserver.eqemulator.dev is reachable from your server on port 5998 (TCP). Verify the config key is named loginserver2 (not loginserver_2).

My server shows 0 players even though people are online

Player count is reported by the world server to each login server independently. Make sure your world server is running a recent enough version that supports multi-loginserver player count reporting.

ToB players can see my server but can't get in

Work through the ToB checklist: a develop-v2 build of world and zone, patch_TOB.conf in your patches directory, TOB allowed in World:SupportedClients, and the world client port on UDP 9000.

After moving to develop-v2, Titanium/SoF/SoD/UF players can't get in

The develop-v2 default for World:SupportedClients is RoF2,TOB. Add the other clients you support to the rule, or leave it blank to allow all clients.

Can I connect to worldserver.eqemulator.dev only (not eqemulator.net)?

Yes. Just configure a single loginserver1 pointing at worldserver.eqemulator.dev. Players using their eqemulator.net credentials will still work thanks to LSPX account proxying.

Need Help?

Join the EQEmulator Discord for support from the community and other server operators.

Join Discord
List Your EverQuest Server — Operator Guide | EQEmulator.dev