* git: ignore vs build dir
* cmake: ditch `clang-cl` on windows in favor of actual `clang`
* build: suppress a significant number of warnings
* build: adjust workflows and vendor nasm
* docs: update docs to remove `clang-cl` mentions
* tests: move jak1 reference tests into their own folder
* tests: update offline tests to support multiple games
* tests: some additional fixes and multi-game handling
* tests: update reference tests
* add final cutscene subtitle and fix some editor bugs
* `title` and `finalboss` hints
* messages and notices for subtitle toggling
* fix colors in currently selected cutscene menu
* subtitle positioning fixes
* Update game_subtitle_en.gd
* extractor: refactor and cleanup for multi-game support
* deps: switch to `ghc::filesystem` as it is utf-8 everywhere by default
* extractor: finally working with unicode
* unicode: fix unicode cli args on windows in all `main` functions
* build: ensure `zydis` statically links when we want it to
* test
* test-static
* revert the static test commit
* build: don't generate cmake twice on release builds
* git: ignore vs build dir
* cmake: ditch `clang-cl` on windows in favor of actual `clang`
* build: suppress a significant number of warnings
* build: adjust workflows and vendor nasm
* docs: update docs to remove `clang-cl` mentions
* build: fix some copy-paste mistakes in the linux build
* build: remove C++20 compat warnings as that is useful if we want to upgrade
* put some duplicated code in a func
* make jak 2 text "work"
* group up all subtitles c++ code into one folder
* compact single-line subtitles
* fix a couple compiler crashes
* Update game_subtitle_en.gd
* `rolling` and `sunken`
* `swamp`
* `ogre`
* `village3`
* `maincave`
* `snow`
* `lavatube`
* `citadel`
* Update .gitignore
* clang
* fix encoding and decoding for quote
* properly fix quotes
* subtitle deserialize: sort by kind, ID and name
* sub editor: fix line speaker not being converted
* cleanup game text ids 1
* update text ids 2
* update source
* update refs
* fix repl-history saving
* subtitles: fix `\"` edge-case
* subtitles: add almost every remaining (current) cutscene
* merge: master
* subtitles: fix some crashes and disable `Remove Line` as it is broken
* Remove assets folder, use more std::filesystem
* windows fix
* another one for windows
* another one
* better system for different folders
* rm debugging stuff
* let extractor override everything
* dont revert jak1 change
* [extractor] validate files when extracted as folder
* jp text fixes
* move game text version to the text file and fix subtitle editor escape chars
* make bad subtitles not crash the game
* fix texscroll in lag
* fix mood, fix decomp of other versions, fix text decomp
* clang
* fix tests
* oops dammit
* new fixes
* shut up codacy
* fix nonexistant subtitles crashing the game
* fix text hacks and extractor re-use on folders
* Fix "last-hit" animations not playing for robotboss
This was causing destroyed parts of the robot to float in the air not moving for a moment.
* Add comments
* [build_level] drawable actor stuff
* clean up
* improved bsphere
* windows include nonsense
* final tuning
* m_pi
* what
* going insane
* merge conflict fix
* windows
* in-game vsync option, automatically framelimit correctly, fix minimize/alttab bugs
* fix jp text errors
* bump version number as panic
* this makes more sense i think
* clang
* oops delete debug print
* jak ambient wind, first person cam speed, cleanup
* fix seagulls!
* fix intro speed, mood, projectile collision, wind
* fix flying lurker and add comments
* oops didn't convert this back
* more comments
* Revert "more comments"
This reverts commit 9a211c594c.
* more comments
* yep
* missed 1 line
* more than 1 lol
* paren
* revert ripple for now, casting broke 60fps and didn't seem right
* Replace assert with user-friendly error if ISO not found
When the extractor runs and can't detect a game folder, it will assume there is an ISO file in the directory instead. If there isn't an ISO file, or it's a different extension, it will trigger an assert. This adds an additional check to make sure the file extension is of type `.iso` and returns a more clear message to the user.
Once I get home I'll iterate upon this a bit to add file size checks and reading header data as well as making sure the error code is able to be reported to the launcher.
* Fix `extension` call & formatting
more de-rust lol
* fix extension call (again)
* fix ONE extra parenthesis
* argument incompatible with fmt print
will fix print later
* add ONE missing parenthesis
never taking intellisense for granted again
* Add ISO size checks and rework type check
* actually print `data_dir_path` :p
* Normalize extension case before verifying file type
+ clang-format
* clang-format
Co-authored-by: doctashay <doctashay@github.com>
* Fix one frame of ghost yellow eco in finalboss
* Fixed the eco duping in goggles
Whoops tried to fix an issue that wasn't there and paid the price for it.
* Add commented code
Describing the change and noting that is it different than the original game.
Could be useful in the future if anything odd happens to have our changes documented.
* Wrap change in a when PC_PORT block
* Move comment from inside block to outside
Having the comment inside the block seemed cringe