Jump to content

[Guide] Multiple Realms/Multiple Computers


Guest PunKeD_GuRu

Recommended Posts

Guide to setting up Multiple Realms

This is a guide to hopefully explain how to setup multiple realms, using different computers, or even on the same computer.

I have placed it in the category, as it is not help on installing a new server, configurations or updates.

This guide takes the idea that you already have managed to create a working server.

Required tools:

Some kind of Database editor (I'm using SQLyog, so I'll refer to parts of this application.)

If you have not successfully setup a server yet, please do not use this guide.

References:

[GIT] : For me this is: Z:\\GIT\\Mangos\\master

---------Z: is a network drive. [serv1]

[serv1] : 192.168.0.1 this is my main server/pc

---------Main server: C:\\wow\\

---------PvP Server: C:\\wowpvp\\

---------{Realmd} Database

---------{Characters} Database

---------{Mangos} Database

[serv2] : 192.168.0.2 this is my secondary server/pc

---------Testing Groupds: C:\\wow\\

---------{Characters} Database

---------{Mangos} Database

[Client] : 192.168.0.4 My actual pc, (Remote access on everything etc... also has wow installed.)

Files:

You will need the bin folder files.

From the GIT folder [GIT]bin/release/

(we are assuming you already have a server setup and where able to compile.)

Select all .exe .pdb and .dll files

Copy to a folder just for the server, example: "[serv1] C:\\wow2\\" or "[serv2] C:\\wow2\\"

Also grab the .conf files.

Editing the realmd.conf

LoginDatabaseInfo = "127.0.0.1;3306;root;password;realmd"

So that everyone can keep the same login details, rather than seperate accounts for each realm, make sure that there is only ONE {realmd}.

LoginDatabaseInfo = "192.168.0.1;3306;root;password;realmd"

This addresses to [serv1] This is because my {realmd} is stored here.

Generally this is for a second pc to comunicate to the first server.

Use 127.0.0.1 if the {realmd} is stored on the same machine as the server.

Use the IP address of the server if it is not on the same machine.

BindIP = "192.168.0.1" For external PC.

BindIP = "127.0.0.1" For same pc.

This is Binding the {Realmd} IP address

Editing the mangos.conf

RealmID = 2

Each realm will have a unique identifier. If their are duplicates of this number ... [ERRORS]

Your first realm will be 1. This is for teh original server you installed.

Regaurdless of the realm being on the same computer, or on a secondary computer etc.

ALWAYS UNIQUE NUMBERS.

DataDir = "."

For the first server, it's liekrly you have it in the same directory as the server itself.

IF you are hosting the second server on the same machine you can point to the files like:

"C:\\wow\\" If you are hosting on a secondary machine, It could be better to make duplicates of these files. Especially if you are editing any of the dbc's or map files.

LoginDatabaseInfo = "127.0.0.1;3306;root;password;realmd"

Points to the {realmd} server. For logins etc.

WorldDatabaseInfo = "127.0.0.1;3306;root;Abcd1234;mangos"

Points to the {mangos}. More explained in the database section below.

CharacterDatabaseInfo = "127.0.0.1;3306;root;Abcd1234;characters"

Points to the {character}. More explained in the database section below.

WorldServerPort = 8085

If you are going to host the server on the same computer, your need to change the port number.

Examples: 8086.

If it is on a different computer, then you are "safe" to use the same port number.

BindIP = "127.0.0.1"

If hosted on the same pc, then above is correct, if hosting on a secondary pc, then above needs to be the relevant IP address.

Link to comment
Share on other sites

Databases:

{realmd}

Keep only 1 of this database.

This is where all login details are stored, it is also where the realmlist details are kept.

{characters}

Your need a characters database per each realm you host.

This stores all details about each individual character created on that realm.

{mangos}

You can either load 1 main mangos database, this means where creatures are spawned, the data will be stored on the database, that will apply to both servers.

If you are going to have a test server... where you might, edit NPC's or Quests, or Items etc...

Then it is advised to have a mangos database per realm.

Being that this database is fairly large, it makes sense to have these databases stored local to the server files.

