Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rp4rk/wowp
A combat log parser for World of Warcraft, created in Rust.
https://github.com/rp4rk/wowp
Last synced: 14 days ago
JSON representation
A combat log parser for World of Warcraft, created in Rust.
- Host: GitHub
- URL: https://github.com/rp4rk/wowp
- Owner: rp4rk
- License: agpl-3.0
- Created: 2020-02-26T01:08:49.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2021-08-20T22:05:47.000Z (over 3 years ago)
- Last Synced: 2024-12-06T22:20:24.252Z (16 days ago)
- Language: Rust
- Homepage:
- Size: 14.2 MB
- Stars: 10
- Watchers: 3
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# WoWP
## ![Rust](https://github.com/rp4rk/WoWP/workflows/Rust/badge.svg)
---
Combat Log Parser for World of Warcraft
WoWP is a combat log parser for World of Warcraft that aims to provide a fast conversion from the retail World of Warcraft combat log format into JSON. This is a huge barrier to entry for people wishing to build gameplay analysis tooling, so by providing a prebuilt way to do that into a sane format, we're hoping to see more innovation in the space.
## About
---
WoWP will fully parse any modern World of Warcraft log file, this is commonly known as the `WoWCombatlog.txt` file. The result is a stream of JSON data that will
## How to Build
- Install [Cargo/Rust](https://doc.rust-lang.org/cargo/getting-started/installation.html)
- Clone this repository
- Run `cargo build --release`
- The binary can be found in `target/release`## Usage Instructions
---
Running WoWP requires three different components,
- WoWP Binary, see [How to Build](#how-to-build) or the releases
- Event templates, in order to correctly match events and their composite data to a JSON structure, see the src folder for all the maintained templates.
- A `WoWCombatLog.txt` fileOnce you have these components, simply execute the binary and pass in the relevant flags,
`./wowp --event-structures="./event_templates"`
After which, JSON will start being streamed to stdout for you to use, e.g.
`./wowp --event-structures="./event_templates" > combat-log.json`
## Flags
- `-p` will parse trash events, otherwise only encounters are parsed along with zone changes and the combat log version event.
- Defaults to false
- `--event-structures="path"` The path to a set of complete event structures
- Defaults to `./event_templates`
- `--combat-log="path"` The path to a combat log file
- Defaults to `./WoWCombatLog.txt`## FAQ
---
- Why Rust?
- Excellent parser combinator libraries such as [nom](https://github.com/Geal/nom) - these are incredibly helpful for parsing recursive structures like the WoWCombatLog format.
- Can this replace WarcraftLogs/WoWAnalyzer/`` that I use?
- No, WoWP could fit nicely in their processing pipelines though ;)
- Can I use this for ``?
- The project uses the AGPL license, so most likely yes.