Jump to content

[Guide] Mangos Windows Setup

Guest AuntieMangos

Recommended Posts

      • If you need help, please post in the installation forums, the general help forums, or here in this thread. I don't visit these forums very often, so please do not PM me for I will not answer. However, other members of these forums will be more than happy to help you out.
        Guide last updated: July 12th 2010

          • [li]* No longer writing a French guide, at least not for now, no time[/li]

* Mangos now supports client version 3.3.5a, more information is available here

1. Software downloads

Please download all of the following software before we begin. Everything is free, so don't worry about costs :)

    • [li]* World of Warcraft client (with Wrath of the Lich King) updated to version 3.3.3a (trial clients ARE NOT supported; for a full download please login to worldofwarcraft.com or buy the disks)[/li]

* MySQL server (community edition available for download here)

* SQL client (you can use whichever one you're comfortable with, but I'll be using SQLyog throughout the guide which is available here, the

download you want is most likely the very first one in the list)

* GIT client (msysgit available here, first one on the list as well)

* Microsoft Visual C++.net Express 2010(available here)

* SVN client (Tortoise SVN will be used in this guide and is available here)

2. Installing software

    • [li]* Run the installation for your GIT client (msysgit)[/li]

* When prompted, click the option that says "Use Git Bash only" (click here for an image)

* When prompted, click the option that says "Checkout Windows-style, commit Unix-style line endings" (click here for an image)

* Click next and wait for the install to finish

* Install MySQL (choose "Typical" installation when prompted)

* Install SQLyog, Tortoise SVN, and Visual C++.net, all three installations are very straight-forward

3. Getting the MaNGOS source files

    • [li]* Create a folder anywhere you like and name it whatever you like (this will be where you store all your MaNGOS stuff, for example C:\\MaNGOS\\)[/li]

* Right-click your folder and select "Git Gui" (click here for an image)

* When the Git window comes up, click the "Clone Existing Repository" link (click here for an image)

* In the "Source Location" box, put in


  • * In the "Target Directory" box, put in where you want the source code to be stored; please note that the folder cannot already exist (example would be C:\\MaNGOS\\source\\) (click
here for an image)
* Click the "Clone" button and wait for the program to finish; it will take a while, but just wait
* Once finished, close git

4. Getting the ScriptDev2 files

    • [li]* In your MaNGOS source folder switch into src\\bindings folder (so you could be in C:\\MaNGOS\\source\\src\\bindings)[/li]

* Right-click on the bindings folder, and select "Git Bash here"

* In the Git bash type in

git clone git://github.com/scriptdev2/scriptdev2.git ScriptDev2

        • * Wait for git to finish the download

5. Compiling MaNGOS

    • [li]* Open your MaNGOS source folder, then the "win" folder that is found inside it[/li]

* Open the file "mangosd100" in Visual C++.net 2010

* Click "Build" in the menu bar at the top of Visual C++ then select "Configuration Manager" (click here for an image)

* Make sure that the dropdown box for "Active solution configuration" says "Release" and that the box for "Active solution platform" says "Win32", then close that window (click here for an image)

* Click "Build" again in the menu bar at the top of Visual C++, then click "Build Solution", or press F7 (click here for an image)

* While compiling, if you receive any errors then click "Build" again then "Clean Solution"; you can then restart the compilation process

* Compiling will take a long time, if you get warning messages don't worry, that's normal (note that these are warning messages and not error messages, error messages are bad) (click here for an image)

* On my computer compiling took about 20 minutes, which is around average (just to give you an idea, don't think it'll take any less time or as much time, could be longer)

  • [li]* Compile ScriptDev2[/li]

* Open the file "scriptVC100.sln (located in src\\bindings\\ScriptDev2 ) with VC 2010 (or the 90 for VC2008)

* Change the build configuration similar to Mangos configuration to the same values as you chose in mangos (Release Win32)

* Compile ScriptDev2

6. Installing MaNGOS

    • [li]* Go into your MaNGOS source folder, then into the "bin" folder, and then the "Win32_Release" folder (example C:\\MaNGOS\\source\\bin\\Win32_Release\\)[/li]

* Copy copy all .dll and .exe files files to your MaNGOS folder (example C:\\MaNGOS\\):

