2333 Commits

Author SHA1 Message Date
Tyler Wilding 55611169ee g/j2: Speedrunner mode improvements for Jak 2 (#3182) v0.2.2 2023-11-10 18:25:55 -05:00
ManDude a150e59e38 automatically re-enable autosave safely when starting a speedrun (#3181) v0.2.1 2023-11-09 17:48:47 +00:00
Hat Kid b2453fe23b jak2: add missing pc options to progress menu (#3167) 2023-11-09 17:24:50 +01:00
Hat Kid a80b4f1b97 jak2: some high fps fixes (#3177) 2023-11-08 23:34:58 +01:00
Hat Kid 4e3d35e97c jak2: fix discord rpc mission images in retail (#3176) 2023-11-07 00:39:58 +01:00
ManDude 299a25b997 [jak2] better handling of invalid formats (#3171)
see #3143
2023-11-06 22:05:51 +00:00
ManDude 8179d0aee3 [jak2] Localize board trick names (#3161)
It also looks like this now which I think is a bit cleaner:


![image](https://github.com/open-goal/jak-project/assets/7569514/0bed1d82-3407-4ca5-be1f-712ca8f96bcc)
2023-11-06 04:14:28 +00:00
Tyler Wilding c415d28270 cmake: use static OpenSSL libraries on linux (#3162) 2023-11-05 16:30:25 -05:00
Tyler Wilding f44f4dbe49 g/j2: use the large font for the jetboard trick combo display (#3157) 2023-11-05 01:32:01 -04:00
Tyler Wilding 595bc83105 g/j2: Add ending condition checks to the autosplitter struct (#3155) v0.2.0 2023-11-04 22:16:48 -04:00
water111 6067c25f67 [jak2] Pass 0x01 through format (#3143) 2023-11-04 20:02:28 -04:00
water111 2a7016be6a [jak2] Fix palace rotation at high fps (#3147) 2023-11-04 20:02:13 -04:00
ManDude 8d1fec34b4 allow per-file override of type-to-artgroup map + use correct divide by zero handler in civilian.gc (#3148) 2023-11-04 18:25:13 +00:00
Tyler Wilding de4b3d272d New Crowdin updates (#3146) 2023-11-04 13:58:38 -04:00
water111 ae4ee9c0c6 [jak2] Try to fix glow again (#3144)
Maybe fix https://github.com/open-goal/jak-project/issues/3065?
2023-11-04 13:30:22 -04:00
Tyler Wilding 959921e988 i18n: Add jak 2 custom text to Crowdin (#3141) 2023-11-04 13:14:14 -04:00
water111 85725401d2 [jak2] Hopefully improve sky performance (#3130)
Switches the slime look up table to be a texture, since I guess intel
drivers are terrible and putting the array in the shader makes it
extremely slow.

Also, a few minor changes:
- removed art-groups from the test-zone levels since this causes the
compiler to re-decompile the game, and makes the launcher slower. (left
it in commented out)
- Switched `decompile_code` to false by default in jak 2, in case people
run the decompiler and don't want to wait forever
- Fixed build warnings
2023-11-04 09:33:16 -04:00
ManDude adada4751d [jak2]do not force UK english on PAL (#3142) 2023-11-04 11:17:40 +00:00
Blqnc d96f0524ea Jak 2 French Game Text (#3138)
Co-authored-by: Tyler Wilding <xtvaser@gmail.com>
2023-11-03 22:20:16 -04:00
Xavier Siguero Mora 43e0f11be5 Translated Jak 2 Game Texts to Spanish (#3139) 2023-11-03 22:02:29 -04:00
ZedB0T c1e81e1b4b Add fallback text functionality to Jak 2 (#3128) 2023-11-03 21:45:10 -04:00
Tyler Wilding cca2897e3e g/jak2: disable speech volume when starting a new speedrun (#3132) 2023-11-02 23:35:52 -04:00
Tyler Wilding fff3a85531 g/jak2: allow L1 + R1 + Start to open speedrun menu as well (#3131) 2023-11-02 20:42:51 -04:00
Tyler Wilding a0e998afb3 ci: properly statically link on macOS (#3127) 2023-11-02 19:57:34 -04:00
Tyler Wilding 385b8e6e6a docs: Re-order root README a bit and add new link to new tutorial (#3119) 2023-11-02 13:19:11 -04:00
Tyler Wilding 4fbc9258a1 ci/windows: stop Strawberry perl from changing resulting built artifacts in CI (#3114) v0.1.44 2023-11-02 02:29:19 -04:00
Tyler Wilding ae35b546e4 New Crowdin updates (#3113) 2023-11-02 01:03:15 -04:00
ManDude a949dada93 rename joint node and art element macros (#3111) 2023-11-01 23:16:00 +00:00
ManDude 5587593204 fps selection fixes i missed (#3109) 2023-10-30 19:55:16 +00:00
ManDude 99cb51ff57 [jak2] simplify fps disclaimer (#3108) 2023-10-30 18:17:11 +00:00
ManDude cd68cb671e deftype and defmethod syntax major changes (#3094)
Major change to how `deftype` shows up in our code:
- the decompiler will no longer emit the `offset-assert`,
`method-count-assert`, `size-assert` and `flag-assert` parameters. There
are extremely few cases where having this in the decompiled code is
helpful, as the types there come from `all-types` which already has
those parameters. This also doesn't break type consistency because:
  - the asserts aren't compared.
- the first step of the test uses `all-types`, which has the asserts,
which will throw an error if they're bad.
- the decompiler won't emit the `heap-base` parameter unless necessary
now.
- the decompiler will try its hardest to turn a fixed-offset field into
an `overlay-at` field. It falls back to the old offset if all else
fails.
- `overlay-at` now supports field "dereferencing" to specify the offset
that's within a field that's a structure, e.g.:
```lisp
(deftype foobar (structure)
  ((vec    vector  :inline)
   (flags  int32   :overlay-at (-> vec w))
   )
  )
```
in this structure, the offset of `flags` will be 12 because that is the
final offset of `vec`'s `w` field within this structure.
- **removed ID from all method declarations.** IDs are only ever
automatically assigned now. Fixes #3068.
- added an `:overlay` parameter to method declarations, in order to
declare a new method that goes on top of a previously-defined method.
Syntax is `:overlay <method-name>`. Please do not ever use this.
- added `state-methods` list parameter. This lets you quickly specify a
list of states to be put in the method table. Same syntax as the
`states` list parameter. The decompiler will try to put as many states
in this as it can without messing with the method ID order.

Also changes `defmethod` to make the first type definition (before the
arguments) optional. The type can now be inferred from the first
argument. Fixes #3093.

---------

Co-authored-by: Hat Kid <6624576+Hat-Kid@users.noreply.github.com>
2023-10-30 03:20:02 +00:00
ManDude 09536c68ac [compiler] asm-only disasm output + fix spacing bug (#3104) 2023-10-29 10:16:14 +00:00
Matt Dallmeyer 7c74b0c999 Fix starting continue point for Hub 2/3 category extensions (#3103) 2023-10-29 02:17:32 +01:00
OpenGOAL Bot 2ce7b36568 CI: Periodic Controller Database Update (#3101)
Co-authored-by: OpenGOALBot <OpenGOALBot@users.noreply.github.com>
2023-10-24 18:43:00 -04:00
Hat Kid c7c615a043 custom levels: refactor level building code and jak 2 support (#3090)
Co-authored-by: water <awaterford111445@gmail.com>
2023-10-21 06:07:43 +02:00
Tyler Wilding dccc3da1b3 formatter: rewrite and refactor, address more edge-cases, begin documenting my work (#3096) 2023-10-20 21:24:31 -04:00
Tyler Wilding 94603bce49 ci: Workaround CMake/Perl regression in recent windows-2022 images (#3097) 2023-10-20 21:06:12 -04:00
jabermony cdf13a92ec Add label_types file merge for PAL version (#3086) 2023-10-20 01:40:24 -04:00
OpenGOAL Bot fcebf977f8 CI: Periodic Controller Database Update (#3091)
Co-authored-by: OpenGOALBot <OpenGOALBot@users.noreply.github.com>
2023-10-20 01:29:29 -04:00
Hat Kid 2c825ab7bf jak2: add warning text when changing frame rate for the first time (#3092) 2023-10-17 18:29:02 +02:00
jabermony 95dca764fc Fix build failure at llvm-rc on windows due to codepage error on zydis (#3088)
This fix is for the following error when building with llvm on windows

```
[build] llvm-rc: Error in VERSIONINFO statement (ID 1): 
[proc] The command: "C:\Program Files\CMake\bin\cmake.exe" --build C:/.../git/jak-project-test/out/build/Release --parallel 8 exited with code: 1
[build] Non-ASCII 8-bit codepoint (´┐¢) can't be interpreted in the current codepage
[build] ninja: build stopped: subcommand failed.
```

It's caused by llvm-rc not handling non 8-bit characters.
The same issue is discussed in the curl project here
https://github.com/curl/curl/issues/7765

This commit copies the fix from curl, replacing '©' with '(C)'.
2023-10-15 10:38:14 -04:00
Hat Kid e6b73f1058 custom levels: support for packing textures (#3089) 2023-10-15 16:36:14 +02:00
water111 ec23e6c5d9 [glb export] Export bones. (#3087)
![image](https://github.com/open-goal/jak-project/assets/48171810/0f26e77b-af68-4450-882e-762a501bdef4)
2023-10-14 16:49:23 -04:00
ManDude ae45037489 fix *jak1-full-game* being flipped (#3085) 2023-10-13 03:41:55 +01:00
Tyler Wilding 60eaac8051 decompiler: add texture merging feature (#3083) 2023-10-12 19:02:36 -04:00
Hat Kid 598ba1aaa3 jak3: add missing files and implement pexcw (#3084)
Some files were in the `banned_objects` list and were thus excluded from
the `all_objs` file.

Also implements the `pexcw` instruction which is only used in `hfrag`
code.
2023-10-12 18:07:37 -04:00
Aloqas ce1c2eb7c2 [jak1] Finnish base game strings (#3058)
Finnish translations for the remaining UI texts

---------

Co-authored-by: Tyler Wilding <xtvaser@gmail.com>
2023-10-12 18:05:40 -04:00
Tyler Wilding 8b3b96761d g/j2: Integrate highscores with Speedrun.com/JakSpeedruns.com when speedrunner mode is enabled (#3037) 2023-10-11 20:43:55 -04:00
water111 97e04a7612 [jak2] Fix collision renderer extract (#3081)
Fixes missing collision geometry reported in
https://github.com/open-goal/jak-project/issues/3011

The issue happens when there are 256 polygons. In this case `num-polys`
is 0 (it's a u8). There are actual cases where there are 0 polygons, so
we have to do a more complicated check to get the real count. I should
have done this in the first place, but it seemed to work...
2023-10-11 19:32:25 -04:00
Hat Kid 5be46c9852 decompiler: allow jak 3 texture and model extraction (#3080)
Added some hacks and stubs to allow extracting textures and models.
2023-10-11 19:32:12 -04:00