Tyler Wilding
55204e6996
decomp: ensure out_folder exists before being written to
2024-06-21 22:58:16 -04:00
Tyler Wilding
b2cfefb669
decomp/config: simplify enabling streamed audio ripping, string wasn't even in use anymore
2024-06-19 23:43:34 -04:00
Tyler Wilding
bc586f0cca
lint: formatting
2024-06-15 15:43:04 -04:00
Tyler Wilding
13e7a28c08
decomp: eliminate duplicate code in extractor/decompiler
...
This allows the extractor's decompilation routine to do all the things the normal decompiler can (ie. extract audio)
2024-06-15 15:42:27 -04:00
Tyler Wilding
17665a4615
decomp: pull out main decompilation process into an isolated function
2024-06-15 15:41:56 -04:00
Tyler Wilding
d209766078
util: support get_peak_rss on windows
2024-06-15 15:41:40 -04:00
Matt Dallmeyer
86979e3d06
[jak1] Enforce certain pc-settings in speedrunner mode ( #3553 )
...
Currently PS2 Actor Vis and FPS are only enforced when starting a run -
this enforces them on every frame similar to cheats.
In the progress menu, FPS is already disabled in speedrunner mode - this
adds the same restriction for PS2 Actor Vis.
Jak 2 already does this properly, no change needed there
2024-06-15 14:54:53 -04:00
OpenGOAL Bot and OpenGOALBot
29849a4fbb
CI: Periodic Controller Database Update ( #3555 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-06-15 00:13:41 -04:00
RoyalForgotten
b0b9fc4311
Jak 2 3rd update subtitle_lines_fr-FR.json ( #3546 )
...
Fixed several translation errors
2024-06-05 23:19:10 -04:00
Tyler Wilding
c162c66118
g/j1: Cleanup all main issues in the formatter and format all of goal_src/jak1 ( #3535 )
...
This PR does two main things:
1. Work through the main low-hanging fruit issues in the formatter
keeping it from feeling mature and usable
2. Iterate and prove that point by formatting all of the Jak 1 code
base. **This has removed around 100K lines in total.**
- The decompiler will now format it's results for jak 1 to keep things
from drifting back to where they were. This is controlled by a new
config flag `format_code`.
How am I confident this hasn't broken anything?:
- I compiled the entire project and stored it's `out/jak1/obj` files
separately
- I then recompiled the project after formatting and wrote a script that
md5's each file and compares it (`compare-compilation-outputs.py`
- The results (eventually) were the same:

> This proves that the only difference before and after is non-critical
whitespace for all code/macros that is actually in use.
I'm still aware of improvements that could be made to the formatter, as
well as general optimization of it's performance. But in general these
are for rare or non-critical situations in my opinion and I'll work
through them before doing Jak 2. The vast majority looks great and is
working properly at this point. Those known issues are the following if
you are curious:

2024-06-05 22:17:31 -04:00
ManDude
37762c5fb7
wrap sprite rgba to 0-255 ( #3549 )
2024-06-04 07:57:52 +01:00
OpenGOAL Bot and OpenGOALBot
a18d9dd4d0
CI: Periodic Controller Database Update ( #3548 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-06-03 23:00:48 -04:00
Tyler Wilding
a9bdb0136e
New Crowdin updates ( #3547 )
...
People seem to be translating lines that aren't in the base english one,
such as `mtn-plat-buried-rocks-a`
This is fine, but Crowdin will continue to remove these every sync PR
because they aren't in the base english file. So some kind of
segregation needs to happen.
If we didn't want these scenes translated, then they should be banned
from being translated via the editor / etc in the first place (shouldn't
have been included in the metadata).
2024-06-03 01:01:58 -04:00
Tyler Wilding
eb703ee96e
REPL related improvements and fixes ( #3545 )
...
Motivated by - https://github.com/open-goal/opengoal-vscode/pull/358
This addresses the following:
- Fixes #2939 spam edge-case
- Stop picking a different nREPL port based on the game mode by default,
this causes friction for tools in the average usecase (having a REPL
open for a single game, and wanting to connect to it). `goalc` spins up
fine even if the port is already bound to.
- For people that need/want this behaviour, adding per-game
configuration to the `repl-config.json` is on my todo list.
- Allows `goalc` to permit redefining symbols, including functions. This
is defaulted to off via the `repl-config.json` but it allows you to for
example, change the definition of a function without having to restart
and rebuild the entire game.

- Updates the welcome message to include a bunch of useful metadata
up-front. Cleaned up all the startup logs that appear when starting
goalc, many of whom's information is now included in the welcome
message.
- Before:

- After:

2024-06-03 00:14:52 -04:00
ManDude
39786482a1
jak3: airlock speed hacks + make cutscenes skip properly ( #3543 )
2024-06-02 15:03:58 +01:00
ManDude
f586cb9af2
fix nav mesh debugging crash ( #3542 )
2024-06-01 00:50:14 +01:00
ManDude
ea1271cfd0
[jak3] implement autocollect and city turbo board cheats, fix actor heap and level flags ( #3541 )
2024-05-31 16:41:35 +01:00
Aloqas and Tyler Wilding
cefb371681
[jak2] new subtitle speakers ( #3536 )
...
for specific cutscene scenarios
---------
Co-authored-by: Tyler Wilding <[email protected] >
2024-05-30 22:02:44 -04:00
Matt Dallmeyer
70ea2a1f67
jak3 - fill out some text-id entries ( #3494 )
...
Slam Dozer > Ram Rod
2024-05-30 21:49:10 -04:00
Hat Kid
c64eea6337
[buildactor] support generating collide-meshes for custom models ( #3540 )
...
This adds support for generating collide meshes when importing custom
models. A couple of things to keep in mind:
- A single `collide-mesh` may only have up to 255 vertices.
- When exporting a GLTF file in Blender, a `collide-mesh` will be
generated for every mesh object that has collision properties applied
(ideally, you would set all visual meshes to `ignore` and your collision
meshes to `invisible` in the OpenGOAL plugin's custom properties).
- Ensure that your actor using the model properly allocates enough
`collide-shape-prim-mesh`es for each `collide-mesh` ([example from the
original game that uses multiple
meshes](https://github.com/open-goal/jak-project/blob/f6688659f2ef85f5ceaacea6271580c9f4d91ed1/goal_src/jak1/levels/finalboss/robotboss.gc#L2628-L2806 )).
~One annoying problem that I haven't fully figured out yet (unrelated to
the actual functionality):
`collide-mesh`es are stored in art groups as an `(array collide-mesh)`
in the `art-joint-geo`'s `extra`, so I had to add a new `Res` type to
support this. The way that `array`s are stored in `res-lump`s is a bit
of a hack right now. The lump only stores a pointer to the array, so the
size of that is 4 bytes, but because we have to generate all the actual
array data too, the current `ResLump` code in C++ doesn't handle this
case well and would assert, so I decided to omit the asserts if an
`array` tag is present and "fake" the size so the object file is
generated more closely to how the game expects it until we figure out
something better.~
This was fixed by generating the array data beforehand and creating a
`ResRef` class that takes the pointer to the array data and adds it to
the lump.
2024-05-29 06:09:20 +02:00
Tyler Wilding
f1de2c9bc5
g/j2: add some debug menu options to unlock things and give orbs/gems/ammo ( #3539 )
...
Adds some debug options that make it easier to quickly complete the
game, get orbs, unlock cheats, etc.

2024-05-27 22:58:52 -04:00
Tyler Wilding
f6688659f2
game: fix the path the--portable flag determines ( #3537 )
...
`--portable` was using the path to the executable's file, instead of the
directory that contains the executable
2024-05-26 00:40:33 -04:00
OpenGOAL Bot and OpenGOALBot
12ce274226
CI: Periodic Controller Database Update ( #3528 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-05-25 10:51:09 -04:00
Matthew Wells
bd2db7b15a
Add periods to lines in code_status.md for consistency ( #3521 )
2024-05-25 10:51:01 -04:00
ManDude
645e649a9c
jak3: shadow culling hack + finish region debugging tools + fix bigmap crashes ( #3532 )
2024-05-23 23:43:38 +01:00
ManDude
dd765b41cb
jak 3 shadows ( #3530 )
...

2024-05-23 18:29:42 +01:00
ManDude
0db7be55e6
jak3: sprite limit increase + add bsphere toggle for region faces ( #3529 )
2024-05-22 16:27:00 +01:00
Hat Kid
62ef9fe49d
[wip] build actor tool ( #3266 )
...
This does a couple of things:
- The `custom_levels` folder was renamed to `custom_assets` and contains
`levels`, `models` and `texture_replacements` folders for Jak 1, 2 and 3
in order to keep everything regarding custom stuff in one place.
- With this, texture replacements now use separate folders for all games
- A build actor tool was added that generates art groups for custom
actors
- Custom levels can now specify what custom models from the `models`
folder they want to import, this will add them to the level's FR3.
- A `test-zone-obs.gc` file was added, containing a `test-actor` process
that uses a custom model as an example.
The build actor tool is still very WIP, the joints and the default
animation are hardcoded, but it allows for importing any GLB file as a
merc model.
2024-05-18 18:18:25 +02:00
water111
271007e552
Start setting up texture animation for jak 3. ( #3524 )
...
For now, this just adds sky (clouds and fog), darkjak, and skull gem.
There are some unknown issues with drawing the skull gems still, but I
think it's unrelated to texture animations.
Also fixes https://github.com/open-goal/jak-project/issues/3523
2024-05-18 11:23:48 -04:00
Hat Kid
a61f24a168
jak3: custom level support ( #3522 )
2024-05-16 21:15:54 +02:00
Hat Kid
c12a5d777c
decomp3: decompile remaining mission code ( #3515 )
...
This should make all missions playable with the exception of the end of
`precursor-destroy-ship` because `precurd` asserts on level extraction.
- `trail`
- `trail-graph`
- `wastrail-graph`
- `cty-protect`
- `protect-gunship`
- `protect-path`
- `protect-script`
- `assault-cams`
- `assault-enemies`
- `assault-path`
- `assault-script`
- `assault-shared`
- `assault-task`
- `hover-nav-precura`
- `precura-mood`
- `precura-obs`
- `precura-obs2`
- `precura-part`
- `precurc-mood`
- `precurc-obs`
- `precurc-part`
- `precurd-obs`
- `precurd-part`
- `precurd-scenes`
2024-05-16 16:21:44 +02:00
Tyler Wilding
456d1ba536
goalc: add a performance report feature ( #3519 )
...
Adds a quick perf report feature to `goalc` that lets you compare how
much faster / slower it takes to compile the projects, with some simple
features like filtering the files, adjusting for how large of a margin
of error in the speeds you care about, and which test iteration you want
to compare against.
This is something I plan to use as I work more in `goalc` as an easy way
to track / show the results.

2024-05-15 22:52:16 -04:00
OpenGOAL Bot and OpenGOALBot
4aafab2fc9
CI: Periodic Controller Database Update ( #3517 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-05-13 20:37:21 -04:00
ManDude
ebbbedabc5
jak3: fix hud sprite crash + add entity debugger ( #3516 )
2024-05-13 04:09:25 +01:00
Tyler Wilding
d1ece445d4
Dependency graph work - Part 1 - Preliminary work ( #3505 )
...
Relates to #1353
This adds no new functionality or overhead to the compiler, yet. This is
the preliminary work that has:
- added code to the compiler in several spots to flag when something is
used without being properly required/imported/whatever (disabled by
default)
- that was used to generate project wide file dependencies (some
circulars were manually fixed)
- then that graph underwent a transitive reduction and the result was
written to all `jak1` source files.
The next step will be making this actually produce and use a dependency
graph. Some of the reasons why I'm working on this:
- eliminates more `game.gp` boilerplate. This includes the `.gd` files
to some extent (`*-ag` files and `tpage` files will still need to be
handled) this is the point of the new `bundles` form. This should make
it even easier to add a new file into the source tree.
- a build order that is actually informed from something real and
compiler warnings that tell you when you are using something that won't
be available at build time.
- narrows the search space for doing LSP actions -- like searching for
references. Since it would be way too much work to store in the compiler
every location where every symbol/function/etc is used, I have to do
ad-hoc searches. By having a dependency graph i can significantly reduce
that search space.
- opens the doors for common shared code with a legitimate pattern.
Right now jak 2 shares code from the jak 1 folder. This is basically a
hack -- but by having an explicit require syntax, it would be possible
to reference arbitrary file paths, such as a `common` folder.
Some stats:
- Jak 1 has about 2500 edges between files, including transitives
- With transitives reduced at the source code level, each file seems to
have a modest amount of explicit requirements.
Known issues:
- Tracking the location for where `defmacro`s and virtual state
definitions were defined (and therefore the file) is still problematic.
Because those forms are in a macro environment, the reader does not
track them. I'm wondering if a workaround could be to search the
reader's text_db by not just the `goos::Object` but by the text
position. But for the purposes of finishing this work, I just statically
analyzed and searched the code with throwaway python code.
2024-05-12 12:37:59 -04:00
water111
e0b1d8c21e
Jak3 sky ( #3514 )
2024-05-12 09:36:50 -04:00
Hat Kid
6b3844bf99
decomp3: more misc files ( #3513 )
...
4 missions to go!
- `ctygenb-part`
- `power-game`
- `vinroom-part`
- `vinroom-scenes`
- `gungame-part`
- `gungame-scenes`
- `hiphog-obs`
- `hiphog-part`
- `hiphog-scenes`
- `hover-nav-lpattack`
- `king-rider`
- `rubble-attack`
- `rubble-obs`
- `rubble-part`
- `rubblea-init`
- `rublcst-scenes`
- `mood-funcs2`
- `gun-dummy-art`
- `gun-dummy-part`
- `gun-dummy`
- `gungame-data`
- `gungame-manager`
- `gungame-obs`
- `blow-tower-data`
- `blow-tower-extra`
- `blow-tower-obs2`
- `blow-tower-obs`
- `blow-tower-part`
- `blow-tower-script`
- `blow-tower-shared`
- `blow-tower-speech`
- `cty-blow-tower`
2024-05-11 17:57:26 -04:00
BreakPoints
24490c042e
Intro palace DGOs ( #3512 )
...
Now needed to extract and compile from scratch
2024-05-11 10:21:45 -04:00
Hat Kid
4dd2bab06e
jak3: fix local space particle info crash ( #3511 )
2024-05-10 16:14:50 +02:00
water111
5b04be2fa0
Add hfrag, clean up some background renderer stuff ( #3509 )
...
This adds hfrag, but with a few remaining issues:
- The textures aren't animated. Instead, it just uses one texture.
- The texture filtering isn't as good as at it could be.
I also cleaned up a few issues with the background renderers:
- Cleaned up some stuff that is common to hfrag, tie, tfrag, shrub
- Moved time-of-day color packing stuff to FR3 creation, rather than at
level load. This appears to reduce the frame time spikes when a level is
first drawn by about 5 or 6 ms in big levels.
- Cleaned up the x86 specific stuff used in time of day. Now there's
only one place where we have an `ifdef`, rather than spreading it all
over the rendering code.
2024-05-09 20:11:43 -04:00
Hat Kid
949508d0ed
decomp3: traffic/citizen/faction code, desert-rescue ( #3506 )
...
- `cty-faction-h`
- `nav-graph`
- `citizen-h`
- `citizen`
- `civilian`
- `traffic-engine`
- `traffic-manager`
- `cty-attack-controller`
- `cty-faction`
- `formation-object`
- `formations`
- `squad-control-city-h`
- `squad-control-city`
- `traffic-util`
- `wlander-female`
- `wlander-h`
- `wlander-male`
- `speech-manager`
- `desert-rescue`
- `desresc-path`
- `neo-satellite`
- `rope-prim-system-h`
- `rope-prim-system`
- `rope-system`
- `wland-passenger`
- `cty-guard-projectile`
- `ctywide-init`
- `ff-squad-control`
- `guard-grenade`
- `guard-rifle`
- `guard-states`
- `guard-tazer`
- `ctywide-speech`
- `citizen-chick`
- `citizen-fat`
- `citizen-norm`
- `guard`
- `bike`
- `car`
- `test-bike`
- `vehicle-rider`
- `desert-rescue-bbush`
- `ff-squad-control-h`
- `flee-info`
- `guard-h`
- `mission-squad-control`
- `kg-squad-control`
- `kg-squad-member-h`
- `kg-squad-member`
- `mh-squad-control`
- `mh-squad-member-h`
- `mh-squad-member`
- `ctywide-obs-h`
- `ctywide-obs`
- `ctywide-part`
- `ctywide-scenes`
- `ctywide-tasks`
- `ctywide-texture`
- `billiards`
- `guide-arrow`
- `kg-vehicles`
- `flying-turret`
- `roboguard-city`
- `citizen-enemy`
- `metalhead-flitter`
- `metalhead-grunt`
- `metalhead-predator`
- `spydroid`
- `kg-squad-control-h`
- `mh-squad-control-h`
- `krimson-wall`
- `ctyport-obs`
- `ctyinda-obs`
- `ctyinda-part`
- `ctyindb-obs`
- `ctyindb-part`
- `ctyport-attack`
- `h-torpedo`
- `ctyport-part`
- `ctyport-scenes`
- `external-player-control`
- `desert-chase-path-h`
- `desert-chase-path`
- `desert-chase`
- `desert-jump`
- `wcar-catapult`
- `bombbot-h`
- `bombbot`
- `bombbot-path`
- `cty-hijack-missile`
- `cty-hijack`
- `ctyport-attack-bbush`
- `ctysluma-part`
- `ctyslumb-part`
- `ctyslumc-obs`
- `ctyslumc-part`
- `searchlight`
- `cty-destroy-grid`
- `ctyfarm-obs`
- `ctyfarma-part`
- `ctyfarmb-part`
- `freehq-part`
- `freehq-scenes`
- `onintent-scenes`
- `onintent-part`
- `cty-sniper-battery`
- `cty-sniper-turret`
- `intro-obs`
- `intro-part`
- `intro-scenes`
- `palcab-part`
- `palroof-part`
2024-05-09 19:18:55 -04:00
OpenGOAL Bot and OpenGOALBot
f479cef939
CI: Periodic Controller Database Update ( #3507 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-05-06 14:22:45 -04:00
water111 and ManDude
807ca7465f
fix c++ compiler warnings, extract_merc assert ( #3488 )
...
Co-authored-by: ManDude <[email protected] >
2024-05-03 17:29:18 +01:00
ManDude
cf79ca04e9
fix another jak 1 level name ( #3503 )
2024-05-03 08:34:36 +01:00
Tyler Wilding
6569636abf
ci: pin to avx for macos ( #3502 )
...
Related to #3439
Will see after a few weeks if the problem resurfaces. All macos related
caches have been purged to eliminate that as a possibility.
2024-05-01 22:00:56 -04:00
Hat Kid
f9e0aa82bc
jak3: fix mirage shot ( #3501 )
2024-05-01 21:57:13 +02:00
dependabot[bot] and Tyler Wilding
39f3549640
build(deps): bump hendrikmuhs/ccache-action from 1.2.12 to 1.2.13 ( #3497 )
...
Bumps
[hendrikmuhs/ccache-action](https://github.com/hendrikmuhs/ccache-action )
from 1.2.12 to 1.2.13.
<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.13</h2>
<h2>What's Changed</h2>
<ul>
<li>add emscripten to the compiler list by <a
href="https://github.com/mmomtchev "><code>@mmomtchev</code></a> in <a
href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/187 ">hendrikmuhs/ccache-action#187</a></li>
<li>Bump <code>@actions/cache</code> from 3.2.3 to 3.2.4 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/183 ">hendrikmuhs/ccache-action#183</a></li>
<li>Bump typescript from 5.3.3 to 5.4.2 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/190 ">hendrikmuhs/ccache-action#190</a></li>
<li>Bump typescript from 5.4.2 to 5.4.3 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/191 ">hendrikmuhs/ccache-action#191</a></li>
<li>fix: early exit process so node doesn't wait for hanging promises by
<a
href="https://github.com/chirag-droid "><code>@chirag-droid</code></a>
in <a
href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/182 ">hendrikmuhs/ccache-action#182</a></li>
<li>Bump typescript from 5.4.3 to 5.4.5 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/193 ">hendrikmuhs/ccache-action#193</a></li>
<li>Update windows by <a
href="https://github.com/virtuald "><code>@virtuald</code></a> in <a
href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/180 ">hendrikmuhs/ccache-action#180</a></li>
<li>Bump <code>@types/node</code> from 20.11.10 to 20.12.7 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/194 ">hendrikmuhs/ccache-action#194</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/mmomtchev "><code>@mmomtchev</code></a>
made their first contribution in <a
href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/187 ">hendrikmuhs/ccache-action#187</a></li>
<li><a
href="https://github.com/chirag-droid "><code>@chirag-droid</code></a>
made their first contribution in <a
href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/182 ">hendrikmuhs/ccache-action#182</a></li>
<li><a href="https://github.com/virtuald "><code>@virtuald</code></a>
made their first contribution in <a
href="https://redirect.github.com/hendrikmuhs/ccache-action/pull/180 ">hendrikmuhs/ccache-action#180</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/hendrikmuhs/ccache-action/compare/v1.2.12...v1.2.13 ">https://github.com/hendrikmuhs/ccache-action/compare/v1.2.12...v1.2.13 </a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/hendrikmuhs/ccache-action/commit/c92f40bee50034e84c763e33b317c77adaa81c92 "><code>c92f40b</code></a>
Bump <code>@types/node</code> from 20.11.10 to 20.12.7 (<a
href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/194 ">#194</a>)</li>
<li><a
href="https://github.com/hendrikmuhs/ccache-action/commit/ff9f6cc67d49b9acaa9e102f80d1ea8a0c86a6dd "><code>ff9f6cc</code></a>
update checksum</li>
<li><a
href="https://github.com/hendrikmuhs/ccache-action/commit/985163732c9a0ab6be742a4db87bb36d07d6ca9f "><code>9851637</code></a>
update code</li>
<li><a
href="https://github.com/hendrikmuhs/ccache-action/commit/40738ee8f3bcf20e438d29f613fb2ef1b5cff79d "><code>40738ee</code></a>
Update windows (<a
href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/180 ">#180</a>)</li>
<li><a
href="https://github.com/hendrikmuhs/ccache-action/commit/ba6e323cc10f37a14582696e025efe365df0b125 "><code>ba6e323</code></a>
Bump typescript from 5.4.3 to 5.4.5 (<a
href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/193 ">#193</a>)</li>
<li><a
href="https://github.com/hendrikmuhs/ccache-action/commit/550708f4f24caa1472defc821c356d0e72d45643 "><code>550708f</code></a>
fix: early exit process so node doesn't wait for hanging promises (<a
href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/182 ">#182</a>)</li>
<li><a
href="https://github.com/hendrikmuhs/ccache-action/commit/259dcb3149e7662420f6b796600eac9008bb2d4e "><code>259dcb3</code></a>
Bump typescript from 5.4.2 to 5.4.3 (<a
href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/191 ">#191</a>)</li>
<li><a
href="https://github.com/hendrikmuhs/ccache-action/commit/a16392ef06bb17357c33855e071f12873d87b163 "><code>a16392e</code></a>
update code</li>
<li><a
href="https://github.com/hendrikmuhs/ccache-action/commit/3818c2034d1b62be7cc5e8e097c7c3996d94a068 "><code>3818c20</code></a>
Bump typescript from 5.3.3 to 5.4.2 (<a
href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/190 ">#190</a>)</li>
<li><a
href="https://github.com/hendrikmuhs/ccache-action/commit/b647aa998265c7332fbcd30509be75d7ed682458 "><code>b647aa9</code></a>
Bump <code>@actions/cache</code> from 3.2.3 to 3.2.4 (<a
href="https://redirect.github.com/hendrikmuhs/ccache-action/issues/183 ">#183</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/hendrikmuhs/ccache-action/compare/v1.2.12...v1.2.13 ">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: Tyler Wilding <[email protected] >
2024-05-01 15:53:40 -04:00
Hat Kid
3ff3760621
jak3: add discord rpc and fix some decomp ( #3500 )
2024-05-01 13:49:26 +02:00
ManDude
5705359df9
[jak3] fix some flag names and a wcar crash ( #3498 )
2024-05-01 08:44:26 +01:00
Hat Kid
cbf75a96f7
custom levels: don't uppercase FR3 filename ( #3496 )
2024-04-30 22:51:36 +02:00
ManDude
8344ac6963
use only the real level name in the Loader ( #3495 )
...
This fixes issues with certain Jak 3 levels not rendering because there
is a mismatch between the DGO name, nickname and real level name (bsp
name).
FR3s use a different filename, so you can delete the ones you have after
this is merged.
This affects custom levels, but I don't have that toolchain set up so
someone else will have to test that.
2024-04-30 17:12:57 +01:00
OpenGOAL Bot and OpenGOALBot
a527afdc5a
CI: Periodic Controller Database Update ( #3491 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-04-29 19:21:43 -04:00
Matt Dallmeyer
0d4e3928eb
decomp3 title-obs, credits-h ( #3476 )
2024-04-29 20:23:31 +02:00
ManDude
e4c57d6ac9
more debug information when RPC buffers exhaust ( #3490 )
2024-04-29 16:37:04 +01:00
Tyler Wilding
a021c392ec
game: allow overriding the config directory location ( #3477 )
...
This is primarily driven for proper mod-support. Mods would like to
isolate their settings and saves (potentially) and that is currently
done by find-and-replacing code before building. Bad!
Additionally, this has the side-effect of allowing for portable
installations of the game so, win-win.
Testing in progress, i'll merge once it is ready.
2024-04-28 15:29:20 -04:00
Tyler Wilding
fee0a435fc
extractor: support extracting using a folder path ( #3422 )
...
Patching up the extractor while working on the launcher, fixes:
- makes it so you can compile successfully given a folder path
(currently assumes your project path contains `iso_data`)
- ignore `buildinfo.json` from validation code.
- fixes an edge-case that could recursively fill up your entire
hard-drive!
- allows overriding the decompilation configuration via flag
- adds a way to specify where the ISO should be extracted to
2024-04-28 15:02:29 -04:00
Hat Kid
e2e5289788
decomp3: font widescreen and shadow hacks, generic renderer, misc files ( #3483 )
...
- `pecker-ingame`
- `des-bbush-tasks`
- `des-burning-bush`
- `des-bush-part`
- `des-bush`
- `mh-centipede`
- `mh-centipede-part`
- `mh-wasp`
- `mh-wasp-part`
- `needle-fish`
- `des-bush-time-chase`
- `timer-path`
- `mission-squad-control-h`
- `mh-bat`
- `hover-nav-factoryd`
- `hover-nav-factoryc`
- `conveyor`
- `fac-part`
- `factory-part`
- `factoryc-mood`
- `factoryc-obs`
- `factoryc-obs2`
- `lfaccar-init`
- `factory-boss-part`
- `factory-boss-scenes`
- `factory-boss-setup`
- `factory-boss-states`
- `factory-mood`
- `factoryc-manager`
- `lfacrm1-mood`
- `lfacrm2-mood`
- `missile-bot`
- `sew-laser-turret`
- `ai-task-h`
- `ash-h`
- `ash-shot`
- `ash-states`
- `ash-task`
- `ash`
- `bot-h`
- `bot-states`
- `bot`
- `ash-oasis-course`
- `oasis-defense`
- `comb-field`
- `comb-mood`
- `comb-obs`
- `comb-part`
- `comb-scenes`
- `comb-sentry`
- `comb-travel`
- `comba-init`
- `combx-scenes`
- `h-sled`
- `destroy-dark-eco`
- `fac-gunturret`
- `fac-robotank-turret`
- `fac-robotank`
- `fac-tower`
- `factory-h`
- `factory-hud`
- `factory-manager`
- `factorya-init`
- `ffight-projectile`
- `ftank-projectile`
- `fturret-projectile`
- `h-warf`
- `warf-projectile`
2024-04-28 08:59:46 -04:00
ManDude
1a058b418a
jak3: hack level heap sizes ( #3487 )
2024-04-27 21:48:49 +01:00
Matt Dallmeyer
86d770aeeb
Fix "logical not is only applied to the left hand side of comparison" warnings ( #3484 )
2024-04-26 16:27:11 +01:00
ManDude
889fdcd79c
jak3: fix some collide decomp + fix projectiles aiming at intangible objects ( #3485 )
...
Say goodbye to half of the laser needle shots spinning around doing
nothing. This is toggleable with `fix-projectile-focus` in the pc
settings.
2024-04-26 16:22:26 +01:00
ManDude
667553850d
jak2/3: re-implement screenshot system through goal ( #3482 )
2024-04-25 01:46:18 +01:00
ManDude
d9d4cc5405
fix minimap icon misalign ( #3481 )
2024-04-23 18:20:31 +01:00
ManDude
728cb4b6c9
jak3 pc: math-camera, letterbox, led and auto-save ( #3479 )
2024-04-22 22:57:09 +01:00
Hat Kid
9d359ed84a
jak3: fix type ( #3478 )
2024-04-22 19:53:04 +02:00
Hat Kid
58a5440c8a
decomp3: more misc files ( #3466 )
...
Makes a bunch of missions mostly playable, including:
- `arena-training-1`
- `arena-fight-1`
- `wascity-chase`
- `arena-fight-2`
- `arena-fight-3`
- `volcano-darkeco`
- `desert-hover`
- `nest-eggs`
- `temple-climb`
- `temple-oracle`
- `temple-tests`
- `desert-beast-battle`
- `desert-turtle-training`
- `desert-course-race`
- `desert-artifact-race1`
- `wascity-leaper-race`
- `wascity-pre-game`
- `sewer-met-hum`
- `forest-kill-plants`
- `forest-ring-chase`
- `temple-defend`
- `tower-destroy`
- `desert-glide`
---
Files:
- `ripple`
- `waswide-mood`
- `sig-rider`
- `nst-tasks`
- `nst-part`
- `nst-gas`
- `nst-eggs-h`
- `nst-obs`
- `nst-mood`
- `egg-spider`
- `wasdoors-init`
- `wasall-tasks`
- `wvehicle-race`
- `wcar-marauder`
- `wcar-marauder-b`
- `turret-control`
- `was-squad-control`
- `turtle-training`
- `kleever-rider`
- `course-race`
- `artifact-race`
- `desert-hover`
- `desbeast-path-h`
- `des-beast`
- `desertg-obs`
- `desertf-obs`
- `desertd-obs`
- `desert-dust-storm`
- `des-cactus`
- `race-hud`
- `race-info`
- `race-manager`
- `tizard`
- `flyingsaw`
- `hover-training`
- `temple-mood`
- `temple-obs`
- `temple-obs2`
- `temple-part`
- `temple-scenes`
- `templex-mood`
- `templex-obs`
- `templex-part`
- `tomb-baby-spider`
- `target-turret-shot`
- `target-turret`
- `beast-battle-path`
- `des-beast-2`
- `mh-flyer`
- `scorpion-gun`
- `hover-enemy-h`
- `hover-enemy`
- `hover-formation-h`
- `hover-formation`
- `hover-nav-control-h`
- `hover-nav-control`
- `flamer-hover`
- `hover-nav-templea`
- `robo-hover`
- `hover-nav-sewb`
- `hover-nav-sewg`
- `hover-nav-sewj`
- `hover-nav-sewl`
- `hover-nav-sewo`
- `hover-nav-towera`
- `tower-mood`
- `tower-obs`
- `tower-scenes`
- `tower-part`
- `eco-green-collider`
- `forest-bridges`
- `forest-kill-plants`
- `forest-mood`
- `forest-ring-chase`
- `forest-tasks`
- `forest-part`
- `foresta-obs`
- `hover-nav-foresta`
- `mh-plant`
- `dp-bipedal-part`
- `dp-bipedal-shot`
- `dp-bipedal`
- `neo-spawner`
- `for-turret`
- `for-turret-shot`
- `neo-wasp`
- `neo-wasp-part`
- `volcanox-scenes`
- `volcanox-mood`
- `volcano-scenes`
- `volcano-mood`
- `volcano-obs`
- `volcano-obs2`
- `chain-physics`
- `rigid-body-plat`
- `volcano-part`
- `flamer-lava`
- `flitter`
- `spiky-frog`
- `flut-wild`
- `target-indax`
- `target-indax-hang`
- `mantis`
- `volcanox-obs`
- `spyder`
- `wcar-faccar`
- `mhcity-obs2`
- `mhcity-part`
- `mhcity-obs`
- `dm-mine-spider`
- `rapid-gunner`
- `stadium-mood`
- `stadium-scenes`
- `stadiuma-mood`
- `stadiuma-part`
- `kanga-lizard`
- `marauder`
- `arena-scenes`
- `wasstada-mood`
- `wasstada-obs`
- `wasstada-part`
- `wasstadb-obs`
- `wasstadc-obs`
- `dm-flyer`
- `maker-part`
- `maker-projectile`
- `skeet-part`
- `wascity-turret`
- `wasgun-h`
- `wasgun-hud`
- `wasgun-manager`
- `nav-graph-h`
- `traffic-engine-h`
- `waswide-init`
- `cty-borrow-manager-h`
- `cty-borrow-manager`
- `desert-part`
- `height-map-h`
- `height-map`
- `traffic-height-map`
- `vehicle-control`
- `hvehicle-h`
- `hvehicle`
- `hvehicle-effects`
- `hvehicle-physics`
- `hvehicle-util`
- `glider-h`
- `glider-hud`
- `glider-manager`
- `glider-ring`
- `glider-ring-part`
- `h-glider`
- `hanga-init`
- `was-pre-game`
- `was-leaper-race`
- `flut-racer`
- `desert-scenes`
- `desert-lizard-h`
- `desert-lizard-task`
- `desert-lizard`
- `throne-scenes`
- `waspal-mood`
- `waspala-obs`
- `waspala-part`
- `deswalk-obs`
- `deswalk-part`
- `terraformer-drone`
- `terraformer-head`
- `terraformer-part`
- `terraformer-setup`
2024-04-22 18:43:51 +02:00
OpenGOAL Bot and OpenGOALBot
6da5225afc
CI: Periodic Controller Database Update ( #3471 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-04-19 23:12:31 -04:00
ManDude
bcab625864
debugger: reverse the order the backtrace is printed ( #3474 )
2024-04-16 05:22:31 +01:00
ManDude
8e5830321c
[jak3] fix process stack overflow + collision renderer ( #3473 )
2024-04-16 04:26:01 +01:00
ManDude
e601a3dcb3
[jak3] implement pckernel ( #3472 )
...
Most debug features do not work, but that's fine.
2024-04-15 19:26:48 +01:00
ManDude
20b76e318d
[jak3] remove some stubs and fix health bar ( #3468 )
2024-04-15 16:24:29 +01:00
Matt Dallmeyer
ccd2c9eaf1
Fix bad speedrun Select pause behavior ( #3464 )
...
fixes this crap - happens if you use the Select variation of the
speedrun menu combo (hold L1+R1+X) during movies
https://github.com/open-goal/jak-project/assets/2515356/52ffe700-0662-42d5-aa7d-1d9d71bb94fb
With the changes in this PR, it now behaves as you'd expect - the same
as a normal Select pause
For reference, original changes adding the combo on Select -
https://github.com/open-goal/jak-project/pull/2196/files
2024-04-14 15:51:30 -04:00
OpenGOAL Bot and OpenGOALBot
d596afcf13
CI: Periodic Controller Database Update ( #3462 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-04-14 15:08:47 -04:00
water111
dd4f255260
[jak3] Minimap texture fix ( #3465 )
2024-04-13 09:47:23 -04:00
Hat Kid
36f1592b90
decomp3: lightning renderer, nav code, texture remap, fix progress menu crash ( #3461 )
...
Also adds:
- BLERC
- Minimap (with missing texture for the map, sprites work)
- Eco Mine files
- Precursor robot boss files
- Sewer files
- Vehicle files
2024-04-12 18:44:38 -04:00
water111
5299bc441f
[jak3] Fix defskelgroup ( #3460 )
...
Fixes https://github.com/open-goal/jak-project/issues/3459
2024-04-07 13:07:30 -04:00
water111
1394c5c00d
fix typo ( #3458 )
2024-04-07 11:31:05 -04:00
water111
0124a0b9a1
[jak3] Support jaextern.str, stub for blue fog fix ( #3455 )
2024-04-07 11:09:56 -04:00
Hat Kid
ae0f139667
decomp3: eye renderer and more files ( #3457 )
...
- `eye`
- `collision-editor`
- `simple-nav-sphere`
- `mech-part`
- `mech-states`
- `mech`
- `target-mech`
- `target-tube`
- `flut-part`
- `flut`
- `target-flut`
2024-04-07 10:49:45 -04:00
water111
cc8801a27b
[goalc] speed up jak3 compilation ( #3454 )
...
I noticed that jak 3's compilation was spending a lot of time accessing
the `unordered_map`s we use to store constants and symbol types.
I repurposed the `EnvironmentMap` originally made for GOOS for this. It
turns out that we were copying the entire constant map whenever we
encountered a `deftype`, and fixed that too.
This speeds up jak3 compiles from ~16 to 11 seconds for me.
2024-04-06 16:01:17 -04:00
water111
376194a3e7
Jak 3, fixes for animation issues, rm debug print ( #3453 )
2024-04-06 15:09:02 -04:00
Hat Kid
23aeda1664
decomp3: add background data to pc renderers, get mood and time of day stuff running ( #3450 )
2024-04-06 14:27:36 -04:00
ZedB0T
c5357f7ccd
Add fall back condition ( #3452 )
2024-04-06 12:39:02 -04:00
Hat Kid and water
93afb02cf4
decomp3: spawn target, add merc and particle buckets and some temporary hacks ( #3445 )
...
This includes all the collision stuff needed to spawn `target`,
decompiles the sparticle code and adds some of the PC hacks needed for
merc to run (it doesn't work quite right and looks bad, likely due to a
combination of code copied from Jak 2 and the time of day hacks).
There are a bunch of temporary hacks (see commits) in place to prevent
the game from crashing quite as much, but it is still extremely prone to
doing so due to lots of missing functions/potentially bad decomp.
---------
Co-authored-by: water <[email protected] >
2024-04-05 00:07:39 -04:00
Tyler Wilding
a7efd59919
goalc: add some nullptr checks around symbol map lookups ( #3447 )
2024-04-03 19:45:44 -04:00
dependabot[bot]
6ea8dfb032
build(deps): bump mathieudutour/github-tag-action from 6.1 to 6.2 ( #3442 )
...
Bumps
[mathieudutour/github-tag-action](https://github.com/mathieudutour/github-tag-action )
from 6.1 to 6.2.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/mathieudutour/github-tag-action/commit/a22cf08638b34d5badda920f9daf6e72c477b07b "><code>a22cf08</code></a>
check in prod dependencies</li>
<li><a
href="https://github.com/mathieudutour/github-tag-action/commit/f36074fe49d589315ac97253c23ce83ccbd6fbb9 "><code>f36074f</code></a>
version 6.2</li>
<li><a
href="https://github.com/mathieudutour/github-tag-action/commit/f40d7eefd8aa8e0422116f3fb945bbd96dfb7691 "><code>f40d7ee</code></a>
match latest tag regex (<a
href="https://redirect.github.com/mathieudutour/github-tag-action/issues/171 ">#171</a>)</li>
<li><a
href="https://github.com/mathieudutour/github-tag-action/commit/1bf7977a3da165de50510f793132286574222465 "><code>1bf7977</code></a>
fix: add previous_version to action.yml (<a
href="https://redirect.github.com/mathieudutour/github-tag-action/issues/183 ">#183</a>)</li>
<li><a
href="https://github.com/mathieudutour/github-tag-action/commit/5a16d1443262c7f1a1addb0de22dea8a784acdbe "><code>5a16d14</code></a>
Bump tough-cookie from 4.0.0 to 4.1.3 (<a
href="https://redirect.github.com/mathieudutour/github-tag-action/issues/184 ">#184</a>)</li>
<li><a
href="https://github.com/mathieudutour/github-tag-action/commit/71c368965901c31849458bb74c4ffa22b48172c7 "><code>71c3689</code></a>
Update README.md (<a
href="https://redirect.github.com/mathieudutour/github-tag-action/issues/205 ">#205</a>)</li>
<li><a
href="https://github.com/mathieudutour/github-tag-action/commit/a079ba461db5f184f53dcd8d6031a82478b788f5 "><code>a079ba4</code></a>
Update Node version to 20 (<a
href="https://redirect.github.com/mathieudutour/github-tag-action/issues/202 ">#202</a>)</li>
<li><a
href="https://github.com/mathieudutour/github-tag-action/commit/86301c823dac64d427711dd6b99d7ffdd894d2dd "><code>86301c8</code></a>
Revert "Use <code>${{github.token}}</code> as default" (<a
href="https://redirect.github.com/mathieudutour/github-tag-action/issues/167 ">#167</a>)</li>
<li><a
href="https://github.com/mathieudutour/github-tag-action/commit/5bd9038fd1cc379dfe97904dda3a4b5b3af5d606 "><code>5bd9038</code></a>
Bump minimatch from 3.0.4 to 3.1.2 (<a
href="https://redirect.github.com/mathieudutour/github-tag-action/issues/162 ">#162</a>)</li>
<li><a
href="https://github.com/mathieudutour/github-tag-action/commit/ac8cb388384294d1215aed7911d7b7e57b3d0f0a "><code>ac8cb38</code></a>
getValidTags() should exclude tags that do not match the prefixRegex (<a
href="https://redirect.github.com/mathieudutour/github-tag-action/issues/158 ">#158</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/mathieudutour/github-tag-action/compare/v6.1...v6.2 ">compare
view</a></li>
</ul>
</details>
<br />
[](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>
2024-04-03 17:25:16 -04:00
Hat Kid
1f1498f2ad
decompiler: allow overriding dgo inputs ( #3446 )
2024-04-03 18:55:51 +02:00
OpenGOAL Bot and OpenGOALBot
55f18dd3d1
CI: Periodic Controller Database Update ( #3444 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-04-02 01:03:15 -04:00
Tyler Wilding
0a15ac1669
goalc: Fix new symbol trie's performance inefficiencies ( #3443 )
...
I believe this brings things back in line to where it was before:
Here are the first handful of files before the changes:
```
0.014 | gcommon.gc
0.006 | gkernel-h.gc
0.025 | gkernel.gc
0.002 | pskernel.gc
0.01 | gstring.gc
0.004 | gstate.gc
0.001 | kernel.gd
0.001 | types-h.gc
0.002 | vu1-macros.gc
0.003 | math.gc
0.01 | vector-h.gc
0.001 | gravity-h.gc
0.001 | bounding-box-h.gc
0.001 | matrix-h.gc
0.001 | quaternion-h.gc
0.001 | euler-h.gc
```
> first compile
```
0.161 | gcommon.gc
0.126 | gkernel-h.gc
0.174 | gkernel.gc
0.046 | pskernel.gc
0.08 | gstring.gc
0.048 | gstate.gc
0.001 | kernel.gd
0.052 | types-h.gc
0.009 | vu1-macros.gc
0.059 | math.gc
0.228 | vector-h.gc
0.026 | gravity-h.gc
0.006 | bounding-box-h.gc
0.002 | matrix-h.gc
0.028 | quaternion-h.gc
0.026 | euler-h.gc
```
> make a change in gcommon and recompile
With the changes:
```
0.015 | gcommon.gc
0.018 | gkernel-h.gc
0.039 | gkernel.gc
0.006 | pskernel.gc
0.015 | gstring.gc
0.009 | gstate.gc
0.005 | kernel.gd
0.006 | types-h.gc
0.006 | vu1-macros.gc
0.008 | math.gc
0.017 | vector-h.gc
0.004 | gravity-h.gc
0.004 | bounding-box-h.gc
0.005 | matrix-h.gc
0.005 | quaternion-h.gc
0.003 | euler-h.gc
```
> First compile, no difference expected
```
0.016 | gcommon.gc
0.008 | gkernel-h.gc
0.023 | gkernel.gc
0.002 | pskernel.gc
0.01 | gstring.gc
0.043 | gstate.gc
0.001 | kernel.gd
0.002 | types-h.gc
0.002 | vu1-macros.gc
0.003 | math.gc
0.013 | vector-h.gc
0.001 | gravity-h.gc
0.002 | bounding-box-h.gc
0.002 | matrix-h.gc
0.001 | quaternion-h.gc
0.001 | euler-h.gc
```
> Compile times seem to be back within margin of error -- some are
faster than the first compilation time.
2024-04-01 18:56:55 -04:00
Hat Kid
c96e44ab30
decomp3: support for virtual states inheriting from their own type's virtual states, gun-yellow-shot, gun-red-shot, gun-dark-shot ( #3438 )
2024-03-31 11:14:14 -04:00
Tyler Wilding
afea4f7694
g/j1: remove the redundant graphics menu ( #3421 )
...
This was hiding options for people that only had 60hz monitors since the
two menus drifted -- it is not necessary for an entire separate menu,
just disable the option if applicable.
Don't merge this without testing it throughly
2024-03-30 20:00:53 -04:00
Tyler Wilding and Hat Kid
53277a65ad
LSP: A bunch of new OpenGOAL language features ( #3437 )
...
- Integrate the AST into the LSP, this makes parsing and tokenizing the
files much easier
- Consolidate most of the symbol info tracking in `goalc` to a single
map. Fixed some issues where the old map would never evict symbols when
re-compiling files. There is still some more to cleanup, but this now
can be used as an incrementally updated source-of-truth for the LSP
- re-compile files when they are saved. Ideally this would be done
everytime they are changed but that:
- may be too aggressive
- goalc doesn't compile incrementally yet so it likely would be a worse
UX
Features added, see
https://github.com/open-goal/opengoal-vscode/issues/256
- Hover


- LSP Status fixed
- Type Hierarchy

- Document Color

- Document Symbols

- Completions

---------
Co-authored-by: Hat Kid <[email protected] >
2024-03-30 19:49:07 -04:00
Hat Kid
dacb704ef6
decomp3: more engine stuff, fix ja macro detection for jak 2/3, unmerged let matcher, part-tracker-spawn macro ( #3436 )
...
- `aligner`
- `effect-control`
- `pov-camera`
- `powerups`
- `los-control-h`
- `airlock`
- `water-anim`
- `blocking-plane`
- `proc-focusable-spawner`
- `idle-control`
- `enemy-h`
- `nav-enemy-h`
- `enemy`
- `enemy-states`
- `particle-curves`
- `base-plat`
- `plat`
- `bouncer`
- `elevator`
- `rigid-body`
- `rigid-body-queue`
- `process-taskable`
- `scene-actor`
- `warp-gate`
- `guard-projectile`
- `metalhead-projectile`
- `los-control`
- `joint-exploder`
- `ragdoll-test`
- `debris`
- `shield-sphere`
- `text`
- `target-launch`
2024-03-30 10:28:02 -04:00
water111
ee015e3b22
[jak3] A bunch of small fixes to get game.cgo to load ( #3435 )
...
The `test-play` macro is back, though it doesn't call `play` yet. We can
at least load all of `game.cgo`, which involves loading a lot of the
code we've decompiled, loading/linking objects files compiled by
OpenGOAL (like dir-tpages), and loading/linking Jak's art-groups (for
jak 3 they are stored v5 format that I added to the linker).
There were no major issues - just a few forgotten mips2c entries and
minor bugs/functions that needed stubs. Most of the work was updating
the linker. Hopefully I'll never have to touch that code again - I think
it supports everything we need for jak 3!
2024-03-24 16:30:28 -04:00
water111
9b4b54978a
decomp drawable, main ( #3434 )
2024-03-24 12:27:04 -04:00
water111
ffe01a352d
Decompile level ( #3433 )
2024-03-23 13:03:01 -04:00
Hat Kid
99866cec88
decomp3: more engine files, get-texture macro, use print method in autogenerated inspect, fix bitfield float print ( #3432 )
...
- `fma-sphere`
- `prim-beam-h`
- `cam-start`
- `ragdoll`
- `light-trails-h`
- `light-trails`
- `menu`
- `water`
- `water-flow`
- `hud`
- `hud-classes`
- `progress`
- `progress-draw`
---
The `get-texture` macro replaces calls to `lookup-texture-by-id` and
`lookup-texture-by-id-fast`. The `defpart` macro detection was modified
to print a pair like `(texture-name tpage-name)` for the texture field
that gets turned into a `texture-id` constant. Only used in Jak 3 at the
moment, I'll probably go through the other games at a later point.
2024-03-23 09:25:11 -04:00
OpenGOAL Bot and OpenGOALBot
9a9f203d8b
CI: Periodic Controller Database Update ( #3430 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-03-23 09:10:55 -04:00
water111
ea4820356c
Decompile tfrag, tie, prim ( #3429 )
...
These still need to be ported to PC.
2024-03-17 13:32:05 -04:00
water111
f7bfc8cab1
Decompile font, decomp, background, shrubbery ( #3428 )
2024-03-16 20:25:30 -04:00
water111
13def9a8b2
Decompile foreground and bones ( #3427 )
...
Small fix to decompiler when the original compiler uses `ra` register.
This seems to happen in "normal" code very rarely - perhaps they
manually specified this in an `rlet`.
Start figuring out buckets/textures for Jak 3.
The foreground code is not yet modified for PC - I want to wait until
the game is running, since it is too hard to do it now.
2024-03-16 14:50:41 -04:00
Brent Hickey
df2f3da321
[goal] Add labels, break, and continue to loops ( #3426 )
...
Uses (block) and (return-from) to support (break) and (continue) with
labeling
Supports `(while) (until) (dotimes) (countdown) (loop) (doarray)`
Test cases:
``` lisp
(dotimes (i 5)
(when (= i 2)
(break)
)
(format #t "i: ~D~%" i)
)
;; Output:
;; i: 0
;; i: 1
(dotimes (i 5)
(when (= i 2)
(continue)
)
(format #t "i: ~D~%" i)
)
;; Output:
;; i: 0
;; i: 1
;; i: 3
;; i: 4
(dotimes (i 3)
(when (= i 2)
(continue)
)
(format #t "outer: ~D~%" i)
(dotimes (i 3)
(when (= i 0)
(continue)
)
(format #t "inner: ~D~%" i)
)
)
;; Output:
;; outer: 0
;; inner: 1
;; inner: 2
;; outer: 1
;; inner: 1
;; inner: 2
(dotimes (i 5) :label outer
(when (= i 2)
(continue :from outer)
)
(format #t "outer: ~D~%" i)
(dotimes (i 3)
(when (= i 1)
(continue :from outer)
)
(format #t "inner: ~D~%" i)
)
)
;; Output:
;; outer: 0
;; inner: 0
;; outer: 1
;; inner: 0
;; outer: 3
;; inner: 0
;; outer: 4
;; inner: 0
(dotimes (i 5) :label outer
(when (= i 2)
(continue :from outer)
)
(format #t "outer: ~D~%" i)
(dotimes (i 3)
(when (= i 0)
(break :from outer)
)
(format #t "inner: ~D~%" i)
)
)
;; Output:
;; outer: 0
(dotimes (i 5) :label outer
(when (= i 2)
(continue :from outer)
)
(format #t "outer2: ~D~%" i)
(dotimes (i 3)
(when (= i 1)
(break)
)
(format #t "inner2: ~D~%" i)
)
)
;; Output:
;; outer2: 0
;; inner2: 0
;; outer2: 1
;; inner2: 0
;; outer2: 3
;; inner2: 0
;; outer2: 4
;; inner2: 0
(countdown (i 5)
(when (= i 2)
(continue)
)
(format #t "i: ~D~%" i)
)
;; Output:
;; i: 4
;; i: 3
;; i: 1
;; i: 0
(let ((i 0))
(while (< i 5)
(when (= i 1)
(break)
)
(format #t "i: ~D~%" i)
(1+! i)
)
)
;; Output:
;; i: 0
(let ((i 0))
(until (> i 5) :label outer
(loop
(break :from outer)
)
(format #t "i: ~D~%" i)
(1+! i)
)
)
;; Output:
;; nothing
(define *array* (new 'global 'boxed-array uint32 3))
(doarray (i *array*)
(break)
(format #t "doarray")
)
;; Output:
;; nothing
(doarray (i *array*) :label arrayloop
(dotimes (i 5)
(when (= i 2)
(continue :from arrayloop)
)
(format #t "i: ~D~%" i)
)
(format #t "doarray~%")
)
;; Output:
;; i: 0
;; i: 1
;; i: 0
;; i: 1
;; i: 0
;; i: 1
```
2024-03-16 14:47:36 -04:00
water111
82fb2cc26a
Port bones.gc math to GOAL ( #3425 )
...
Reverse engineer the skinning matrix calculation and port to GOAL. This
is about 3x faster than the MIPS2c version.
As usual, there is a `*use-new-bones*` flag to go back to the old
version.
Fix for a bug in the compiler's `.div.vf` implementation (only happens
if src/dst are the same), and fix for a typo in the register allocator
that would sometimes cause it not to consider xmm8-xmm15.
2024-03-15 20:31:11 -04:00
Hat Kid
5a8b4e81f9
decomp3: more engine stuff, support boxed stack arrays in compiler ( #3424 )
...
- `sync-info`
- `trajectory`
- `camera`
- `cam-update`
- `cam-states`
- `cam-states-dbg`
- `cam-master`
- `cam-layout`
- `cam-interface`
- `cam-combiner`
Closes #2016
2024-03-15 20:28:26 -04:00
OpenGOAL Bot and OpenGOALBot
f30b6927b7
CI: Periodic Controller Database Update ( #3423 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-03-11 23:39:01 -04:00
water111
fae20a19fc
[jak3] Decompile sprite and debug files ( #3420 )
2024-03-10 21:11:41 -04:00
Tyler Wilding
937af7984f
g/j2: workaround intermittent lifeseed DMA crash ( #3418 )
...
This is not a fix, but it temporarily works around the potential crash
discussed here https://github.com/open-goal/jak-project/issues/2988
As long as this doesn't impact other things, this feels like a good
interim fix, as having a broken cutscene is better than a fatal crash
and it might be some time before this is properly identified and fixed.
2024-03-09 19:31:00 -05:00
Tyler Wilding
d9d09a8bc2
g/j2: Update some vehicle related naming ( #3419 )
...
While looking into https://github.com/open-goal/jak-project/issues/3289
I renamed a few things
2024-03-09 19:30:44 -05:00
Tyler Wilding
4ca84f9a97
d/j3: ensure type-tests pass ( #3414 )
...
Make this test run in CI as the game is not done yet, CI in master is
failing because something was missed (forward declaration)
2024-03-09 14:45:57 -05:00
Tyler Wilding
62fa9d80e1
Fix minor issues related to the speedrunner mode menu, also stop saving the pc-settings every frame when sr mode is on ( #3413 )
...
Fixes #3209
2024-03-09 14:45:49 -05:00
water111
390a511055
[jak3] Decompile sprite ( #3412 )
...
Decompile `sprite.gc`. Also update the DMA macro for a small change in
Jak 3: a check to see if nothing was added to the bucket.
2024-03-09 12:14:12 -05:00
Tyler Wilding
0626862a8c
Fix issues with camera movement with controller when mouse tracking is also enabled ( #3409 )
...
Fixes #3408
2024-03-07 23:35:38 -05:00
Tyler Wilding
a80f4e7cca
ci: move to macos-12 ( #3407 )
...
macos-11 is end of life, it has been for 5 months
https://endoflife.date/macos , it will be removed as a runner on github
in Q2 2024. Next release will require atleast macOS 12.

2024-03-06 23:40:00 -05:00
Tyler Wilding
5b9106302d
ci: move to sccache ( #3404 )
...
The original buildcache action has been archived, and buildcache itself
has also moved to github.
I forked the action and was updating it to work, but then the latest
buildcache release once again breaks support for older runners (in our
case, macos-12 is the lowest, which is acceptable as 11 is EOL).
Either way, switching to sccache is not only a way cleaner solution but
it is also well maintained (and works!)
2024-03-06 22:21:36 -05:00
Tyler Wilding
ecd6091d7f
deps: SDL update to 2.30.0 ( #3384 )
...
In the hopes that some things have been fixed in the last year
(GAME_CONTROLLER init time, etc)
Make sure this does not regress #2691
2024-03-05 22:12:13 -05:00
Tyler Wilding
60db0e5ef9
deps: update fmt to latest version ( #3403 )
...
This updates `fmt` to the latest version and moves to just being a copy
of their repo to make updating easier (no editing their cmake / figuring
out which files to minimally include).
The motivation for this is now that we switched to C++ 20, there were a
ton of deprecated function usages that is going away in future compiler
versions. This gets rid of all those warnings.
2024-03-05 22:11:52 -05:00
OpenGOAL Bot and OpenGOALBot
b819f852b6
CI: Periodic Controller Database Update ( #3397 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-03-04 20:06:14 -08:00
ManDude
7b926b5283
jak2 pckernel: save pc-settings on cheat progress and regular auto-saves ( #3396 )
...
Fixes #3392
2024-03-04 02:10:03 +00:00
Tyler Wilding
258fd75cd6
decomp: update naming across jak2/3 ( #3395 )
2024-03-03 20:49:40 -05:00
water111
9f55e41146
[joint] fix missing matrix interpolation ( #3394 )
...
I was missing one of the ways that the joint animation was interpolated.
In particular - the `matrix` that defines the root position of the
object.
2024-03-03 15:15:37 -05:00
Hat Kid
2969833b2d
decomp3: more engine stuff, detect non-virtual state inheritance ( #3377 )
...
- `speech`
- `ambient`
- `water-h`
- `vol-h`
- `generic-obs`
- `carry-h`
- `pilot-h`
- `board-h`
- `gun-h`
- `flut-h`
- `indax-h`
- `lightjak-h`
- `darkjak-h`
- `target-util`
- `history`
- `collide-reaction-target`
- `logic-target`
- `sidekick`
- `projectile`
- `voicebox`
- `ragdoll-edit`
- most of `ragdoll` (not added to gsrc yet)
- `curves`
- `find-nearest`
- `lightjak-wings`
- `target-handler`
- `target-anim`
- `target`
- `target2`
- `target-swim`
- `target-lightjak`
- `target-invisible`
- `target-death`
- `target-gun`
- `gun-util`
- `board-util`
- `target-board`
- `board-states`
- `mech-h`
- `vol`
- `vent`
- `viewer`
- `gem-pool`
- `collectables`
- `crates`
- `secrets-menu`
Additionally:
- Detection of non-virtual state inheritance
- Added a config file that allows overriding the process stack size set
by `stack-size-set!` calls
- Fix for integer multiplication with `r0`
- Fixed detection for the following macros:
- `static-attack-info`
- `defpart` and `defpartgroup` (probably still needs adjustments, uses
Jak 2 implementation at the moment)
- `sound-play` (Jak 3 seems to always call `sound-play-by-name` with a
`sound-group` of 0, so the macro has been temporarily defaulted to use
that)
One somewhat significant change made here that should be noted is that
the return type of `process::init-from-entity!` was changed to `object`.
I've been thinking about this for a while, since it looks a bit nicer
without the `(none)` at the end and I have recently encountered init
methods that early return `0`.
2024-03-03 15:15:27 -05:00
ZedB0T
6822e5cc71
Fix (-> *autosplit-info-jak1* training-num-orbs) when blacked out ( #3297 )
...
When loading a save, these values are temporarily 0, and it messes with
the autosplitter so we want to ignore them then.
2024-02-28 19:14:50 -05:00
Tyler Wilding
ccd47f8465
formatter: Format deftype correctly ( #3391 )
...
New configuration options to format column widths in deftype field
definitions. Also force each field/method/state to be inlined.
2024-02-27 20:12:44 -05:00
OpenGOAL Bot and OpenGOALBot
8f1aba639c
CI: Periodic Controller Database Update ( #3389 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-02-26 13:32:08 -05:00
Tyler Wilding
5eeaffcde0
scripts: new linter script to detect goal_src files with trailing whitespace ( #3387 )
...
Removes trailing whitespace from goal_src files, eventually the
formatter will do this as well but it's not ready yet so this is a
decent interim solution.
A competent text editor will also do this / flag it for you.
2024-02-24 14:27:56 -05:00
Luminar Light and Tyler Wilding
0ae0938965
Only remove -vis from name if it is part of the name. ( #3257 )
...
During level extraction, the last 4 characters of the level name are
always removed, because it is assumed that '-vis' is there. But it isn't
always there. This is especially true in post-TPL games.
This causes multiple problems:
- There can be levels in the extraction that will miss their last 4
characters from their name, which is sad, and may make it harder to
identify them.
- If there are '-vis'-less levels whose names are identical apart from
the last 4 characters, the extractor will only get the last one (it
probably extracts all but overwrites everything but the last one). For
example 'ctyasha' and 'ctykora'.
This issue affects the glb extraction and the entities json extraction.
I personally think that just keeping the -vis in the name would be the
best solution, but I guess there was a reason why it was decided that it
should be removed from the name. So to adapt to this, my implementation
will still remove '-vis' from the name, but only if it is actually in
the name - otherwise it won't remove anything.
I hope my changes didn't break anything. Extraction seemed to run fine
after my changes, and I was able to see both ctyasha and ctykora json
files. And didn't see any '-vis', so it is still properly removed.
---------
Co-authored-by: Tyler Wilding <[email protected] >
2024-02-24 14:13:48 -05:00
Tyler Wilding and dallmeyer
db66ae4627
g/j2: Dynamic speedrun mode categories and implement a significant amount of a practice mode ( #3378 )
...
For example, `AppData/OpenGOAL/jak2/features/speedrun-categories.json`
is defined as such:
```json
[
{
"cheats": 0,
"completed_task": 0,
"continue_point_name": "",
"features": 0,
"forbidden_features": 992,
"name": "Gunless",
"secrets": 0
},
{
"cheats": 1,
"completed_task": 29,
"continue_point_name": "ctypal-shaft",
"features": 1024,
"forbidden_features": 0,
"name": "Turbo Jetboard - After Praxis 1",
"secrets": 0
}
]
```
> These entries can be created using the in-game menu as well.
https://github.com/open-goal/jak-project/assets/13153231/9b17a116-4aa9-40ad-b9f5-02b04e0ad4f3
---------
Co-authored-by: dallmeyer <[email protected] >
2024-02-23 19:04:44 -05:00
Brent Hickey and Tyler Wilding
685ff2cf1c
[high fps] Increase input buffer size and fix cloud scroll speed ( #3178 )
...
The game stores the last 3 frames of input (50ms of time at 60fps) and
often checks if a button was pressed within those 3 saved frames as a
condition.
When transitioning states, it often checks if some input was received
during the previous state (within those 3 frames) in order to quickly
transition out. A good example of this is when transitioning to
standing, it checks if you can jump this frame and if you had pressed X
recently, and if so, transition immediately to jump. This allows
transitions between states to feel more smooth/forgiving by letting you
jump at a later time when you are transitioning from falling->standing
than if you were only falling.
At 165fps the last 3 frames is only 18ms of time so the input windows
for these smooth transitions are almost 3x shorter.
This PR saves 15 input frames (enough to cover 50ms of time at 300fps)
for each controller and adds a (recently-pressed?) macro that checks all
15 frames. However, it only updates the necessary frames in history
based on the current frame rate. This way, 60fps continues to only check
against 3 input frames, 165fps checks against 9, 240fps checks against
12, and 300fps checks all 15.
---------
Co-authored-by: Tyler Wilding <[email protected] >
2024-02-23 18:58:45 -05:00
Tyler Wilding
d1a6c60eb8
game: disable keyboard input by default, give users a way to enable it via the imgui menu ( #3295 )
...
It was narrowed down recently that a lot of people have issues with the
controller input because of Steam Input working as intended. Steam Input
can be configured to replicate controller inputs as keyboard inputs (for
example, pressing X on your controller presses Enter on the keyboard).
This results in the problem of "jumping pauses the game" and similar
issues. This is a consequence of the intended behaviour of the game
listening to all input sources at the same time.
Since the vast majority of players are using controllers over keyboards,
it makes sense to disable the keyboard input by default to solve this
problem. However that makes things awkward for users that want to use
the keyboard (how do they enable the setting). The solution is a new
imgui option in the settings menu:

**Known issue that I don't care about** -- in Jak 1's menu code, since
the flags are controlled by pointers to values instead of a lambda like
in jak 2, the menu won't update live with the imgui option. This has no
functional impact and I don't care enough to fix it.
I also made the pc-settings.gc file persist on first load if the file
wasn't found. Hopefully this helps diagnose the support issues related
to the black screen.
# Why not just ignore the keyboard inputs for a period of time?
This won't work, the keyboard is polled every frame. Therefore if you
hold down the X button on your controller, steam is continuously
signaling that `Enter` is held down on the keyboard.
Yes it would be possible to completely disable the keyboard while the
controller is being used, but this defeats the purpose of creating an
input system that allows multiple input sources at the same time.
With an explicit option, not only can the user decide the behaviour they
want (do they want the keyboard ignored or simultaneously listened to)
but we avoid breaking strange edge-cases in usage leading to never
ending complexity:
- ie. imagine steam input sends events to the mouse, well you can't
disable the mouse while using the keyboard because most times people are
using mouse and keyboard
- ie. a user that wants to hold a direction with the keyboard and press
buttons on the controller in tandem (something i frequently do while
TAS'ing, to move in a perfect straight line)
2024-02-23 18:19:07 -05:00
Matt Dallmeyer
d5f92efcda
Rename bigmap-id enum entries ( #3380 )
...
also fixed some docstrings that were swapped
2024-02-23 14:46:57 -05:00
Tyler Wilding
7c223b1873
g/j2: allow customizing the speedrunner menu bind ( #3386 )
...
The bind carried forward from Jak 1 is annoying -- R1 shoots the gun.
Allow the user to use whatever button combination they want by modifying
it in the `pc-settings` file.
```clj
(controller-led-status? 1360729)
(speedrunner-mode-custom-bind 4098)
```
2024-02-23 14:45:25 -05:00
Tyler Wilding
7ae1b4bf1c
g/j2: properly wireup mouse settings, properly detect when the mouse has stopped moving ( #3383 )
...
- Wired up the menu settings to change the settings in game, not just on
boot
- Removed all the duplication in the game options menu code
- Fixed the mouse code so that it properly brings the virtual analog
stick back to neutral when the mouse stops
- Extended the sensitivity min/max for those that want to ensure the
slightest movement maxes out virtual analog stick.
2024-02-23 14:44:40 -05:00
Tyler Wilding
1cc20508e9
tracing: add some more startup related events and a new --profile-until-event flag ( #3385 )
...
While trying to narrow down why sometimes SDL takes 20-40seconds to
initialize I built up some more profiling features.
TLDR - I still don't know why SDL is taking a long time but I've
narrowed it down to it initializing the `GAME_CONTROLLER` subsystem.
This isn't unprecedented, I found numerous github issues and articles
suggesting this is the problem:

I imagine it is hardware/OS related on some level, there are even some
recent commits in SDL that have made it worse on certain platforms. I've
had this problem myself so I will hope to get it again soon so i can
debug where in the SDL code the delay occurs and make a proper bug
report. Hopefully this helps but it's not yet confirmed -
https://github.com/open-goal/jak-project/pull/3384
2024-02-23 14:44:17 -05:00
Tyler Wilding
1af6503784
New Crowdin updates ( #3382 )
2024-02-19 23:17:29 -05:00
Tyler Wilding
ee2880b985
lsp: revert unnamed variable labelling ( #3381 )
...
This didn't really pan out as I hoped since files can have thousands of
these and there is a limit to how many diagnostics are shown (starting
from the top of the file). This also may have caused the recent
instability in the LSP, disabling this i wasn't able to reproduce an LSP
crash cycling through 50-100 files.
2024-02-19 21:17:20 -05:00
OpenGOAL Bot and OpenGOALBot
c4d3027d04
CI: Periodic Controller Database Update ( #3379 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-02-19 14:01:34 -05:00
Ziemas
4e569f0115
Switch to std::span ( #3376 )
...
Now that we have cpp20 we can ditch nonstd::span.
Depends on #3375
2024-02-18 13:23:19 -05:00
Ziemas
0011fb4b2b
Fix remaining cpp20 issues ( #3375 )
2024-02-17 20:16:46 -05:00
Ziemas and Tyler Wilding
4afefc5a82
Update to C++20 ( #3193 )
...
Just putting this here for consideration, I'm personally not in a big
rush to get it.
---------
Co-authored-by: Tyler Wilding <[email protected] >
2024-02-17 14:14:23 -05:00
OpenGOAL Bot and OpenGOALBot
269c19548b
CI: Periodic Controller Database Update ( #3368 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-02-17 13:30:09 -05:00
Hat Kid
406441038b
decomp3: game-info, game-task, game-save, level-info, process-drawable and more ( #3374 )
...
- `settings`
- `generic-vu1`
- `generic-vu0`
2024-02-15 11:16:07 +00:00
ManDude
c99f9a4834
decomp loader ( #3373 )
...
fixes `defskelgroup` being broken in jak 2
switches jak 3 to the jak 3 font (currently identical to jak 2)
2024-02-13 16:38:58 +00:00
water111
d8181fb169
[jak3] joint-mod, subdivide, bsp ( #3371 )
2024-02-11 13:53:29 -05:00
water111
79d14af0b5
Decompile joint, collide-func, clean up joint decompression code for all games ( #3369 )
...
I finally read through all the joint code and wrote up some
documentation. I think this will be really helpful when we try to
understand all the functions in `process-drawable`, or if somebody ever
wants to import/export animations.
This switches all three games to using a new faster GOAL joint
decompressor. It is on by default, but you can go back to the old
version by setting `*use-new-decompressor*` to false.
Also fix the log-related crash, fix the clock speed used in timer math.
2024-02-11 09:50:07 -05:00
Hat Kid
a4e629ebf9
decompiler: defskelgroup macro detection for jak 3, fix art group dumping for jak 3 and some more decomp work ( #3370 )
...
- `transformq`
- `wind-work`
- `progress-static`
- `merc-vu1`
- `emerc-vu1`
- `merc`
- `emerc`
- `cloth-h`
- Most of `cloth`, not added to gsrc yet
Art group dumps were incorrect for Jak 3 because the master art group
fields were at different offsets.
2024-02-11 09:32:06 -05:00
Tyler Wilding
18903f0561
decomp: Copy over new docstrings back to jak 2's common code, write some scripts to help automate this ( #3366 )
2024-02-04 13:53:06 -05:00
Tyler Wilding
314f488377
d/j3: do a few mood related files and fix some issues along the way ( #3365 )
2024-02-04 08:40:43 -05:00
water111
221360270a
[jak3] decomp gsound ( #3364 )
...
Decompile `gsound.gc`
2024-02-03 17:16:23 -05:00
water111
8b1c7759ea
[jak3] More headers, up to load-dgo ( #3363 )
...
path-h, sparticle-h, load-dgo, nav-control-h, nav-mesh-h, rigid-body-h,
actor-hash-h, spatial-hash-h
2024-02-03 15:03:10 -05:00
water111
af2fa6acbc
[jak3] More headers again again ( #3359 )
...
collide-cache-h, collide-h, projectile-h, background-h, subdivide-h,
hfrag-h, shrubbery-h, tfrag-h, tie-h
2024-02-03 12:15:51 -05:00
Hat Kid
9e8bee5b42
decomp3: more headers (again) ( #3362 )
...
- `entity-h`
- `eye-h`
- `simple-sprite-h`
- `sprite-h`
- `cam-debug-h`
- `cam-update-h`
- `cam-interface-h`
- `hud-h`
- `actor-link-h`
- `camera-h`
- `progress-h`
Also fills out a lot of the `text-id` enum. `progress-static` is also
very close to ready, only being blocked by #3361 .
2024-02-03 11:39:29 -05:00
Tyler Wilding
94585e7f87
game: fix intermittent sprite_distort related crash ( #3357 )
...
Apparently a long standing bug, with
https://github.com/open-goal/jak-project/pull/3194 making it more likely
to occur.
2024-02-02 17:51:21 -05:00
ManDude
bc32e635ee
seriously fix music player in title screen ( #3358 )
2024-02-02 12:24:57 +00:00
water111
b1b5cbb143
[jak3] More headers again ( #3352 )
...
joint-mod-h
collide-frag-h
projectile-h
stats-h
bsp-h
chain-physics-h
ragdoll-h
collide-hash-h
2024-02-01 18:46:54 -05:00
Hat Kid
7e5541d793
decomp3: more headers ( #3356 )
...
- `pov-camera-h`
- `sync-info-h`
- `trajectory-h`
- `collide-target-h` (`control-info` just padded out for now)
- `water-info-h`
- `process-drawable-h`
- `process-focusable`
- `focus`
- `effect-control-h`
- `process-taskable-h`
- `generic-obs-h`
- `target-h`
2024-02-01 17:58:10 -05:00
ManDude
d67b441dac
Change important printfs to lg::print ( #3355 )
...
This allows them to be logged into a file, useful for debugging.
With this, GOAL `format` and C-kernel `Msg` (and its variants) will be
logged.
2024-02-01 18:01:41 +00:00
dependabot[bot]
b331d16bcc
build(deps): bump peter-evans/create-pull-request from 5 to 6 ( #3353 )
...
Bumps
[peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request )
from 5 to 6.
<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 v6.0.0</h2>
<h2>Behaviour changes</h2>
<ul>
<li>The default values for <code>author</code> and
<code>committer</code> have changed. See "What's new" below
for details. If you are overriding the default values you will not be
affected by this change.</li>
<li>On completion, the action now removes the temporary git remote
configuration it adds when using <code>push-to-fork</code>. This should
not affect you unless you were using the temporary configuration for
some other purpose after the action completes.</li>
</ul>
<h2>What's new</h2>
<ul>
<li>Updated runtime to Node.js 20
<ul>
<li>The action now requires a minimum version of <a
href="https://github.com/actions/runner/releases/tag/v2.308.0 ">v2.308.0</a>
for the Actions runner. Update self-hosted runners to v2.308.0 or later
to ensure compatibility.</li>
</ul>
</li>
<li>The default value for <code>author</code> has been changed to
<code>${{ github.actor }} <${{ github.actor_id }}+${{ github.actor
}}@users.noreply.github.com></code>. The change adds the <code>${{
github.actor_id }}+</code> prefix to the email address to align with
GitHub's standard format for the author email address.</li>
<li>The default value for <code>committer</code> has been changed to
<code>github-actions[bot]
<41898282+github-actions[bot]@users.noreply.github.com></code>.
This is to align with the default GitHub Actions bot user account.</li>
<li>Adds input <code>git-token</code>, the <a
href="https://docs.github.com/en/github/authenticating-to-github/creating-a-personal-access-token ">Personal
Access Token (PAT)</a> that the action will use for git operations. This
input defaults to the value of <code>token</code>. Use this input if you
would like the action to use a different token for git operations than
the one used for the GitHub API.</li>
<li><code>push-to-fork</code> now supports pushing to sibling
repositories in the same network.</li>
<li>Previously, when using <code>push-to-fork</code>, the action did not
remove temporary git remote configuration it adds during execution. This
has been fixed and the configuration is now removed when the action
completes.</li>
<li>If the pull request body is truncated due to exceeding the maximum
length, the action will now suffix the body with the message
"...<em>[Pull request body truncated]</em>" to indicate that
the body has been truncated.</li>
<li>The action now uses <code>--unshallow</code> only when necessary,
rather than as a default argument of <code>git fetch</code>. This should
improve performance, particularly for large git repositories with
extensive commit history.</li>
<li>The action can now be executed on one GitHub server and create pull
requests on a <em>different</em> GitHub server. Server products include
GitHub hosted (github.com), GitHub Enterprise Server (GHES), and GitHub
Enterprise Cloud (GHEC). For example, the action can be executed on
GitHub hosted and create pull requests on a GHES or GHEC instance.</li>
</ul>
<h2>What's Changed</h2>
<ul>
<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/2086 ">peter-evans/create-pull-request#2086</a></li>
<li>fix crazy-max/ghaction-import-gp parameters by <a
href="https://github.com/fharper "><code>@fharper</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2177 ">peter-evans/create-pull-request#2177</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/2364 ">peter-evans/create-pull-request#2364</a></li>
<li>Use checkout v4 by <a
href="https://github.com/okuramasafumi "><code>@okuramasafumi</code></a>
in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2521 ">peter-evans/create-pull-request#2521</a></li>
<li>Note about <code>delete-branch</code> by <a
href="https://github.com/dezren39 "><code>@dezren39</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2631 ">peter-evans/create-pull-request#2631</a></li>
<li>98 dependency updates by <a
href="https://github.com/dependabot "><code>@dependabot</code></a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/fharper "><code>@fharper</code></a> made
their first contribution in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2177 ">peter-evans/create-pull-request#2177</a></li>
<li><a
href="https://github.com/okuramasafumi "><code>@okuramasafumi</code></a>
made their first contribution in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2521 ">peter-evans/create-pull-request#2521</a></li>
<li><a href="https://github.com/dezren39 "><code>@dezren39</code></a>
made their first contribution in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2631 ">peter-evans/create-pull-request#2631</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/peter-evans/create-pull-request/compare/v5.0.2...v6.0.0 ">https://github.com/peter-evans/create-pull-request/compare/v5.0.2...v6.0.0 </a></p>
<h2>Create Pull Request v5.0.2</h2>
<p>⚙️ Fixes an issue that occurs when using <code>push-to-fork</code>
and both base and head repositories are in the same org/user
account.</p>
<h2>What's Changed</h2>
<ul>
<li>fix: specify head repo 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/2044 ">peter-evans/create-pull-request#2044</a></li>
<li>20 dependency updates by <a
href="https://github.com/dependabot "><code>@dependabot</code></a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/peter-evans/create-pull-request/compare/v5.0.1...v5.0.2 ">https://github.com/peter-evans/create-pull-request/compare/v5.0.1...v5.0.2 </a></p>
<h2>Create Pull Request v5.0.1</h2>
<h2>What's Changed</h2>
<ul>
<li>fix: truncate body if exceeds max length 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/1915 ">peter-evans/create-pull-request#1915</a></li>
<li>12 dependency updates by <a
href="https://github.com/dependabot "><code>@dependabot</code></a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/peter-evans/create-pull-request/compare/v5.0.0...v5.0.1 ">https://github.com/peter-evans/create-pull-request/compare/v5.0.0...v5.0.1 </a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/b1ddad2c994a25fbc81a28b3ec0e368bb2021c50 "><code>b1ddad2</code></a>
feat: v6 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2717 ">#2717</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/bb809027fda03cc267431a7d36a88148eb9f3846 "><code>bb80902</code></a>
build(deps-dev): bump <code>@types/node</code> from 18.19.8 to 18.19.10
(<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2712 ">#2712</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/e0037d470cdeb1c8133acfba89af08639bb69eb3 "><code>e0037d4</code></a>
build(deps): bump peter-evans/create-or-update-comment from 3 to 4 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2702 ">#2702</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/94b1f99e3a73880074d0e669c3b69d376cc8ceae "><code>94b1f99</code></a>
build(deps): bump peter-evans/find-comment from 2 to 3 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2703 ">#2703</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/69c27eaf4a14a67b5362a51e681f83d3d5e0f96b "><code>69c27ea</code></a>
build(deps-dev): bump ts-jest from 29.1.1 to 29.1.2 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2685 ">#2685</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/7ea722a0f6286a45eb3005280d83575a74bc8fef "><code>7ea722a</code></a>
build(deps-dev): bump prettier from 3.2.2 to 3.2.4 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2684 ">#2684</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/5ee839affd4c87811108724370a2819a40e2e5d3 "><code>5ee839a</code></a>
build(deps-dev): bump <code>@types/node</code> from 18.19.7 to 18.19.8
(<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2683 ">#2683</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/60fc256c678e6ed78d0d42e09675c9beba09cb94 "><code>60fc256</code></a>
build(deps-dev): bump eslint-plugin-prettier from 5.1.2 to 5.1.3 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2660 ">#2660</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/0c677233614c017442253060c74fd2cb7ff349fc "><code>0c67723</code></a>
build(deps-dev): bump <code>@types/node</code> from 18.19.5 to 18.19.7
(<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2661 ">#2661</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/4e288e851b95bd1362e281a255094fcc47ada675 "><code>4e288e8</code></a>
build(deps-dev): bump prettier from 3.1.1 to 3.2.2 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2659 ">#2659</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/peter-evans/create-pull-request/compare/v5...v6 ">compare
view</a></li>
</ul>
</details>
<br />
[](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>
2024-01-31 23:19:52 -05:00
dependabot[bot]
c909eef8ea
build(deps): bump peter-evans/repository-dispatch from 2 to 3 ( #3354 )
...
Bumps
[peter-evans/repository-dispatch](https://github.com/peter-evans/repository-dispatch )
from 2 to 3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/peter-evans/repository-dispatch/releases ">peter-evans/repository-dispatch's
releases</a>.</em></p>
<blockquote>
<h2>Repository Dispatch v3.0.0</h2>
<p>⚙️ Updated runtime to Node.js 20</p>
<ul>
<li>The action now requires a minimum version of <a
href="https://github.com/actions/runner/releases/tag/v2.308.0 ">v2.308.0</a>
for the Actions runner. Update self-hosted runners to v2.308.0 or later
to ensure compatibility.</li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>Bump prettier to fix deps by <a
href="https://github.com/peter-evans "><code>@peter-evans</code></a> in
<a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/255 ">peter-evans/repository-dispatch#255</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.17.12 to
18.17.14 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/257 ">peter-evans/repository-dispatch#257</a></li>
<li>build(deps-dev): bump <code>@vercel/ncc</code> from 0.36.1 to
0.38.0 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/258 ">peter-evans/repository-dispatch#258</a></li>
<li>build(deps): bump actions/checkout from 3 to 4 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/259 ">peter-evans/repository-dispatch#259</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.17.14 to
18.17.16 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/261 ">peter-evans/repository-dispatch#261</a></li>
<li>build(deps): bump <code>@actions/core</code> from 1.10.0 to 1.10.1
by <a href="https://github.com/dependabot "><code>@dependabot</code></a>
in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/262 ">peter-evans/repository-dispatch#262</a></li>
<li>build(deps-dev): bump jest-circus from 29.6.4 to 29.7.0 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/263 ">peter-evans/repository-dispatch#263</a></li>
<li>build(deps-dev): bump eslint from 8.48.0 to 8.49.0 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/264 ">peter-evans/repository-dispatch#264</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/repository-dispatch/pull/265 ">peter-evans/repository-dispatch#265</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.17.16 to
18.17.18 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/266 ">peter-evans/repository-dispatch#266</a></li>
<li>build(deps-dev): bump eslint-plugin-github from 4.10.0 to 4.10.1 by
<a href="https://github.com/dependabot "><code>@dependabot</code></a> in
<a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/267 ">peter-evans/repository-dispatch#267</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.17.18 to
18.18.0 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/268 ">peter-evans/repository-dispatch#268</a></li>
<li>build(deps-dev): bump eslint from 8.49.0 to 8.50.0 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/269 ">peter-evans/repository-dispatch#269</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.18.0 to
18.18.3 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/271 ">peter-evans/repository-dispatch#271</a></li>
<li>build(deps-dev): bump eslint-plugin-prettier from 5.0.0 to 5.0.1 by
<a href="https://github.com/dependabot "><code>@dependabot</code></a> in
<a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/275 ">peter-evans/repository-dispatch#275</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.18.3 to
18.18.5 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/274 ">peter-evans/repository-dispatch#274</a></li>
<li>build(deps-dev): bump eslint from 8.50.0 to 8.51.0 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/276 ">peter-evans/repository-dispatch#276</a></li>
<li>build(deps-dev): bump <code>@babel/traverse</code> from 7.16.3 to
7.23.2 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/278 ">peter-evans/repository-dispatch#278</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.18.5 to
18.18.6 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/279 ">peter-evans/repository-dispatch#279</a></li>
<li>build(deps-dev): bump <code>@vercel/ncc</code> from 0.38.0 to
0.38.1 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/280 ">peter-evans/repository-dispatch#280</a></li>
<li>build(deps-dev): bump eslint from 8.51.0 to 8.52.0 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/281 ">peter-evans/repository-dispatch#281</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.18.6 to
18.18.7 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/282 ">peter-evans/repository-dispatch#282</a></li>
<li>build(deps): bump actions/setup-node from 3 to 4 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/283 ">peter-evans/repository-dispatch#283</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.18.7 to
18.18.8 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/284 ">peter-evans/repository-dispatch#284</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.18.8 to
18.18.9 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/285 ">peter-evans/repository-dispatch#285</a></li>
<li>build(deps-dev): bump eslint from 8.52.0 to 8.53.0 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/286 ">peter-evans/repository-dispatch#286</a></li>
<li>build(deps-dev): bump prettier from 3.0.3 to 3.1.0 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/287 ">peter-evans/repository-dispatch#287</a></li>
<li>build(deps-dev): bump eslint from 8.53.0 to 8.54.0 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/289 ">peter-evans/repository-dispatch#289</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.18.9 to
18.18.13 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/290 ">peter-evans/repository-dispatch#290</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.18.13 to
18.19.0 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/291 ">peter-evans/repository-dispatch#291</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.19.0 to
18.19.3 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/292 ">peter-evans/repository-dispatch#292</a></li>
<li>build(deps-dev): bump eslint from 8.54.0 to 8.55.0 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/293 ">peter-evans/repository-dispatch#293</a></li>
<li>build(deps-dev): bump prettier from 3.1.0 to 3.1.1 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/296 ">peter-evans/repository-dispatch#296</a></li>
<li>build(deps): bump actions/upload-artifact from 3 to 4 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/295 ">peter-evans/repository-dispatch#295</a></li>
<li>build(deps-dev): bump eslint from 8.55.0 to 8.56.0 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/297 ">peter-evans/repository-dispatch#297</a></li>
<li>build(deps-dev): bump eslint-plugin-prettier from 5.0.1 to 5.1.1 by
<a href="https://github.com/dependabot "><code>@dependabot</code></a> in
<a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/298 ">peter-evans/repository-dispatch#298</a></li>
<li>build(deps-dev): bump eslint-plugin-prettier from 5.1.1 to 5.1.2 by
<a href="https://github.com/dependabot "><code>@dependabot</code></a> in
<a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/299 ">peter-evans/repository-dispatch#299</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.19.3 to
18.19.4 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/300 ">peter-evans/repository-dispatch#300</a></li>
<li>build(deps-dev): bump eslint-plugin-prettier from 5.1.2 to 5.1.3 by
<a href="https://github.com/dependabot "><code>@dependabot</code></a> in
<a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/301 ">peter-evans/repository-dispatch#301</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.19.4 to
18.19.6 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/302 ">peter-evans/repository-dispatch#302</a></li>
<li>build(deps-dev): bump prettier from 3.1.1 to 3.2.4 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/303 ">peter-evans/repository-dispatch#303</a></li>
<li>build(deps-dev): bump <code>@types/node</code> from 18.19.6 to
18.19.8 by <a
href="https://github.com/dependabot "><code>@dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/304 ">peter-evans/repository-dispatch#304</a></li>
<li>feat: update runtime to node 20 by <a
href="https://github.com/peter-evans "><code>@peter-evans</code></a> in
<a
href="https://redirect.github.com/peter-evans/repository-dispatch/pull/305 ">peter-evans/repository-dispatch#305</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/peter-evans/repository-dispatch/commit/ff45666b9427631e3450c54a1bcbee4d9ff4d7c0 "><code>ff45666</code></a>
feat: update runtime to node 20 (<a
href="https://redirect.github.com/peter-evans/repository-dispatch/issues/305 ">#305</a>)</li>
<li><a
href="https://github.com/peter-evans/repository-dispatch/commit/a4a90276d01e3a2ae44fa10a0247287f045afd59 "><code>a4a9027</code></a>
build(deps-dev): bump <code>@types/node</code> from 18.19.6 to 18.19.8
(<a
href="https://redirect.github.com/peter-evans/repository-dispatch/issues/304 ">#304</a>)</li>
<li><a
href="https://github.com/peter-evans/repository-dispatch/commit/26052532834cf5d789f5606e8b98cd0bfab56380 "><code>2605253</code></a>
build(deps-dev): bump prettier from 3.1.1 to 3.2.4 (<a
href="https://redirect.github.com/peter-evans/repository-dispatch/issues/303 ">#303</a>)</li>
<li><a
href="https://github.com/peter-evans/repository-dispatch/commit/ab3258eeeffae29c708cb86edfc514542da16621 "><code>ab3258e</code></a>
build(deps-dev): bump <code>@types/node</code> from 18.19.4 to 18.19.6
(<a
href="https://redirect.github.com/peter-evans/repository-dispatch/issues/302 ">#302</a>)</li>
<li><a
href="https://github.com/peter-evans/repository-dispatch/commit/240bc731931727c20e5294c098f79936917bb2ab "><code>240bc73</code></a>
build(deps-dev): bump eslint-plugin-prettier from 5.1.2 to 5.1.3 (<a
href="https://redirect.github.com/peter-evans/repository-dispatch/issues/301 ">#301</a>)</li>
<li><a
href="https://github.com/peter-evans/repository-dispatch/commit/8aa15c54a0775550e589f6e5a1c10d5a7944fa61 "><code>8aa15c5</code></a>
build(deps-dev): bump <code>@types/node</code> from 18.19.3 to 18.19.4
(<a
href="https://redirect.github.com/peter-evans/repository-dispatch/issues/300 ">#300</a>)</li>
<li><a
href="https://github.com/peter-evans/repository-dispatch/commit/22aa07cf23211217f2f281db8f96d64aaf773db3 "><code>22aa07c</code></a>
build(deps-dev): bump eslint-plugin-prettier from 5.1.1 to 5.1.2 (<a
href="https://redirect.github.com/peter-evans/repository-dispatch/issues/299 ">#299</a>)</li>
<li><a
href="https://github.com/peter-evans/repository-dispatch/commit/ba0298574b6decfde4790aeded048a3b996a9ba0 "><code>ba02985</code></a>
build(deps-dev): bump eslint-plugin-prettier from 5.0.1 to 5.1.1 (<a
href="https://redirect.github.com/peter-evans/repository-dispatch/issues/298 ">#298</a>)</li>
<li><a
href="https://github.com/peter-evans/repository-dispatch/commit/accfd7b5bfd02b2977592bd723e73cab236409e4 "><code>accfd7b</code></a>
build(deps-dev): bump eslint from 8.55.0 to 8.56.0 (<a
href="https://redirect.github.com/peter-evans/repository-dispatch/issues/297 ">#297</a>)</li>
<li><a
href="https://github.com/peter-evans/repository-dispatch/commit/3c7d964ae9f0b74896fbe6e607a12437ba01ca21 "><code>3c7d964</code></a>
build(deps): bump actions/upload-artifact from 3 to 4 (<a
href="https://redirect.github.com/peter-evans/repository-dispatch/issues/295 ">#295</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/peter-evans/repository-dispatch/compare/v2...v3 ">compare
view</a></li>
</ul>
</details>
<br />
[](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>
2024-01-31 23:19:43 -05:00
water111
1cccfbbf78
[jak3] More headers! ( #3351 )
...
Decomp aligner-h, joint-h, prim-h, debug-h, game-h, penetrate-h,
bones-h, foreground-h, scene-h, script-h.
Also, has a little bit of the joint-mod-h file, but it's not finished
yet.
2024-01-31 19:05:12 -05:00
Hat Kid
ea93d32acc
decomp3: more misc files ( #3349 )
...
- `pat-h`
- `engines`
- `res-h`
- `res`
- `fact-h`
- `game-info-h`
- `wind-h`
- `merc-h`
- `shadow-vu1-h`
- `shadow-cpu-h`
- `dynamics-h`
- `memcard-h`
- `surface-h`
- part of `gui-h`
- `ambient-h`
- `speech-h`
- `prototype-h`
- `smush-control-h`
- `generic-merc-h`
- `generic-work-h`
- `collide-func-h`
- `collide-mesh-h`
- `collide-shape-h` (only missing the `new` method for `collide-shape`
because we don't have `process-drawable` yet and that also needs joint
stuff etc.)
- `collide-touch-h`
- `collide-edge-grab-h`
- `lightning-h`
This also adds argument name remaps for the `relocate` and `mem-usage`
methods (Jak 1 and 2 ref tests were updated, but not the gsrc).
2024-01-31 18:25:06 -05:00
Matt Dallmeyer
1979f94e45
Rip collision based on config flag ( #3348 )
...
Added a new `rip_collision` flag to the decompiler config and wired it
up. Cleaned up the comments around these fields in the JSON too for
clarity
Also refactored a bunch of the related extract functions to read from
`config` object rather than pass down a bunch of booleans
2024-01-29 22:15:42 +01:00
water111
ba8d4c2903
[jak3] Drawable header decomp ( #3347 )
2024-01-28 14:23:41 -05:00
water111
bfe0a72ae7
[jak3] decompile (but not port) texture ( #3346 )
...
For now - just a plain decompilation, with no PC port changes. I think
it'll be easier to do those once we have a little bit more decompiled.
2024-01-27 16:30:18 -05:00
water111
8d0d05717f
[jak3] misc. headers ( #3345 )
...
trail-h, minimap-h, bigmap-h, capture, memory-usage-h, blit-displays-h,
sky-h, rest of ocean-h
2024-01-27 14:06:21 -05:00
Ziemas
398d2ee5e1
cmake: Remove -Wmissing-include-dir ( #3343 )
...
I'm tired of it spamming and I couldn't figure out what adds to
non-existent fmt/include dir.
2024-01-27 13:10:00 -05:00
water111
5fe4d12f70
[jak3] dma-disasm, time-of-day-h, texture-anim-h, level-h ( #3344 )
2024-01-27 13:09:37 -05:00
water111
4bd5111280
[jak3] dma, dma-bucket, dma-buffer ( #3331 )
2024-01-27 11:44:08 -05:00
Hat Kid
f045e6cef1
decomp3: font-h, display, profile, settings-h, camera-defs-h, text-h ( #3335 )
2024-01-27 11:27:34 -05:00
Hat Kid
17f5f74238
jak3: dump of all vu programs ( #3340 )
...
With the exception of `sprite` and the new `hfrag` renderer, everything
appears to be identical to Jak 2.
2024-01-27 11:38:03 +01:00
ManDude
9aa291313b
fix custom screenshots and change screenshot directory ( #3339 )
2024-01-26 04:49:35 +00:00
OpenGOAL Bot and OpenGOALBot
6f0d0fa417
CI: Periodic Controller Database Update ( #3327 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2024-01-25 21:28:58 -05:00
Tyler Wilding
7ef2c2fac3
decomp: add a new config flag to disable var-name casts ( #3338 )
...
This is handy when you want to try comparing the decompiler's output
across games (ie. for checking if only naming differs)
2024-01-25 21:28:47 -05:00
Hat Kid
3eb6cfcb17
custom levels: add support for symbol, type, and string lumps ( #3337 )
2024-01-25 23:20:32 +01:00
Tyler Wilding
0236e36a53
formatter: fix multi-line form consolidation ( #3336 )
2024-01-25 16:46:15 -05:00
Hat Kid
0ea718a5ee
decomp3: loader-h, capture-h, math-camera-h, math-camera, connect, gs, texture-h ( #3333 )
2024-01-25 15:44:26 +01:00
Hat Kid
3a2c57c091
decomp3: timer, display-h, decomp-h, file-io, pad ( #3332 )
2024-01-23 23:52:15 -05:00
water111
b130c2f439
[jak3] A few early files ( #3330 )
...
types-h, vu1-macros, gsound-h, dma-h, video-h, vu1-user-h, profile-h
The `gsound-h` is very simple, but the rest have decent docs and all the
macros we had from jak 2.
So far, barely any differences! (there's a few in gsound-h)
2024-01-22 21:09:48 -05:00
Ziemas
3dc27e37e5
decompiler: Extract Jak3 VAGs ( #3328 )
2024-01-22 20:47:06 -05:00
Hat Kid
d4c21c784f
decomp3: geometry, vector, timer-h, ocean table files and game-task related enums ( #3329 )
2024-01-22 20:45:53 -05:00
water111
01d5fc2bbb
[jak3] Decomp for gkernel, gkernel-h, gstate, gstring ( #3326 )
...
I ported the kernel test from jak1/jak2 to jak 3, and it's passing!
2024-01-21 18:08:05 -05:00
water111
638bf1d3d9
[gltf] Support either u16 or float for colors ( #3322 )
...
It seems like this depends on the version of blender, so we should
support both.
2024-01-21 11:03:26 -05:00
Tyler Wilding
5ddf1e4b4d
lsp: flag unnamed variables in IR files ( #3325 )
...

2024-01-21 01:05:41 -05:00
Hat Kid
2bb1d53752
custom levels: cell-info and buzzer-info lumps ( #3324 )
...
Adds two new lump types: `cell-info` and `buzzer-info`.
`cell-info` takes a `game-task` enum value and defines an `eco-info`
lump for power cells.
`buzzer-info` takes a `game-task` enum value and an integer and
automatically calculates the required value for the buzzer task with the
formula `task + buzzer * (1 << 16)`.
2024-01-21 03:49:55 +01:00
ManDude
076f8aa6dd
[jak2] fix music player option ( #3323 )
2024-01-20 23:28:21 +00:00
water111
1c0038294f
[jak3] Decompile gcommon ( #3321 )
...
Decompile `gcommon`. I adjusted the spacing of docstring comments, and
removed some spammy decompiler warning prints.
I also added some random notes I had on VU programs from jak1/jak2. They
are not polished, but I think it's still worth including since we'll
have to go through them again for jak 3.
2024-01-20 12:33:39 -05:00
Hat Kid
9a4929ac0c
decomp3: some engine files ( #3319 )
...
- `vector-h`
- `gravity-h`
- `bounding-box-h`
- `matrix-h`
- `quaternion-h`
- `euler-h`
- `transform-h`
- `geometry-h`
- `trigonometry-h`
- `transformq-h`
- `bounding-box`
- `matrix`
- `matrix-compose`
- `transform`
- `quaternion`
- `euler`
- `trigonometry`
Not a whole lot of changes, just a couple of new functions and one new
file (`matrix-compose`).
2024-01-20 10:42:51 -05:00
Ziemas
25c74f1740
j2-overlord: Fix typo ( #3320 )
2024-01-20 14:43:52 +01:00
Tyler Wilding
272cb32a45
lsp: handle line-endings appropriately ( #3318 )
2024-01-18 20:32:30 -05:00
Tyler Wilding
c3e4baf697
formatter: support for a few more forms and fix some bugs, update tree-sitter grammar ( #3317 )
2024-01-18 20:09:40 -05:00
Hat Kid
85039fe2d6
jak3: fix all-types file order ( #3316 )
...
In #3300 , `per_object` in `ObjectFileDB::ir2_analyze_all_types()` was
changed to an `unordered_map`, which messed with the object file order
in `all-types`. This fixes the issue by going through each object file
in order and then looking up the type info from the map instead of
iterating through the map.
This also removes the method IDs from the old method comments and adds a
stub for the `new` method if there is an old method comment for it, in
order to stay consistent with the rest of the method list.
2024-01-18 14:57:10 +01:00
Hat Kid
b06d63ba83
custom levels: sort actors by aid and check for duplicates ( #3315 )
...
When giving entities custom actor IDs in your level JSON, it is possible
to break entity lookups by actor ID if the actors are not sorted by ID
because `entity-by-aid` expects them to be in order.
This sorts the actor list by ID before generating the level file and
also checks for any duplicates.
2024-01-18 10:29:30 +01:00
ManDude
13f1aa1785
[jak2] fully implement PLAYER set-param for VAG streams + fix regression ( #3314 )
...
At last...
2024-01-18 01:59:04 +00:00
ManDude
ba7b0397b1
[pckernel] fix settings not being applied if file isn't found ( #3313 )
2024-01-17 15:43:53 +00:00
water111
4f537d4a71
[jak3] Set up ckernel ( #3308 )
...
This sets up the C Kernel for Jak 3, and makes it possible to build and
load code built with `goalc --jak3`.
There's not too much interesting here, other than they switched to a
system where symbol IDs (unique numbers less than 2^14) are generated at
compile time, and those get included in the object file itself.
This is kind of annoying, since it means all tools that produce a GOAL
object file need to work together to assign unique symbol IDs. And since
the symbol IDs can't conflict, and are only a number between 0 and 2^14,
you can't just hash and hope for no collisions.
We work around this by ignoring the IDs and re-assigning our own. I
think this is very similar to what the C Kernel did on early builds of
Jak 3 which supported loading old format level files, which didn't have
the IDs included.
As far as I can tell, this shouldn't cause any problems. It defeats all
of their fancy tricks to save memory by not storing the symbol string,
but we don't care.
2024-01-16 19:24:02 -05:00
James Aldridge and JamesAldridge
ed6639ee60
fix zydis alignment issue during build for intel macs ( #3312 )
...
Fix zydis alignment issues when building on Intel macOS builds was
discussed with zydis devs https://github.com/zyantific/zydis/issues/474
Verified locally that I can run open goal with the change.
Co-authored-by: JamesAldridge <[email protected] >
2024-01-16 19:01:55 -05:00
ManDude
1dba36c614
fix jak3 jp strings ( #3311 )
2024-01-16 11:09:17 +00:00
Tyler Wilding
4101d5d80e
tests: add jak3 typeconsistency test and ensure offline tests are working ( #3310 )
2024-01-16 00:15:33 -05:00
jabermony and Tyler Wilding
07427799a6
Jak3 Build Environment ( #3098 )
...
This sets out the bones of a Jak 3 build, many things are stubbed out,
guessed, or copied from Jak 2 but it should at least be good enough to:
run `task set-game-jak3`
launch the repl
run builds from the repl
build outputs themselves are untested but the build itself runs without
errors
---------
Co-authored-by: Tyler Wilding <[email protected] >
2024-01-15 20:37:16 -05:00
Tyler Wilding
637b043293
deps: update zydis to latest commit ( #3306 )
...
Updates Zydis to it's latest commit, this should fix building the
project on intel macs with a more recent version of macOS. This likely
needs some sanity checks that the debugger stuff still works as
expected.
2024-01-15 16:56:14 -05:00
ManDude
46db6a36da
[pckernel] use pc-get-resolution to fetch initial fullscreen resolution ( #3307 )
...
This is the more correct way of doing what that code is trying to do.
Fixes #3296
Also fixed some type inconsistencies with related code, probably wasn't
causing issues though.
May also fix the "black screen on startup" issues people keep having,
but that would simply be a nice bonus and isn't the aim of this PR.
2024-01-15 18:53:49 +00:00
Hat Kid
619f39d3b7
custom levels: enum lump support ( #3305 )
...
This adds support for using enums in lumps using the new lump types
`enum-int32` and `enum-uint32`. Also adds these other new lump types:
- `water-height` (takes 3 meter floats, an enum and another optional
meter float)
- `eco-info` (takes an enum and an int)
- `vector3m` (3 meter floats + `w` set to 1.0)
2024-01-15 12:46:42 +01:00
Matt Dallmeyer
2071c98b55
Fix cases of string formatting with non string literals ( #3304 )
...
The logger used in `goalc` tries to print an already-formatted string
`message` using `fmt::print(message);` Usually this doesn't cause
problems, but if you try to print, for example, an exception that has
special characters (notably `{`) it will try to do another round of
formatting/replacements, despite not having any args to replace with,
which ends up throwing another exception. This is why errors when
parsing custom level JSON cause the REPL to exit.
I've hopefully identified all the various instances of this across the
codebase
2024-01-14 12:02:08 +00:00
ManDude
7a8aa71204
[jak2] implement statistics tracker ( #3288 )
...
Currently only tracks enemy kills, and how they were killed. There is
currently no menu for this, but I've already added most of the text for
it. Also did a bunch of misc decompilation fixes and renamed some
methods.
Fixes #3277
Fixes #3278
2024-01-11 22:49:41 +00:00
Tyler Wilding
a80cff9a4c
game: Fix issues related to remapping with SDL axii's (ie. triggers) ( #3294 )
...
This was just not implemented end to end. There are still two notable
issues, one that I can live with, one I need to narrow down eventually:
1. Rebinding confirm buttons with trigger (ie. X) behaviour is not 100%
as it should be. I fixed it enough that I can live with it but it's
still not proper. The difficulty is that unlike a button it will
re-trigger the pressed state on the journey back to neutral (aka
unpressed).
2. If you change the bind for the confirm button, then reset your
bindings, the next confirm input is eaten. This is unrelated to these
changes but I briefly looked into it and was unable to find the root
cause.
2024-01-09 16:50:58 -05:00
Tyler Wilding
4cccaf2645
d/j3: all-types: guess at associated process for non-virtual states and fix some issues along the way ( #3300 )
...
This will make a best effort attempt at guessing which process a
non-virtual state belongs to:

I also noticed some issues while working on this, mainly around how
virtual states were being output. They were being duplicated, for
example:

or

I think I've fixed that, but @Hat-Kid I defer to you to see if i've done
something terrible.

2024-01-09 16:50:05 -05:00
Matt Dallmeyer
9d680a0aba
Support extracting collision to obj for jak2/3 formats ( #3292 )
...


2024-01-05 09:36:09 +01:00
dependabot[bot]
b0713641e7
build(deps): bump actions/download-artifact from 3 to 4 ( #3283 )
...
Bumps
[actions/download-artifact](https://github.com/actions/download-artifact )
from 3 to 4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/download-artifact/releases ">actions/download-artifact's
releases</a>.</em></p>
<blockquote>
<h2>v4.0.0</h2>
<h2>What's Changed</h2>
<p>The release of upload-artifact@v4 and download-artifact@v4 are major
changes to the backend architecture of Artifacts. They have numerous
performance and behavioral improvements.</p>
<p>For more information, see the <a
href="https://github.com/actions/toolkit/tree/main/packages/artifact "><code>@actions/artifact</code></a>
documentation.</p>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/bflad "><code>@bflad</code></a> made
their first contribution in <a
href="https://redirect.github.com/actions/download-artifact/pull/194 ">actions/download-artifact#194</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/download-artifact/compare/v3...v4.0.0 ">https://github.com/actions/download-artifact/compare/v3...v4.0.0 </a></p>
<h2>v3.0.2</h2>
<ul>
<li>Bump <code>@actions/artifact</code> to v1.1.1 - <a
href="https://redirect.github.com/actions/download-artifact/pull/195 ">actions/download-artifact#195</a></li>
<li>Fixed a bug in Node16 where if an HTTP download finished too quickly
(<1ms, e.g. when it's mocked) we attempt to delete a temp file that
has not been created yet <a
href="hhttps://redirect.github.com/actions/toolkit/pull/1278 ">actions/toolkit#1278</a></li>
</ul>
<h2>v3.0.1</h2>
<ul>
<li><a
href="https://redirect.github.com/actions/download-artifact/pull/178 ">Bump
<code>@actions/core</code> to 1.10.0</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/download-artifact/commit/f44cd7b40bfd40b6aa1cc1b9b5b7bf03d3c67110 "><code>f44cd7b</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/download-artifact/issues/259 ">#259</a>
from actions/robherley/glob-downloads</li>
<li><a
href="https://github.com/actions/download-artifact/commit/3181fe853d2c9a606cd326853bf4c5b8ced5df02 "><code>3181fe8</code></a>
add some migration docs</li>
<li><a
href="https://github.com/actions/download-artifact/commit/aaaac7b403f278b6b7eebdca69ca1658616f1c57 "><code>aaaac7b</code></a>
licensed cache</li>
<li><a
href="https://github.com/actions/download-artifact/commit/7c9182f0e18dadedfbca3189ab7a22a416aa6714 "><code>7c9182f</code></a>
update readme</li>
<li><a
href="https://github.com/actions/download-artifact/commit/b94e7015566b40b2de5eeeda514f239968da2dd7 "><code>b94e701</code></a>
licensed cache</li>
<li><a
href="https://github.com/actions/download-artifact/commit/0b55470e40ab7435f445813ebc18b1107ecf7e32 "><code>0b55470</code></a>
add test case for globbed downloads to same directory</li>
<li><a
href="https://github.com/actions/download-artifact/commit/0b51c2ef9042b581aded9711127e4a6d5f71c550 "><code>0b51c2e</code></a>
update prettier/eslint versions</li>
<li><a
href="https://github.com/actions/download-artifact/commit/c4c6db724f9510b2b3cff5ebcc417c87a2b2fa97 "><code>c4c6db7</code></a>
support globbing artifact list & merging download directory</li>
<li><a
href="https://github.com/actions/download-artifact/commit/1bd0606e08fcaa4c28afc1fc7d45830ab5482dac "><code>1bd0606</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/download-artifact/issues/252 ">#252</a>
from stchr/patch-1</li>
<li><a
href="https://github.com/actions/download-artifact/commit/eff4d42b1f6ff704c7a0f37152ed8793673560ef "><code>eff4d42</code></a>
fix default for run-id</li>
<li>Additional commits viewable in <a
href="https://github.com/actions/download-artifact/compare/v3...v4 ">compare
view</a></li>
</ul>
</details>
<br />
[](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>
2024-01-04 01:32:49 -05:00
dependabot[bot]
aa68b80da2
build(deps): bump actions/upload-artifact from 3 to 4 ( #3284 )
...
Bumps
[actions/upload-artifact](https://github.com/actions/upload-artifact )
from 3 to 4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/upload-artifact/releases ">actions/upload-artifact's
releases</a>.</em></p>
<blockquote>
<h2>v4.0.0</h2>
<h2>What's Changed</h2>
<p>The release of upload-artifact@v4 and download-artifact@v4 are major
changes to the backend architecture of Artifacts. They have numerous
performance and behavioral improvements.</p>
<p>For more information, see the <a
href="https://github.com/actions/toolkit/tree/main/packages/artifact "><code>@actions/artifact</code></a>
documentation.</p>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/vmjoseph "><code>@vmjoseph</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/upload-artifact/pull/464 ">actions/upload-artifact#464</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/upload-artifact/compare/v3...v4.0.0 ">https://github.com/actions/upload-artifact/compare/v3...v4.0.0 </a></p>
<h2>v3.1.3</h2>
<h2>What's Changed</h2>
<ul>
<li>chore(github): remove trailing whitespaces by <a
href="https://github.com/ljmf00 "><code>@ljmf00</code></a> in <a
href="https://redirect.github.com/actions/upload-artifact/pull/313 ">actions/upload-artifact#313</a></li>
<li>Bump <code>@actions/artifact</code> version to v1.1.2 by <a
href="https://github.com/bethanyj28 "><code>@bethanyj28</code></a> in <a
href="https://redirect.github.com/actions/upload-artifact/pull/436 ">actions/upload-artifact#436</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/upload-artifact/compare/v3...v3.1.3 ">https://github.com/actions/upload-artifact/compare/v3...v3.1.3 </a></p>
<h2>v3.1.2</h2>
<ul>
<li>Update all <code>@actions/*</code> NPM packages to their latest
versions- <a
href="https://redirect.github.com/actions/upload-artifact/issues/374 ">#374</a></li>
<li>Update all dev dependencies to their most recent versions - <a
href="https://redirect.github.com/actions/upload-artifact/issues/375 ">#375</a></li>
</ul>
<h2>v3.1.1</h2>
<ul>
<li>Update actions/core package to latest version to remove
<code>set-output</code> deprecation warning <a
href="https://redirect.github.com/actions/upload-artifact/issues/351 ">#351</a></li>
</ul>
<h2>v3.1.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Bump <code>@actions/artifact</code> to v1.1.0 (<a
href="https://redirect.github.com/actions/upload-artifact/pull/327 ">actions/upload-artifact#327</a>)
<ul>
<li>Adds checksum headers on artifact upload (<a
href="https://redirect.github.com/actions/toolkit/pull/1095 ">actions/toolkit#1095</a>)
(<a
href="https://redirect.github.com/actions/toolkit/pull/1063 ">actions/toolkit#1063</a>)</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/upload-artifact/commit/c7d193f32edcb7bfad88892161225aeda64e9392 "><code>c7d193f</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/upload-artifact/issues/466 ">#466</a>
from actions/v4-beta</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/13131bb095770b4070a7477c3cd2d96e1c16d9f4 "><code>13131bb</code></a>
licensed cache</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/4a6c273b9834f66a1d05c170dc3f80f9cdb9def1 "><code>4a6c273</code></a>
Merge branch 'main' into v4-beta</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/f391bb91a3d3118aeca171c365bb319ece276b37 "><code>f391bb9</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/upload-artifact/issues/465 ">#465</a>
from actions/robherley/v4-documentation</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/9653d03c4b74c32144e02dae644fea70e079d4b3 "><code>9653d03</code></a>
Apply suggestions from code review</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/875b63076402f25ef9d52c294c86ba4f97810575 "><code>875b630</code></a>
add limitations section</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/ecb21463e93740a6be75c3116242169bfdbcb15a "><code>ecb2146</code></a>
add compression example</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/5e7604f84a055838f64ed68bb9904751523081ae "><code>5e7604f</code></a>
trim some repeated info</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/d6437d07581fe318a364512e6cf6b1dca6b4f92c "><code>d6437d0</code></a>
naming</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/1b561557037b4957d7d184e9aac02bec86c771eb "><code>1b56155</code></a>
s/v4-beta/v4/g</li>
<li>Additional commits viewable in <a
href="https://github.com/actions/upload-artifact/compare/v3...v4 ">compare
view</a></li>
</ul>
</details>
<br />
[](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>
2024-01-04 01:32:40 -05:00
Ziemas
6901e80e7f
j2-overlord: Clean up some VAG functions ( #3287 )
...
Some cleanup of vag related functions in overlord.
2024-01-02 16:30:56 +00:00
EvelynTSMG
12118e57cb
Impr: Make mesh extract compatible with gLTF 2.0 (and Blender 4.0) ( #3268 )
...
:3
2024-01-01 16:30:48 -05:00
ManDude
349919f788
[jak2] implement pc cheats in menu ( #3275 )
...
Adds the opengoal cheats to the secrets menu. Only cheats that are fully
functional and unlockable are there right now, which is eight cheats.
This update will reset most Jak 2 settings.
Also fixes #3274 .
2023-12-28 11:14:10 +00:00
ManDude
a01d78c7d4
[jak2] fix shadow origin using wrong joint ( #3271 )
...
Copypasta. Fixes #3269
2023-12-22 16:52:53 +00:00
Tyler Wilding
708c15788b
g/j2: switch to OpenGOAL speedrun.com leaderboards ( #3265 )
...
Boards that have no runs yet look kinda awkward but i'd rather just wait
until those fill out (won't take long) rather than add another string to
be translated.
2023-12-19 19:06:55 -05:00
Tyler Wilding
6cfb89a78a
g/j2: fix interleaving of local and external highscores ( #3264 )
...
Local scores weren't going above external scores even if they were
higher, a few test cases:




2023-12-19 18:58:25 -05:00
Tyler Wilding
99da5da441
g/j2: save window-size to pc-settings when it's changed ( #3263 )
...
Fixes #3262
2023-12-19 18:56:49 -05:00
RoyalForgotten and Tyler Wilding
c7af284c6b
French subtitle_lines_fr-FR.json ( #3259 )
...
French subtitles complete + fixed some wrong texts
---------
Co-authored-by: Tyler Wilding <[email protected] >
2023-12-19 18:55:51 -05:00
Matt Dallmeyer
3e568cb95d
Disable save_texture_pngs by default [jak1] ( #3256 )
2023-12-18 18:25:51 -05:00
tripp
4b9c1dde70
add ms to loader output ( #3261 )
2023-12-18 18:17:27 -05:00
OpenGOAL Bot and OpenGOALBot
35daebcce7
CI: Periodic Controller Database Update ( #3255 )
...
Updating Controller Database
Co-authored-by: OpenGOALBot <[email protected] >
2023-12-18 18:17:10 -05:00
ManDude
897e9c588b
fix weird potential initialization bug with the music log ( #3258 )
2023-12-12 23:34:14 +00:00
water111
f17427bc26
[jak2] Fix unicode issue with GAME.CGO load ( #3254 )
...
Fix for https://github.com/open-goal/jak-project/issues/3244
2023-12-09 18:11:24 -05:00
Ziemas
168afa0e2e
989snd: sound bank loading overhaul ( #3185 )
2023-12-07 20:22:54 -05:00
Hat Kid
9b6f16f561
jak2: 90 fps menu option ( #3245 )
...
Closes #3223
2023-12-03 21:32:21 +01:00
ManDude
1808596679
save & load game territory setting ( #3243 )
2023-12-03 18:19:38 +00:00
ManDude
94b984326f
[jak2] add game territory menu option ( #3242 )
2023-12-03 16:16:05 +00:00
ManDude
2795d3aa67
[jak2] fix health bar color fading ( #3241 )
...
Fixes #3237
2023-12-03 09:42:01 +00:00
ManDude
be6a6dead4
[jak2] fix use-after-free bug in nav enemies ( #3240 )
...
Fixes #3153
2023-12-03 09:24:34 +00:00
ManDude
974f5931de
[jak2] add resolutions menu ( #3238 )
2023-12-03 08:11:18 +00:00
Brent Hickey
e119a66788
[jak2] Support STICK_DEADZONE ( #3239 )
...
fixes #3235
2023-12-03 08:11:10 +00:00
SuperSamus and Martino Fontana
37069e2f8e
[jak2] Fix "Select controller" ( #3191 )
...
Co-authored-by: Martino Fontana <[email protected] >
2023-12-02 15:20:26 -05:00
Hat Kid and Tyler Wilding
dfa6622544
jak2: add vehicle hijack lines PC cheat ( #3205 )
...
Co-authored-by: Tyler Wilding <[email protected] >
2023-12-02 15:17:54 -05:00
Luminar Light
a3af37989b
Allow replacing all instances of a texture with one texture ( #3234 )
...
There are art groups that are present in multiple levels, and that means
that also their textures are present in multiple levels. With texture
replacement, currently we need to make replacements for all instances if
we want it replaced everywhere, but this is not ideal, especially when
you make changes to your replacement texture and now you have to put it
in each folder again.
I added a way to replace all instances of a texture, by letting
texture-replacer people put their replacements into an '_all' folder. I
set up the logic in such a way that if you have a replacement for the
texture in its corresponding folder, it will take priority over a
replacement that you placed into the '_all' folder.
I personally found this very useful for replacing guard textures. The
guards appear in a lot of levels. But ideally you want them to look the
same everywhere. And that is why I looked into this and made a PR.
Oh and I changed what is printed in the 'Replacing ' part because it was
printing the path to our replacement, which didn't look nicely when
several textures got replaced by the same replacement from the '_all'
folder. So now it will print the original texture's page and name, I
think this information is more useful anyway.
2023-12-02 12:17:47 -05:00
water111
a01182315b
[jak2] Support per-proto shrub visibility ( #3228 )
...
Fixes the issue reported in
https://github.com/open-goal/jak-project/issues/3168 ,
https://github.com/open-goal/jak-project/issues/3189 ,
https://github.com/open-goal/jak-project/issues/3166 ,
https://github.com/open-goal/jak-project/issues/3152 ,
https://github.com/open-goal/jak-project/issues/3224 where a small part
of the pipes in the `strip-grenade` mission appear, but shouldn't.
2023-12-02 12:16:14 -05:00
ManDude
e38fe70ac4
[jak2] split language and text language ( #3233 )
2023-11-29 23:28:53 +00:00
ManDude
956645bdb9
[jak2] adjust progress generic item sizes + add scrolling effect ( #3231 )
...
Makes most of the options larger to reduce the amount of dead space and
adds a smooth scrolling effect instead of having "pages".

Button remap menu has no scrolling. Fixes #2984
2023-11-29 18:27:02 +00:00