Setting Up a Shard
This tutorial documents the smallest possible setup for a Shard. It is intended to be used on a "normal" PC, to develop ages or the actual server and client software. You can however easily build a "production-style" Shard on top of this.
Contents
Preparation
You will need both a Windows machine for the client, and a Linux machine for the software. It is possible to do it all on one PC using a virtual machine and possible Wine, but that's beyond the scope of this tutorial.
On your Windows box, you need to
- Compile the latest version of the GoW fork of the CyanWorlds.com Engine (CWE)
- Install the and download Myst Online: Uru live again
- Download the Python and SDL files
On the Linux machine
- Set up the DirtSand server
- Download the SDL and age files (yeah, both machines need these)
Server setup
The DirtSand server is not yet quite ready, we need to give it some final touches
Encryption keys
The connection between the server and the client is always encrypted. To make this work, you need to generate the necessary keys. Don't worry, DirtSand has it all built in (the paths assume that you installed DirtSand into ~/dirtsand, which is what the installation tutorial does):
cd ~/dirtsand
bin/dirtsand dirtsand.ini # start the server, another prompt will open
ds-902> keygen new # This may take some time and will generate some random series of characters
ds-902> quit # quit the server, go back to the shell
After the "keygen" command, two blocks of text have been printed. The first block goes into the dirtsand.ini file of the server, just copy-and-paste it there (copy only the lines starting with "Key"!). The second part is necessary for the client to connect to the server, save it to some file called "server.ini" that you send to the Windows machine (again, only the lines starting with "Server" must be copied).
IP addresses and folders
The dirtsand.ini file needs one final touch: The IP addresses and paths to the files need to be changed to your setup. I assume that the full path to the DirtSand directory is "/home/user/dirtsand", usually you will just have to insert your username. If in doubt, run
echo $HOME/dirtsand
To find out the address of your machine, you can use the command "sudo ifconfig". Look for the line saying "inet addr" (if it's "127.0.0.1", you looked at the wrong interface). Be sure to have some kind of firewall between you and the internet!
Now open dirtsand.ini, and insert your IP address behind "File.Host", "Auth.Host" and "Game.Host". You will also need to edit the "Paths" section, this tutorial assumes it looks as follows:
File.Root = /home/user/dirtsand/data Auth.Root = /home/user/dirtsand/authdata Sdl.Path = /home/user/dirtsand/SDL Age.Path = /home/user/dirtsand/ages