Skip to content

frymaster/eve-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Eve the mumble eavesdropper bot
===============================

This bot is written for online multiplayer gaming communities, 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.


Prerequisites
-------------

- This bot needs python with ssl support.  This either requires version 2.6 or
  for the ssl module to be downloaded and installed seperately from
  http://pypi.python.org/pypi/ssl/
- Mumble uses protocol buffers for control messages.  To run the bot, the python
  protobuf modules and the protoc compiler must be installed.  The protoc
  compiler generates the python module necessary for the bot to understand the
  control messages.  To do this, navigate to the directory the bot will be run
  from and type

          protoc --python_out=. Mumble.proto

  You must also have Mumble.proto in the current directory.  The latest version
  of this can be found in the mumble/murmur source code.


Using
-----

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.


Known Issues
------------

Very few error messages from the server are checked.  For instance, if the bot's
name is not valid, no helpful error message will be returned.  The bots do not
send ping messages to the server until they have joined the correct channel, so
if their desired channel doesn't exist when they join, and isn't created soon
after, they will time out.

The bots don't notice if they have been moved; this won't affect mimics, but the
eavesdropper bot will only attempt to listen to people who are in the correct
channel, so unless it's moved to a linked channel it won't hear much.

If the bot refuses to work properly, the -v option will decode and print all
control messages from the server, which should indicate the problem.

Passworded access to a server has not been checked in mumble 1.2.  The bot has
only been checked with python version 2.5.2 (with external ssl module) and
2.6.4

Feedback greatly appreciated

http://frymaster.127001.org/mumble

About

Mumble voice comms delayed relay bot

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages