MMORPG Server Configuration
(This is a draft document) <add introduction>
Preparation
1. Make sure you have created a new game before proceeding.
Server Configuration
2. Create a text file named server.cfg in the .\serverconfig folder of your source installation
The file should be "plain text" on Windows use Start -> Programs -> Accessories -> Notepad
3. Copy and paste the following into this file:
# Server Configuration [Master Server] Master IP = 127.0.0.1 Master Port = 2007 World Username = starter World Password = mmo Default World Port = 2006 Manhole Username = starter Manhole Password = mmo Manhole Port = 8192 Character Server Password = startermmo Patch Server Demo = starter:mmo@http://127.0.0.1/svn/public/starter Patch Server Premium = starter:mmo@http://127.0.0.1/svn/public/starter # smtp Support Email Address = me@mail.com Support Email Password = myemailpassword
GM Server - Optional
For security reasons (clear text passwords), the GM Server password file is not included in the SVN repository. In order to bring the GM server online you need to simply create the necessary file.
1. Create a new python module named ./mud/gmserver/userpasswords.py
2. Copy and paste this into the module:
#XXX DO NOT COMMIT ME TO THE SVN REPO!!! USERS = { "GM One":("mypassword",("GM",)), "GM Two":("myotherpassword",("GM",)), }
Note: The file above is simply an example/template. You are strongly advised to change the "mypassword" and "myotherpassword" if your system is on the public wire.
Create the Databases
4. Open a command console and navigate to your source folder. For example:
a. Click [Start]->Run... (then type) cmd (and press the [Enter] key)
b. Use the cd command to navigate to your directory, i.e. cd c:\StarterMMO
5. In your command console type: .\mud\masterserver\createdb.py [Enter]
Verify: master.db should be created in .\data\master
6. In your command console type: .\mud\characterserver\createdb.py [Enter]
Verify: character.db should be created in .\data\character
Launch Sequence
7. Start the master server by typing: start .\mud\masterserver\main.py [Enter]
You should then see a window pop up and the following should appear:
Prairie Games master Server .01a ->Initializing Checking Database Integrity ... ok ... Configuring Settings ->Server is up -------------> Committing Database <-------------
8. If you configured the GM Server, you may launch it now by typing: start ./mud/gmserver/gmserver.py
9. Launch the character server by typing: start .\mud\characterserver\server.py [Enter]
If you did not configure and properly launch the GM Server, you may see a connection refused error at this time, this is due to the GM Server not being found and is expected.
... Checking Database Integrity ... ... ok ... [Failure instance: Traceback (failure with no frames): <class 'twisted.internet.error.ConnectionRefusedError'>: Connection was refused by other side. ] ... Commit Database ...
10. Launch the World Daemon by typing:
.\WorldDaemon.py -worldname=Premium_MMORPG -publicname=starter -password=mmo gameconfig=testgame.cfg [Enter]
Note: this daemon needs a manpage to explain the cmdline options in more detail. Also, we should make sure the gamename command switch uses the same convention and is changed to -gameconfig=
You should see a new window pop up that contains the WorldDaemon Startup.
Spawning World Zone Clusters spawning world process C:\Python25\python.exe E:\TMK\worldserver.py -cluster=0 -worldname=Premium_MMORPG -publicname=starter -password=mmo -zones=trinst ['trinst'] No World Text set No World Banner set Copying fresh baseline Premium_MMORPG IPv4Address(TCP, '127.0.0.1', 2426) 0 <twisted.spread.pb.RemoteReference instance at 0x038B7D30) Zone Cluster 0 is liveIn the screen where you executed the WorldDaemon.py, you should see something similiar to the above output.
11. Once the world is launched (give it a moment) you should see (True, 'Genesis Time Matches') in the character server's window. You can now connect to this world
12. Launch Client.pyw and connect to your master server, register, create a character, and log into the starter zone!
Launch Automation
Now that you have launched all the processes manually and have an understanding of what to expect, you may desire to automate the startup.
Create two new batch files:
.\wait.bat
Syntax: WAIT <seconds>@CHOICE /D y /T:%1% > NULThis WAIT is simply a standard workaround answer to the missing functionality in Windows. There are other creative ways to achieve the same result. Your machine speed may require different wait durations for optimal execution.
.\StartServers.bat
start .\mud\masterserver\main.py CALL WAIT 5 start .\mud\gmserver\gmserver.py CALL WAIT 5 start .\mud\characterserver\server.py CALL WAIT 10 WorldDaemon.py -worldname=Premium_MMORPG -publicname=starter -password=mmo gameconfig=testgame.cfgThe WorldDaemon parameters reflect the configuration outlined in the guide. If you have changed any of the parameters during your configuration, you will naturally need to reflect those changes here as well.
That's it. You are now ready to join the millions of developers enjoying their own universe with the Torque MMO Kit.
As a next step, you may wish to move on to setting up the GM Server (if you opt'd not to configure it above) or explore the game packaging and patch system setup.

