A DPS meter for AION 2
stigma README.md
1.6 kB · 38 lines
Markdown
at main

stigma #

A DPS meter for AION 2, in the terminal.

It reads the game's traffic as it arrives, so it runs alongside the game (including under Proton) without touching it.

Crates #

  • aion2_protocol: the game's network protocol: framing, and decoding the packets that are understood.
  • aion2_data: the game's own data, read from an installed client: its paks, and the text and tables in them.
  • stigma_core: the meter: turning captured traffic into combat events, and tallying them.
  • stigma: the terminal app, and where its data comes from: live capture, .pcap files, recordings, and a mock fight.

Running #

just live --record scratch/fight.txt

Capturing packets needs CAP_NET_RAW, which a build loses, so just live builds stigma and grants it again with sudo setcap when it needs to. To skip that, just capture-shell opens a shell where anything you run can capture, rebuilds included.

stigma replay scratch/fight.txt plays a recording back, and stigma mock shows a made-up fight. Run stigma with no arguments for the rest.

Names #

Skills' and monsters' names come from your own install of the game, which is encrypted. Put the pak key in .env:

AION2_PAK_KEY=0x...

Then extract the names, again after a patch:

stigma extract-names

They're written to skill-names.json and npc-names.json in ~/.local/share/stigma, where the meter finds them. Select someone with ↑↓ and press enter to see their damage by skill. --game reads an install other than Steam's default, and --locale picks a language other than en-US.