Editing Realmd Database.

Using your database GUI program, like SQLyog, open the {realmd}

Go into the tables, and View data or realmlist.

id:

This should match the mangos.conf file.

Name

is not depandant on anything, but it is what the client will see when selecting the realm.

Address:

Points to the server, for example 192.168.0.2

Although login details are stored on 192.168.0.1 the mangos and characters databases are on 192.168.0.2 for that realm.

Check your BindIP

Port:

8085 is default, if you have 2 realms on the same pc, then 8086 might be the number.

Check your BindIP

Characters Database:

This needs to be done for each realm.

Same as creating the first database, just create a second.

If its on the same computer, your need to pick a different name for the database,

Example: chars2

If its on a different computer, you are "safe" to use the same name.

The name of the database is addressed in the mangos.conf file.

Make sure they match.

Mangos Database:

Similar to above

If your hosting it on the same pc, then either give it a different name, or use the same database.

Check the mangos.conf file for the database name you have assigned.

Loading the servers:

When you are loading the files to run the server:

Start realmd.exe first.

Then mangos.exe second.

If the second server is on the same computer, open the mangos.exe 3rd.

If it's hosted on a second pc then open realmd.exe 3rd, and mangos.exe 4th.

If:

You have one computer just for the realmlist and login, then you only need to run the realmd.exe

Each realm will need the realmd to connect to it, and the mangos.exe to join it

If the realm is listed as "offline" the realmd.exe isnt running correctly, or... the pc is offline.

Peoples realmlist.wtf file.

They should just point to the realmd database server.

They will automatically be fowarded to the correct server/realm.

Sorry for any mistakes, I'll work on this guide as and when i notice mistakes, or additional info.

Link to comment
Share on other sites

  • 3 weeks later...
  • 1 month later...
can i have wotlk 3.0.9, burning crusade and wow classic server with the same databse on the same pc?

i already have wotlk 3.0.9 server running on the pc

Yes.

Each realm is controlled by its own mangos.conf file.

Therefor each realm can be of different rates, different settings, different language...

and different expansion.

Unless u know how to change the C++ coding to check...

then you must have only 1 client version (currently 3.0.9)

Link to comment
Share on other sites

based on the code i read above would it be possible to have one login server pointing to two different wow servers like stated above but one of the servers being at another site

example: i have a wow server and i my buddy sets one up could we share the same log in server? As long as we both have Mangos?

Link to comment
Share on other sites

within the mangos code there is a line that checks the DB versions...

this code will make sure that you have a certain game client

this code needs to be removed.

You should have said you wanted to run different clients

not

i want to run classic wow, tbc and wotlk

3.x can still be run as "classic wow" if both expansions are disabled (expansion = 0 )

Link to comment
Share on other sites

based on the code i read above would it be possible to have one login server pointing to two different wow servers like stated above but one of the servers being at another site

example: i have a wow server and i my buddy sets one up could we share the same log in server? As long as we both have Mangos?

yeah, simply have the realmd database accessable to both servers

this allows multiple computers (part of the thread title)

Link to comment
Share on other sites

Nice guide, however it does not address 2 comps 2 servers 1 router

port forewarding is a must with wow

3724, 6112 and 6881-6999 are ports that need mapping

the router can only have one port 3724 mapped

I have a desktop running Trinity my friends connect through a DNS server that maps to my real ip address

port 8085 is also mapped ( ex )

Name port port router address

wow1 3724 3724 192.168.1.105

wow1 8085 8085 192.168.1.105

realmlist table has id 1, dns server addy , port 8085

conf file all work fine

This config works works Trinity

Now I have a 2nd comp which I want to run Mangos

this is where i loose it I am not sure about the router config yet

I will attemp to use 127.0.0.1 to test the servers functionality

I would appreciate any suggestions to try

Link to comment
Share on other sites

Nice guide, however it does not address 2 comps 2 servers 1 router

port forewarding is a must with wow

3724, 6112 and 6881-6999 are ports that need mapping

the router can only have one port 3724 mapped

I have a desktop running Trinity my friends connect through a DNS server that maps to my real ip address

