A HL Log Standard parser and competitive match stats generator for Day of Defeat Source game.
What kind of events does it parse?
Every game event that makes sense in a competitive match, including:
- Kills / Deaths / Attacks / Suicide
- Flag captures / Flag blocks
- Round win events / Tick scores
- Chat messages
- Player connections / Player disconnections
- Player name changes / Player Role changes / Player team changes
- Domination events / Revenge events
What kind of stats does it generate?
- Total Enemy damage / Total team damage / Average damage per life
- Kills / Deaths / Team kills / Team killed / Suicides / Headshots
- Streak stats
- Flag capture stats, including game score stats
- Weapon stats
What kind of output does it generate?
- HTML report file
- Integration with IPB board
This parser flow can be divided in three main scopes:
- Game server scope
- Docker host scope
- Docker container scope
Below two output examples of dods-match-stats parser job:
- Day of Defeat Source game server
- Linux host with Docker tool installed
- Install Docker and start it
- Download dods-match-stats scripts
- Edit servers.txt, remove the example entries and carefully fulfill all the fields with one ; per line. Notice that if the game server isn't in the same machine as the dods-matchs-stats you will have to open your UDP for incoming conections in your network/firewall
- In your game server configuration file, add
logaddress_add <dodstats_ip>:<dodstats_port>
command
- Execute command:
bash start.sh
- Execute command:
bash stop.sh
- This app outputs war reports at
/var/www/dods-match-stats/html folder
- Check your provided MySQL database, everything will be there
- It only stores events and stats of valid matches
- What is a valid match? A valid match is any match that uses the game built-in war-mode settings. After the program capture a sequence of valid events it will start recording the match events and at the end of the match it will store it on provided database
dods-match-stats is licensed under the MIT License. A short and simple permissive license with conditions only requiring preservation of copyright and license notices. Licensed works, modifications, and larger works may be distributed under different terms and without source code.