Perun toolset for DCS World server admins. Reads simulation data and pushes it MySQL database.
Included lua script extracts data from DCS World multiplayer server and sends information to TCP port for further processing.
Provided windows app puts received TCP packets to MySQL database; additionaly Perun windows application can be used to merge LotATC and DCS SRS data in one database making Perun for DCS World wannabe ultimate integration tool for the server admins.
However, this software is intended to be used by experienced users - the output is MySQL data; you will need to process/display it yourself.
Discord server: https://discord.gg/MTahREx
Core:
3rd party applications support:
perun.dll
into your DCS folder in your Saved Games,Mods/services/Perun/bin
Windows app supports command line arguments, what may be handy in case of multiple instance of DCS servers running at the same machine.
The following arguments are accepted (keep the order!):
Example for windows shortcut:
C:\Perun_v1\Perun.exe 48621 1 "G:\DCS SRS\clients-list.json" "C:\Users\DCS\Saved Games\DCS\Mods\tech\LotAtc\stats.json"
Data displaying and handling is not in the current scope of this project. Since the end of 2018 the Perun data displaying has been hardcoded at forum.gildia.org , website for the Polish DCS community; examples: Due to resource limitations, "Perun for DCS World" will focus on pulling the data from DCS (and external modules) and pushing it to MySQL server, but if anyone would like to develop open sourced PHP applets for data/statistics displaying we're willing to cooperate and support such projects. Unfortunetly it's not possible to share the hardcoded code from forum.gildia.org.
Basic example was provided HERE , support is available via Perun community at our Discord.
That probably means that your database does not support JSON functions, you shall upgrade your MySQL server to at lease 5.7 version.
Make sure that STRICT_TRANS_TABLES is disabled at your MySQL server, see: https://stackoverflow.com/questions/37964325/how-to-find-and-disable-mysql-strict-mode
DCS API does not track carrier or FARP operations natively, so there is a trick to achive that. At this point of time to detect FARP operations, the FARPs shall have "FARP" string in the group name (set in mission editor). For carrier operations the string "SHIP" is required within group name.
ID: 1
, stats update [periodic update]
ID: 2
, available slots list and coalitions [updated on mision start or Perun reconnection]
ID: 3
, stores mission data [updated on mision start or Perun reconnection]ID: 50
, chat event [event triggered]ID: 51
, game event [event triggered]ID: 52
, player stats ; note that as DSC native stats are not reliable, seperate stats couting methods are used [event triggered]ID: 53
, player login to DCS server [event triggered]ID: 100
, DCS SRS's client-list.json [updated every 60s, only between Perun and database]ID: 101
, LotATC's stats.json [updated every 60s,only between Perun and database]Please contact me if you'd like to contribute. Short rule is that all pull request shall come to "dev" branch, pull requests to "master" will be deleted.
We use SemVer for versioning. For the versions available, see the tags on this repository.
See also the list of contributors who participated in this project.
This project is licensed under the MIT License - see the LICENSE.md file for details
This software is provide "as it is" without any warranties, but if you would like to thank me for development/support please
Thanks to Gildia DCS Polish community of DCS World pilots.
Thanks to our Discord community for all the disussions, tests and proposals!