The middleware server is written in Python [33] and uses the Twisted Matrix library suite [34] for its networking functionality. Client and server communicate using a special purpose protocol, which provides commands for session handling and simulation management. Commands and data are binary encoded using Adobe Action Message Format (AMF3) in order to minimize bandwidth needs.