52 lines
1.2 KiB
Markdown
52 lines
1.2 KiB
Markdown
# Tooling
|
|
|
|
The Fedora toolbox container is expected to be named `2077`.
|
|
|
|
Installed inside that toolbox:
|
|
|
|
- .NET SDK 8, 9, and 10
|
|
- GCC/G++, CMake, make
|
|
- `jq`, `ripgrep`
|
|
- WolvenKit CLI NuGet tool `wolvenkit.cli` 8.18.1
|
|
- `rizin` 0.7.4
|
|
- `python3-capstone` 5.0.5
|
|
- `python3-pefile` 2024.8.26
|
|
|
|
The WolvenKit command is:
|
|
|
|
```bash
|
|
toolbox run --container 2077 bash -lc '$HOME/.dotnet/tools/cp77tools --help'
|
|
```
|
|
|
|
## Discover Traffic Resources
|
|
|
|
```bash
|
|
../tools/discover_traffic_resources.sh \
|
|
"/path/to/Cyberpunk 2077/archive/pc/content" \
|
|
traffic-resources.txt
|
|
```
|
|
|
|
This lists archive paths matching traffic/persistent/lane naming. The regex is
|
|
intentionally broad because CDPR naming can vary between base game and DLC
|
|
archives.
|
|
|
|
## Build Patch Archive
|
|
|
|
```bash
|
|
../tools/build_lane_weight_archive.sh \
|
|
"/path/to/Cyberpunk 2077" \
|
|
"/path/to/Cyberpunk 2077/archive/pc/content" \
|
|
../work/lane-weight-build
|
|
```
|
|
|
|
The script performs:
|
|
|
|
1. `cp77tools extract` for traffic lane resources
|
|
2. `cp77tools convert serialize` to JSON
|
|
3. `../tools/patch_traffic_lanes.py`
|
|
4. `cp77tools convert deserialize` back to CR2W
|
|
5. `cp77tools pack` into an archive
|
|
|
|
Copy the resulting archive from `../work/lane-weight-build/05_packed` into
|
|
`Cyberpunk 2077/archive/pc/mod` for manual testing.
|