Skip to content

Commit

Permalink
jak3: misc fixes (#3686)
Browse files Browse the repository at this point in the history
- Fix global heap display in cheat mode
- Fix `tpl-watcher` NaNs after they fire their laser (`vf0` was being
clobbered) (Fixes #3684)
- Fix `artifact-race` talkers (Fixes #3685)
  • Loading branch information
Hat-Kid authored Sep 23, 2024
1 parent f60a155 commit 7de5eb9
Show file tree
Hide file tree
Showing 7 changed files with 388 additions and 44 deletions.
6 changes: 3 additions & 3 deletions decompiler/config/jak3/all-types.gc
Original file line number Diff line number Diff line change
Expand Up @@ -44457,9 +44457,9 @@
(within-outer-ring symbol :offset-assert 136)
(within-inner-ring symbol :offset-assert 140)
(ouched symbol :offset-assert 144)
(bound-cam basic :offset-assert 148)
(bound-cam string :offset-assert 148)
(trans vector :inline :offset-assert 160)
(state-time uint64 :offset-assert 176)
(state-time time-frame :offset-assert 176)
(jak-in-hint-region symbol :offset-assert 184)
(watchers-vulnerable symbol :offset-assert 188)
)
Expand Down Expand Up @@ -44492,7 +44492,7 @@
standing-down ;; 31
)
(:methods
(tpl-watcher-method-32 (_type_) none) ;; 32
(init-collision! (_type_) none) ;; 32
)
)

Expand Down
2 changes: 1 addition & 1 deletion decompiler/config/jak3/ntsc_v1/label_types.jsonc
Original file line number Diff line number Diff line change
Expand Up @@ -1046,7 +1046,7 @@
"desertf-obs": [["L99", "(inline-array vector)", 2]],
"desert-dust-storm": [["L89", "vector"]],
"artifact-race": [
["L162", "(inline-array talker-speech-class)", 16],
["L162", "(inline-array talker-speech-class)", 32],
["L160", "vector"],
["L159", "vector"],
["L158", "vector"],
Expand Down
7 changes: 4 additions & 3 deletions goal_src/jak3/engine/level/level.gc
Original file line number Diff line number Diff line change
Expand Up @@ -3832,12 +3832,13 @@
)
)
)
(let ((v1-194 (- #x2000000 (the-as int (-> global current)))))
(if (and (not *debug-segment*) (or (< v1-194 #x4000) (= *cheat-mode* 'debug)))
;; og:preserve-this this was hardcoded to the top of EE memory (#x2000000)
(let ((v1-194 (&- (-> global top-base) (-> global current))))
(if (and (not *debug-segment*) (or (< v1-194 (* 16 1024)) (= *cheat-mode* 'debug)))
(format
*stdcon*
"~3Lglobal heap fatally low at ~D.~DK free~%~0L"
(sar v1-194 10)
(/ v1-194 (* 1024 1024))
(/ (logand v1-194 1023) 103)
)
)
Expand Down
162 changes: 161 additions & 1 deletion goal_src/jak3/levels/desert/artifact-race/artifact-race.gc
Original file line number Diff line number Diff line change
Expand Up @@ -357,7 +357,7 @@
)


(define *artifact-race-speech-list* (new 'static 'inline-array talker-speech-class 16
(define *artifact-race-speech-list* (new 'static 'inline-array talker-speech-class 32
(new 'static 'talker-speech-class :name "none")
(new 'static 'talker-speech-class
:name "dax128"
Expand Down Expand Up @@ -508,6 +508,166 @@
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax177"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x10
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax178"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x11
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax179"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x12
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax180"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x13
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax181"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x14
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax182"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x15
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax183"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x16
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax184"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x17
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax185"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x18
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax186"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x19
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax187"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x1a
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax188"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x1b
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax189"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x1c
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax190"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x1d
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax191"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x1e
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
(new 'static 'talker-speech-class
:name "dax192"
:channel (gui-channel daxter)
:flags (talker-flags tf0)
:speech #x1f
:text-duration (seconds 1)
:neg #x1
:on-close #f
:camera #f
)
)
)

Expand Down
Loading

0 comments on commit 7de5eb9

Please sign in to comment.