Tingle's Private World of Warcraft Server Tutorial

01/25/2008 08:44 Tingle#1
Tingle's Private World of Warcraft Server Tutorial
Useing Ascent, NCDB, Moon++ and keeping it updated

---------------------------------------------------------------------------------------
STOP AND READ

There have been many changes and im not going to redo the tutorial so for people haveing problems with compiling read the readme files in the ascent folder and moon++ folder thies are the svn directorys you should use now:

Ascent: [Only registered and activated users can see links. Click Here To Register...]
Moon++: [Only registered and activated users can see links. Click Here To Register...]
ADB (Best and newest DB): [Only registered and activated users can see links. Click Here To Register...]

----------------------------------------------------------------------------------------



Index:
1.0.0 - Introduction
1.1.0 - Downloads
1.2.0 - Installing

2.0.0 - Creating Folders
2.1.0 - Downloading/Setting up Folders
2.1.1 - Ascent Folder
2.1.2 - Moon++ Folder
2.1.3 - NCDB Folder

3.0.0 - Setting up XAMPP
3.0.1 - Creating a Registration Home Page with XAMPP(Apache)

4.0.0 - Setting up your DataBase
4.0.1 - Importing your SQL Files: World
4.0.2 - Importing your SQL Files: Character
4.0.3 - Importing your SQL Files: Logon

4.1.0 - Creating a Admin In-Game Account

5.0.0 - Compiling Ascent
5.1.0 - Compiling Moon++ Into Ascent

6.0.0 - Creating the Ascent Server Folder
6.1.0 - Extracting the Maps
6.2.0 - Extracting the DBCs

7.0.0 - Configuring ascent.config, logonserver.config and realms.config

8.0.0 - Setting your Client Realmlist

9.0.0 - Starting the Server

10.0.0 - Configuring the Server for Online Usage

11.0.0 - How to keep the server up to date

12.0.0 - Changes

13.0.0 - Tools, Scripts and Packages

14.0.0.1 - Ascent commands and how to use them

100.0 - Last words




1.0.0 - Introduction

What is Ascent, NCDB and Moon++?

Ascent: Ascent is the Server CORE, originally built by Burlex - new developers have been added to the project but Burlex is the original programmer of Ascent.

NCDB: This is the Database that goes into your SQL Database. That means the Quests, Mobs, NPCs, Gameobjects and other things that are spawned on the map are in here.

Moon++: Moon++ are the scripts, everything that makes instances some quests and special effects work - almost everything is written C++. Moon++ use to be a standalone project but since beginning 2008 they merged with NCDB to work together considering most of the scripts are dependent on the Database.

Notice: Red/Blue Boxes indicates the current action(s) you must do. This means the Field that is Selected with red, is how it should look like



1.1.0 - Downloads

What you need to download to make everything work an use this guide:

[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]



1.2.0 - Installing

SQLyog Enterprise Trail

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...] 4[Only registered and activated users can see links. Click Here To Register...] 5[Only registered and activated users can see links. Click Here To Register...] 6[Only registered and activated users can see links. Click Here To Register...]

Microsoft Visual C++ 2005 Express Edition (Edited)

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...] 4[Only registered and activated users can see links. Click Here To Register...] 5[Only registered and activated users can see links. Click Here To Register...] 6[Only registered and activated users can see links. Click Here To Register...]

TortoiseSVN

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...] 4[Only registered and activated users can see links. Click Here To Register...] 5[Only registered and activated users can see links. Click Here To Register...] 6[Only registered and activated users can see links. Click Here To Register...]

XAMPP

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...] 4[Only registered and activated users can see links. Click Here To Register...] 5[Only registered and activated users can see links. Click Here To Register...] 6[Only registered and activated users can see links. Click Here To Register...] 7[Only registered and activated users can see links. Click Here To Register...]



2.0.0 - Creating Folders

Create folders, name them and place them like in the pictures

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...]



2.1.0 - Downloading/Setting up Folders

The Rev (Revision/Version) and files you download will change/update everytime you do this. So when you do this part the possibility of the things you see in picture 3 are different is pretty high.

While setting up/downloading the folders on picture 2/3 it will ask for a password and username, typ in this:
Name: anonymous
Password: **<no password>** (yes, there is no password leave this empty)



2.1.1 - Ascent Folder

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...]



2.1.2 - Moon++ Folder

Do the same as in step 2.1.1 but change the URL from picture 2 to: projects.emupedia.com/svn/ncdb/Development/Scripts
(yes with [Only registered and activated users can see links. Click Here To Register...]....., i just typed it without the prefix because the link wont show up completely)



2.1.3 - NCDB Folder