* Go into your MaNGOS source folder, then into the "src" folder, and then the "mangosd" folder

* Copy the file "mangosd.conf.dist.in" into your MaNGOS source folder

* Rename it to "mangosd.conf" (right-click the file and select rename)

* Go into your MaNGOS source folder, then into the "srs" folder, and then the "realmd" folder

* Copy the file "realmd.conf.dist.in" into your MaNGOS source folder

* Rename it to "realmd.conf" (right-click the file and select rename)

* Go into your ScriptDev2 source folder

* Copy the fole "scriptdev2.conf.dist.in" into your MaNGOS source folder

* Rename it to "scriptdev2.conf" (right-click the file and select rename)

* Here are the files that should now be in your MaNGOS folder (click here for an image)

7. Extracting maps, DBCs and VMaps

    • [li]* Go into your MaNGOS source folder, then into the "contrib" folder, and then the "extractor_binary" folder[/li]

* Copy all of its content into your WoW client folder (example: C:\\Program Files\\World of Warcraft\\)

* CHECK the readme for additional information!

* Open your WoW client folder with Git Bash (context menu called "Git Bash here")

* Start Extraction process with "sh ExtractResources.sh"

* You will be asked a few questions, required for MaNGOS to work is DBC/maps and vmaps, mmaps are optional

* This will take a long time, so please be patient

* When the extractor has finished extracting, there will be new folders in your WoW folder called "DBC", "maps" and "vmaps" - possible "mmaps"

* Copy these folders into your MaNGOS folder (example: C:\\MaNGOS\\)

