2023-10-14 13:18:52 +08:00
# cs2-dumper
2023-09-08 15:59:09 +08:00
2024-06-18 10:47:28 +08:00
An external offset/interface dumper for Counter-Strike 2, with support for both Windows & Linux. Powered
by [memflow ](https://github.com/memflow/memflow ).
2023-10-26 13:41:34 +08:00
2024-04-16 10:39:03 +08:00
The native Linux version is available in the [linux ](https://github.com/a2x/cs2-dumper/tree/linux ) branch.
2024-03-27 09:47:10 +08:00
2024-08-11 22:14:32 +08:00
For a work-in-progress offline version, please check out [cs2-analyzer ](https://github.com/a2x/cs2-analyzer ) and the web demo here: https://a2x.github.io/cs2-analyzer
2024-03-28 20:19:20 +08:00
## Getting Started
2023-10-26 13:41:34 +08:00
2024-03-28 20:19:20 +08:00
You can download the latest release from [Releases ](https://github.com/a2x/cs2-dumper/releases ) or compile it yourself.
Note that compiling it yourself requires your Rust compiler version to be at least 1.74.0 or newer, and the nightly
toolchain must be installed.
2023-10-26 13:41:34 +08:00
2024-03-28 20:19:20 +08:00
## Usage
2023-10-26 13:41:34 +08:00
2024-03-28 20:19:20 +08:00
1. Ensure the game process is running (Being in the main menu should suffice).
2024-04-20 22:39:34 +08:00
2. Run the `cs2-dumper` executable (Note that some memflow connectors may require elevated privileges).
2023-09-08 15:59:09 +08:00
2024-06-18 10:47:28 +08:00
_Note:_ If you run the executable without specifying an optional memflow connector name, it will automatically use the
[memflow-native ](https://github.com/memflow/memflow-native ) OS layer to read the memory of the game process. If you
wish to use an existing memflow connector instead, you can pass the `connector` and optional `connector-args` arguments
to the program.
2023-09-08 15:59:09 +08:00
2024-07-30 07:14:30 +08:00
E.g. `sudo ./cs2-dumper -c pcileech -a :device=FPGA -vvv`
2023-09-08 15:59:09 +08:00
2024-03-28 20:19:20 +08:00
### Available Arguments
2023-09-08 15:59:09 +08:00
2024-03-28 20:19:20 +08:00
- `-c, --connector <connector>` : The name of the memflow connector to use.
2024-04-20 22:39:34 +08:00
- `-a, --connector-args <connector-args>` : Additional arguments to pass to the memflow connector.
2024-04-09 22:53:17 +08:00
- `-f, --file-types <file-types>` : The types of files to generate. Default: `cs` , `hpp` , `json` , `rs` .
2024-03-28 20:19:20 +08:00
- `-i, --indent-size <indent-size>` : The number of spaces to use per indentation level. Default: `4` .
2024-04-20 22:39:34 +08:00
- `-o, --output <output>` : The output directory to write the generated files to. Default: `output` .
- `-p, --process-name <process-name>` : The name of the game process. Default: `cs2.exe` .
2024-04-09 22:53:17 +08:00
- `-v...` : Increase logging verbosity. Can be specified multiple times.
2024-03-28 20:19:20 +08:00
- `-h, --help` : Print help.
- `-V, --version` : Print version.
2023-10-14 13:18:52 +08:00
2024-06-18 10:47:28 +08:00
## Running Tests
To run tests, use the following command: `cargo test -- --nocapture` .
2024-03-28 20:19:20 +08:00
## License
2023-09-08 15:59:09 +08:00
2024-03-28 20:19:20 +08:00
Licensed under the MIT license ([LICENSE](./LICENSE)).