Do the same as in step 2.1.1 but change the URL from picture 2 to: svn2.assembla.com/svn/NCDB/Development/Ascent/tables_world/
(yes with [Only registered and activated users can see links. Click Here To Register...]...., i just typed it without the prefix because the link wont show up completely)



3.0.0 - Setting up XAMPP

Open up you Internet Browser and do what the pictures tell you.

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...] 4[Only registered and activated users can see links. Click Here To Register...]
And close your browser.
(Set the Password to "Ascent")



3.0.1 - Creating a Registration Home Page with XAMPP(Apache)

Download this Site Package and place it into where the pictures tell you. When done, to see your Registration Home Page, typ in your Local IP Address in your browser (127.0.0.1). And no it wont work yet so dont try.

[Only registered and activated users can see links. Click Here To Register...]

1[Only registered and activated users can see links. Click Here To Register...]


++++++++++++++++++++++++++++++++++++++++++++++++++ +

++++++++++++++++++++++++++++++++++++++++++++++++++ +
01/25/2008 08:44 Tingle#2
4.0.0 - Setting up your DataBase

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...] 4[Only registered and activated users can see links. Click Here To Register...] 5[Only registered and activated users can see links. Click Here To Register...] 6[Only registered and activated users can see links. Click Here To Register...]



4.0.1 - Importing your SQL Files: World

Now there is a trick to this so you dont take for ever to import every SQL 1 for 1. Do this:

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...] 4[Only registered and activated users can see links. Click Here To Register...] 5[Only registered and activated users can see links. Click Here To Register...] 6[Only registered and activated users can see links. Click Here To Register...] 7[Only registered and activated users can see links. Click Here To Register...]



4.0.2 - Importing your SQL Files: Character

Do that same as above with Rightclicking the DB Character and chooseing "Restore from SQL Dump" and the rest.
The Character.sql you need is in this path:

1[Only registered and activated users can see links. Click Here To Register...]

You also need to execute everything over the version of the Character structure like so:

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...]



4.0.3 - Importing your SQL Files: Logon

Same as above you also need to execute the updates

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...]



4.1.0 - Creating a Admin In-Game Account

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...]



5.0.0 - Compiling Ascent

Compiling can take some time depending how fast your computer is, and STRONGLY suggest you do nothing while compiling

Do what the pictures show:

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...] 4[Only registered and activated users can see links. Click Here To Register...] 5[Only registered and activated users can see links. Click Here To Register...] 6[Only registered and activated users can see links. Click Here To Register...] 7[Only registered and activated users can see links. Click Here To Register...]



5.1.0 - Compiling Moon++ Into Ascent

Copy everything from the Moon++ Folder, then go to the Ascent Scripts folder - delete everything in there and paste the copyed Moon++ Stuff into there. Like in the Pictures:

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...] 4[Only registered and activated users can see links. Click Here To Register...] 5[Only registered and activated users can see links. Click Here To Register...] 6[Only registered and activated users can see links. Click Here To Register...] 7[Only registered and activated users can see links. Click Here To Register...]



++++++++++++++++++++++++++++++++++++++++++++++++++

++++++++++++++++++++++++++++++++++++++++++++++++++
01/25/2008 08:45 Tingle#3
6.0.0 - Creating the Ascent Server Folder

Time to get are server somewhat working or ready to work, create and place the folders as shown in the pictures:

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...]


6.1.0 - Extracting the Maps

Download: [Only registered and activated users can see links. Click Here To Register...] password is "ascent"

This WILL take a long time so dont get frustrated. Place ad.exe into your wow directory and creat a folder there called Maps then execute the ad.exe and wait untill its done. After that place the folder Maps into your AscentSERVER folder. As shown below:

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...] 4[Only registered and activated users can see links. Click Here To Register...]



6.2.0 - Extracting the DBCs

Download: [Only registered and activated users can see links. Click Here To Register...]

Run DBC_Extractor.exe from your desktop and follow the pictures:

1[Only registered and activated users can see links. Click Here To Register...] 2[Only registered and activated users can see links. Click Here To Register...] 3[Only registered and activated users can see links. Click Here To Register...] 4[Only registered and activated users can see links. Click Here To Register...] 5[Only registered and activated users can see links. Click Here To Register...] 6[Only registered and activated users can see links. Click Here To Register...]



7.0.0 - Configuring ascent.config, logonserver.config and realms.config

(First off they are in your AscentSERVER folder)
The Configs are pretty self explaned, but there are important things that you need to fill out. You NEED to read the whole configs because there are "Die Directives" in there that will make your Server crash if you do not delete them, they are ment to be deleted so you read everything :D.