8. Configuring MySQL

    • [li]* Click your Windows "start" button, then find MySQL and click on the "MySQL Server Instance Config Wizard" (click
here for an image)
* When prompted, select "Standard Configuration"
* When prompted, check-off "Install as Windows Service", have the service name be "MySQL" and make sure that "Launch the MySQL server automatically" is checked-off as well
* When prompted, make sure that "Modify security settings" is checked off
* Put in a password that you'll remember, you'll need it later on (default password in configuration files and such is "mangos", use this if you're the only one using your WoW server)
* Only check-off "Enable root access from remote machines" if you want to be able to work in your MySQL database from more machines than just your current computer, also check it off if you plan on having an online registration page
* Click "Execute"
* On Windows 7 and possibly Vista, the installation window might freeze for a second; just leave it be, it will come back
* If you're having any extra issues configuring MySQL, try running the wizard as an administrator, allowing MySQL through your firewall, or running in compatibility mode for another operating system
(Google these methods if you need to, I'm not including them in this guide since they are irrevelant)[/li]
9. Database setup

    • [li]* Run SQLyog[/li]

* Click the "New..." button at the top of the connection window and name the connection whatever you like (perhaps something like "WoW server"?) (click here for an image)

* In the "MySQL Host Address" box, leave it as "localhost" or "" if you're playing single player or on LAN, change it to your host's IP or DNS if it is an online server (click here for an image)

* The "Username" box should say "root"

* Put in the password that you set in the MySQL config wizard

* The port number is by default 3306, only change this if you need to (most likely for online servers, don't change the port unless you know what you're doing)

* Leave the "Database(s)" box blank for now, we'll come back to it later

* Click connect and click yes if asked to save changes

* Right-click "root@(IP here)" in the top left pane of SQLyog and click "Create database" (click here for an image)

* For database name, put in "realmd", don't worry about the other two things (click here for an image)

* Repeat the above step, but make three more databases named "mangos", "characters", and "scriptdev2"

* In the menu-bar at the top of SQLyog, click "File" then "New Connection", but this time put the following in for "database(s)":


  • (click
here for an image)
* Click connect and click yes to save changes
* In the database list on the left side of SQLyog, right-click "realmd" and select "Import" then "Restore from SQL dump"
* Click the "..." button and find your MaNGOS source folder, go into it, then go into the "sql" folder and select "realmd.sql", then click "Execute" and wait for it to finish (if you get a popup message just click yes), then click "Done" to close that window (click here for an image)
* Repeat the above steps, except this time for the characters database (instead of selecting "realmd.sql" in the execute window, select "characters.sql" in the same folder
At this point, you have two choices for the world database (mangos). You can either use a completely empty database with no items, NPCs, nothing (this is if you want to completely create your own world) or
use a packed database such as UDB which includes everything from quests to items to instances to NPCs. There are a whole bunch of different packed databases, but UDB is the one that is best supported for
MaNGOS. Other databases might include strange custom content or variations on NPC scripting, etc.
If you want an empty database:
* In the database list on the left side of SQLyog, right-click "mangos" and select "Import" then "Restore from SQL dump"
* Click the "..." button and find your MaNGOS source folder, go into it, then go into the "sql" folder and select "mangos.sql", then click "Execute" and wait for it to finish (if you get a popup message
just click yes), then click "Done" to close that window
If you want a packed database (UDB):
* Download the latest version of UDB, it can be found here (download the ZIP archive link, so for example at the time of
making this guide the file I would have downloaded would be UDB_0.12.0_mangos_9582_SD2_1639.zip)
* Extract the database file somewhere you will remember (keep it too in case of mistakes later on)
* Add it to the "mangos" database the same way you did with "realmd" and "characters" (this database is considerably larger than the other ones you've added, so it could take a while to execute)
***Remember the following steps, you will be using the same method to update the databases (explained later)***
* Go into your ScriptDev2 source folder, then into the "sql" folder, and open scriptdev2_create_structure_mysql.sql in Notepad, copy all the contents, then paste it into the SQL query box to the right of SQLyog then select the "scriptdev2" database in the database list on the left side of SQLyog (make sure all of the text in the query box is selected before moving on) (click here for an image)
* Click the play button in the toolbar at the top of SQLyog
* Repeat the above two steps, but this time for scriptdev2_script_full.sql in the same scriptdev2 sql folder and for mangos_scriptname_full.sql (for mangos_scriptname_full.sql, have the mangos database selected instead of the scriptdev2 database) (click here for an image)

10. Updating databases

    • [li]* Make a folder within your MaNGOS folder, call it "updates" or "update packs" or something (example: C:\\MaNGOS\\updates)[/li]

* Right-click that folder and select "SVN Checkout"

* In the "URL of repository" box, put in:


  • * Click OK and wait for the download to finish
    This part is somewhat tricky and can be hard to explain, but I'll do my best. The updates must be done in proper order or else things can get messed up, so please follow the next steps carefully!
    * Go into your updates folder and open the first update pack, copy the contents, then paste them into the query box (similar to the ScriptDev2 query stuff we did earlier)
    * Take notice to which database needs to be selected; most update packs will be named in the following pattern: update#_patchtype_databasename_revision#_to_revision#, so for example 388_corepatch_characters_9311_to_9582.sql
    * Look at the database name part of the filename, this is the database that you need to select before pushing the play button (this is VERY important, in my example filename above I would have to select
    the "characters" database)
    * Push the play button
    * Repeat the update steps above for every update pack that was downloaded
    * You may need to add additional updates depending on the progress of database content
    * You can check your database revision number by clicking the "+" next to the database name in the database list, clicking the "+" next to "Tables" then finding the corresponding table for each database:
    Characters: Characters_DB_Version
    Mangos: db_version
    Realmd: Realmd_DB_Version
here for an image)
* You can then click the "Tables" tab on the right of SQLyog (shown) to see the table information
* Somewhere in the table information (there isn't much within the db_version tables, so look for it), there will be something that says "required" in it, such as "required_9803_01_mangos_spell_bonus_data"
* Go into your MaNGOS source folder then into the "sql" folder and find the required update (it will have the same name) and do all the updates after it (all the newest ones)
* SQLyog will be disabled while running updates; when it is enabled again, you'll know that that's when the update has finished

11. ACID

    • [li]* The ACID SVN can be found
* Click the link for your expansion (vanilla, BC or WotLK)
* Click the newest version (the highest number)
* Click the link for the sql file (it will have the .sql extension)
* Copy all of the file and paste it in the query box, select all the text then press the play button (with the mangos database selected)
* You can now close SQLyog :) [/li]
12. Configuration

    • [li]* Go into your MaNGOS folder[/li]

* Open "mangosd.conf" in Notepad

* Search for the line that says "DataDir=" and make sure it is the following:


* Search for the following codes and change them as required:

WorldDatabaseInfo = "[server IP];3306;root;[sql password];mangos"
LoginDatabaseInfo = "[server IP];3306;root;[sql password];realmd"
CharacterDatabaseInfo = "[server IP];3306;root;[sql password];characters"

(Server IP is the IP you log into SQLyog with, 3306 is the port number, root is the root username, SQL password is the password you log into SQLyog with, mangos is the name of your mangos database)

* If you used vMaps, then change the following lines:

vmap.enableLOS = 0
vmap.enableHeight = 0


vmap.enableLOS = 1
vmap.enableHeight = 1

* Save, exit

* Go back into your MaNGOS folder

* Open "realmd.conf" in Notepad

* Search for the following code and change it as required:

LoginDatabaseInfo = "[server IP];3306;root;[sql password];realmd"

* Save, exit

* Go back into your MaNGOS folder

* Open "scriptdev2.conf" in Notepad

* Search for the following code and change is as required:

ScriptDev2DatabaseInfo = “[server IP];3306;root;[sql password];scriptdev2”

  • * Save, exit
    * Create backups of conf files if you don't trust yourself with keeping a single copy of each

13. Client setup

    • [li]* Go into your WoW installation folder, then into the "Data" folder, then into your locale's folder (example: enUS)[/li]

* Open realmlist.wtf in Notepad

* Change the contents to:

set realmlist [server IP]
set patchlist [server IP]

      • * If you play retail WoW on the same client on which you play your server, you might want to make a backup of your realmlist file

Congratulations, your World of Warcraft MaNGOS private server is now ready. To put the server up, simply run mangosd.exe and realmd.exe (keep them up for the server to stay online).

Edit by Schmoo: A few things updated, though I suggest to use one of the guides in the wiki

Link to comment
Share on other sites

  • Replies 770
  • Created
  • Last Reply

Top Posters In This Topic

  • A. Errors

      • [li]* If you get an error that says something like "sql was probably updated" or "# fields, # missing", then you need to update your database and possibly your entire core[/li]

* If you get any map or dbc errors, make sure that the "datadir" field is set to "." (in mangosd.conf) and that your dbc and map files are up-to-date with your client in your MaNGOS core folder

B. Manual creation of accounts and modification of accounts

    • [li]I will not show you how to use a registration page as they're all very different, but here's how to create accounts manually.[/li]
    Creating the account:

* Run mangosd.exe and realmd.exe (once mangosd.exe is fully loaded, you can type "help" for all the commands)

* Once they're both nice and loaded, type in the following (change it as required):

account create [username] [password]
Example: account create Phenomenon 123

Setting expansions:

account set addon [username] [number 0-2, 0 being vanilla, 2 being WotLK]
Example: account set addon phenomenon 2

Changing GM levels:

account set gmlevel [username] [number 0-3, 0 being player and 3 being administrator]

C. Editing mangosd.conf

In this step I won't show you how to change your conf file so that you have a funserver or what-not, but rather tell you how to understand the conf file.

You'll notice large areas of text in the conf file that are surrounded with number signs (#). This is the documentation area. You can read up on what a function does, what it's for and how/what you should change it to (example: # RealmID # RealmID must match the realmlist inside the realmd database -> this tells you that the RealmID function needs to be set to the same one that's found in the realmlist table in your database).

Below the text area sounded by #s, you'll find the actual functions. This is where you change the values to what you want. Be careful of spacing and typos, they will throw errors when running the server

(example: the RealmID function should look like this RealmID = 1 and not like this RealmID=1 or RealmID =1 or RealmID = 1u).

D. Editing the database

Creating custom content for your server (such as items, NPCs, quests, etc.) is really very easy. You can either do it manually directly in SQLyog or you can use a far more efficient tool (there are tons of fun database tools out there, a few are listed in the resources area of this post). However, more technical things such as spell editing (etc.) will require core mods which require extensive knowledge of C++ to create.

E. Useful tools and resources

***The MaNGOS forums are not to provide you support for the following tools. If you are having trouble using them, please visit their respective websites instead.***

    • [li]*
Quice'>http://http://quice.indomit.ru/']Quice database editor: easy to use editor to modify database entries for anything from quests to NPCs to items and more
* WoW-V'>http://http://www.wow-v.com/']WoW-V SQL generator: extremely easy to use, very straight-forward multifunctional online code generator to create SQL queries for all your custom content needs (good for people who are beginners at database editing)
* MaNGOLin: an administrative application that has commands built-in so you don't always have to type them out (click the link to view the thread on UDB)[/li]

Link to comment
Share on other sites

I did as you said, though the first time I had to uninstall and reinstall MySQL in order to start the service... that of course ment that I had to rebuild my databases and also edit the .conf files... after all that it is still not morking for me... could it be because of the fact that I have a windows x64 system? could mangos not work with 64 bit or is there a version I might use with 64 bit nativity?

I went as far as to uninstall my virus protection (it could not be closed, just disabled)... still nothing... the exact error is as follows (on realmd.exe):

"Could not connect to MySQL database at Can't connect to MySQL server on ''<10061>

Cannot connect to database

ThreadQueue waiting on remaining threads...


1 user-thread relcaimed.

(on mangosd.exe)":

"'Could not connect to MySQL database at Can't connect to MySQL server on ''<10061>

Cannont connect to world database;7546;mangos;mangos

ThreadQueue waiting on remaining threads...


1 user-thread reclaimed."

Could your problem be any dll for MySQL connection on Win ? You installed the MySQL for Win32 ? And did the Mangos build for Win32 also ?

Edit: -- you got it, ok.

The command is "ACCOUNT CREATE %usr% %pass%" right ?

Get the Minimanager, its a great tool. (you will need a webserver and a PHP sapi)

Link to comment
Share on other sites

Those behind firewall or unable to clone the repository can do the following

1. Create an empty folder

2. Right-click on this folder and select git bash here

3. Type the following commands:

git init

git remote add origin http://github.com/mangos/mangos.git

git pull origin master


as posted in http://getmangos.eu/community/showthread.php?p=69078#post69078

Link to comment
Share on other sites

Those behind firewall or unable to clone the repository can do the following

1. Create an empty folder

2. Right-click on this folder and select git bash here

3. Type the following commands:

git init

git remote add origin http://github.com/mangos/mangos.git

git pull origin master


as posted in http://getmangos.eu/community/showthread.php?p=69078#post69078

Thanks Prawnz. That helped out a lot. I even turned off the firewall and it wouldn't download, but using the Bash did the trick.

Thanks again! :D

Link to comment
Share on other sites

OK, i tried to run mangosd.exe, not much happend opened the DBerrors file:

2009-06-21 18:30:38 SQL: SELECT version, creature_ai_version FROM db_version LIMIT 1

2009-06-21 18:30:38 query ERROR: Table 'mangos.db_version' doesn't exist

2009-06-21 18:30:38 SQL: SELECT MAX(guid) FROM creature

2009-06-21 18:30:38 query ERROR: Table 'mangos.creature' doesn't exist

2009-06-21 18:30:38 SQL: SELECT MAX(guid) FROM gameobject

2009-06-21 18:30:38 query ERROR: Table 'mangos.gameobject' doesn't exist

2009-06-21 18:30:38 SQL: SELECT entry,content_default,content_loc1,content_loc2,content_loc3,content_loc4,content_loc5,content_loc6,content_loc7,content_loc8 FROM mangos_string

2009-06-21 18:30:38 query ERROR: Table 'mangos.mangos_string' doesn't exist

2009-06-21 18:30:38 >> Loaded 0 mangos strings. DB table `mangos_string` is empty. Cannot continue.

It means there are no tables in your database. Can't do much without them

Look here for db projects. UDB is most stable.


Link to comment
Share on other sites

2009-06-26 13:20:47 ERROR:Error in gameobject_template table, probably sql file format was updated (there should be 39 fields in sql).

have no idea how to update this i tried same like in guide but unsuccesfully HELP!!

im using UDB_0.11.5_Core_7681_SD2_1012.rar

10 seconds of searching would have answerewd this, THE most asked question in the history of most asked questions. You missed some SQL updates

hello everybody,

a little ask about git.

Is it possible (and if yes, how ?) to "donwload" an older revision with git ?

with Tortoise svn, i do :

right click

Tortoise SVN >> update to revision

i wrote the revision number (older than the newest)

and hop everything is done

any idea please ?




Read one of the MANY excellent GiT guides posted on the forum (written by Freghar).

Link to comment
Share on other sites

I had some trouble with the updating of the db's. First, downloaded everything (full db's, updates and stuff) and tried to import in this order:


I think i did it right in the end but i cant be sure. And i have no idea what i did.

And now for the real problem. mangosd.exe runs smoothly, but realmd halts at the beginning, no error messages.

I really tried hard, ive read the whole topic (if not today the last 2 weeks, i tried several times and only today i got that far). Im not stupid or anything, i have better-than-average english and so, but still cant deal with this for quite some time. Help is really appreciated :huh: :D

You are updating your DB wrong. if you have questions on database content, problems, and installation ask on UDB's forum. Also use search because this has been talked about many times. But I'll give you a little help and here: http://udbforums.org/index.php?topic=12622.0

When you run realmd nothing more is suppose to appear after "process priority class set to high" As long as the command window doesn't just disappear you're good to go.

Some info: Mangos is only server core with a little DB support and provision. UDB is content database with items, quests, creatures and such, ACID is basic creature actions, scriptDev2 is advance, complex, creature actions like bosses. the Resources thread( link in signature) has links to all of these and more.

Also, read up on The Big FAQ Thread, and Getting Answers On The Forums. Print these out and read while on break at work...waiting for appointment...or on the toilett. Doesn't hurt being informed. Print out all the stickies that you come across on the forums within Mangos project scope. And what is Mangos: http://getmangos.eu/community/viewtopic.php?id=8632&p=77257

Link to comment
Share on other sites

-Go here to download the newest UDB database (contains all the world stuff)

-Make sure that your MaNGOS core is up-to-date with the database (check your core's revision number, then the compatible revision number within the file title of the UDB database)

-Download the latest UDB update packs here (if that link doesn't work, go here and find the updates folder in /trunk)

and the tut is for WoW at 3.3.0a.. the databace is for 3.3.2!

my core's revision number is 9648.

the latest UDB is:


is it fine to use one with another?!

how can I check my core's revision number


to find what ver you have:


Link to comment
Share on other sites

Finchy: This is simple, it mean that the target directory must not exist... using these option, you put a folder name that doesn't exist and it will create it

I suggest you check my topic here, this wil help you out :)


Your at Part 5


I know one of my post here must also contain this error ...anyway...yeah it was mess up for me too at the begenning but let me explain:

Mangos Core and UDB is 2 things, altough it goes in the same database...

Mangos Core simply mean, all the tables and columns etc etc ...but without any data....this is your Core

UDB is the data itself....the npc, life points etc etc...

When you create your database, in my guide, i'm asking to use the UDB Core... (This is both Mangos Core + all the data (UDB ) up to a certain point) ...

later on, to make updates, as i describe, you need to do the corepatch first and then the update pack .... the corepatch will increase your core (creat table, column etc), the update pack will put the data....in the database...in these columns etc that you've created....

So technicly, you should never have to worry if your following the UDB updates....do your corepatch first then the content patch and your ok...

See part 15 in the same link for the place to get your version

Sorry i did wrote something else this afternoon

Link to comment
Share on other sites

No No

Drop your Mangos Database

Import your UDB CORE with dump file into your Database

Please see this thread to find the appropriate download :)


your guide is compleetly different!!!!!!!!!

I am at


I am not doing everthing.. for example I have done the ad.exe part that I dont have to do again...

but many stages are...

anyway.. will update if I get a problem.. its just fitting the databace :/

or maybe just everything is done wrong :D

I am trying to do step: PART 5 - CONFIGURING GIT

but when it finishes, I do not get the mangosd.exe and realmd.exe!! any1 have that problem ?

anyway, its such a good tut u have there :) thanks for everything ;)

Link to comment
Share on other sites


mystery solved :D

any1 who is having problems and spendt some time reading here.. I'd definatly recommend the other tutorial.

double check everything b4 u do anything and read the whole step and understand it and u are on ur way to

make a faultless server :)


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