If your program is interested in certain ingame-events or you want to inject e.g. a chat messages into a running game, then you may use it.
When can I use it?
At this time you can only use this if you are hosting a game, and then you need an svn build >=4100.
How can I activate it?
Its disabled by default. To enable it, you need to do
- start spring with -a[portnum]
or
- set a config variable "Autohost" with positive integer value (=[portnum]) (.springrc on linux, registry on windows)
If -a is set on the commandline, the configuration will be ignored.
How do I use it?
When spring is started like above, it will open a UDP port on the loopback interface and will send some messages to the specified [portnum]. These UDP packets contain the port spring uses so you can send messages in return (will most likely be springs networking portnumber + 10).
What messages will spring send?
A quick reference can be found here
Each message will be send in one single UDP packet. The basic structure is straightforward and looks like:
<unsigned char EVENT_ID><parameter 1><parameter 2><...>
For details of each EVENT_ID see the reference.
What can I send to the engine?
Every packet you will send will be handled like an ingame chat message comming from your player.
This means:
- it will be send to each client
- "a:", "s:" .. can be used
- commands like ".kick xyz" or ".setminspeed x" can be used.
What will be included next?
I currently think of the following:
- support for this at the clients side
- usage of TCP instead of UDP
Please post you criticism / ideas / questions here.