ascent.config:

Change
Code:
<WorldDatabase Hostname = "host" Username = "username" Password = "passwd" Name = "database" Port = "3306" Type = "1">
<CharacterDatabase Hostname = "host" Username = "username" Password = "passwd" Name = "database" Port = "3306" Type = "1">
to
Code:
<WorldDatabase Hostname = "localhost" Username = "root" Password = "ascent" Name = "world" Port = "3306" Type = "1">
<CharacterDatabase Hostname = "localhost" Username = "root" Password = "ascent" Name = "character" Port = "3306" Type = "1">
Change
Code:
<LogonServer DisablePings = "0"
             RemotePassword = "change_me_world">
to
Code:
<LogonServer DisablePings = "0"
             RemotePassword = "ascent">

logonserver.config

Change
Code:
<LogonDatabase Hostname = "host"
               Username = "user"
               Password = "pass"
               Name     = "dbname"
               Port     = "3306"
               Type     = "1">
to
Code:
<LogonDatabase Hostname = "localhost"
               Username = "root"
               Password = "ascent"
               Name     = "logon"
               Port     = "3306"
               Type     = "1">
Change
Code:
<Client MinBuild = "6739"
        MaxBuild = "6739">
to
Code:
<Client MinBuild = "1"
        MaxBuild = "9999">
(Now this can be risky, if someones files are way to old or way to new then there client will crash. But then again this will let anyone with any version connect to your sever.)

Change
Code:
<LogonServer RemotePassword = "change_me_logon">
to
Code:
<LogonServer RemotePassword = "ascent">



8.0.0 - Setting your Client Realmlist

Now your done. Open up your Realmlist.wtf and change the realmlist as so:

1[Only registered and activated users can see links. Click Here To Register...]



9.0.0 - Starting the Server

Now all you have to do is start Logonserver.exe and then Ascent.exe. (If it doesnt work make sure Microsoft .Net 2.0 is installed or higher. And you need to restart your computer)

1[Only registered and activated users can see links. Click Here To Register...]



10.0.0 - Configuring the Server for Online Usage

There are many ways to get your Server online, either over Hamatchi, DynDNS or self hosting.
Thats why ill just explane what to change in the "realms.config":

Edit YOURSERVER to your connection IP or Host name.

Code:
<LogonServer Address = "YOURSERVER"
             Port = "8093"
             Name = "Default Logon"
             RealmCount = "1">
Code:
<Realm1 Name = "SERVER NAME :D"
        Address = "YOURSERVER:8129"
        Icon = "PVP"
        Colour = "1"
        Population = "1.0"
        TimeZone = "1">
And of course dont forget to change your realmlist.wtf adress also to YOURSERVER.



11.0.0 - How to keep the server up to date

Considering this is a developing project and fixes, updates and things get added you might want to update your server about every 2 weeks.
Just repeat Steps 2.1.1-2.1.3 and 5.0.0-5.1.0 so redownloading the source and recompiling.

12.0.0 - Changes

There have been changes they might be put back to the way they where but for now 30.02.08 ill explane what must be done differnt:

The .dll's and .config you normaly get when compiling in the bin/release folder are not there. Copy and paste the ddls and configs from the folder:

C:\Ascent\Ascent Compile\dep\lib32 dbghelp.dll, libeay32.dll and libmySQL.dll
to your server folder

C:\Ascent\Ascent Compile\src ascent-logonserver.config, ascent-realms.config, ascent-world.config
to your server folder and then configure the .config's
unless your useing voicechat you do not need to copy the ascent-voicechat.config

When you compile you will get 4 .exe's now. ascent-logonserver.exe, ascent-realmserver.exe, ascent-voicechat.exe, ascent-world.exe
All you need to start is the ascent-logonserver.exe and ascent-world.exe

New svn directorys:

Ascent: "http://mmoforge.org/svn/ascent/trunk"
Moon++: "http://mmoforge.org/svn/moon/trunk"
NCDB: "http://mmoforge.org/svn/ncdb/Development/Database/tables_world"

Logon information is still anonymous with no password

-------------------------------------

Moon++ have departed from NCDB the new Moon++ svn path is now: "http://projects.emupedia.com/svn/moon/trunk/"



13.0.0 - Tools, Scripts and Packages

[Only registered and activated users can see links. Click Here To Register...] (This can allow you to add, edit, delete accounts - as well as search character and accounts)

[Only registered and activated users can see links. Click Here To Register...] (A ingame addon, its nice. You can look at Tickets ingame that players made, read the readme for more info on how to use it)

[Only registered and activated users can see links. Click Here To Register...] (A nice tool, with a Teleporter, Object Manager, Server Manager and Whisper wall to handel more than one whisper at a time)

