eve-bot - the mumble 1.2 delayed relay bot

Windows compiled download 32-bit linux/BSD binary Python source download

Eve the mumble eavesdropper bot

This bot is written for online multiplayer communities playing games like TF2 or CSS, where the spectator's view of the game is sometimes delayed to prevent collusion.

Specators may wish the listen to the communication of the match team, however the delay (typically 90 seconds) between the in-game action and the mumble server normally makes this impossible. This bot was written to facilitate that.

The bot joins the match channel and listens to all comms. For every user in the channel, a mimic will join the spectate channel, and the eavesdropper bot will relay the comms to the correct mimic, with the specified delay. As the bot joins as a normal user, no special murmur server support is required.

Screenshot of eavesdropper, player and mimic

The bot is available in 3 versions; a compiled windows package, a compiled ELF binary for Linux or BSD, and the original python script, which should work anywhere you have python, although it might require installing a couple of python modules first.

Windows and linux compiled downloads

Extract the files from the archive and run eve-bot.exe (or eve-bot for the *nix version) from a command prompt. On windows, you might need the MSVC runtime although this is likely to have been installed by one thing or other already. The windows version is heavily tested; the unix version less so. In either case, if you encounter errors, please contact me and I'll try to fix them.

Python source - prerequisites

Remember that if you have trouble running the script version, compiled versions are available.

Using the bot

(If you are using the windows binary, the command will be eve-bot.exe, and for the ELF binary it will be eve-bot)

In the simplest case, running the bot by typing

eve-bot.py -e "Match Channel" -r "Spectator Channel"

This will attempt to connect to a mumble server on the default port, on the same machine as the bot is running on. The channels MUST exist; they can be the same if you wish, though this is likely to cause confusion. Running the bot with no options will give a list of the available parameters.

If you are running this from a different machine, and the server is example.com at port 1234:

eve-bot.py -e "Match Channel" -r "Spectator Channel" -s "example.com" -p 1234

Automatic ban

By default, the mumble server bans for too many connection attempts in a short period of time. This can cause issues when testing, and if many people join the eavesdrop channel at once (many mimics will need to be spawned). If this happens, consider changing the autobanAttempts value upwards.

Known Issues

Planned Features

Depending on feedback, there are several features that could be added to the bot:

None of these is likely to be written unless there is interest, so:
Feedback greatly appreciated

Valid XHTML 1.0 Strict monitoring web site downtime Valid CSS!