Skip to content

Broker receive logs via UDP from dedicated game servers and sends it to MySQL tables for calculation player statistics

License

Notifications You must be signed in to change notification settings

mbto/funnyranks

Repository files navigation

Features:

  • Receiving game logs from dedicated game servers via UDP
  • Collecting & caching player statistics: kills, deaths, online at server, Steam IDs, IPs with country names (provided by MaxMind GeoLite2 database)
  • Merging player statistics into MySQL tables per game project by player name/IP/Steam ID on 'next map', 'shutdown server' events, scheduler, or manually
  • Automatic calculation players activity and assignment one of 56 eng/rus ranks, history keeping
  • Provides frontend for management broker & projects
  • Provides AMXX plugin for show players rank in a game that supports AMX Mod X
  • This broker can be installed on a game hosting to collect and send player statistics to the project tables from all game servers (only Half-Life Dedicated Server (AppID 90) is available, other handlers are not implemented) For developers: You can extends MessageHandler class and implement logs handler for another game engine

funnyranks Диаграмма

Requirements:

Install & launch:

Examples:

Downloads:

FAQ:

Compile & Build:

  • Requirements:
    • Gradle 5.4+
  • With tests:
    • Unix: gradlew build
    • Windows: gradlew.bat build
  • Without tests:
    • Unix: gradlew build -x test
    • Windows: gradlew.bat build -x test