Description
This guide provides instructions for installing the AwakeMUD Community Edition codebase on any MU* hosting package provided by Third Generation. Any level MU* hosting option we offer should provide sufficient resources for an AwakeMUD starting project and can be instantly upgraded as the project and database grow in the future.
Resources
- AwakeMUD Install Documentation - https://github.com/luciensadi/AwakeMUD
- AwakeMUD Wiki - https://github.com/luciensadi/AwakeMUD/wiki
- AwakeMUD Bug Reporting - https://github.com/luciensadi/AwakeMUD/issues
Installation
Purchase a Hosting Package from Third Generation dependent upon your project scope and resource needs.
Database Prerequisites
Once you've received your Account Welcome Email, login to your cPanel account with the information provided in the welcome email and locate the Database Wizard.
Setup a new Database under your account and record the information for the database name, database user and password as they'll be required in the installation steps.
Codebase Installation
With your account information available, next login to your shell account and execute the following commands to build and compile your codebase.
git clone https://github.com/luciensadi/AwakeMUD.git
cd ~/AwakeMUD/SQL/
cat *.sql > gen_temp.sql
mysql -u <database_username> -p <database_name> < gen_temp.sql
>> Edit the variables as appropriate
echo "const char *mysql_host = \"localhost\";" > mysql_config.cpp
echo "const char *mysql_password = \"<db_pass>\";" >> mysql_config.cpp
echo "const char *mysql_user = \"<db_user>\";" >> mysql_config.cpp
echo "const char *mysql_db = \"<db_name>\";" >> mysql_config.cpp
mv mysql_config.cpp ../src
mv ../lib/etc/houses.template ../lib/etc/houses
cd ../src
replace 'clang -fsanitize=address' 'clang' -- Makefile
replace 'g++ -fsanitize=address' 'g++' -- Makefile
replace 'LIBS = -L/usr/local/lib $(COMMON_FLAGS) -lcurl' '#LIBS = -L/usr/local/lib $(COMMON_FLAGS) -lcurl' -- Makefile
replace 'MYFLAGS = -DUSE_MEMORY_CANARIES -DDEBUG -DSELFADVANCE -Dosx' '#MYFLAGS = -DUSE_MEMORY_CANARIES -DDEBUG -DSELFADVANCE -Dosx' -- Makefile
replace '#LIBS = -lcrypt -L/usr/local/lib $(COMMON_FLAGS) -lnsl -lcurl' 'LIBS = -lcrypt -L/usr/local/lib $(COMMON_FLAGS) -lnsl -lcurl' -- Makefile
replace '#MYFLAGS = -DDEBUG_CRYPTO -DDEBUG -DSELFADVANCE -DIDLEDELETE_DRYRUN -Dlinux -I /usr/local/include/ -Wall -Wextra -Wno-unused-parameter -DSUPPRESS_MOB_SKILL_ERRORS' 'MYFLAGS = -DDEBUG_CRYPTO -DDEBUG -DSELFADVANCE -DIDLEDELETE_DRYRUN -Dlinux -I /usr/local/include/ -Wall -Wextra -Wno-unused-parameter -std=c++11 -DSUPPRESS_MOB_SKILL_ERRORS' -- Makefile
scl enable devtoolset-4 bash
make clean
make
cd ..
replace 'PORT=4000' 'PORT=<ASSIGNED_PORT#>' -- autorun
Starting and Restarting your Codebase
With the codebase compiled, let's start your game port for its first time use.
Login to your shell account and run the following commands to start your game port.
cd ~/AwakeMUD/
./autorun &
Install Script
The following script can assist with the setup of the codebase once you've created your database in cPanel.
cd ~/
wget https://files.thirdhosting.com/codebases/AwakeMUD/awakemud_install.sh
chmod 700 ./awakemud_install.sh
Edit the Installation Script and update the database and game port details as it pertains to your install.
nano awakemud_install.sh
<< (Edit the following variables)
DBNAME="user_dbname"
DBUSER="user_dbuser"
DBPASS="user_dbpass"
GAMEPORT="8765"
GAMEDIR="AwakeMUD"
>> (Save the file)
Execute the script, follow the instructions and let the installation finish.
./awakemud_install.sh
Start your game process in the background once the script has finished.
cd ~/AwakeMUD
./autorun &