[Only registered and activated users can see links. Click Here To Register...] (Nice too, allows you to make items, npcs, quests and other neat things over a programm without haveing to mess with your DB)

[Only registered and activated users can see links. Click Here To Register...](Its an Auto Restarter, Auto Backup, Database Editing tools and Announcement Tool)

[Only registered and activated users can see links. Click Here To Register...] (A differnt and more interesting account creation page with a lot of extras - this is a svn link so you will have to use svn to download it)


14.0.0.1 - Ascent commands and how to use them

Coming Soon


100.0.0 - Last words

So, i hope I made this guide easy enough so anyone can use it. The best thing about this is that everything is self compiled and open source - that means there is no way a virus or anything bad can get into your server/computer. Another thing you can do - if you start getting interrested on programming c++ and makeing your own scripts your can just compile them into the Moon++Scripts.

I can add extra Tutorials to this guide for things like createing custom things or anything you need. I will read probily read every reply so if i see something that could use a tutorial ill make one and add it.

Good luck and have fun with your very own WoW Server!
01/25/2008 11:41 Tingle#4
;) war ne haufen arbeiten -.- lol -> die bilder <-
aber das is echt die beste variante an server haben weil du kriegst immer das neuste was da is

btw fals euch noch was einfällt bitte posten dann schau ich obs sinnvoll is und füge es dazu
01/25/2008 12:00 Meanwhile#5
So schön viele Bilder oah, bis dann einer kommt und sagt, auf Deutsch büdde..
:) "THX" von mir nr1!
01/25/2008 12:01 Tingle#6
bwa ne net auf deutsch leute


[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
01/25/2008 14:31 Tingle#7
:O ich hätte mehr antworten erwartet... ihr mögt mich nur nicht ^^
01/25/2008 20:15 Tingle#8
btw, ich weiß net ob irgentwas an mein pc net passt aber wenn er als schami waffen buffs benutzt sollte er es lassen weil sonst crashed der server xD muss ma guggen was da los is
01/25/2008 21:06 Tingle#9
jo mach meinent wegen mein name is ja ganz groß oben drüber xD steht ja im titel drin und da bleibt er auch ^^
01/26/2008 13:42 Tingle#10
argh! keep the questions/problems in this thread and sticky this! i dare this thread to disapear or go on page 2 if that happens i will never ever do anything for this community again considering everyone here are leechers and are basicly noobs, if you wanna leech then sticky this so i can give support on it
01/29/2008 13:37 Dáràmoná#11
Wie Bugfrei ist das Ding? Suche nen Server, auf dem man ordentlich PvP machen kann und der nicht allzu viele Bugs aufweist!

MfG Dara
01/29/2008 16:44 rip-rip#12
seh kein einziges bild... was muss ich machen um die bilder zu sehen?
01/29/2008 16:53 rip-rip#13
ok hab den fehler...geht einfach ned...
01/29/2008 23:01 Baltaza#14
Moin, erstmal ein dickes Dankeschön, echt geiles Tutorial gefällt mir sehr gut :)
Sooo dann ma zu meiner Frage:
Hab das soweit nach deiner Anleitung gemacht (hoste per no-ip), und komme auch auf den Realm, aber wenn ich einen Char erstellen will, sprich einen Namen eingegeben hab und auf Annehmen klicke, kommt Server verbindung unterbrochen. Woran kann das liegen ?
Ports hab ich soweit frei gegeben sowohl UDP als auch TCP (3306, 3724, 8092, 8093, 8129).

Danke im vorraus für die Hilfe!

Mfg Baltaza
01/30/2008 13:21 Tingle#15
@Dáràmoná,
Bugfrei, ja ziehmlich vorallem wenn ihr ascent trunk benutzt wie im bild angegeben. der einsige pvp fehler den ich derzeit gefunden habe ist wenn du ein duell machst bzw fragst/annimmst "verhakt" sich dein duell anfrage und du oder den den du duellieren wolltest müssen relogen aber das wars auch.

@rip-rip,
du siehst keine bilder? liegt nicht an den host oder wie ich sie geposted habe. liegt wahrscheinlich an dein rechner/browser

@Baltaza,
ich kann dir kurz die grund struktur erklären, logon db is wo accs gemacht werden also das futnzt anscheinend bei dir, world is wo alle mobs und quests und spawns usw drauf is das is auch nicht das problem, anscheinend hast du die DB character falsch gemacht, vergiss nicht die updates zu machen die im ascent sql ordner sind. weil es klingt so als hätte der server schwierigkeiten den character das du machen willst auf die character DB zu schreiben.