Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* ci: fix release workflow and fix macOS build issues (#102) * ci: fix release workflow * macos: workaround miniaudio's macOS build issues * ci: skip tests * Delete .github/workflows/draft-new-release.yaml * build-matrix.yaml only on mod-base * Update default-menu.gc * Add more autosplit points for Jak 2 Any% (#3639) Goes with https://github.com/open-goal/speedrunning/pull/21 Based on some of the autosplit points from the [comgold sheet](https://docs.google.com/spreadsheets/d/1ZtceX0ZxCLkufVFQuCgVxptvmVgp6deHwPYWxUPi258/edit?gid=0#gid=0), plus one after talking to samos to give a clean split for timing the deload. ``` (tomb-poles-poles uint8) ;; left tomb/daxter boulder start (fortress-save-friends-introduction uint8) ;; talk to torn (before rescue friends) (sewer-escort-get-gun uint8) ;; get peacemaker (forest-protect-introduction uint8) ;; talk to onin (protect samos) (forest-protect-meeting uint8) ;; talk to samos (protect samos) ``` * ci: simplify release workflow (#3642) * Update cut-release.yaml * fix stop-sound-file (and split out stop-all-sounds) (#104) * fix bad map usage * binaries to be safe * play audio file relative to custom_assets/<game>/audio/ * fix main music and things * modversion jak 2 * Add a has-landed to SR text (#103) * Add a has-landed to SR text * Needs cleanup but pushing to test * cleanup * cleanup --------- Co-authored-by: dallmeyer <[email protected]> * change has-landed logic * Update .gitignore * CI: Periodic Controller Database Update (#3647) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * Update cut-release.yaml * build(deps): bump hendrikmuhs/ccache-action from 1.2.13 to 1.2.14 (#3650) Bumps [hendrikmuhs/ccache-action](https://github.com/hendrikmuhs/ccache-action) from 1.2.13 to 1.2.14. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/hendrikmuhs/ccache-action/releases">hendrikmuhs/ccache-action's releases</a>.</em></p> <blockquote> <h2>v1.2.14</h2> <h2>What's Changed</h2> <ul> <li>Add sccache to PATH after installation by <a href="https://github.com/kendalharland"><code>@kendalharland</code></a> in <a href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/204">hendrikmuhs/ccache-action#204</a></li> <li>Make ccache-action respect environment variables by <a href="https://github.com/TrentHouliston"><code>@TrentHouliston</code></a> in <a href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/217">hendrikmuhs/ccache-action#217</a></li> <li>updates</li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/kendalharland"><code>@kendalharland</code></a> made their first contribution in <a href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/204">hendrikmuhs/ccache-action#204</a></li> <li><a href="https://github.com/cclauss"><code>@cclauss</code></a> made their first contribution in <a href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/213">hendrikmuhs/ccache-action#213</a></li> <li><a href="https://github.com/TrentHouliston"><code>@TrentHouliston</code></a> made their first contribution in <a href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/217">hendrikmuhs/ccache-action#217</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/hendrikmuhs/ccache-action/compare/v1...v1.2.14">https://github.com/hendrikmuhs/ccache-action/compare/v1...v1.2.14</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/hendrikmuhs/ccache-action/commit/ed74d11c0b343532753ecead8a951bb09bb34bc9"><code>ed74d11</code></a> Bump <code>@types/node</code> from 22.0.0 to 22.1.0 (<a href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/222">#222</a>)</li> <li><a href="https://github.com/hendrikmuhs/ccache-action/commit/a92dd99d2cf20a1db8898b00bb383b234fb1cf15"><code>a92dd99</code></a> Bump <code>@types/node</code> from 20.14.11 to 22.0.0 (<a href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/220">#220</a>)</li> <li><a href="https://github.com/hendrikmuhs/ccache-action/commit/aa7d29411285c29f578109e54b7a8d8155c2fbb3"><code>aa7d294</code></a> Bump typescript from 5.5.3 to 5.5.4 (<a href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/218">#218</a>)</li> <li><a href="https://github.com/hendrikmuhs/ccache-action/commit/6f0874030891bf49d844fff92b862568f093dabe"><code>6f08740</code></a> Make ccache-action respect environment variables (<a href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/217">#217</a>)</li> <li><a href="https://github.com/hendrikmuhs/ccache-action/commit/ed979992cda44142d976add1d5a7d6f39f7e8b67"><code>ed97999</code></a> Bump <code>@types/node</code> from 20.14.10 to 20.14.11 (<a href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/216">#216</a>)</li> <li><a href="https://github.com/hendrikmuhs/ccache-action/commit/ca1e5062f3378412bbfeb780d1ebe3c2a4913081"><code>ca1e506</code></a> Bump actions/checkout from 2 to 4 (<a href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/214">#214</a>)</li> <li><a href="https://github.com/hendrikmuhs/ccache-action/commit/069136ab7ab2267ea6624fde73f80d7d472d323e"><code>069136a</code></a> Bump <code>@types/node</code> from 20.14.9 to 20.14.10 (<a href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/212">#212</a>)</li> <li><a href="https://github.com/hendrikmuhs/ccache-action/commit/3cf745af56c860cc76c89ffd830efec6aef03b56"><code>3cf745a</code></a> Bump typescript from 5.5.2 to 5.5.3 (<a href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/211">#211</a>)</li> <li><a href="https://github.com/hendrikmuhs/ccache-action/commit/9a0cc152966f2c3f3df86a6e0364da1608924006"><code>9a0cc15</code></a> Keep GitHub Actions up to date with GitHub's Dependabot (<a href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/213">#213</a>)</li> <li><a href="https://github.com/hendrikmuhs/ccache-action/commit/b7c0e162a73e852cdd80bd368aa77e7801fce009"><code>b7c0e16</code></a> Bump <code>@types/node</code> from 20.14.8 to 20.14.9 (<a href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/210">#210</a>)</li> <li>Additional commits viewable in <a href="https://github.com/hendrikmuhs/ccache-action/compare/v1.2.13...v1.2.14">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=hendrikmuhs/ccache-action&package-manager=github_actions&previous-version=1.2.13&new-version=1.2.14)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create `abutton-idx` enum, replace magic numbers across codebase (#3646) Found out the hard way that the `abutton` array for pressure sensitivity uses a different order than the `pad-buttons` enum, so I created a new enum for abutton indexing. I replaced any magic numbers across the codebase where it made sense, e.g. `(-> *cpad-list* cpads (-> self control unknown-cpad-info00 number) abutton 6)` becomes `(-> *cpad-list* cpads (-> self control unknown-cpad-info00 number) abutton (abutton-idx x))` * jak3: fix vagdir bit-field for msvc + clang on windows (#3643) * add stellars normals fix for merc_replacements * Update default-menu.gc flooooot * format before vanilla merge * regen binaries * support common_art_groups * Use custom normals in model replacement (#3649) A small change that makes the models look a lot better. Will likely cause a crash if imported model has no normal data, but that's on the user to fix on their model. * fix audio bug * include list? * Update release-pipeline.yaml * Update speedruns.gc * Update speedruns.gc * Update release-pipeline.yaml * try release-pipeline fixes * decompiler: `call-parent-state-handler` and `suspend-for` macros (#3625) Also fix `hud-draw-pris2` bucket in Jak 3 to make subtitles work and foreground HUD envmap. * Add `linear-plat` (#106) * add linear-plat * udpate comment * fix integer truncation in linear-plat.gc * jak3: decomp `bigmap`, `blit-displays`, fix `progress` crash (#3657) `bigmap` and `blit-displays` mostly work. `blit-displays` is still missing all of the special effects that were added in Jak 3 (brightness and contrast settings, screen blur effect, etc.). `bigmap` is missing the player marker texture (`hud-target-marker`) for some reason, it's part of `tpage-17` which is coming from `progress-minimap` and should already be included. The icons also currently stretch when using aspect ratios other than 4:3. The progress menu now also works for the most part. The draw order is a bit messed up because some code was initially drawing things with the ocean bucket, which was changed to use `hud-draw-hud-alpha` instead for now. The texture for the volume and brightness/contrast sliders still looks wrong. Fixes #3653 Fixes #3656 * [jak2] Workaround for sound effects getting dropped (#3660) Similar to the workaround added in jak 3, if too many sounds are playing, a sound will be removed. If there are multiple instances of the same sound being played, those will be removed first. Within that, older sounds are removed first. It's not exactly the same as the instance limits of 989snd, but it seems to work well. It's at least better than what we had before. Co-authored-by: water111 <[email protected]> * Fix github release-pipeline so version tag is available for cmake (#3651) Followup to https://discord.com/channels/756287461377703987/1280601431975661599 where the v0.2.16 release is showing git SHA in the speedrun verification text, instead of the version tag * CI: Periodic Controller Database Update (#3661) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * cmake: handle the scenario of a commit having more than 1 tag (#3662) * use is-vanilla-level helper for actor vis and birth/pause distance (#109) * Revert "use is-vanilla-level helper for actor vis and birth/pause distance (#…" (#110) This reverts commit 54fcd8adcbefa1e3ecfec56bbf15c03913d384a3. * Background improvements for custom levels (#3672) This only applies to the background for now: - support for alpha for vertex colors in custom levels - switch time of day palette generation from octree to k-d tree - support for alpha masking in custom levels - support for transparent textures - support for envmap in custom levels --------- Co-authored-by: water111 <[email protected]> * CI: Periodic Controller Database Update (#3666) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * add hatkids sky for custom level fix * [jak2] english subtitle fixes (#3665) * ubuntu Dockerfile fix a missing dependency (#3667) adds libssl-dev to apt-get i atleast had to add this for the docker image to work * [jak3] Fix bomb bot bombs disappearing (#3674) This is basically applying the same fix as `vector<-cspace!`, which we've been doing since jak 1. They often make bugs where they use bones before they are properly initialized. On PS2, it's relatively harmless - it results in stuff going to the origin for 1 frame (where it collides with nothing, since the collide cache was filled somewhere else), then going back to normal. On PC, using these uninitialized bones results in NaNs. This is because `0 * (1 / w)` where `w = 0` done in the `update-transforms` is `NaN` on PC, but 0 on PS2. These NaNs propagate to the velocity, and you get stuck with everything being NaN. ![image](https://github.com/user-attachments/assets/f575fed5-4543-4f72-b7d1-c5c8be8036f8) Co-authored-by: water111 <[email protected]> * [jak3] Fix crash with volcano platforms (#3676) Ended up being a simple fix to a stack type in rigid-body. Co-authored-by: water111 <[email protected]> * fix debug continue point (#112) * Skip the spam of ERROR: sp-launch-particles called during processing,… (#105) * Skip the spam of ERROR: sp-launch-particles called during processing, and queue is full * log particle error no more than 1x per 10s --------- Co-authored-by: Matt Dallmeyer <[email protected]> * build(deps): bump peter-evans/create-pull-request from 5 to 6 (#61) Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 5 to 6. - [Release notes](https://github.com/peter-evans/create-pull-request/releases) - [Commits](https://github.com/peter-evans/create-pull-request/compare/v5...v6) --- updated-dependencies: - dependency-name: peter-evans/create-pull-request dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * build(deps): bump peter-evans/repository-dispatch from 2 to 3 (#62) Bumps [peter-evans/repository-dispatch](https://github.com/peter-evans/repository-dispatch) from 2 to 3. - [Release notes](https://github.com/peter-evans/repository-dispatch/releases) - [Commits](https://github.com/peter-evans/repository-dispatch/compare/v2...v3) --- updated-dependencies: - dependency-name: peter-evans/repository-dispatch dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * jak3: misc fixes (#3686) - Fix global heap display in cheat mode - Fix `tpl-watcher` NaNs after they fire their laser (`vf0` was being clobbered) (Fixes #3684) - Fix `artifact-race` talkers (Fixes #3685) * CI: Periodic Controller Database Update (#3687) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * Cut release v2 (#113) * setup v2 mod bundler * revert some unintended changes * Update cut-release.yaml * Update cut-release.yaml * Update mod-release-pipeline.yml * custom levels: support vanilla skies and texture remapping tables (#3691) This adds some new JSON entries to custom levels so they can support vanilla sky textures and the texture remapping tables, allowing for proper textures on objects that use `generic`, like dark eco pools or dying enemies. The comments explain it in more detail, but the gist is: For skies: - `sky` needs to be a vanilla level that has sky textures. - The alpha tpage (fourth entry in `tpages`) needs to be that vanilla level's alpha tpage (if `tex_remap` is the same level as `sky`, this will be handled automatically). - The tpage needs to be added to the custom level `.gd` and to `textures` in the JSON. - In `level-info.gc`, `sky` needs to be `#t`, your level's mood needs to call `update-mood-sky-texture` (the default mood, `update-mood-default`, handles this as an example) and `sun-fade` needs to be nonzero for the sun to show up. For `generic` textures: - `tex_remap` needs to be the name of a vanilla level. - When using a vanilla level's remap table, you need to adhere to the order of the files in that level's `.gd` in your own level. - Code files are first. - Then the tpages (in the order `tfrag`, `pris`, `shrub`, `alpha`, `water`). - Then the art groups. - Lastly, the level file. - The tpages need to be added to the `textures` in the JSON. * vanilla merge 9/30 (#115) * Use custom normals in model replacement (#3649) A small change that makes the models look a lot better. Will likely cause a crash if imported model has no normal data, but that's on the user to fix on their model. * decompiler: `call-parent-state-handler` and `suspend-for` macros (#3625) Also fix `hud-draw-pris2` bucket in Jak 3 to make subtitles work and foreground HUD envmap. * jak3: decomp `bigmap`, `blit-displays`, fix `progress` crash (#3657) `bigmap` and `blit-displays` mostly work. `blit-displays` is still missing all of the special effects that were added in Jak 3 (brightness and contrast settings, screen blur effect, etc.). `bigmap` is missing the player marker texture (`hud-target-marker`) for some reason, it's part of `tpage-17` which is coming from `progress-minimap` and should already be included. The icons also currently stretch when using aspect ratios other than 4:3. The progress menu now also works for the most part. The draw order is a bit messed up because some code was initially drawing things with the ocean bucket, which was changed to use `hud-draw-hud-alpha` instead for now. The texture for the volume and brightness/contrast sliders still looks wrong. Fixes #3653 Fixes #3656 * [jak2] Workaround for sound effects getting dropped (#3660) Similar to the workaround added in jak 3, if too many sounds are playing, a sound will be removed. If there are multiple instances of the same sound being played, those will be removed first. Within that, older sounds are removed first. It's not exactly the same as the instance limits of 989snd, but it seems to work well. It's at least better than what we had before. Co-authored-by: water111 <[email protected]> * Fix github release-pipeline so version tag is available for cmake (#3651) Followup to https://discord.com/channels/756287461377703987/1280601431975661599 where the v0.2.16 release is showing git SHA in the speedrun verification text, instead of the version tag * CI: Periodic Controller Database Update (#3661) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * cmake: handle the scenario of a commit having more than 1 tag (#3662) * Background improvements for custom levels (#3672) This only applies to the background for now: - support for alpha for vertex colors in custom levels - switch time of day palette generation from octree to k-d tree - support for alpha masking in custom levels - support for transparent textures - support for envmap in custom levels --------- Co-authored-by: water111 <[email protected]> * CI: Periodic Controller Database Update (#3666) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * [jak2] english subtitle fixes (#3665) * ubuntu Dockerfile fix a missing dependency (#3667) adds libssl-dev to apt-get i atleast had to add this for the docker image to work * [jak3] Fix bomb bot bombs disappearing (#3674) This is basically applying the same fix as `vector<-cspace!`, which we've been doing since jak 1. They often make bugs where they use bones before they are properly initialized. On PS2, it's relatively harmless - it results in stuff going to the origin for 1 frame (where it collides with nothing, since the collide cache was filled somewhere else), then going back to normal. On PC, using these uninitialized bones results in NaNs. This is because `0 * (1 / w)` where `w = 0` done in the `update-transforms` is `NaN` on PC, but 0 on PS2. These NaNs propagate to the velocity, and you get stuck with everything being NaN. ![image](https://github.com/user-attachments/assets/f575fed5-4543-4f72-b7d1-c5c8be8036f8) Co-authored-by: water111 <[email protected]> * [jak3] Fix crash with volcano platforms (#3676) Ended up being a simple fix to a stack type in rigid-body. Co-authored-by: water111 <[email protected]> * jak3: misc fixes (#3686) - Fix global heap display in cheat mode - Fix `tpl-watcher` NaNs after they fire their laser (`vf0` was being clobbered) (Fixes #3684) - Fix `artifact-race` talkers (Fixes #3685) * CI: Periodic Controller Database Update (#3687) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * custom levels: support vanilla skies and texture remapping tables (#3691) This adds some new JSON entries to custom levels so they can support vanilla sky textures and the texture remapping tables, allowing for proper textures on objects that use `generic`, like dark eco pools or dying enemies. The comments explain it in more detail, but the gist is: For skies: - `sky` needs to be a vanilla level that has sky textures. - The alpha tpage (fourth entry in `tpages`) needs to be that vanilla level's alpha tpage (if `tex_remap` is the same level as `sky`, this will be handled automatically). - The tpage needs to be added to the custom level `.gd` and to `textures` in the JSON. - In `level-info.gc`, `sky` needs to be `#t`, your level's mood needs to call `update-mood-sky-texture` (the default mood, `update-mood-default`, handles this as an example) and `sun-fade` needs to be nonzero for the sun to show up. For `generic` textures: - `tex_remap` needs to be the name of a vanilla level. - When using a vanilla level's remap table, you need to adhere to the order of the files in that level's `.gd` in your own level. - Code files are first. - Then the tpages (in the order `tfrag`, `pris`, `shrub`, `alpha`, `water`). - Then the art groups. - Lastly, the level file. - The tpages need to be added to the `textures` in the JSON. --------- Co-authored-by: Will <[email protected]> Co-authored-by: Hat Kid <[email protected]> Co-authored-by: water111 <[email protected]> Co-authored-by: water111 <[email protected]> Co-authored-by: OpenGOAL Bot <[email protected]> Co-authored-by: OpenGOALBot <[email protected]> Co-authored-by: Tyler Wilding <[email protected]> Co-authored-by: Aloqas <[email protected]> Co-authored-by: Ima_Door <[email protected]> * vanilla merge binaries (#116) * Use custom normals in model replacement (#3649) A small change that makes the models look a lot better. Will likely cause a crash if imported model has no normal data, but that's on the user to fix on their model. * decompiler: `call-parent-state-handler` and `suspend-for` macros (#3625) Also fix `hud-draw-pris2` bucket in Jak 3 to make subtitles work and foreground HUD envmap. * jak3: decomp `bigmap`, `blit-displays`, fix `progress` crash (#3657) `bigmap` and `blit-displays` mostly work. `blit-displays` is still missing all of the special effects that were added in Jak 3 (brightness and contrast settings, screen blur effect, etc.). `bigmap` is missing the player marker texture (`hud-target-marker`) for some reason, it's part of `tpage-17` which is coming from `progress-minimap` and should already be included. The icons also currently stretch when using aspect ratios other than 4:3. The progress menu now also works for the most part. The draw order is a bit messed up because some code was initially drawing things with the ocean bucket, which was changed to use `hud-draw-hud-alpha` instead for now. The texture for the volume and brightness/contrast sliders still looks wrong. Fixes #3653 Fixes #3656 * [jak2] Workaround for sound effects getting dropped (#3660) Similar to the workaround added in jak 3, if too many sounds are playing, a sound will be removed. If there are multiple instances of the same sound being played, those will be removed first. Within that, older sounds are removed first. It's not exactly the same as the instance limits of 989snd, but it seems to work well. It's at least better than what we had before. Co-authored-by: water111 <[email protected]> * Fix github release-pipeline so version tag is available for cmake (#3651) Followup to https://discord.com/channels/756287461377703987/1280601431975661599 where the v0.2.16 release is showing git SHA in the speedrun verification text, instead of the version tag * CI: Periodic Controller Database Update (#3661) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * cmake: handle the scenario of a commit having more than 1 tag (#3662) * Background improvements for custom levels (#3672) This only applies to the background for now: - support for alpha for vertex colors in custom levels - switch time of day palette generation from octree to k-d tree - support for alpha masking in custom levels - support for transparent textures - support for envmap in custom levels --------- Co-authored-by: water111 <[email protected]> * CI: Periodic Controller Database Update (#3666) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * [jak2] english subtitle fixes (#3665) * ubuntu Dockerfile fix a missing dependency (#3667) adds libssl-dev to apt-get i atleast had to add this for the docker image to work * [jak3] Fix bomb bot bombs disappearing (#3674) This is basically applying the same fix as `vector<-cspace!`, which we've been doing since jak 1. They often make bugs where they use bones before they are properly initialized. On PS2, it's relatively harmless - it results in stuff going to the origin for 1 frame (where it collides with nothing, since the collide cache was filled somewhere else), then going back to normal. On PC, using these uninitialized bones results in NaNs. This is because `0 * (1 / w)` where `w = 0` done in the `update-transforms` is `NaN` on PC, but 0 on PS2. These NaNs propagate to the velocity, and you get stuck with everything being NaN. ![image](https://github.com/user-attachments/assets/f575fed5-4543-4f72-b7d1-c5c8be8036f8) Co-authored-by: water111 <[email protected]> * [jak3] Fix crash with volcano platforms (#3676) Ended up being a simple fix to a stack type in rigid-body. Co-authored-by: water111 <[email protected]> * jak3: misc fixes (#3686) - Fix global heap display in cheat mode - Fix `tpl-watcher` NaNs after they fire their laser (`vf0` was being clobbered) (Fixes #3684) - Fix `artifact-race` talkers (Fixes #3685) * CI: Periodic Controller Database Update (#3687) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * custom levels: support vanilla skies and texture remapping tables (#3691) This adds some new JSON entries to custom levels so they can support vanilla sky textures and the texture remapping tables, allowing for proper textures on objects that use `generic`, like dark eco pools or dying enemies. The comments explain it in more detail, but the gist is: For skies: - `sky` needs to be a vanilla level that has sky textures. - The alpha tpage (fourth entry in `tpages`) needs to be that vanilla level's alpha tpage (if `tex_remap` is the same level as `sky`, this will be handled automatically). - The tpage needs to be added to the custom level `.gd` and to `textures` in the JSON. - In `level-info.gc`, `sky` needs to be `#t`, your level's mood needs to call `update-mood-sky-texture` (the default mood, `update-mood-default`, handles this as an example) and `sun-fade` needs to be nonzero for the sun to show up. For `generic` textures: - `tex_remap` needs to be the name of a vanilla level. - When using a vanilla level's remap table, you need to adhere to the order of the files in that level's `.gd` in your own level. - Code files are first. - Then the tpages (in the order `tfrag`, `pris`, `shrub`, `alpha`, `water`). - Then the art groups. - Lastly, the level file. - The tpages need to be added to the `textures` in the JSON. * forgot to include binaries --------- Co-authored-by: Will <[email protected]> Co-authored-by: Hat Kid <[email protected]> Co-authored-by: water111 <[email protected]> Co-authored-by: water111 <[email protected]> Co-authored-by: OpenGOAL Bot <[email protected]> Co-authored-by: OpenGOALBot <[email protected]> Co-authored-by: Tyler Wilding <[email protected]> Co-authored-by: Aloqas <[email protected]> Co-authored-by: Ima_Door <[email protected]> * Sound replacements (#117) * support sound replacements * cleanup * game: dont filter resolutions in windowed mode (#3688) I'll test this more thoroughly tomorrow, quick change to allow picking resolutions that would normally be filtered out, while in windowed mode. * g/j2: Fix subtitle setting persisting and add a toggle for the hint subtitles (#3689) Fixes #3663 * New Crowdin updates (#3693) * build(deps): bump peter-evans/create-pull-request from 6 to 7 (#3694) Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 6 to 7. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/peter-evans/create-pull-request/releases">peter-evans/create-pull-request's releases</a>.</em></p> <blockquote> <h2>Create Pull Request v7.0.0</h2> <p>:sparkles: Now supports commit signing with bot-generated tokens! See "What's new" below. :writing_hand::robot:</p> <h3>Behaviour changes</h3> <ul> <li>Action input <code>git-token</code> has been renamed <code>branch-token</code>, to be more clear about its purpose. The <code>branch-token</code> is the token that the action will use to create and update the branch.</li> <li>The action now handles requests that have been rate-limited by GitHub. Requests hitting a primary rate limit will retry twice, for a total of three attempts. Requests hitting a secondary rate limit will not be retried.</li> <li>The <code>pull-request-operation</code> output now returns <code>none</code> when no operation was executed.</li> <li>Removed deprecated output environment variable <code>PULL_REQUEST_NUMBER</code>. Please use the <code>pull-request-number</code> action output instead.</li> </ul> <h3>What's new</h3> <ul> <li>The action can now sign commits as <code>github-actions[bot]</code> when using <code>GITHUB_TOKEN</code>, or your own bot when using <a href="https://github.com/peter-evans/create-pull-request/blob/HEAD/docs/concepts-guidelines.md#authenticating-with-github-app-generated-tokens">GitHub App tokens</a>. See <a href="https://github.com/peter-evans/create-pull-request/blob/HEAD/docs/concepts-guidelines.md#commit-signature-verification-for-bots">commit signing</a> for details.</li> <li>Action input <code>draft</code> now accepts a new value <code>always-true</code>. This will set the pull request to draft status when the pull request is updated, as well as on creation.</li> <li>A new action input <code>maintainer-can-modify</code> indicates whether <a href="https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork">maintainers can modify</a> the pull request. The default is <code>true</code>, which retains the existing behaviour of the action.</li> <li>A new output <code>pull-request-commits-verified</code> returns <code>true</code> or <code>false</code>, indicating whether GitHub considers the signature of the branch's commits to be verified.</li> </ul> <h2>What's Changed</h2> <ul> <li>build(deps-dev): bump <code>@types/node</code> from 18.19.36 to 18.19.39 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3000">peter-evans/create-pull-request#3000</a></li> <li>build(deps-dev): bump ts-jest from 29.1.5 to 29.2.0 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3008">peter-evans/create-pull-request#3008</a></li> <li>build(deps-dev): bump prettier from 3.3.2 to 3.3.3 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3018">peter-evans/create-pull-request#3018</a></li> <li>build(deps-dev): bump ts-jest from 29.2.0 to 29.2.2 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3019">peter-evans/create-pull-request#3019</a></li> <li>build(deps-dev): bump eslint-plugin-prettier from 5.1.3 to 5.2.1 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3035">peter-evans/create-pull-request#3035</a></li> <li>build(deps-dev): bump <code>@types/node</code> from 18.19.39 to 18.19.41 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3037">peter-evans/create-pull-request#3037</a></li> <li>build(deps): bump undici from 6.19.2 to 6.19.4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3036">peter-evans/create-pull-request#3036</a></li> <li>build(deps-dev): bump ts-jest from 29.2.2 to 29.2.3 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3038">peter-evans/create-pull-request#3038</a></li> <li>build(deps-dev): bump <code>@types/node</code> from 18.19.41 to 18.19.42 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3070">peter-evans/create-pull-request#3070</a></li> <li>build(deps): bump undici from 6.19.4 to 6.19.5 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3086">peter-evans/create-pull-request#3086</a></li> <li>build(deps-dev): bump <code>@types/node</code> from 18.19.42 to 18.19.43 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3087">peter-evans/create-pull-request#3087</a></li> <li>build(deps-dev): bump ts-jest from 29.2.3 to 29.2.4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3088">peter-evans/create-pull-request#3088</a></li> <li>build(deps): bump undici from 6.19.5 to 6.19.7 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3145">peter-evans/create-pull-request#3145</a></li> <li>build(deps-dev): bump <code>@types/node</code> from 18.19.43 to 18.19.44 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3144">peter-evans/create-pull-request#3144</a></li> <li>Update distribution by <a href="https://github.com/actions-bot"><code>@actions-bot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3154">peter-evans/create-pull-request#3154</a></li> <li>build(deps): bump undici from 6.19.7 to 6.19.8 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3213">peter-evans/create-pull-request#3213</a></li> <li>build(deps-dev): bump <code>@types/node</code> from 18.19.44 to 18.19.45 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3214">peter-evans/create-pull-request#3214</a></li> <li>Update distribution by <a href="https://github.com/actions-bot"><code>@actions-bot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3221">peter-evans/create-pull-request#3221</a></li> <li>build(deps-dev): bump eslint-import-resolver-typescript from 3.6.1 to 3.6.3 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3255">peter-evans/create-pull-request#3255</a></li> <li>build(deps-dev): bump <code>@types/node</code> from 18.19.45 to 18.19.46 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3254">peter-evans/create-pull-request#3254</a></li> <li>build(deps-dev): bump ts-jest from 29.2.4 to 29.2.5 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3256">peter-evans/create-pull-request#3256</a></li> <li>v7 - signed commits by <a href="https://github.com/peter-evans"><code>@peter-evans</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3057">peter-evans/create-pull-request#3057</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/rustycl0ck"><code>@rustycl0ck</code></a> made their first contribution in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3057">peter-evans/create-pull-request#3057</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/peter-evans/create-pull-request/compare/v6.1.0...v7.0.0">https://github.com/peter-evans/create-pull-request/compare/v6.1.0...v7.0.0</a></p> <h2>Create Pull Request v6.1.0</h2> <p>✨ Adds <code>pull-request-branch</code> as an action output.</p> <h2>What's Changed</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/peter-evans/create-pull-request/commit/5e914681df9dc83aa4e4905692ca88beb2f9e91f"><code>5e91468</code></a> fix: support symlinks when commit signing (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3359">#3359</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/2f38cd26bfebe301a5ee90bdd6550a69dc3ef23f"><code>2f38cd2</code></a> fix: support submodules when commit signing (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3354">#3354</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/7a8aeac749996aed943101d8e7dfb0cecc06197e"><code>7a8aeac</code></a> build(deps-dev): bump eslint from 8.57.0 to 8.57.1 (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3344">#3344</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/d39d596a7720fc2c61c9aa5503097fb553431b5e"><code>d39d596</code></a> build(deps-dev): bump <code>@types/jest</code> from 29.5.12 to 29.5.13 (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3343">#3343</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/f6f978fd3dc86c443f758f603d22dc554762c832"><code>f6f978f</code></a> docs: correct suggestion for bot setup (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3342">#3342</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/6cd32fd93684475c31847837f87bb135d40a2b79"><code>6cd32fd</code></a> fix: disable abbreviated commit shas in diff (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3337">#3337</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/d121e62763d8cc35b5fb1710e887d6e69a52d3a4"><code>d121e62</code></a> fix: disable diff detection for renames and copies (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3330">#3330</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/f4d66f4d5a5a7e65a185463192800c32d296ac6d"><code>f4d66f4</code></a> build(deps-dev): bump typescript from 5.5.4 to 5.6.2 (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3319">#3319</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/488c869d17c8a5cb8a2f0a09471ed82c1d2a084f"><code>488c869</code></a> build(deps-dev): bump <code>@types/node</code> from 18.19.48 to 18.19.50 (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3320">#3320</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/5354f85616108575685a73a0ddd2f67c26a441c3"><code>5354f85</code></a> docs: update readme</li> <li>Additional commits viewable in <a href="https://github.com/peter-evans/create-pull-request/compare/v6...v7">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=peter-evans/create-pull-request&package-manager=github_actions&previous-version=6&new-version=7)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * [jak1] Patch "NG+ glitch" (#3690) Fixes #3644 which I believe is the same underlying issue as "NG+ glitch" To reproduce the issue in #3644 you can: - choose Hub 2 100% in the speedrun fast reset menu - hit the blue sage warp gate switch - go deep enough into any adjacent level (e.g. basin) where `village2` display is turned off - reset speedrun in the fast reset menu - tasks are reset but the switch will be pressed, giving the cutscene early You can also grab orbs/scout flies in `village2`, and they won't be reset properly because of this same bug. It happens because of the way entity perm status is managed across both `level` vs `game-info` objects. - when `village2` is deactivated (still loaded but display hidden), its entity perms are copied to `game-info`'s `perm-list` - this is how we persist `warp-gate-switch-7` being pressed if village2 is ever unloaded - during the speedrun reset `reset-actors` is called: - any active levels (loaded+displayed) have their entity perm statuses reset - because `village2` is not displayed yet, its entity perm statuses are not touched - `game-info` is re-initialized, clearing out its `perm-list` - continue is set to `firecanyon-end` - this unloads `rolling` or whatever to make room for `firecanyon` - `village2` is already loaded, and just gets displayed - at this point the game does copy entity perm status from `game-info` back to the `village2` level - but we reset the game, so it has no data about the warp-gate-switch, leaving it pressed! * github: switch to using issue types were applicable in issue forms (#3696) * extractor: add error code messages around `3990` (#3699) Also added a new error code to make invalid folder paths hopefully more clear/obvious. * [jak3] Fix flashing with maker projectiles (#3702) Fix https://github.com/open-goal/jak-project/issues/3701, and possibly other issues where projectiles were invisible/messed up. The use of `align16` with the -16 was subtracting 16 in cases when the pointer was already aligned, causing a bad value to be loaded for the quaternion. I also renamed some variables and did some manual cleanup on a method in process-drawable, since this one comes up a lot during debugging. Co-authored-by: water111 <[email protected]> * [jak3] fix envmap texture and strength (#3704) Fix the envmap texture using the eye texture by default (will require a re-extract to fix), fix envmap strength in all three games being off by 2x. (oops) With envmap scale fix: ![image](https://github.com/user-attachments/assets/3b0ef8b7-cbdc-4402-8a12-af368538c16e) without envmap scale fix (but with texture fix): ![image](https://github.com/user-attachments/assets/fd72d75b-f0bb-455c-a7c9-56916fbd4a67) --------- Co-authored-by: water111 <[email protected]> * [jak3] Add merc fade and support for no texture flag (#3710) Fixes https://github.com/open-goal/jak-project/issues/3709 https://github.com/user-attachments/assets/9fadf624-60b8-460f-9887-693712cc36c0 Co-authored-by: water111 <[email protected]> * CI: Periodic Controller Database Update (#3711) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * better flut/racer anywhere transitions (#120) * Update release-pipeline.yaml * Update release-pipeline.yaml * decompiler: fix `secret-disable` form in `defskelgroup` detection (#3713) * CI: Periodic Controller Database Update (#3714) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * Parameterize the iso_data folder for goalc (#3692) I hope this is everything I needed, and nothing I didn't. ## What's Changed This update adds a command-line parameter to goalc, `--iso-path`. Providing a path to a directory like `D:\Files\Repositories\ArchipelaGOAL\iso_data\jak1` will inform the compiler to use that directory instead. ## Why is this useful? When combined with `--proj-path`, the compiler can be pointed to a completely different project folder, given the `(mi)` command, and immediately begin building from that directory, with everything it needs. This eliminates the need to copy `iso_data` to multiple `data` directories. If a subsequent change to the Launcher is made, each mod could be passed an --iso-path pointing to a single shared folder, allowing mods to each run their own REPL _without_ requiring a copy of `iso_data` in a subfolder. ## Independent testing required! My local repositories are a little suspect, with a mod, a fork of mod-base, and a fork of jak-project, all on the same drive. My decompiler_out and iso_data folders are in the mod repo, not mod-base nor jak-project. So what I did was make the change in the mod-base fork, point `--proj-path and --iso-path` to the mod folders, and then ran `(mi)`. The output showed a build starting with no errors. Then I had to create this PR, which my fork of mod-base is unable to do, so I created a patch file, forked jak-project, then applied the patch there. All this is to say that it would be preferable if someone could apply this code to their own installation and see if it works. Even I wouldn't take my own word for this. --------- Co-authored-by: Tyler Wilding <[email protected]> * game: fix game icon aspect ratio (#3718) * [jak3] Fix target marker texture (#3721) Fixes https://github.com/open-goal/jak-project/issues/3720. The texture page and texture name appear multiple times with different IDs, meaning that we insert the texture with the wrong ID. Fixed by using IDs for common_tpage textures. Since this common_tpage feature is only used for minimap stuff, I don't think it can mess up texture animations. ![image](https://github.com/user-attachments/assets/0d5d45e9-b69a-48b5-86c9-b9c597f0872e) Co-authored-by: water111 <[email protected]> * [jak3] Fix neosat particles and tentacle (#3722) Fixes issue with not handling texture flipping flags in sprite renderer (new jak 3 feature). As far as I can tell, there is no visible difference because the textures that use this flag are symmetric. Fix issue with not adding an `and` with `0xf` on the offset into the xy table. This is added only in jak 3, where `vi07`'s upper bits are sometimes nonzero, but doesn't hurt to have in all three games. ``` iaddi vi09, vi00, 0xf | nop iand vi07, vi07, vi09 | nop ``` ![image](https://github.com/user-attachments/assets/559d749a-957a-47dc-af6a-5b4b7d72a65b) Fix issue with inf/nan causing the tentacle to not appear: ![image](https://github.com/user-attachments/assets/7c316cdf-7ff8-452d-b4af-ddb8d5ba4e44) --------- Co-authored-by: water111 <[email protected]> * g/j2: make the turret controls respect the camera settings (#3715) Fixes #3664 * game: Update game's GPU test to output the GPU vendor info (#3717) This is so I can get rid of wgpu from the launcher, where it's only purpose is to figure out the GPU name for the support package. The problem with it is that on some environments, it errors, but the function cannot have it's errors gracefully handled (it panics and crashes instead). So I'm tired of it, do it ourselves. ![image](https://github.com/user-attachments/assets/fa8ae365-b3f7-4794-81ed-fde0c2ffc651) * CI: Periodic Controller Database Update (#3726) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * vanilla merge (#123) * Use custom normals in model replacement (#3649) A small change that makes the models look a lot better. Will likely cause a crash if imported model has no normal data, but that's on the user to fix on their model. * decompiler: `call-parent-state-handler` and `suspend-for` macros (#3625) Also fix `hud-draw-pris2` bucket in Jak 3 to make subtitles work and foreground HUD envmap. * jak3: decomp `bigmap`, `blit-displays`, fix `progress` crash (#3657) `bigmap` and `blit-displays` mostly work. `blit-displays` is still missing all of the special effects that were added in Jak 3 (brightness and contrast settings, screen blur effect, etc.). `bigmap` is missing the player marker texture (`hud-target-marker`) for some reason, it's part of `tpage-17` which is coming from `progress-minimap` and should already be included. The icons also currently stretch when using aspect ratios other than 4:3. The progress menu now also works for the most part. The draw order is a bit messed up because some code was initially drawing things with the ocean bucket, which was changed to use `hud-draw-hud-alpha` instead for now. The texture for the volume and brightness/contrast sliders still looks wrong. Fixes #3653 Fixes #3656 * [jak2] Workaround for sound effects getting dropped (#3660) Similar to the workaround added in jak 3, if too many sounds are playing, a sound will be removed. If there are multiple instances of the same sound being played, those will be removed first. Within that, older sounds are removed first. It's not exactly the same as the instance limits of 989snd, but it seems to work well. It's at least better than what we had before. Co-authored-by: water111 <[email protected]> * Fix github release-pipeline so version tag is available for cmake (#3651) Followup to https://discord.com/channels/756287461377703987/1280601431975661599 where the v0.2.16 release is showing git SHA in the speedrun verification text, instead of the version tag * CI: Periodic Controller Database Update (#3661) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * cmake: handle the scenario of a commit having more than 1 tag (#3662) * Background improvements for custom levels (#3672) This only applies to the background for now: - support for alpha for vertex colors in custom levels - switch time of day palette generation from octree to k-d tree - support for alpha masking in custom levels - support for transparent textures - support for envmap in custom levels --------- Co-authored-by: water111 <[email protected]> * CI: Periodic Controller Database Update (#3666) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * [jak2] english subtitle fixes (#3665) * ubuntu Dockerfile fix a missing dependency (#3667) adds libssl-dev to apt-get i atleast had to add this for the docker image to work * [jak3] Fix bomb bot bombs disappearing (#3674) This is basically applying the same fix as `vector<-cspace!`, which we've been doing since jak 1. They often make bugs where they use bones before they are properly initialized. On PS2, it's relatively harmless - it results in stuff going to the origin for 1 frame (where it collides with nothing, since the collide cache was filled somewhere else), then going back to normal. On PC, using these uninitialized bones results in NaNs. This is because `0 * (1 / w)` where `w = 0` done in the `update-transforms` is `NaN` on PC, but 0 on PS2. These NaNs propagate to the velocity, and you get stuck with everything being NaN. ![image](https://github.com/user-attachments/assets/f575fed5-4543-4f72-b7d1-c5c8be8036f8) Co-authored-by: water111 <[email protected]> * [jak3] Fix crash with volcano platforms (#3676) Ended up being a simple fix to a stack type in rigid-body. Co-authored-by: water111 <[email protected]> * jak3: misc fixes (#3686) - Fix global heap display in cheat mode - Fix `tpl-watcher` NaNs after they fire their laser (`vf0` was being clobbered) (Fixes #3684) - Fix `artifact-race` talkers (Fixes #3685) * CI: Periodic Controller Database Update (#3687) Updating Controller Database Co-authored-by: OpenGOALBot <[email protected]> * custom levels: support vanilla skies and texture remapping tables (#3691) This adds some new JSON entries to custom levels so they can support vanilla sky textures and the texture remapping tables, allowing for proper textures on objects that use `generic`, like dark eco pools or dying enemies. The comments explain it in more detail, but the gist is: For skies: - `sky` needs to be a vanilla level that has sky textures. - The alpha tpage (fourth entry in `tpages`) needs to be that vanilla level's alpha tpage (if `tex_remap` is the same level as `sky`, this will be handled automatically). - The tpage needs to be added to the custom level `.gd` and to `textures` in the JSON. - In `level-info.gc`, `sky` needs to be `#t`, your level's mood needs to call `update-mood-sky-texture` (the default mood, `update-mood-default`, handles this as an example) and `sun-fade` needs to be nonzero for the sun to show up. For `generic` textures: - `tex_remap` needs to be the name of a vanilla level. - When using a vanilla level's remap table, you need to adhere to the order of the files in that level's `.gd` in your own level. - Code files are first. - Then the tpages (in the order `tfrag`, `pris`, `shrub`, `alpha`, `water`). - Then the art groups. - Lastly, the level file. - The tpages need to be added to the `textures` in the JSON. * game: dont filter resolutions in windowed mode (#3688) I'll test this more thoroughly tomorrow, quick change to allow picking resolutions that would normally be filtered out, while in windowed mode. * g/j2: Fix subtitle setting persisting and add a toggle for the hint subtitles (#3689) Fixes #3663 * New Crowdin updates (#3693) * build(deps): bump peter-evans/create-pull-request from 6 to 7 (#3694) Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 6 to 7. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/peter-evans/create-pull-request/releases">peter-evans/create-pull-request's releases</a>.</em></p> <blockquote> <h2>Create Pull Request v7.0.0</h2> <p>:sparkles: Now supports commit signing with bot-generated tokens! See "What's new" below. :writing_hand::robot:</p> <h3>Behaviour changes</h3> <ul> <li>Action input <code>git-token</code> has been renamed <code>branch-token</code>, to be more clear about its purpose. The <code>branch-token</code> is the token that the action will use to create and update the branch.</li> <li>The action now handles requests that have been rate-limited by GitHub. Requests hitting a primary rate limit will retry twice, for a total of three attempts. Requests hitting a secondary rate limit will not be retried.</li> <li>The <code>pull-request-operation</code> output now returns <code>none</code> when no operation was executed.</li> <li>Removed deprecated output environment variable <code>PULL_REQUEST_NUMBER</code>. Please use the <code>pull-request-number</code> action output instead.</li> </ul> <h3>What's new</h3> <ul> <li>The action can now sign commits as <code>github-actions[bot]</code> when using <code>GITHUB_TOKEN</code>, or your own bot when using <a href="https://github.com/peter-evans/create-pull-request/blob/HEAD/docs/concepts-guidelines.md#authenticating-with-github-app-generated-tokens">GitHub App tokens</a>. See <a href="https://github.com/peter-evans/create-pull-request/blob/HEAD/docs/concepts-guidelines.md#commit-signature-verification-for-bots">commit signing</a> for details.</li> <li>Action input <code>draft</code> now accepts a new value <code>always-true</code>. This will set the pull request to draft status when the pull request is updated, as well as on creation.</li> <li>A new action input <code>maintainer-can-modify</code> indicates whether <a href="https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork">maintainers can modify</a> the pull request. The default is <code>true</code>, which retains the existing behaviour of the action.</li> <li>A new output <code>pull-request-commits-verified</code> returns <code>true</code> or <code>false</code>, indicating whether GitHub considers the signature of the branch's commits to be verified.</li> </ul> <h2>What's Changed</h2> <ul> <li>build(deps-dev): bump <code>@types/node</code> from 18.19.36 to 18.19.39 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3000">peter-evans/create-pull-request#3000</a></li> <li>build(deps-dev): bump ts-jest from 29.1.5 to 29.2.0 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3008">peter-evans/create-pull-request#3008</a></li> <li>build(deps-dev): bump prettier from 3.3.2 to 3.3.3 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3018">peter-evans/create-pull-request#3018</a></li> <li>build(deps-dev): bump ts-jest from 29.2.0 to 29.2.2 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3019">peter-evans/create-pull-request#3019</a></li> <li>build(deps-dev): bump eslint-plugin-prettier from 5.1.3 to 5.2.1 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3035">peter-evans/create-pull-request#3035</a></li> <li>build(deps-dev): bump <code>@types/node</code> from 18.19.39 to 18.19.41 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3037">peter-evans/create-pull-request#3037</a></li> <li>build(deps): bump undici from 6.19.2 to 6.19.4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3036">peter-evans/create-pull-request#3036</a></li> <li>build(deps-dev): bump ts-jest from 29.2.2 to 29.2.3 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3038">peter-evans/create-pull-request#3038</a></li> <li>build(deps-dev): bump <code>@types/node</code> from 18.19.41 to 18.19.42 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3070">peter-evans/create-pull-request#3070</a></li> <li>build(deps): bump undici from 6.19.4 to 6.19.5 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3086">peter-evans/create-pull-request#3086</a></li> <li>build(deps-dev): bump <code>@types/node</code> from 18.19.42 to 18.19.43 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3087">peter-evans/create-pull-request#3087</a></li> <li>build(deps-dev): bump ts-jest from 29.2.3 to 29.2.4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3088">peter-evans/create-pull-request#3088</a></li> <li>build(deps): bump undici from 6.19.5 to 6.19.7 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3145">peter-evans/create-pull-request#3145</a></li> <li>build(deps-dev): bump <code>@types/node</code> from 18.19.43 to 18.19.44 by <a href="https://github.com/depen…
- Loading branch information