Menu

About

About (1)
Mats Andreassen

Project inception

Inception Date: December 10th, 2007
Authors:

Background

The project started out as a port of the PHP-project OpenTTDLib based
out of http://www.ohloh.net/p/openttdlib.
At the time of project inception OpenTTDLib was at version 0.3.
When the port was complete we decided to build more features into the
our library, to make it more flexible out-of-the-box.

Among the more challenging things that had to be done other than
reverse engineering what parts of UDP packets meant what there was
the parsing of OpenTTD's date format. Just as OpenTTDLib we ended up
having to consult the OpenTTD code, more specifically in date.cpp.

Main features

  • Getting general(1) server information through JOTLQuerier-class.
  • Getting detailed(2) server information through JOTLQuerier-class.
  • Continously updating a server and receiving notable events(3) as the game progresses by using the ServerHandler-class.

(1) General information includes:

  • Server name
  • Current game date
  • Game start date
  • Maximum allowed number of companies
  • Number of companies currently in play
  • Maximum allowed number of clients
  • Number of clients currently connected
  • Maximum allowed number of specators
  • Number of spectators current connected
  • Game revision/version
  • Language the server is running
  • Is the server password protected?
  • Is the server dedicated?
  • Tileset of current game
  • Map size of current game
  • Map name in current game
  • Number of new graphics in play

(2) Detailed information includes:

  • Client information(Deprecated since 0.6.2):
    • Name
    • Spectator or player
    • Join date
  • Company information:
    • Current Id (useful for removing company from play when you're an admin)
    • Name
    • Inaugeration year
    • Company worth
    • Company balance
    • Company income
    • Is the company password protected?
    • Company performance
    • Number of vehicles
    • Number of stations
    • Clients connected to this company at the moment

(3) Events include:

  • End of game.
  • Start of new game.
  • When a new company manages to reach the top of the ranking.
  • When the different kinds of rail becomes available. NOTE: If the server has deactivated electric rail through the patch this is undetectable through communication with the server.
  • When new companies come into play.
  • Pause/Unpause-events.
  • Client joins/quits(pre 0.6.2)

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.