Files
jak-project/test/decompiler/reference/jak3/engine/common-obs/secrets-menu_REF.gc
T
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

396 lines
25 KiB
Common Lisp
Vendored
Generated

;;-*-Lisp-*-
(in-package goal)
;; definition for symbol *menu-secrets-array*, type (array secret-item-option)
(define *menu-secrets-array* (new 'static 'boxed-array :type secret-item-option
(new 'static 'secret-item-option
:name (text-id progress-secrets-weapon-upgrades)
:secret (game-secrets gs20)
:avail-after (game-task-node city-start-introduction)
:flags (secret-item-option-flags sf0)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-red-ammo-capacity)
:cost 4
:secret (game-secrets gun-upgrade-ammo-red)
:avail-after (game-task-node arena-fight-3-resolution)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-yellow-ammo-capacity)
:cost 4
:secret (game-secrets gun-upgrade-ammo-yellow)
:avail-after (game-task-node arena-fight-3-resolution)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-blue-ammo-capacity)
:cost 4
:secret (game-secrets gun-upgrade-ammo-blue)
:avail-after (game-task-node mine-boss-resolution)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-dark-ammo-capacity)
:cost 4
:secret (game-secrets gun-upgrade-ammo-dark)
:avail-after (game-task-node city-blow-barricade-resolution)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-gun-upgrade-yellow-1)
:cost 6
:secret (game-secrets gun-upgrade-yellow-1)
:avail-after (game-task-node arena-fight-2-resolution)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-gun-upgrade-red-1)
:cost 6
:secret (game-secrets gun-upgrade-red-1)
:avail-after (game-task-node arena-fight-2-resolution)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-gun-upgrade-blue-1)
:cost 6
:secret (game-secrets gun-upgrade-blue-1)
:avail-after (game-task-node arena-fight-3-resolution)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-gun-upgrade-dark-1)
:cost 6
:secret (game-secrets gun-upgrade-dark-1)
:avail-after (game-task-node city-blow-barricade-resolution)
:flags (secret-item-option-flags sf3)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-gun-upgrade-yellow-2)
:cost 8
:secret (game-secrets gun-upgrade-yellow-2)
:avail-after (game-task-node arena-fight-3-resolution)
:required-secrets (game-secrets gun-upgrade-yellow-1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-gun-upgrade-red-2)
:cost 8
:secret (game-secrets gun-upgrade-red-2)
:avail-after (game-task-node arena-fight-3-resolution)
:required-secrets (game-secrets gun-upgrade-red-1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-gun-upgrade-blue-2)
:cost 8
:secret (game-secrets gun-upgrade-blue-2)
:avail-after (game-task-node mine-boss-resolution)
:required-secrets (game-secrets gun-upgrade-blue-1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-gun-upgrade-dark-2)
:cost 8
:secret (game-secrets gun-upgrade-dark-2)
:avail-after (game-task-node temple-defend-resolution)
:required-secrets (game-secrets gun-upgrade-dark-1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-gun-upgrade-yellow-3)
:cost 10
:secret (game-secrets gun-upgrade-yellow-3)
:avail-after (game-task-node city-gun-course-1-resolution)
:required-secrets (game-secrets gun-upgrade-yellow-2)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-gun-upgrade-red-3)
:cost 10
:secret (game-secrets gun-upgrade-red-3)
:avail-after (game-task-node city-gun-course-2-resolution)
:required-secrets (game-secrets gun-upgrade-red-2)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-gun-upgrade-blue-3)
:cost 10
:secret (game-secrets gun-upgrade-blue-3)
:avail-after (game-task-node city-destroy-grid-resolution)
:required-secrets (game-secrets gun-upgrade-blue-2)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-gun-upgrade-dark-3)
:cost 10
:secret (game-secrets gun-upgrade-dark-3)
:avail-after (game-task-node city-blow-tower-resolution)
:required-secrets (game-secrets gun-upgrade-dark-2)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-gungame-ratchet)
:cost 5
:secret (game-secrets gungame-ratchet)
:avail-after (game-task-node city-gun-course-2-resolution)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-vehicle-upgrades)
:secret (game-secrets gs20)
:avail-after (game-task-node city-start-introduction)
:flags (secret-item-option-flags sf0)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-vehicle-hit-points)
:cost 15
:secret (game-secrets vehicle-hit-points)
:avail-after (game-task-node nest-hunt-resolution)
:flags (secret-item-option-flags sf1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-vehicle-fox)
:cost 15
:secret (game-secrets vehicle-fox)
:avail-after (game-task-node desert-oasis-defense-introduction)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-vehicle-mirage)
:cost 15
:secret (game-secrets vehicle-mirage)
:avail-after (game-task-node desert-artifact-race-2-resolution)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-vehicle-x-ride)
:cost 20
:secret (game-secrets vehicle-x-ride)
:avail-after (game-task-node desert-artifact-race-2-resolution)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-unlimited-turbos)
:cost 30
:secret (game-secrets unlimited-turbos)
:avail-after (game-task-node factory-boss-resolution)
:flags (secret-item-option-flags sf1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-crazy-stuff)
:secret (game-secrets gs20)
:avail-after (game-task-node city-start-introduction)
:flags (secret-item-option-flags sf0)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-toggle-beard)
:cost 2
:secret (game-secrets toggle-beard)
:avail-after (game-task-node city-start-introduction)
:flags (secret-item-option-flags sf1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-big-head)
:cost 3
:secret (game-secrets big-head)
:avail-after (game-task-node city-start-introduction)
:mask-secrets (game-secrets little-head)
:flags (secret-item-option-flags sf1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-little-head)
:cost 3
:secret (game-secrets little-head)
:avail-after (game-task-node city-start-introduction)
:mask-secrets (game-secrets big-head)
:flags (secret-item-option-flags sf1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-kleever-diaper)
:cost 4
:secret (game-secrets kleever-diaper)
:avail-after (game-task-node desert-course-race-resolution)
:flags (secret-item-option-flags sf1 sf3)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-bad-weather)
:cost 5
:secret (game-secrets bad-weather)
:avail-after (game-task-node city-start-introduction)
:flags (secret-item-option-flags sf1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-hflip-screen)
:cost 5
:secret (game-secrets hflip-screen)
:avail-after (game-task-node city-start-introduction)
:flags (secret-item-option-flags sf1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-fast-movie)
:cost 5
:secret (game-secrets fast-movie)
:avail-after (game-task-node city-start-introduction)
:mask-secrets (game-secrets slow-movie)
:flags (secret-item-option-flags sf1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-slow-movie)
:cost 5
:secret (game-secrets slow-movie)
:avail-after (game-task-node city-start-introduction)
:mask-secrets (game-secrets fast-movie)
:flags (secret-item-option-flags sf1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-expert-options)
:secret (game-secrets gs20)
:avail-after (game-task-node city-start-introduction)
:flags (secret-item-option-flags sf0)
)
(new 'static 'secret-item-option
:name (text-id progress-title-level-select-act-1)
:cost 5
:secret (game-secrets level-select-1)
:avail-after (game-task-node mine-boss-resolution)
:flags (secret-item-option-flags sf2)
)
(new 'static 'secret-item-option
:name (text-id progress-title-level-select-act-2)
:cost 5
:secret (game-secrets level-select-2)
:avail-after (game-task-node factory-boss-resolution)
:required-secrets (game-secrets level-select-1)
:flags (secret-item-option-flags sf2)
)
(new 'static 'secret-item-option
:name (text-id progress-title-level-select-act-3)
:cost 5
:secret (game-secrets level-select-3)
:avail-after (game-task-node desert-final-boss-resolution)
:required-secrets (game-secrets level-select-2)
:flags (secret-item-option-flags sf2)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-hero-mode)
:cost 5
:secret (game-secrets hero-mode)
:avail-after (game-task-node desert-final-boss-resolution)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-cheats)
:secret (game-secrets gs20)
:avail-after (game-task-node city-start-introduction)
:flags (secret-item-option-flags sf0)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-board-fast)
:cost 5
:secret (game-secrets board-fast)
:avail-after (game-task-node desert-oasis-defense-resolution)
:flags (secret-item-option-flags sf1 sf3)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-darkjak-tracking)
:cost 3
:secret (game-secrets darkjak-tracking)
:avail-after (game-task-node city-destroy-darkeco-resolution)
:flags (secret-item-option-flags sf1 sf3)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-button-invis)
:cost 25
:secret (game-secrets button-invis)
:avail-after (game-task-node desert-final-boss-resolution)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-endless-ammo)
:cost 50
:secret (game-secrets endless-ammo)
:avail-after (game-task-node desert-final-boss-resolution)
:flags (secret-item-option-flags sf1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-invulnerable)
:cost 100
:secret (game-secrets invulnerable)
:avail-after (game-task-node desert-final-boss-resolution)
:flags (secret-item-option-flags sf1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-endless-dark)
:cost 50
:secret (game-secrets endless-dark)
:avail-after (game-task-node desert-final-boss-resolution)
:flags (secret-item-option-flags sf1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-endless-light)
:cost 50
:secret (game-secrets endless-light)
:avail-after (game-task-node desert-final-boss-resolution)
:flags (secret-item-option-flags sf1)
)
(new 'static 'secret-item-option
:name (text-id progress-secrets-art-gallery)
:secret (game-secrets gs20)
:avail-after (game-task-node city-start-introduction)
:flags (secret-item-option-flags sf0)
)
(new 'static 'secret-item-option
:name (text-id progress-title-scrap-book)
:cost 2
:secret (game-secrets scrap-book-1)
:avail-after (game-task-node mine-boss-resolution)
:flags (secret-item-option-flags sf2)
)
(new 'static 'secret-item-option
:name (text-id progress-title-mega-scrap-book)
:cost 2
:secret (game-secrets scrap-book-2)
:avail-after (game-task-node desert-final-boss-resolution)
:required-secrets (game-secrets scrap-book-1)
:flags (secret-item-option-flags sf2)
)
(new 'static 'secret-item-option
:name (text-id progress-title-jak1-mdl-viewer)
:cost 2
:secret (game-secrets model-viewer-1)
:avail-after (game-task-node mine-boss-resolution)
:flags (secret-item-option-flags sf2)
)
(new 'static 'secret-item-option
:name (text-id progress-title-jak2-mdl-viewer)
:cost 2
:secret (game-secrets model-viewer-2)
:avail-after (game-task-node factory-boss-resolution)
:required-secrets (game-secrets model-viewer-1)
:flags (secret-item-option-flags sf2)
)
(new 'static 'secret-item-option
:name (text-id progress-title-jak3-mdl-viewer)
:cost 2
:secret (game-secrets model-viewer-3)
:avail-after (game-task-node desert-final-boss-resolution)
:required-secrets (game-secrets model-viewer-2)
:flags (secret-item-option-flags sf2)
)
(new 'static 'secret-item-option
:name (text-id progress-scene-player-act-1)
:cost 2
:secret (game-secrets scene-player-1)
:avail-after (game-task-node mine-boss-resolution)
:flags (secret-item-option-flags sf2)
)
(new 'static 'secret-item-option
:name (text-id progress-scene-player-act-2)
:cost 2
:secret (game-secrets scene-player-2)
:avail-after (game-task-node factory-boss-resolution)
:required-secrets (game-secrets scene-player-1)
:flags (secret-item-option-flags sf2)
)
(new 'static 'secret-item-option
:name (text-id progress-scene-player-act-3)
:cost 2
:secret (game-secrets scene-player-3)
:avail-after (game-task-node desert-final-boss-resolution)
:required-secrets (game-secrets scene-player-2)
)
(new 'static 'secret-item-option
:name (text-id progress-title-commentary)
:cost 2
:secret (game-secrets title-commentary)
:avail-after (game-task-node desert-final-boss-resolution)
:required-secrets (game-secrets scene-player-3)
:flags (secret-item-option-flags sf2 sf4)
)
)
)