Description
This guide provides instructions for installing and configuring the latest TinyMUSH codebase on a server supported by Third Generation. Directions for both the recommended 64-bit installation and the optional 32-bit installation are documented within. Further documentation on the advanced configuration and maintaining of the codebase is available through the resources provided below.
Resources
1. TinyMUSH Home Page – https://www.tinymush.net
2. TinyMUSH 3.2 Source Download – https://www.tinymush.net/index.php/Downloads
3. TinyMUSH 3.3 Source Download – https://github.com/TinyMUSH/TinyMUSH
4. TinyMUSH Install Documentation – https://github.com/TinyMUSH/TinyMUSH/blob/master/INSTALL
5. TinyMUSH Database Conversion – https://github.com/TinyMUSH/TinyMUSH/blob/master/CONVERTING
Installation (64-bit install – Recommended for new installs)
It is recommended to use the native 64-bit software libraries of the operating system when installing and configuring the latest release of the TinyMUSH codebase. The following commands should be executed from the terminal of your shell account.
TinyMUSH version 3.3 (alpha) is available at the GitHub Repository link available under the Resources section. These install instructions are focused on release version 3.2.
I. Downloading and compiling the latest release version of the TinyMUSH source code.
wget https://codebases.thirdhosting.com/codebases/TinyMUSH/3.2/Release/tm32p0.tar.gz
tar -zxf tm32p0.tar.gz
cd tinymush-3.2
./Build
II. TinyMUSH basic configuration
cd game
nano netmush.conf
>>> Update your “port” config option with your account’s registered game port.
>>> Update the “mud_name” config option with your game’s name.
>>> CTRL+X and save the configuration file.
III. Starting TinyMUSH
cd ~/tinymush-3.2/game
sh Startmush
When starting your game for the first time, TinyMUSH will automatically build a new minimal game database. Once the game’s database has been initialized, you may access your game’s login screen by telnetting to your game’s address and port number. To login to the game’s default God account, type: “connect #1 potrzebie”. Proceed to log in to your game with the default god account, change the god account’s password (@password) and then shutdown the running game to save the database (@shutdown). Once the game has been shutdown and the database has been saved, you may restart the game by repeating Step III.
Installation (32-bit install)
The following documentation provides instructions for compiling an existing TinyMUSH codebase with optional 32-bit library support. The compiling of TinyMUSH with 32-bit legacy libraries may be required if your game’s database, release version or extensions do not support newer 64-bit software libraries. In the scenario where transferring your database from another provider or a server with a different CPU architecture, it may be necessary to first compile your source with 32-bit support and then perform the instructions below for a database convert prior to upgrading to 64-bit. It is recommended to compile new TinyMUSH instances with 64-bit library support when possible. The following commands should be directly executed from the terminal of your shell account.
I. Compiling an existing TinyMUSH codebase with 32-bit library support.
cd ~/tinymush-3.2/src/gdbm-*
make clean
make realclean
./configure --enable-shared=no --enable-static=yes --build=i686-pc-linux-gnu "CFLAGS=-m32" "CXXFLAGS=-m32" "LDFLAGS=-m32"
replace 'gcc' 'gcc -m32' -- Makefile
make
cd ~/tinymush-3.2/src
make clean
make realclean
./configure --build=i686-pc-linux-gnu "CFLAGS=-m32" "CXXFLAGS=-m32" "LDFLAGS=-m32"
replace 'gcc' 'gcc -m32' -- Makefile
make 2>&1 | tee Compile.log
II. TinyMUSH basic configuration
cd ../game
nano netmush.conf
>>> Update your “port” config option with your account’s registered game port.
>>> Update the “mud_name” config option with your game’s name.
>>> CTRL+X and save the configuration file.
III. Starting TinyMUSH
cd ~/tinymush-3.2/game
sh Startmush
Database Conversion
When transferring an existing TinyMUSH database between servers of different operating systems or CPU architectures, it may be necessary to perform a database conversion. Database conversions can be used to backup your database to a data flat file and can be useful when relocating your database to a new server or when upgrading your codebase to a new architecture, such as Intel 64-bit.
Database conversions should follow the developer’s recommendations - https://github.com/TinyMUSH/TinyMUSH/blob/master/CONVERTING
The following is an example of how to convert a TinyMUSH database.
1. Shutdown the running game on the original server. (@Shutdown)
2. Perform a database dump on the original server.
cd ~/tinymush-3.2/game/
./bin/dbconvert -c netmush.conf -d data -x data/netmush.gdbm > data/netmush.flat
3. Transfer your codebase to your new server. (SFTP, FTP, cPanel, etc.)
4. Perform a database import on the new server.
cd ~/tinymush-3.2/game/data
mkdir archive
mv netmush.gdbm* archive/
cd ../
./bin/dbconvert -c netmush.conf -d data -X data/netmush.gdbm < data/netmush.flat
Start your game and review the logs to verify no errors are present on database read.