Installation (Ubuntu 24.04 LTS): Difference between revisions

From Project Skyfire
Jump to navigation Jump to search
No edit summary
No edit summary
 
(One intermediate revision by the same user not shown)
Line 13: Line 13:


'''Installing MySQL'''
'''Installing MySQL'''
Start by downloading the rpm.
<pre>
<pre>
PLACEHOLDER TILL MYSQL RELEASE!
sudo apt-get install mysql-server mysql-client libmysqlclient-dev libmysql++-dev
</pre>
</pre>



Latest revision as of 10:17, 28 April 2024

Introduction

This is a basic guide on how to install SkyFire_548 and SFDB from scratch. **Please note this is a work in progress and only contains enough information to get most people a viable server in Linux.

Prerequisites

The compilation of SkyFire_548 and the setup of SFDB will require certain packages to be installed. In Ubuntu 24.04 use the following command:

sudo apt-get install g++ make cmake git wget libssl-dev libreadline-dev bzip2

You may also want to install phpmyadmin and/or Apache. Do not forget the user and password for the Mysql root user.

Installing MySQL

sudo apt-get install mysql-server mysql-client libmysqlclient-dev libmysql++-dev

Installing ACE

sudo apt-get install libace-dev

Compiling and Installing the SkyFire 5.4.8

Grab the latest version of SkyFire_548 using git:

git clone -b main https://codeberg.org/ProjectSkyfire/SkyFire_548.git

This should create a directory called SkyFire_548 that will contain all the files necessary to compile the server and it's tools. Change to the directory, configure, and build.

cd SkyFire_548
mkdir build
cd build
cmake ../ -DTOOLS=1
make -j(#cores+1)
sudo make install

parts in <> to the correct administrative username, and associated password. Usually the administrative user is root, but you may have altered it.


In the terminal window:

mysql -u <mysql_root> -p < ~/SkyFire_548/sql/create/create_mysql.sql
mysql -u <mysql_root> -p auth < ~/SkyFire_548/sql/base/auth_database.sql 
mysql -u <mysql_root> -p characters < ~/SkyFire_548/sql/base/characters_database.sql

Grab the latest version of SkyFireDB on. https://codeberg.org/ProjectSkyfire/database/tags
The DB download contains an installer for Linux and Windows. Also a single Sql file.

!!!You will also need to manually run any sql's found in the cores sql folder .../sql/updates/world and .../sql/updates/char!!!

(If you are doing this for more than local use you will also need to change a database entry using this mysql command.)

UPDATE auth.realmlist SET address = "YOUR IP HERE" WHERE id = 1;

Configuration

Now move and edit the configuration files to run the server.

sudo mv /usr/local/skyfire-server/etc/worldserver.conf.dist /usr/local/skyfire-server/etc/worldserver.conf
sudo mv /usr/local/skyfire-server/etc/authserver.conf.dist /usr/local/skyfire-server/etc/authserver.conf

Edit worldserver to the correct Mysql user name, password, and your DataDir.

sudo nano /usr/local/skyfire-server/etc/worldserver.conf

Edit authserver to the correct Mysql user name, password, and your DataDir.

sudo nano /usr/local/skyfire-server/etc/authserver.conf

Move daemon service files to systemd.

sudo mv /usr/local/skyfire-server/etc/worldserverd.service.dist /etc/systemd/system/worldserverd.service
sudo mv /usr/local/skyfire-server/etc/authserverd.service.dist /etc/systemd/system/authserverd.service

Extractor and VMAPs

If you need a Windows compiled copy of the DBC Extractor and the tools for the VMAP
Extraction and assembly you can get a copy of them using your GIT client and download
them from: https://codeberg.org/ProjectSkyfire/Community-Tools


The last and final step of setting up SkyFire_548 is to obtain a proper set of maps for use in the server. Change to the WoW directory and run some commands:

cd "Wow Directory"
/usr/local/skyfire-server/bin/extractor
/usr/local/skyfire-server/bin/vmap4extractor
sudo mv dbc /usr/local/skyfire-server/bin/dbc
sudo mv db2 /usr/local/skyfire-server/bin/db2
sudo mv cameras /usr/local/skyfire-server/bin/cameras
sudo mv maps /usr/local/skyfire-server/bin/maps
/usr/local/skyfire-server/bin/vmap4assembler
sudo mv vmaps /usr/local/skyfire-server/bin/

Starting and Stoping SkyFire Daemons

Starting authserver daemon service

systemctl start authserverd

Starting worldserver daemon service

systemctl start worldserverd

Stoping authserver daemon service

systemctl stop authserverd

Stoping worldserver daemon service

systemctl stop worldserverd

To auto start daemons at startup you need to enable the services

systemctl enable authserverd
systemctl enable worldserverd

SkyFire Patcher

The client will need to be patched before it can properly connect to the server. Acquire the patcher in the Community Tools repository.

git clone https://codeberg.org/ProjectSkyfire/Community-Tools.git

Install Mono in Wine or Crossover Office and run the patcher to modify your WoW.exe file.

to install Mono simply, and correctly configured, please view:

http://wiki.winehq.org/winetricks

to obtain specific versions/running hackery in your Wine bottle.

References

http://www.trinitycore.org/w/How-to:Linux

http://wiki.cactusemu.com/index.php?title=Installation_%28Linux%29

http://wiki.winehq.org/winetricks

http://appdb.winehq.org/objectManager.php?sClass=version&iId=20549