Work in progress. I'm trying to make a Wingspan mod that will display a timer for the current turn and a turn summary after the game (Total time per player, average time per turn / in-between turn actions).
- Install the last il2cpp 32-bit windows build from https://builds.bepinex.dev/projects/bepinex_be
- https://docs.bepinex.dev/master/articles/user_guide/installation/unity_il2cpp.html
- Compatibility: Select Proton 9.0
- Add winhttp override: https://docs.bepinex.dev/articles/advanced/proton_wine.html
(specify the proton version in an environment variable like
PROTON_VERSION="Proton 9.0" protontricks --gui)
- https://github.com/yukieiji/UnityExplorer
- https://github.com/Perfare/Il2CppDumper (use BepInEx.Unity.IL2CPP.CoreCLR)
- https://assetripper.github.io
il2cpp-dumper ~/.local/share/Steam/steamapps/common/Wingspan/GameAssembly.dll ~/.local/share/Steam/steamapps/common/Wingspan/Wingspan_Data/il2cpp_data/Metadata/global-metadata.dat .my il2cpp startup script
```bash #!/bin/bash basedir="/home/owl/opt/il2cpp-dumper/" timestamp=$(date +%s) targetdir="${@: -1}" dotnet "$basedir/Il2CppDumper.dll" "$@" mkdir -p "$targetdir" find "$basedir" -mindepth 1 -maxdepth 1 -newermt "$(date -d @$timestamp '+%Y-%m-%d %H:%M:%S')" -exec mv {} "$targetdir" \; ```In Jetbrains Rider, you can add references to the generated dlls by right-clicking the project node and selecting Add -> Reference -> Add from..., then selecting all the dlls.
After building, the binary is in bin/Debug/net6.0/TurnTimer.dll.