Skip to content

Generate match summaries from Quake 3 Arena logs

License

Notifications You must be signed in to change notification settings

marcospb19/pasoqa3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pasoqa3

pasoqa3 is an acronym for "Parser And Summarizer Of Quake Arena 3 (log files)".

Check DECISIONS.md for an explanation of why I took some of the decisions I did.

Installation

In Unix, with the Rust toolchain installed, clone the repository and install pasoqa3 using cargo:

git clone https://github.com/marcospb19/pasoqa3
cargo install --path pasoqa3

You can see the binary at ~/.cargo/bin/pasoqa3, make sure ~/.cargo/bin is listed in your shell's $PATH variable to access it from anywhere.

Usage examples

# Check the help message
pasoqa3 --help

# Summarize all matches in `file.log`
pasoqa3 file.log

# Summarize fourth match
pasoqa3 q3.log --game 4
{
  "game_4": {
    "total_kills": 4,
    "players": [
      "Isgalamido",
      "Zeh",
      "Dono da Bola"
    ],
    "scoreboard": {
      "Zeh": -2,
      "Dono da Bola": -1,
      "Isgalamido": 1
    },
    "death_causes": {
      "MOD_FALLING": 1,
      "MOD_ROCKET": 1,
      "MOD_TRIGGER_HURT": 2
    }
  }
}

How it works

All matches of Quake 3 Arena have their kill feed written into a log file.

A single log file might contain zero or multiple matches written to it.

pasoqa3 reads a log file, tries parsing it, and outputs a summary of the kill feed for each match.

Trivia

The name "pasoqa" is a playful reference to "paçoca", a Brazilian candy I used to love as a child.

About

Generate match summaries from Quake 3 Arena logs

Topics

Resources

License

Stars

Watchers

Forks

Languages