Library

Updating For Windows

From MangosWiki

I'm using:
-Windows (Vista, x64 and x32 (different pc's before comments on that))

-GIT GUI (not bash) : http://msysgit.googlecode.com/

-SQLyog (For playing with DB's) : http://www.webyog.com/en/downloads.php

-Visual C++ 2008 'Express Edition (x32 os) : http://www.microsoft.com/express/download/default.aspx

-Visual Studio 2008 (NOT EXPRESS FOR x64 os)


First Stage "GIT": Updating your GIT files using the GUI.

Navigate to your GIT folder, (where you downloaded the files to.)* [GIT] Right click, "GIT GUI here" Should open a window with a menu across the top and a few empty boxes.

Click (on the menu at the top): Remote > Fetch From > origin

Wait for this to hopefully say "Success" Then click the close box (not closing GIT, just the Fetch.)

Click (on the menu at the top): Merge > Local Merge > master Hopefully a success again. (close the Merge window)

  • If you get any errors on the above, try "Reset" 'ing the branch.

Or creating an additional branch.

If your interested in what changes happened then go to: Repository > Visualise Master's History.

This should give you an up to date version of the mangos files. Close the GIT application windows =)


Second Stage "Re-Compiling": Compiling your files. Navigate to your download [GIT]win/mangosdVC90.sln Open this with the appropriate compilier.

If you have already compiled once you shouldn't have to change debug to release. However check to make sure it is set to Release rather than debug.

Top Menu: Build > Rebuild Solution This can take a few minutes.

When this has hopefully finished, and that all where successful, your ready to continue.


The compiled files: Navigate to : [GIT]bin/[Win32/64 folder]/ Copy all files that are: .exe .dll .pdb Leave: .map .exp .lib

Paste these into your server folder. (Copy and Replace hopefully.)


If you havn't updated for awhile from game version to a newer game version, re copy the [GIT] src/mangosd/mangosd.conf.dist.in [GIT] src/realmd/realmd.conf.dist.in

(2.4.3 to 3.0.3 maybe.)



Third Stage "Databases": Updating your existing Databases. Open SQLyog Connect to the database server.

Starting with the Mangos Database: Expand it, and expand the "Tables" Look for: db_version Right click, View Data.

The table on the right, should now have a column heading with something like: required_[revision]_[#]_mangos_[last.fix] example: Code:

required_6970_01_mangos_playercreateinfo

If: required_[year]_[month]_[day]_[#]_mangos_[fix] example: Code:

[required_2008_12_22_17_mangos_item_template


then you have a "few" updates....


To update: Right click the Database, (Mangos database, not db_version table) "Restore from SQL Dump" The file to execute: You need to navigate to your [GIT]sql/updates/ folder. From this list, (sorted alphabetically) Look for your current version: (hopefully you wont have to navigate through the sub folders.) Starting with dates, (unless your existing database, is already managed by "Revision") You need to execute each sql dump. 1 by 1. In Order.

If: if one of the executes provides an error close the SQL dump window, go back to the db_version table. Refresh the data, and check the version you have. Then return back to the dumps, and pick the next file. Its possible you missed one, or repeated one to give the error.


Make sure that the SQL dumps are only [revision]_[#]_mangos_[fix] (Notice "mangos", not characters or realmd). I don't think they will apply anyway, but its just something to learn/pay attention to.


Now repeat this process for your Characters database (Table: character_db_version) Applying: [date, revision]_characters_[fix]

And repeat again for the Realmd database (Tables: realm_db_version) Applying: [date, revision]_realmd_[fix]


Once you have succcessfully executed all the .sql files after your revision, until there isn't anymore, then you have the latest version of mangos for maybe a couple of hours. =) You can repeat these steps, from daily (or more) to weekly, to once in a lifetime. The more you do it, hopefully the less bugs your have in the server.

  • Appologies for Grammar/Spelling.

I'll correct what I notice, feel free to prompt me to notice something you have noticed. Last edited by PunKeD_GuRu; 01-08-2009 at 02:56 PM. Credit to PunKeD_GuRu