Skip to content

Commit bc1ad3f

Browse files
committed
Update readme with information from http://members.iinet.net.au/~paulone/mcsuperserver.html
1 parent a9ab1ae commit bc1ad3f

File tree

1 file changed

+70
-0
lines changed

1 file changed

+70
-0
lines changed

README.md

+70
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,13 @@ The minecraft communication protocol changed with Versions 1.4.2 and 1.7.2, the
77
# mcsuperserver.py
88

99
The mcsuperserver automatically starts a Minecraft server instance when the first player joins and stops it again after the last player leaves the server.
10+
The Minecraft server is stopped to reduce memory and cpu usage. If you have servers that are only used occasionally or only by a small number of people then they are better of being super served. A super server uses very little memory and cpu and only starts the Minecraft server when users want it. This allows many Minecraft servers with different worlds on one machine provided they aren't all running at the same time. For example with only four users the most Minecraft servers that will be running will be four but many more can be super served.
11+
12+
## How does it work?
13+
14+
The superserver handles all incoming requests by wrapping the first packages sent by the client. After starting the server, the game is directly connected to the Minecraft server.
15+
16+
## Compatibility
1017

1118
* `mcsuperserver.py` is compatible with Minecraft versions before 1.4.
1219
This is the original version.
@@ -16,9 +23,31 @@ The mcsuperserver automatically starts a Minecraft server instance when the firs
1623
Preset for version 1.7.2.
1724
* Minecraft versions after 2014 are untested.
1825

26+
## Prerequisites
27+
28+
mcsuperserver requires Python 2.7 to be installed on the server machine. Python 3 is currently not supported.
29+
It has been tested with Windows, Linux and Mac (tested with OS X Lion - might not work on more recent macOS).
30+
31+
## Usage
32+
33+
* Copy the `mcsuperserver.py` file to your minecraft server directory
34+
* Execute the `mcsuperserver.py` file by running `python mcsuperserver.py`
35+
* On Linux or Mac you can also run it by making it executable `chmod +x mcsuperserver.py` and then run it directly with `./mcsuperserver.py`.
36+
* Connect with the Minecraft client on the default port which is 25555 by entering `localhost:25555` in the server address
37+
* You can change the port number in the generated `mcsuperserver.properties` file.
38+
39+
To force the superserver to stop, use the default termination method for your system (^C) - mcsuperserver handles the teminate signal, allowing the graceful shutdown of the Minecraft server.
40+
This also makes it possible for use with init.d scripts or similar mechanisms.
41+
42+
## Configuration Files
43+
44+
* `mcsuperserver.properties`: Automaticly created on first run. Contains settings for mcsuperserver.py in the same format as the server.properties file.
45+
* `server.properties`: The configuration used by the Minecraft server. Read by mcsuperserver.py for settings for minecraft_server.jar.
46+
1947
## Minecraft Protocol Versions
2048

2149
For any different Minecraft Versions than the preset ones you need to adjust version and protocol version the superserver config file that gets generated on first launch.
50+
The 1.4 and 1.7 versions allow you to change the minecraft and protocol version in their `mcsuperserver.properties` file.
2251

2352
You can find some of the versions here: http://wiki.vg/Protocol_History
2453
Example: For 1.6.2 it is 74, for 1.6.4 it is 78.
@@ -29,11 +58,52 @@ A more complete list is [available in this repository](protocol_versions.txt).
2958

3059
The mcsuperserverscript is an extension to the mcsuperserver that allows managing of multiple worlds and gives users some operator rights without having to add them to the ops list.
3160

61+
## Compatibility
62+
3263
* `mcsuperserverscript.py` is compatible with Minecraft versions up to 1.6.x.
3364
This is the original version.
3465
* `mcsuperserverscript_1_7.py` is compatible with the new log format introduced with Minecraft 1.7.2.
3566
Tested with Minecraft 1.7.5.
3667

68+
## Prerequisites
69+
70+
In addition to the mcsuperserver prerequisites above:
71+
* Requires `mcsuperserver.py` in the same directory
72+
* Some basic knowledge of Python if you want to edit the behaviour
73+
74+
## How does it work?
75+
76+
This script overloads some functions from mcsuperserver.py to change functionality. Worlds are changed by rewriting the server.properties file and 'stop'ing the server.
77+
All scripting is done by using console output and input, so quite limited.
78+
79+
## Usage
80+
81+
* Copy the `mcsuperserverscript.py` and `mcsuperserver.py` file to your minecraft server directory.
82+
* Execute the `mcsuperserverscript.py` file by running `python mcsuperserverscript.py`
83+
* On Linux or Mac you can also run it by making it executable `chmod +x mcsuperserverscript.py` and then run it directly with `./mcsuperserverscript.py`.
84+
* Then connect with the Minecraft client on the default port which is 25555 by entering "localhost:25555" in the server address.
85+
* You can change the port number in the generated `mcsuperserver.properties` file.
86+
87+
Using the commands:
88+
* Enter chat mode by pressing 't' or whatever you've changed it to and type 'help' for the list of commands. Note there is no '/'.
89+
* Enter 't' then 'helpshort' for the list of one letter commands.
90+
* Enter 't' then 'w' or 'worlds' for a list of available worlds.
91+
* Enter 't' then 'l {name}' or 'world {name}' to change to the {name} world.
92+
* Enter 't' then 'd' for daytime. Creative servers only.
93+
* Enter 't' then 'n' for nighttime. Creative servers only.
94+
* Enter 't' then 'f' for toggledownfall. Creative servers only.
95+
* Enter 't' then 'g {mode}' for gamemode {mode}. Creative servers only.
96+
97+
Basic behaviour:
98+
* By default survial (gamemode=0 in server.properties) server users get teleport (tp)
99+
* By default creative (gamemode=1 in server.properties) server users get teleport (tp), give, time, gamemode, toggledownfall and xp
100+
* Each subdirectory in the Minecraft server directory is assumed to be a world except ones that start with '.'
101+
* Multiple servers sharing the same set of worlds is supported, but disabled by default. To enable this behaviour, create an empty (zero length) file `.minecraft.running.worlds.txt` *one folder above mcsuperserverscript.py*. (The lookup is done with `../.minecraft.running.worlds.txt`)
102+
103+
## Configuration Files
104+
105+
mcsuperserverscript uses the same configuration files as mcsuperserver.
106+
37107
## Identifying which mcsuperserverscript version to use
38108

39109
If the log output of your Minecraft server looks like this, use the original version:

0 commit comments

Comments
 (0)