port 8085 is also mapped ( ex )

Name port port router address

wow1 3724 3724 192.168.1.105

wow1 8085 8085 192.168.1.105

realmlist table has id 1, dns server addy , port 8085

conf file all work fine

This config works works Trinity

Now I have a 2nd comp which I want to run Mangos

this is where i loose it I am not sure about the router config yet

I will attemp to use 127.0.0.1 to test the servers functionality

I would appreciate any suggestions to try

u cant forward the same port to 2 computers behind 1 IP

so 1 router, 2 LAN IP's same port cannot be forwarded to both.

Mangos servers only require 2 ports to be forwarded,

3724 and 8085*

*Unless you have selected custom ports,

in which case simply forward those ports.

im not familiar atall with trinity.

I hosted 2 realms

my server had the login and a realm

my desktop had another realm.

behind 1 router, which friends where able to connect to both realms without problems simply by having 8086 forwarded for the second realm.

Link to comment
Share on other sites

Mangos and Trinity are twins with small differences

my linksys router complains when I try to route the same port twice

so I tried a few things on this PC with both Mangos and Trinity runing

I used the local host addy 127.0.0.0 on mangos and on my client and that worked ok

my friends were logged into the Trinity server using my dns addy

and I can live with this setup.

Thanks for your input

Link to comment
Share on other sites

  • 4 weeks later...
a lil question...

this is for pcs in lan right?

coz i tried in my friend's pc and mine with this and nothing always says cannot connect to database.

have some idea how i can do this?

~ Greetins ;)

this is behind a a router, pretty much one sided.

having the database port forwarded can be a high security risk.

however if ur using the standard MySQL setup simply forward port 3306. (this is fo MySQL)

Link to comment
Share on other sites

I run 7 Realms, across 4 pcs

1. Database PC 7 Realms db's 7 Character DB, 7 SD2 DB, 1 LOGON, Website, Forums, Armory, ECT ect ect.

2. Web Server PC port 80,443/ Logon Server port 3724

3. Dual Quad Zeons 16Gb Ram with 4 realms ports 8085, 8086, 8087, 8088

4. Dual Quad Zeons 16GB Ramwith 3 Realms ports 8089, 8090, 8091, DOL Server (DAOC EMU) port 5984

all behind router and syslog system and firebox vpn.

with no problems,

oh wait i am a ATM Network engineer. :rolleyes:

and you guy's confused me up there for a sec.

:eek:

Link to comment
Share on other sites

I run 7 Realms, across 4 pcs

1. Database PC 7 Realms db's 7 Character DB, 7 SD2 DB, 1 LOGON, Website, Forums, Armory, ECT ect ect.

2. Web Server PC port 80,443/ Logon Server port 3724

3. Dual Quad Zeons 16Gb Ram with 4 realms ports 8085, 8086, 8087, 8088

4. Dual Quad Zeons 16GB Ramwith 3 Realms ports 8089, 8090, 8091, DOL Server (DAOC EMU) port 5984

all behind router and syslog system and firebox vpn.

with no problems,

oh wait i am a ATM Network engineer. :rolleyes:

and you guy's confused me up there for a sec.

:eek:

U host multiple realm databases?

seems like a waste unless u have seperate logins for each realm.

Link to comment
Share on other sites

Im confused about one thing to be honest.

Say you make a pre-TBC server, client version 3.0.9 expansion=0. Which when you create your account your expansion table would be set to 0. Then you make a WOTLK server, same patch 3.0.9 expansion=2 to allow TBC and WOTLK. How would that work? Since you only have one realmd which means you can use one login to access all servers, your expansion table is still going to be set to 0 when trying to access the WOTLK server.

Only thing i can think of is if the conf file "changes" your expansion table in accounts depending on which server you login to?

Link to comment
Share on other sites

  • 4 weeks later...

I'm trying to open a second realm on the same computer, i think i followed the steps in the right order. But i'm having a little problem..

I can connect perfectly to the first realm, on the other hand when i try to connect to the second realm it says "connected" on the login screen, but i never get to the characters screen.

any ideas where i went wrong?

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use