jak-project/Taskfile.yml
Tyler Wilding 111af1ec19
decomp: finish the remainder of untouched gameplay code (#893)
* decomp: finish `sidekick`

* decomp: got a lot of `target` done

* decompiler: Add support for non power of 2 offsets for inline arr access

* decomp: finish `target` mostly

* decomp: finish `water`

* decomp: finished `robotboss-weapon`

* decomp: finish `robotboss-misc`

* decomp: finish the majority of `robotboss`

* blocked: `racer` has an issue around entering a state

* blocked: `target-racer` done mostly, but NYI case in one function

* blocked: `racer-states` mostly finished, but bitfield issue

* blocked: `billy` on state decomping

* blocked: `bully` on state decomping

* waiting: `rolling-lightning-mole` waiting on navigate for 2 funcs

* blocked: `rolling-robber` finished but `s6-1` issue

* blocked: `ogreboss` uint64's for types cant label load em!

* blocked: `mother-spider` state decompilation

* half-done `target-flut`

* blocked: `target-flut` some sort of new bitfield state

* some improvements in `racer-states` with my new-found knowledge

* progress: started on `target-death`

* blocked: `target-death` handle casts

* decomp: finish `collide-reaction-racer`

* blocked: `target-handler` handler forced to return `none`

* decomp: 99% of `target2` finished

* decomp: finish `target2`

* gsrc: update

* update post merge

* address feedback

* scripts: add script to detect decomp issues

* fix wide-spread `collide-shape` method missing arg

* some small things i changed from master

* address feedback

* fix typeconsistency issue
2021-11-24 00:33:10 -05:00

94 lines
3.2 KiB
YAML

version: '3'
tasks:
format:
cmds:
- cmd: python ./third-party/run-clang-format/run-clang-format.py -r common decompiler game goalc test -i
# npm install -g prettier
- cmd: prettier --write ./decompiler/config/jak1_ntsc_black_label/*.jsonc
ignore_error: true
run-game:
cmds:
- ./out/build/Release/bin/gk.exe -fakeiso -debug
run-game-headless:
cmds:
- ./out/build/Release/bin/gk.exe -fakeiso -debug -nodisplay
repl:
env:
OPENGOAL_DECOMP_DIR: "jak1/"
cmds:
# (mi) | (test-play)
- ./out/build/Release/bin/goalc.exe -auto-lt
decomp:
cmds:
- ./out/build/Release/bin/decompiler.exe "./decompiler/config/jak1_ntsc_black_label.jsonc" "./iso_data/jak1" "./decompiler_out/jak1"
decomp-clean:
cmds:
- rm ./decompiler_out/**/*.asm
- rm ./decompiler_out/**/*disasm.gc
decomp-file:
cmds:
- python ./scripts/next-decomp-file.py --files "{{.FILES}}"
- task: decomp
decomp-list:
cmds:
- python ./scripts/next-decomp-file.py --list "{{.LIST}}"
vars:
LIST: '{{default "0" .LIST}}'
# python -m pip install -U watchdog[watchmedo]
decomp-watch:
cmds:
- watchmedo shell-command --drop --patterns="*.gc;*.jsonc" --recursive --command='task decomp-file FILES="{{.FILES}}"' ./decompiler/config/
clean-all-types:
cmds:
- python ./scripts/cleanup-all-types.py
analyze-ee-memory:
cmds:
- ./out/build/Release/bin/memory_dump_tool.exe "{{.FILE}}" ./ > ee-analysis.log
watch-pcsx2:
cmds:
- watchmedo shell-command --drop --patterns="*.p2s" --recursive --command='task analyze-ee-memory FILE="${watch_src_path}"' "{{.SAVESTATE_DIR}}"
vars:
SAVESTATE_DIR: '{{default "." .SAVESTATE_DIR}}'
offline-tests:
cmds:
- ./out/build/Release/bin/offline-test.exe "./iso_data/jak1"
add-reference-test:
cmds:
- task: decomp-file
- python ./scripts/add-reference-test.py --file "{{.FILES}}"
- task: offline-tests
add-reference-test-no-decomp:
cmds:
- python ./scripts/add-reference-test.py --file "{{.FILES}}"
- task: offline-tests
update-reference-tests:
cmds:
- cmd: python ./scripts/default-file-or-folder.py --path failures
- cmd: ./out/build/Release/bin/offline-test.exe "./iso_data/jak1" --dump-mode
ignore_error: true
- python ./scripts/update_decomp_reference.py ./failures ./test/decompiler/reference/
- task: offline-tests
find-label-types:
cmds:
- python ./scripts/next-decomp-file.py --files "{{.FILES}}"
- task: decomp
- python ./scripts/find-label-types.py --file "{{.FILES}}"
type-test:
cmds:
- ./out/build/Release/bin/goalc-test.exe --gtest_brief=0 --gtest_filter="*MANUAL_TEST_TypeConsistencyWithBuildFirst*"
check-gsrc-file:
cmds:
- python ./scripts/check-gsrc-file.py --files "{{.FILES}}"
update-gsrc:
cmds:
- python ./scripts/next-decomp-file.py --files "{{.FILES}}"
- task: decomp
- task: find-label-types
- python ./scripts/update-goal-src.py --files "{{.FILES}}"
- task: type-test
- task: check-gsrc-file
cast-repl:
cmds:
- cmd: python ./scripts/cast-repl.py