This plugin is still in early development and will change going forward.
This plugin is mainly intended to be used in one-life PvP games. Currently in use mainly by TBD and OFCRA.
- tracks all players, their role, side and squad
- tracks all kills, distance, weapon used (filters out bots)
- tracks number of shots fired per each player
- tracks number of hits for each player (if a bullet hits multiple parts of the body dealing multiple damages, it's counted as multiple hits)
- ability to add winning side and the points
- config file so output folder can be easily configured
- upload to a remote server
- automatic database ingest
- basic webserver to view statistics for each mission
- overall improvements
Currently, the default output folder is $ArmaServerExecutable/stats/
This is a server side mod, so clients are not supposed to have it.
-
Download the current released version
-
Add the folder into your mods folder
-
Add
@statslogger
into you -servermod= in start script -
Play a mission
-
If you want to add a winning side, execute:
[ WINNING SIDE <string | side>, BLUEFOR POINTS <number>, REDFOR POINTS <number> ] remoteExec "statslogger_fnc_mission_end", 2];
-
Execute
call statslogger_fnc_export;
on the server before mission end (either from debug console, or add it into your framework to be called automatically)
- If a player respawns, some things break (not high priority, mainly used in 1 life PvP games right now)
docker pull x1unix/go-mingw:1.20
# Compile x64 Windows DLL
docker run --rm -it -v ${PWD}:/go/work -w /go/work x1unix/go-mingw:1.20 go build -o stats_logger_x64.dll -buildmode=c-shared .
# Compile x86 Windows DLL
docker run --rm -it -v ${PWD}:/go/work -w /go/work -e GOARCH=386 x1unix/go-mingw:1.20 go build -o stats_logger.dll -buildmode=c-shared .
# Compile x64 Windows EXE
docker run --rm -it -v ${PWD}:/go/work -w /go/work x1unix/go-mingw:1.20 go build -o stats_logger_x64.dll .
docker build -t indifox926/build-a3go:linux-so -f ./build/Dockerfile.build ./cmd
# Compile x64 Linux .so
docker run --rm -it -v ${PWD}:/app -e GOOS=linux -e GOARCH=amd64 -e CGO_ENABLED=1 -e CC=gcc indifox926/build-a3go:linux-so go build -o stats_logger_x64.so -linkshared .
# Compile x86 Linux .so
docker run --rm -it -v ${PWD}:/app -e GOOS=linux -e GOARCH=386 -e CGO_ENABLED=1 -e CC=gcc indifox926/build-a3go:linux-so go build -o stats_logger.so -linkshared .
- if you have the proper toolchain that can cmpile CGO
- On windows set
-buildmode=c-shared
- On Linux set
-linkshared
- On windows set
- If you want to add a call to this mod into your framework, you can use
if (isClass(configFile >> "CfgPatches" >> "STATSLOGGER")) then {// your code};
to make sure this plugin is loaded.
Special thanks go to Indigo, for his help in the creation of this plugin. Also for the creation of a3interface that is what is powering the new Go extension!