Jump to content
  • We are looking for staff for the Wiki area!
    If interested please
    click here and select "Documentation Team"

  • Ubuntu 21.04 WoW WOTLK Simple Server Setup Guide

    Client Side: You will need version 3.3.5a (Wrath of The Lich King) of the client for this server setup.

    Hardware specs used for this guide:

    Quad-core CPU
    8 Gigs of RAM
    120 Gb HDD

    Step 1: Install the OS

    Install base Ubuntu server with updates.
    There are a ton of tutorials on how to do that: YouTube Tutorials

    Step 2: Install required packages

    apt-get install git make cmake libssl-dev libbz2-dev build-essential default-libmysqlclient-dev libace-dev python mysql-server

    Step 3: Setup the database

    mkdir ~/mangos/
    mkdir ~/mangos/db
    cd ~/mangos/db/
    mysql
    CREATE USER 'mangos'@'localhost' IDENTIFIED BY 'mangos';
    GRANT ALL PRIVILEGES ON *.* TO 'mangos'@'localhost' WITH GRANT OPTION;
    exit;
    git clone https://github.com/mangostwo/database.git --recursive
    cd database
    ./InstallDatabases.sh

    Select N - Next Step when prompted and fill out the host details.
    You will also be prompted to determine your databases names.
    A good practice is to set the realm database name to:

    mangos_auth

    Also to suffix all others database names with the core versions you are running:
    Examples - mangos_characters2 and mangos_world2

    Note: You only need one realm database if you run several cores (M0, M1, etc..) on the same server.
    But you will need two databases (characters and world) for each additional core.

    mysql
    USE mangos_auth;
    UPDATE realmlist SET name = "ServerNameGoesHere" WHERE id = "1";
    UPDATE realmlist SET address = "ServerWANIPAddressHere" WHERE id = "1";
    exit;

    Step 4: Download and compile mangos

    cd ~/mangos
    git clone https://github.com/mangostwo/server.git --recursive
    cmake -S ~/mangos/server/ -B ~/mangos/build/
    cd ~/mangos/build
    make -j<# of CPUs/Cores>
    make -j<# of CPUs/Cores> install

    Step 5: Copy files

    mkdir /srv/mangos
    mkdir /srv/mangos/bin
    mkdir /srv/mangos/gamedata/
    cd install/bin
    cp mangosd /srv/mangos/bin/
    cp realmd /srv/mangos/bin/
    cp tools/*-extractor /srv/mangos/gamedata/
    cp tools/*.sh /srv/mangos/gamedata/
    cp tools/offmesh.txt /srv/mangos/gamedata/
    	<Aquire gamedata files and copy them to /srv/mangos/gamedata>

    <Optional simple FTP setup>

    apt-get install vsftpd
    
    vi /etc/vsftpd.conf
    	Change: listen=NO to YES
    	Uncomment: write_enable=YES
    	Add the line: local_root = <path to gamedata folder>
    
    service vsftpd restart
    chmod -R a+w /srv/mangos/gamedata

    <End optional FTP setup>

    cd /srv/mangos/gamedata
    chmod a+x ExtractResources.sh
    ./ExtractResources.sh <This bit takes forever.>

    Step 6: Setup and Configure *.conf files

    cp -R ~/mangos/build/etc /srv/mangos/
    cd /srv/mangos/etc
    cp ahbot.conf.dist ahbot.conf
    cp mangosd.conf.dist mangosd.conf
    cp realmd.conf.dist realmd.conf  Update realmd.conf <read file comments for details>
    Update mangos.conf <read file comments for details>

    Suggested tweaks:

    LogLevel = 1 (Default is 3)
    GameType = #
    Server realm style
    	0 = NORMAL; 1 = PVP; 4 = PVE; 6 = RP; 8 = RPPVP
    RealmZone = <read file comments for details>
    Ra.Enable = 1 (Default is 0) <This will allow you to remotely access the server console>
    	*Use putty in a raw mode to connect to port 3443 of the server.

    Step 7: Start services

    You can start these processes in other ways but I recommend this screen method for starting out. Using screen will allow you to run multiple processes in the background from the same terminal without the need to stay logged in.

    screen -S realm -d -m ./realmd
    screen -S mangos -d -m ./mangosd

    Step 8: Play the game

    Update %WoWDir%\Data\enUS\realmlist.wtf
    	set realmlist <Server Hostname or IP Address>
    
    Open the desktop client and log in with one of the premade user accounts.
    
    	USERNAME		PASSWORD
    	ADMINISTRATOR		ADMINISTRATOR
    	GAMEMASTER		GAMEMASTER
    	MODERATOR		MODERATOR
    	PLAYER			PLAYER

    Optional Step 9: Add users

     From the running mangos server instance: <This is where a remote Putty session comes in handy.>

    account create <username> <password>
    account set addon <username> #
    	(0 - Normal, 1 - The Burning Crusade, 2 - Lich King)

     


    User Feedback

    Recommended Comments

    Elmsroth

    Posted

    @Gryphon4200 Hello and thank you for the waltkhrough guide with Ubuntu 21.04.

    Before publishing, can you please remove your client warmane links since it is not allowed to share Blizzard copyrighted content (Game Clients)

    You can also put some screenshots like the Guide I published for Ubuntu 18.04 and to be more user-friendly and enjoyable to read you can use the same formatting for text-emphasis etc...

    Gryphon4200

    Posted

    Warmane link removed and changed up the syntax a bit. I might do a video tutorial instead of screenshots. I just haven't had the time to knock that out yet.



    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

×
×
  • 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