diff --git a/.vs/launch.vs.json b/.vs/launch.vs.json index 28f29df1e..454350fbe 100644 --- a/.vs/launch.vs.json +++ b/.vs/launch.vs.json @@ -195,7 +195,7 @@ "${workspaceRoot}/decompiler_out", "--version", "ntsc_v1", - "--config-override \"{\\\"decompile_code\\\": false}\"" + "--config-override \"{\\\"decompile_code\\\": false, \\\"levels_extract\\\": true, \\\"allowed_objects\\\": []}\"" ] }, { diff --git a/decompiler/IR2/Form.cpp b/decompiler/IR2/Form.cpp index 97b89c3e5..97117e3aa 100644 --- a/decompiler/IR2/Form.cpp +++ b/decompiler/IR2/Form.cpp @@ -3215,8 +3215,8 @@ goos::Object DefpartgroupElement::to_form_internal(const Env& env) const { } if (m_static_info.scale != 1) { forms.push_back(pretty_print::to_symbol(fmt::format( - ":scale ({} {} {})", float_to_string(m_static_info.rot.x()), - float_to_string(m_static_info.rot.y()), float_to_string(m_static_info.rot.z())))); + ":scale ({} {} {})", float_to_string(m_static_info.scale.x()), + float_to_string(m_static_info.scale.y()), float_to_string(m_static_info.scale.z())))); } } diff --git a/decompiler/config/jak2/all-types.gc b/decompiler/config/jak2/all-types.gc index 879a66def..e473345fb 100644 --- a/decompiler/config/jak2/all-types.gc +++ b/decompiler/config/jak2/all-types.gc @@ -227,7 +227,7 @@ (define-extern *trace-list* pair) (define-extern print-tree-bitmask (function int int symbol)) (define-extern breakpoint-range-set! (function uint uint uint int)) -(define-extern valid? (function object type symbol symbol object symbol)) +(define-extern valid? (function object type string symbol object symbol)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; gstring-h ;; diff --git a/decompiler/config/jak2/jak2_config.jsonc b/decompiler/config/jak2/jak2_config.jsonc index 99f4550f7..7e350e23d 100644 --- a/decompiler/config/jak2/jak2_config.jsonc +++ b/decompiler/config/jak2/jak2_config.jsonc @@ -81,7 +81,7 @@ "is_pal": false, // jak 1's all-types, used to generate "hints" - // "old_all_types_file": "decompiler/config/jak1/all-types.gc", + "old_all_types_file": "decompiler/config/jak1/all-types.gc", //////////////////////////// // CONFIG FILES diff --git a/goal_src/jak2/dgos/common.gd b/goal_src/jak2/dgos/common.gd index 387bdba55..99285ca81 100644 --- a/goal_src/jak2/dgos/common.gd +++ b/goal_src/jak2/dgos/common.gd @@ -34,4 +34,5 @@ "battle.o" "elec-gate.o" "cty-guard-turret-button.o" + "entity-debug.o" ;; added )) diff --git a/goal_src/jak2/dgos/engine.gd b/goal_src/jak2/dgos/engine.gd index 12a79059c..b3171382a 100644 --- a/goal_src/jak2/dgos/engine.gd +++ b/goal_src/jak2/dgos/engine.gd @@ -376,6 +376,5 @@ "sampler.o" "default-menu.o" "anim-tester-x.o" ;; added - "entity-debug.o" ;; added "default-menu-pc.o" ;; added )) diff --git a/goal_src/jak2/dgos/game.gd b/goal_src/jak2/dgos/game.gd index e5d648e5c..2e2f7fdab 100644 --- a/goal_src/jak2/dgos/game.gd +++ b/goal_src/jak2/dgos/game.gd @@ -376,7 +376,6 @@ "sampler.o" "default-menu.o" "anim-tester-x.o" ;; added - "entity-debug.o" ;; added "default-menu-pc.o" ;; added "dir-tpages.go" "tpage-11.go" @@ -444,4 +443,5 @@ "battle.o" "elec-gate.o" "cty-guard-turret-button.o" + "entity-debug.o" ;; added )) diff --git a/goal_src/jak2/engine/common_objs/collectables-part.gc b/goal_src/jak2/engine/common_objs/collectables-part.gc index 89b95603f..837fe911a 100644 --- a/goal_src/jak2/engine/common_objs/collectables-part.gc +++ b/goal_src/jak2/engine/common_objs/collectables-part.gc @@ -396,7 +396,7 @@ :id 82 :flags (unk-7) :bounds (static-bspherem 0 0 0 4) - :scale (0.0 0.0 0.0) + :scale (1.0 10.0 1.0) :parts ((sp-item 290 :period 25 :length 5 :binding 288) (sp-item 288 :flags (bit1 start-dead launch-asap)) (sp-item 288 :flags (bit1 start-dead launch-asap)) diff --git a/goal_src/jak2/engine/debug/default-menu.gc b/goal_src/jak2/engine/debug/default-menu.gc index 9411c1cc5..d22df3481 100644 --- a/goal_src/jak2/engine/debug/default-menu.gc +++ b/goal_src/jak2/engine/debug/default-menu.gc @@ -1145,7 +1145,7 @@ (let ((s3-0 (-> (the-as drawable-tree-instance-shrub v1-7) info prototype-inline-array-shrub))) (dotimes (s2-0 (-> s3-0 length)) (let ((a1-4 - (new 'global 'debug-menu-item-flag (-> s3-0 data s2-0 name) (-> s3-0 data s2-0 name) dm-instance-pick-func) + (new 'debug 'debug-menu-item-flag (-> s3-0 data s2-0 name) (-> s3-0 data s2-0 name) dm-instance-pick-func) ) ) (debug-menu-append-item *instance-shrub-menu* a1-4) @@ -2699,22 +2699,22 @@ #t ) (let ((s2-0 (method-of-type pair new)) - (s1-0 'global) + (s1-0 'debug) (s0-0 pair) ) (set! sv-16 (method-of-type pair new)) - (set! sv-32 'global) + (set! sv-32 'debug) (set! sv-48 pair) (set! sv-64 'flag) (set! sv-80 (method-of-type pair new)) - (set! sv-96 'global) + (set! sv-96 'debug) (set! sv-112 pair) (set! sv-128 (-> (the-as continue-point v1-2) name)) (set! sv-144 (method-of-type pair new)) - (set! sv-160 'global) + (set! sv-160 'debug) (set! sv-176 pair) (set! sv-192 (-> (the-as continue-point v1-2) name)) - (let* ((a3-1 (cons 'dm-current-continue '())) + (let* ((a3-1 (dcons 'dm-current-continue '())) (a3-2 (sv-144 sv-160 sv-176 sv-192 a3-1)) (a3-3 (sv-80 sv-96 sv-112 sv-128 a3-2)) ) @@ -2733,12 +2733,12 @@ (let ((a3-5 '())) (let ((a2-6 (car s5-0))) (while (not (null? s5-0)) - (set! a3-5 (cons a2-6 a3-5)) + (set! a3-5 (dcons a2-6 a3-5)) (set! s5-0 (cdr s5-0)) (set! a2-6 (car s5-0)) ) ) - (cons 'menu (cons (symbol->string arg1) a3-5)) + (dcons 'menu (dcons (symbol->string arg1) a3-5)) ) ) ) @@ -2766,22 +2766,22 @@ (let ((v1-4 (-> s4-0 s3-0))) (when (= (-> v1-4 level) arg0) (let ((s2-0 (method-of-type pair new)) - (s1-0 'global) + (s1-0 'debug) (s0-0 pair) ) (set! sv-16 (method-of-type pair new)) - (set! sv-32 'global) + (set! sv-32 'debug) (set! sv-48 pair) (set! sv-64 'flag) (set! sv-80 (method-of-type pair new)) - (set! sv-96 'global) + (set! sv-96 'debug) (set! sv-112 pair) (set! sv-128 (-> v1-4 name)) (set! sv-144 (method-of-type pair new)) - (set! sv-160 'global) + (set! sv-160 'debug) (set! sv-176 pair) (set! sv-192 (* s3-0 8)) - (let* ((a3-1 (cons 'dm-task-menu-pick-func '())) + (let* ((a3-1 (dcons 'dm-task-menu-pick-func '())) (a3-2 (sv-144 sv-160 sv-176 sv-192 a3-1)) (a3-3 (sv-80 sv-96 sv-112 sv-128 a3-2)) ) @@ -2793,7 +2793,7 @@ ) ) ) - (cons 'menu (cons (symbol->string arg0) gp-0)) + (dcons 'menu (dcons (symbol->string arg0) gp-0)) ) ) @@ -2957,22 +2957,22 @@ (let ((v1-4 (-> *game-info* play-list s4-0))) (when (-> v1-4 play-continue) (let ((s3-0 (method-of-type pair new)) - (s2-0 'global) + (s2-0 'debug) (s1-0 pair) (s0-0 (method-of-type pair new)) ) - (set! sv-16 'global) + (set! sv-16 'debug) (set! sv-32 pair) (set! sv-48 'function) (set! sv-64 (method-of-type pair new)) - (set! sv-80 'global) + (set! sv-80 'debug) (set! sv-96 pair) (set! sv-112 (-> v1-4 name)) (set! sv-128 (method-of-type pair new)) - (set! sv-144 'global) + (set! sv-144 'debug) (set! sv-160 pair) (set! sv-176 (* s4-0 8)) - (let* ((a3-1 (cons 'dm-play-task '())) + (let* ((a3-1 (dcons 'dm-play-task '())) (a3-2 (sv-128 sv-144 sv-160 sv-176 a3-1)) (a3-3 (sv-64 sv-80 sv-96 sv-112 a3-2)) ) @@ -2982,7 +2982,7 @@ ) ) ) - (debug-menu-make-from-template arg0 (cons 'menu (cons "Play" gp-0))) + (debug-menu-make-from-template arg0 (dcons 'menu (dcons "Play" gp-0))) ) ) @@ -3756,7 +3756,7 @@ (function "Reset Actors" #f ,(lambda () (reset-actors 'debug) (none))) (function "Traffic Start" #f ,(lambda () (let ((gp-0 traffic-start)) - (if (valid? gp-0 function (the-as symbol "") #t 0) + (if (valid? gp-0 function "" #t 0) (gp-0) ) ) @@ -3765,7 +3765,7 @@ ) (function "Traffic Kill" #f ,(lambda () (let ((gp-0 traffic-kill)) - (if (valid? gp-0 function (the-as symbol "") #t 0) + (if (valid? gp-0 function "" #t 0) (gp-0) ) ) diff --git a/goal_src/jak2/engine/debug/viewer.gc b/goal_src/jak2/engine/debug/viewer.gc index daefe588d..9166d18b7 100644 --- a/goal_src/jak2/engine/debug/viewer.gc +++ b/goal_src/jak2/engine/debug/viewer.gc @@ -217,7 +217,7 @@ This commonly includes things such as: (set! (-> obj root) (new 'process 'trsqv)) (process-drawable-from-entity! obj arg0) (let ((s4-0 (-> arg0 etype))) - (if (valid? s4-0 type #f #f 0) + (if (valid? s4-0 type (the-as string #f) #f 0) (init-viewer (symbol->string (-> s4-0 symbol)) (res-lump-struct arg0 'name string)) (go process-drawable-art-error "unknown") ) diff --git a/goal_src/jak2/engine/dma/dma-disasm.gc b/goal_src/jak2/engine/dma/dma-disasm.gc index f3ee69f91..2a8ea5e7f 100644 --- a/goal_src/jak2/engine/dma/dma-disasm.gc +++ b/goal_src/jak2/engine/dma/dma-disasm.gc @@ -403,7 +403,7 @@ Debug tool to print out a DMA list. (a2-2 "dma-list tag pointer") ) (cond - ((not (t9-1 a0-2 (the-as type a1-2) (the-as symbol a2-2) #t gp-0)) + ((not (t9-1 a0-2 (the-as type a1-2) a2-2 #t gp-0)) (format gp-0 "ERROR: dma-list tag pointer invalid~%") (set! s0-0 'error) ) @@ -414,7 +414,7 @@ Debug tool to print out a DMA list. (a1-4 #f) ) (set! a2-2 "dma-list data pointer") - (t9-3 a0-4 (the-as type a1-4) (the-as symbol a2-2) #t gp-0) + (t9-3 a0-4 (the-as type a1-4) a2-2 #t gp-0) ) ) ) diff --git a/goal_src/jak2/engine/entity/entity.gc b/goal_src/jak2/engine/entity/entity.gc index 1f77fb5c5..642748d26 100644 --- a/goal_src/jak2/engine/entity/entity.gc +++ b/goal_src/jak2/engine/entity/entity.gc @@ -539,7 +539,7 @@ ;; WARN: Return type mismatch entity-actor vs none. (defmethod debug-print entity-actor ((obj entity-actor) (arg0 symbol) (arg1 type)) (let ((s4-0 (-> obj etype))) - (when (or (not arg1) (and s4-0 (valid? s4-0 type #f #f 0) (type-type? s4-0 arg1))) + (when (or (not arg1) (and s4-0 (valid? s4-0 type (the-as string #f) #f 0) (type-type? s4-0 arg1))) (format #t "~5D #x~8X ~-26S" (-> obj extra vis-id) obj (res-lump-struct obj 'name structure)) (let ((t9-4 format) (a0-5 #t) @@ -1605,7 +1605,7 @@ ) ((begin (set! (-> s4-0 type) s5-0) - (and s5-0 (valid? s5-0 type #f #f 0) (valid? (method-of-object s4-0 init-from-entity!) function #f #f 0)) + (and s5-0 (valid? s5-0 type (the-as string #f) #f 0) (valid? (method-of-object s4-0 init-from-entity!) function (the-as string #f) #f 0)) ) (init-entity s4-0 obj (the-as process s5-0)) ) @@ -2243,9 +2243,9 @@ (or (-> s4-1 vis-info 0) (< (vector-vector-distance (-> sv-48 trans) sv-16) (-> sv-48 vis-dist))) ;; PC port note : added this extra check to fix level types being used after deloaded because of bad entity placement (#if PC_PORT - (or (not (type-type? (-> sv-48 entity type) entity-actor)) (and (valid? (-> (the-as entity-actor (-> sv-48 entity)) etype) type 'entity-type-check1 #f 0) - (valid? (-> (the-as entity-actor (-> sv-48 entity)) etype symbol) symbol 'entity-type-check2 #f 0) - (valid? (-> (the-as entity-actor (-> sv-48 entity)) etype symbol value) type 'entity-type-check3 #f 0) + (or (not (type-type? (-> sv-48 entity type) entity-actor)) (and (valid? (-> (the-as entity-actor (-> sv-48 entity)) etype) type "entity-type-check etype" #f *stdcon*) + (valid? (-> (the-as entity-actor (-> sv-48 entity)) etype symbol) symbol "entity-type-check symbol" #f *stdcon*) + (valid? (-> (the-as entity-actor (-> sv-48 entity)) etype symbol value) type "entity-type-check value" #f *stdcon*) (= (-> (the-as entity-actor (-> sv-48 entity)) etype) (-> (the-as entity-actor (-> sv-48 entity)) etype symbol value)) )) #f) diff --git a/goal_src/jak2/engine/level/level.gc b/goal_src/jak2/engine/level/level.gc index 7557f93b5..510b32cc8 100644 --- a/goal_src/jak2/engine/level/level.gc +++ b/goal_src/jak2/engine/level/level.gc @@ -280,7 +280,7 @@ into 7 sections, which might explain the weird sizes in the center. (dotimes (s5-0 8) (let ((s4-0 (-> obj bsp vis-info s5-0))) (cond - ((and s4-0 (nonzero? s4-0) (valid? s4-0 level-vis-info #f #f 0)) + ((and s4-0 (nonzero? s4-0) (valid? s4-0 level-vis-info (the-as string #f) #f 0)) ;; looks good ;; level -> vis info @@ -1465,7 +1465,7 @@ into 7 sections, which might explain the weird sizes in the center. (set! (-> *level* loading-level) obj) (set! *level-type-list* (the-as type (&-> obj level-type))) (cond - ((valid? (-> obj bsp light-hash) light-hash #f #t 0) + ((valid? (-> obj bsp light-hash) light-hash (the-as string #f) #t 0) (set! (-> obj light-hash) (-> obj bsp light-hash)) ) (else diff --git a/goal_src/jak2/engine/process-drawable/process-drawable.gc b/goal_src/jak2/engine/process-drawable/process-drawable.gc index 312520e26..9e0950005 100644 --- a/goal_src/jak2/engine/process-drawable/process-drawable.gc +++ b/goal_src/jak2/engine/process-drawable/process-drawable.gc @@ -838,7 +838,7 @@ ) (format (clear *temp-string*) "skel-~S" arg0) (let ((s4-1 (s3-0 s4-0 *temp-string* (the-as (pointer uint32) #f)))) - (if (and (nonzero? s4-1) (valid? s4-1 skeleton-group #f #f 0)) + (if (and (nonzero? s4-1) (valid? s4-1 skeleton-group (the-as string #f) #f 0)) (initialize-skeleton obj (the-as skeleton-group s4-1) (the-as pair 0)) (go process-drawable-art-error arg0) ) @@ -1914,7 +1914,7 @@ (let ((s3-0 (-> arg0 node-list data s4-0))) (when (-> s3-0 geo) (cond - ((valid? (-> s3-0 geo) drawable (the-as symbol "cspace geo") #t *valid-con*) + ((valid? (-> s3-0 geo) drawable "cspace geo" #t *valid-con*) ) (else (format *valid-con* "ERROR: ~A has an invalid geo ~A~%" s3-0 (-> s3-0 geo)) @@ -1940,7 +1940,7 @@ (cond ((logtest? (-> s2-0 command) (joint-control-command joint-control-command-4)) ) - ((valid? (-> s2-0 frame-group) art-joint-anim (the-as symbol "joint-control frame-group") #t *valid-con*) + ((valid? (-> s2-0 frame-group) art-joint-anim "joint-control frame-group" #t *valid-con*) (when (not (and (>= (the int (-> s2-0 frame-num)) 0) (< (the int (-> s2-0 frame-num)) (the-as int (-> s2-0 frame-group frames num-frames))) ) diff --git a/goal_src/jak2/engine/spatial-hash/spatial-hash.gc b/goal_src/jak2/engine/spatial-hash/spatial-hash.gc index 8aec16408..211545ce9 100644 --- a/goal_src/jak2/engine/spatial-hash/spatial-hash.gc +++ b/goal_src/jak2/engine/spatial-hash/spatial-hash.gc @@ -894,7 +894,7 @@ (defmethod validate-objects spatial-hash ((obj spatial-hash)) (dotimes (s5-0 (-> obj object-count)) (let ((a0-2 (-> obj object-array s5-0 object))) - (when (not (valid? a0-2 basic (the-as symbol "") #t 0)) + (when (not (valid? a0-2 basic "" #t 0)) (break!) 0 ) diff --git a/goal_src/jak2/engine/target/target-turret.gc b/goal_src/jak2/engine/target/target-turret.gc index 215830b71..6617a10af 100644 --- a/goal_src/jak2/engine/target/target-turret.gc +++ b/goal_src/jak2/engine/target/target-turret.gc @@ -2120,7 +2120,7 @@ ) (defmethod deactivate base-turret ((obj base-turret)) - (if (valid? (-> obj hud) (the-as type #f) (the-as symbol "") #t 0) + (if (valid? (-> obj hud) (the-as type #f) "" #t 0) (send-event (handle->process (-> obj hud)) 'hide-and-die) ) (sound-stop (-> obj sound-id 0)) diff --git a/goal_src/jak2/kernel/gcommon.gc b/goal_src/jak2/kernel/gcommon.gc index 13a6781a5..372f0b64c 100644 --- a/goal_src/jak2/kernel/gcommon.gc +++ b/goal_src/jak2/kernel/gcommon.gc @@ -1087,9 +1087,9 @@ ) (define-extern boolean type) ;; not really... but they use it here as if it was one. -(define-extern valid? (function object type symbol symbol object symbol)) +(define-extern valid? (function object type string symbol object symbol)) -(defun valid? ((obj object) (expected-type type) (name symbol) (allow-false symbol) (print-dest object)) +(defun valid? ((obj object) (expected-type type) (name string) (allow-false symbol) (print-dest object)) "Check if the given object is valid. This will work for structures, pairs, basics, bintegers, symbols, and types. If you set expected-type to #f, it just checks for a 4-byte aligned address that's in GOAL memory. If you're checking a structure, set expected-type to structure. This requires 16-byte alignment @@ -1224,7 +1224,7 @@ ) #f ) - ((and (!= expected-type type) (not (valid? (rtype-of obj) type #f #t 0))) + ((and (!= expected-type type) (not (valid? (rtype-of obj) type (the-as string #f) #t 0))) (if name (format print-dest diff --git a/goal_src/jak2/levels/castle/boss/casboss-part.gc b/goal_src/jak2/levels/castle/boss/casboss-part.gc index e24e0c058..64258063d 100644 --- a/goal_src/jak2/levels/castle/boss/casboss-part.gc +++ b/goal_src/jak2/levels/castle/boss/casboss-part.gc @@ -114,7 +114,7 @@ :flags (unk-4 unk-6 unk-7) :bounds (static-bspherem 0 -2 2 6) :rotate ((degrees 0) (degrees -90) (degrees 0)) - :scale (0.0 -16384.0 0.0) + :scale (1.5 0.6 1.5) :parts ((sp-item 5203 :fade-after (meters 300) :falloff-to (meters 300) :flags (bit7))) ) diff --git a/goal_src/jak2/levels/city/onin_tent/onintent-scenes.gc b/goal_src/jak2/levels/city/onin_tent/onintent-scenes.gc index c789fea70..fabf786ff 100644 --- a/goal_src/jak2/levels/city/onin_tent/onintent-scenes.gc +++ b/goal_src/jak2/levels/city/onin_tent/onintent-scenes.gc @@ -399,7 +399,7 @@ :flags (unk-6 unk-7) :bounds (static-bspherem 0 0 0 4) :rotate ((degrees 90) (degrees 0) (degrees 0)) - :scale (16384.0 0.0 0.0) + :scale (0.5 0.5 0.5) :parts ((sp-item 3478 :flags (is-3d bit6 bit7)) (sp-item 3481 :flags (bit6))) ) diff --git a/goal_src/jak2/levels/city/port/ctyport-part.gc b/goal_src/jak2/levels/city/port/ctyport-part.gc index 34e05de3c..50f9d5075 100644 --- a/goal_src/jak2/levels/city/port/ctyport-part.gc +++ b/goal_src/jak2/levels/city/port/ctyport-part.gc @@ -27,7 +27,7 @@ :id 930 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 12) - :scale (0.0 0.0 0.0) + :scale (0.625 0.625 0.625) :parts ((sp-item 4148 :fade-after (meters 250) :falloff-to (meters 150) :flags (bit7))) ) diff --git a/goal_src/jak2/levels/common/battle.gc b/goal_src/jak2/levels/common/battle.gc index f0bf87ac4..5e2eea9de 100644 --- a/goal_src/jak2/levels/common/battle.gc +++ b/goal_src/jak2/levels/common/battle.gc @@ -1424,7 +1424,7 @@ (#when PC_PORT ;; added. a battle may have enemies from an unloaded level in its ally list (e.g. atoll battle has atollext enemies). (dotimes (i gp-0) - (if (not (valid? (-> v1-0 data i entity) entity-actor 'battle-ally-check #f #t)) + (if (not (valid? (-> v1-0 data i entity) entity-actor "battle allies" #f *stdcon*)) (deactivate self))) ) (when (> gp-0 0) diff --git a/goal_src/jak2/levels/common/enemy/hover/crimson-guard-hover.gc b/goal_src/jak2/levels/common/enemy/hover/crimson-guard-hover.gc index 63d896ad6..8bbc82b78 100644 --- a/goal_src/jak2/levels/common/enemy/hover/crimson-guard-hover.gc +++ b/goal_src/jak2/levels/common/enemy/hover/crimson-guard-hover.gc @@ -14,7 +14,7 @@ :flags (use-local-clock unk-5 unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (0.75 0.75 0.75) :parts ((sp-item 744 :flags (bit6) :period 900 :length 5) (sp-item 745 :flags (bit6) :period 900 :length 5) (sp-item 746 :period 900 :length 15) @@ -32,7 +32,7 @@ :flags (use-local-clock unk-5 unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (0.3 0.3 0.3) :parts ((sp-item 744 :flags (bit6) :period 900 :length 5) (sp-item 745 :flags (bit6) :period 900 :length 5) (sp-item 746 :period 900 :length 15) diff --git a/goal_src/jak2/levels/common/enemy/hover/wasp.gc b/goal_src/jak2/levels/common/enemy/hover/wasp.gc index caaceb733..4f10494e5 100644 --- a/goal_src/jak2/levels/common/enemy/hover/wasp.gc +++ b/goal_src/jak2/levels/common/enemy/hover/wasp.gc @@ -14,7 +14,7 @@ :flags (use-local-clock unk-5 unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (0.25 0.25 0.25) :parts ((sp-item 726 :flags (bit6) :period 900 :length 5) (sp-item 727 :flags (bit6) :period 900 :length 5) (sp-item 728 :period 900 :length 15) diff --git a/goal_src/jak2/levels/drill_platform/drill-part.gc b/goal_src/jak2/levels/drill_platform/drill-part.gc index 736aa1d56..8540bfbd3 100644 --- a/goal_src/jak2/levels/drill_platform/drill-part.gc +++ b/goal_src/jak2/levels/drill_platform/drill-part.gc @@ -435,7 +435,7 @@ :id 404 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 7) - :scale (0.0 0.0 0.0) + :scale (0.6 0.6 0.6) :parts ((sp-item 1687 :fade-after (meters 200) :flags (bit6 bit7)) (sp-item 1688 :fade-after (meters 200) :flags (bit6 bit7)) (sp-item 1689 :fade-after (meters 200) :flags (bit6 bit7)) @@ -446,7 +446,7 @@ :id 405 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.7 0.7 0.7) :parts ((sp-item 1687 :fade-after (meters 200) :flags (bit6 bit7)) (sp-item 1688 :fade-after (meters 200) :flags (bit6 bit7)) (sp-item 1689 :fade-after (meters 200) :flags (bit6 bit7)) @@ -2032,7 +2032,7 @@ :flags (unk-4 unk-6 unk-7) :bounds (static-bspherem 0 -2 2 6) :rotate ((degrees 0) (degrees -90) (degrees 0)) - :scale (0.0 -16384.0 0.0) + :scale (0.6 0.6 0.6) :parts ((sp-item 1752 :fade-after (meters 100) :falloff-to (meters 100) :flags (bit7)) (sp-item 1753 :fade-after (meters 200) :falloff-to (meters 240) :flags (bit7)) ) diff --git a/goal_src/jak2/levels/forest/forest-obs.gc b/goal_src/jak2/levels/forest/forest-obs.gc index 012c6e715..89dec5e8f 100644 --- a/goal_src/jak2/levels/forest/forest-obs.gc +++ b/goal_src/jak2/levels/forest/forest-obs.gc @@ -428,7 +428,7 @@ This commonly includes things such as: ) (defmethod deactivate forest-youngsamos ((obj forest-youngsamos)) - (if (valid? (-> obj hud) (the-as type #f) (the-as symbol "") #t 0) + (if (valid? (-> obj hud) (the-as type #f) "" #t 0) (send-event (handle->process (-> obj hud)) 'hide-and-die) ) (sound-stop (the-as sound-id (-> obj sound-id))) diff --git a/goal_src/jak2/levels/fortress/rescue/forrescb-part.gc b/goal_src/jak2/levels/fortress/rescue/forrescb-part.gc index 11738eff8..dd4c01449 100644 --- a/goal_src/jak2/levels/fortress/rescue/forrescb-part.gc +++ b/goal_src/jak2/levels/fortress/rescue/forrescb-part.gc @@ -249,7 +249,7 @@ :id 664 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2904 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100) (sp-item 2905 :fade-after (meters 80) :flags (bit6 bit7) :period 400 :length 100) (sp-item 2906 :fade-after (meters 60) :flags (bit6 bit7) :period 600 :length 300) @@ -345,7 +345,7 @@ :id 665 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.85 0.85 0.85) :parts ((sp-item 2908 :fade-after (meters 80) :flags (bit6 bit7) :period 300 :length 150) (sp-item 2909 :fade-after (meters 60) :flags (bit6 bit7) :period 150 :length 50) (sp-item 2910 :fade-after (meters 40) :flags (bit6 bit7) :period 600 :length 300) @@ -438,7 +438,7 @@ :id 667 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2911 :fade-after (meters 40) :flags (bit6 bit7) :period 150 :length 75) (sp-item 2912 :fade-after (meters 60) :flags (bit6 bit7) :period 450 :length 50) (sp-item 2913 :fade-after (meters 80) :flags (bit6 bit7) :period 300 :length 225) @@ -738,7 +738,7 @@ :id 669 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2923 :fade-after (meters 40) :flags (bit6 bit7) :period 300 :length 150 :offset 150) (sp-item 2924 :fade-after (meters 60) :flags (bit6 bit7) :period 450 :length 150 :offset 150) (sp-item 2925 :fade-after (meters 80) :flags (bit6 bit7) :period 600 :length 150 :offset 300) @@ -1410,7 +1410,7 @@ :id 673 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2954 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100) (sp-item 2955 :fade-after (meters 60) :flags (bit6 bit7) :period 400 :length 100) (sp-item 2956 :fade-after (meters 40) :flags (bit6 bit7) :period 600 :length 300) @@ -1528,7 +1528,7 @@ :id 674 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2959 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100 :offset 50) (sp-item 2960 :fade-after (meters 60) :flags (bit6 bit7) :period 200 :length 100) (sp-item 2961 :fade-after (meters 40) :flags (bit6 bit7) :period 300 :length 100) @@ -1756,7 +1756,7 @@ :id 675 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2969 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100 :offset 100) (sp-item 2970 :fade-after (meters 60) :flags (bit6 bit7) :period 400 :length 150) (sp-item 2971 :fade-after (meters 40) :flags (bit6 bit7) :period 450 :length 125 :offset 85) @@ -2028,7 +2028,7 @@ :id 676 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2981 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100 :offset 50) (sp-item 2982 :fade-after (meters 60) :flags (bit6 bit7) :period 300 :length 75 :offset 150) (sp-item 2983 :fade-after (meters 40) :flags (bit6 bit7) :period 350 :length 150 :offset 80) @@ -2168,7 +2168,7 @@ :id 677 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2987 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100 :offset 50) (sp-item 2988 :fade-after (meters 60) :flags (bit6 bit7) :period 300 :length 75) (sp-item 2989 :fade-after (meters 40) :flags (bit6 bit7) :period 350 :length 150 :offset 125) @@ -2352,7 +2352,7 @@ :id 678 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2995 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100 :offset 50) (sp-item 2996 :fade-after (meters 60) :flags (bit6 bit7) :period 300 :length 75 :offset 150) (sp-item 2997 :fade-after (meters 40) :flags (bit6 bit7) :period 350 :length 150 :offset 80) diff --git a/goal_src/jak2/levels/gungame/gun-dummy.gc b/goal_src/jak2/levels/gungame/gun-dummy.gc index ac4390d2a..034d71017 100644 --- a/goal_src/jak2/levels/gungame/gun-dummy.gc +++ b/goal_src/jak2/levels/gungame/gun-dummy.gc @@ -96,7 +96,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.83 1.2) :parts ((sp-item 2297 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2298 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2299 :flags (bit7) :period 1200 :length 15) @@ -264,7 +264,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.97 0.87) :parts ((sp-item 2304 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2305 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2299 :flags (bit7) :period 1200 :length 15) @@ -383,7 +383,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.97 1.27) :parts ((sp-item 2306 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2307 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2299 :flags (bit7) :period 1200 :length 15) @@ -502,7 +502,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 1.13 1.3) :parts ((sp-item 2308 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2309 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2299 :flags (bit7) :period 1200 :length 15) @@ -621,7 +621,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.83 1.2) :parts ((sp-item 2310 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2311 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2312 :flags (bit7) :period 1200 :length 15) @@ -789,7 +789,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.83 1.2) :parts ((sp-item 2314 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2315 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2316 :flags (bit7) :period 1200 :length 15) @@ -957,7 +957,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.73 0.97) :parts ((sp-item 2318 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2319 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2320 :flags (bit7) :period 1200 :length 15) @@ -1209,7 +1209,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.6 0.43) :parts ((sp-item 2323 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2324 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2320 :flags (bit7) :period 1200 :length 15) @@ -1328,7 +1328,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.9 0.67) :parts ((sp-item 2325 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2326 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2320 :flags (bit7) :period 1200 :length 15) @@ -1447,7 +1447,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 1.07 0.6) :parts ((sp-item 2327 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2328 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2320 :flags (bit7) :period 1200 :length 15) diff --git a/goal_src/jak2/levels/mars_tomb/tomb-part.gc b/goal_src/jak2/levels/mars_tomb/tomb-part.gc index 8d02a37ad..61629dbee 100644 --- a/goal_src/jak2/levels/mars_tomb/tomb-part.gc +++ b/goal_src/jak2/levels/mars_tomb/tomb-part.gc @@ -57,7 +57,7 @@ :id 687 :flags (unk-7) :bounds (static-bspherem 0 3 0 16) - :scale (0.0 0.0 0.0) + :scale (1.4 2.0 1.4) :parts ((sp-item 3069 :fade-after (meters 200) :falloff-to (meters 200) :flags (bit7)) (sp-item 3070 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 105 :length 45) (sp-item 3071 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 130 :length 35 :offset 20) @@ -174,7 +174,7 @@ :flags (unk-6 unk-7) :bounds (static-bspherem 0 3 0 16) :rotate ((degrees 0) (degrees 87) (degrees 0)) - :scale (0.0 15837.866 0.0) + :scale (0.9 0.7 1.2) :parts ((sp-item 3069 :fade-after (meters 200) :falloff-to (meters 200) :flags (bit7)) (sp-item 3070 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 115 :length 40) (sp-item 3071 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 175 :length 45 :offset 20) @@ -195,7 +195,7 @@ :flags (unk-6 unk-7) :bounds (static-bspherem 0 3 0 16) :rotate ((degrees 0) (degrees 223) (degrees 0)) - :scale (0.0 40595.91 0.0) + :scale (1.0 1.25 0.8) :parts ((sp-item 3069 :fade-after (meters 200) :falloff-to (meters 200) :flags (bit7)) (sp-item 3070 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 125 :length 40) (sp-item 3071 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 190 :length 45 :offset 20) @@ -215,7 +215,7 @@ :id 691 :flags (unk-7) :bounds (static-bspherem 0 3 0 16) - :scale (0.0 0.0 0.0) + :scale (0.5 0.5 0.5) :parts ((sp-item 3069 :fade-after (meters 50) :falloff-to (meters 200) :flags (bit7)) (sp-item 3070 :fade-after (meters 100) :falloff-to (meters 250) :flags (bit7) :period 125 :length 40) (sp-item 3071 :fade-after (meters 100) :falloff-to (meters 250) :flags (bit7) :period 190 :length 45 :offset 20) @@ -440,7 +440,7 @@ :id 692 :flags (unk-7) :bounds (static-bspherem 0 2 0 6) - :scale (0.0 0.0 0.0) + :scale (0.3 0.5 0.3) :parts ((sp-item 3083 :fade-after (meters 100) :falloff-to (meters 100) :flags (bit7)) (sp-item 3084 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 100 :length 50) (sp-item 3085 :fade-after (meters 150) :falloff-to (meters 150) :flags (bit7) :period 120 :length 55 :offset 20) @@ -463,7 +463,7 @@ :flags (unk-6 unk-7) :bounds (static-bspherem 0 2 0 6) :rotate ((degrees 0) (degrees 63) (degrees 0)) - :scale (0.0 11468.8 0.0) + :scale (0.25 0.6 0.35) :parts ((sp-item 3083 :fade-after (meters 100) :falloff-to (meters 100) :flags (bit7)) (sp-item 3084 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 90 :length 50) (sp-item 3085 :fade-after (meters 150) :falloff-to (meters 150) :flags (bit7) :period 160 :length 55 :offset 20) @@ -486,7 +486,7 @@ :flags (unk-6 unk-7) :bounds (static-bspherem 0 2 0 6) :rotate ((degrees 0) (degrees 173) (degrees 0)) - :scale (0.0 31493.69 0.0) + :scale (0.325 0.4 0.275) :parts ((sp-item 3083 :fade-after (meters 100) :falloff-to (meters 100) :flags (bit7)) (sp-item 3084 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 125 :length 50) (sp-item 3085 :fade-after (meters 150) :falloff-to (meters 150) :flags (bit7) :period 145 :length 55 :offset 20) diff --git a/goal_src/jak2/levels/stadium/stadium-obs.gc b/goal_src/jak2/levels/stadium/stadium-obs.gc index 576ec6397..6b0c05b06 100644 --- a/goal_src/jak2/levels/stadium/stadium-obs.gc +++ b/goal_src/jak2/levels/stadium/stadium-obs.gc @@ -2086,7 +2086,7 @@ This commonly includes things such as: ) (defmethod deactivate stad-samos ((obj stad-samos)) - (if (valid? (-> obj hud) (the-as type #f) (the-as symbol "") #t 0) + (if (valid? (-> obj hud) (the-as type #f) "" #t 0) (send-event (handle->process (-> obj hud)) 'hide-and-die) ) (kill-lightning obj) diff --git a/goal_src/jak2/levels/underport/under-part.gc b/goal_src/jak2/levels/underport/under-part.gc index 5c0aadd82..660bf7973 100644 --- a/goal_src/jak2/levels/underport/under-part.gc +++ b/goal_src/jak2/levels/underport/under-part.gc @@ -603,7 +603,7 @@ :id 507 :flags (unk-7) :bounds (static-bspherem 0 2 0 6) - :scale (0.0 0.0 0.0) + :scale (0.3 0.5 0.3) :parts ((sp-item 2234 :fade-after (meters 100) :falloff-to (meters 100) :flags (bit7)) (sp-item 2235 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 100 :length 50) (sp-item 2236 :fade-after (meters 150) :falloff-to (meters 150) :flags (bit7) :period 120 :length 55 :offset 20) diff --git a/goal_src/jak2/pc/debug/entity-debug.gc b/goal_src/jak2/pc/debug/entity-debug.gc index c0c1c687d..cabc6147e 100644 --- a/goal_src/jak2/pc/debug/entity-debug.gc +++ b/goal_src/jak2/pc/debug/entity-debug.gc @@ -56,14 +56,14 @@ (let ((data (get-tag-index-data e i))) ;; tag info - (format (clear *debug-temp-string*) "~3L~2D)~0L ~20L~A~0L:" i (-> e tag i name) (-> e tag i elt-type)) + (format (clear *debug-temp-string*) "~3L~2D)~0L ~20L~A~0L: " i (-> e tag i name) (-> e tag i elt-type)) ;; tag data - special cases first (cond ;; some water-height info ((and (= (-> e tag i name) 'water-height) (= (-> e tag i elt-count) 4) (= (-> e tag i elt-type) float)) (+! y-adv (* 14 1)) - (format *debug-temp-string* " ~mm ~mm ~mm~%(~S)" + (format *debug-temp-string* "~mm ~mm ~mm~%(~S)" (-> (the (pointer float) data) 0) (-> (the (pointer float) data) 1) (-> (the (pointer float) data) 2) @@ -73,7 +73,7 @@ ;; some water-height info but with 5 elts ((and (= (-> e tag i name) 'water-height) (= (-> e tag i elt-count) 4) (= (-> e tag i elt-type) float)) (+! y-adv (* 14 3)) - (format *debug-temp-string* " ~mm ~mm ~mm~%(~S)~%~mm" + (format *debug-temp-string* "~mm ~mm ~mm~%(~S)~%~mm" (-> (the (pointer float) data) 0) (-> (the (pointer float) data) 1) (-> (the (pointer float) data) 2) @@ -83,17 +83,17 @@ ) ;; text id (can be hint ambient) ;; ((and (= (-> e tag i name) 'text-id) (= (-> e tag i elt-count) 1) (= (-> e tag i elt-type) int32)) - ;; (format *debug-temp-string* " (game-text-id ~S)" (game-text-id->string (-> (the (pointer game-text-id) data) 0))) + ;; (format *debug-temp-string* "(game-text-id ~S)" (game-text-id->string (-> (the (pointer game-text-id) data) 0))) ;; ) ;; eco-info, like in vents, crates, or collectables in general ((and (= (-> e tag i name) 'eco-info) (= (-> e tag i elt-count) 2) (= (-> e tag i elt-type) int32)) - (format *debug-temp-string* " ~S " (pickup-type->string (the-as pickup-type (-> (the (pointer int32) data) 0)))) + (format *debug-temp-string* "~S " (pickup-type->string (the-as pickup-type (-> (the (pointer int32) data) 0)))) (if (= (pickup-type fuel-cell) (-> (the (pointer int32) data) 0)) (format *debug-temp-string* "~S" (game-task->string (the-as game-task (-> (the (pointer int32) data) 1)))) (format *debug-temp-string* "~D" (-> (the (pointer int32) data) 1)) ) (if (= (pickup-type buzzer) (-> (the (pointer int32) data) 0)) - (format *debug-temp-string* " ~S" (game-task->string (the-as game-task (logand #xffff (-> (the (pointer int32) data) 1))))) + (format *debug-temp-string* "~S" (game-task->string (the-as game-task (logand #xffff (-> (the (pointer int32) data) 1))))) ) ) ;; fact options, usually enemies or crates @@ -104,18 +104,33 @@ ;; ) ;; these can be displayed visually with other tools. ((and (= (-> e tag i name) 'visvol) (= (-> e tag i elt-count) 2) (= (-> e tag i elt-type) vector)) - (format *debug-temp-string* " display actor-vis!") + (format *debug-temp-string* "display actor-vis!") ) ((and (= (-> e tag i name) 'path) (= (-> e tag i elt-type) vector)) - (format *debug-temp-string* " display path marks!") + (format *debug-temp-string* "display path marks!") ) ((and (= (-> e tag i name) 'vol) (= (-> e tag i elt-type) vector)) - (format *debug-temp-string* " display vol marks!") + (format *debug-temp-string* "display vol marks!") + ) + ((and (= (-> e tag i name) 'art-name) (= (-> e tag i elt-count) 1) (type-type? (-> e type) entity-actor) (type-type? (-> (the-as entity-actor e) etype) part-spawner)) + (let* ((as-launch-group-ptr (-> (the (pointer (pointer sparticle-launch-group)) data))) + (as-string (the string as-launch-group-ptr))) + (cond + ((part-group-pointer? as-launch-group-ptr) + (format *debug-temp-string* "(group) ~A" (-> as-launch-group-ptr 0 name)) + ) + ((= (-> as-string type) string) + (format *debug-temp-string* "(string) ~A" as-string) + ) + (else + (format *debug-temp-string* "" as-launch-group-ptr) + ) + ) + ) ) (else ;; more generic tag info (dotimes (ii (-> e tag i elt-count)) - (format *debug-temp-string* " ") (case (-> e tag i elt-type) ((string symbol type) (format *debug-temp-string* "~A" (-> (the (pointer basic) data) ii))) @@ -198,10 +213,10 @@ (format *debug-temp-string* "~%(~S)" (begin (bit-enum->string task-mask (-> (the (pointer uint32) data) ii) (clear *temp-string*)) *temp-string*)) (+! y-adv 14) ) - ;; (('elevator-flags) - ;; (format *debug-temp-string* "~%(~S)" (begin (bit-enum->string elevator-flags (-> (the (pointer uint32) data) ii) (clear *temp-string*)) *temp-string*)) - ;; (+! y-adv 14) - ;; ) + (('elevator-flags) + (format *debug-temp-string* "~%(~S)" (begin (bit-enum->string elevator-flags (-> (the (pointer uint32) data) ii) (clear *temp-string*)) *temp-string*)) + (+! y-adv 14) + ) (else (format *debug-temp-string* "#x~x" (-> (the (pointer uint32) data) ii)) ) @@ -267,6 +282,7 @@ (set! ii (the int (-> e tag i elt-count))) ) ) + (format *debug-temp-string* " ") ) ) ) diff --git a/test/decompiler/reference/jak2/engine/common_objs/collectables-part_REF.gc b/test/decompiler/reference/jak2/engine/common_objs/collectables-part_REF.gc index 58ab30b81..fba007b64 100644 --- a/test/decompiler/reference/jak2/engine/common_objs/collectables-part_REF.gc +++ b/test/decompiler/reference/jak2/engine/common_objs/collectables-part_REF.gc @@ -417,7 +417,7 @@ :id 82 :flags (unk-7) :bounds (static-bspherem 0 0 0 4) - :scale (0.0 0.0 0.0) + :scale (1.0 10.0 1.0) :parts ((sp-item 290 :period 25 :length 5 :binding 288) (sp-item 288 :flags (bit1 start-dead launch-asap)) (sp-item 288 :flags (bit1 start-dead launch-asap)) @@ -1461,7 +1461,3 @@ (sp-flt spt-rotate-y (degrees 0.0)) ) ) - - - - diff --git a/test/decompiler/reference/jak2/engine/debug/default-menu_REF.gc b/test/decompiler/reference/jak2/engine/debug/default-menu_REF.gc index 65461db75..f10a8b75b 100644 --- a/test/decompiler/reference/jak2/engine/debug/default-menu_REF.gc +++ b/test/decompiler/reference/jak2/engine/debug/default-menu_REF.gc @@ -3839,7 +3839,7 @@ (function "Reset Actors" #f ,(lambda () (reset-actors 'debug) (none))) (function "Traffic Start" #f ,(lambda () (let ((gp-0 traffic-start)) - (if (valid? gp-0 function (the-as symbol "") #t 0) + (if (valid? gp-0 function "" #t 0) (gp-0) ) ) @@ -3848,7 +3848,7 @@ ) (function "Traffic Kill" #f ,(lambda () (let ((gp-0 traffic-kill)) - (if (valid? gp-0 function (the-as symbol "") #t 0) + (if (valid? gp-0 function "" #t 0) (gp-0) ) ) diff --git a/test/decompiler/reference/jak2/engine/debug/viewer_REF.gc b/test/decompiler/reference/jak2/engine/debug/viewer_REF.gc index f45e2962c..c36b716a9 100644 --- a/test/decompiler/reference/jak2/engine/debug/viewer_REF.gc +++ b/test/decompiler/reference/jak2/engine/debug/viewer_REF.gc @@ -231,7 +231,7 @@ This commonly includes things such as: (set! (-> obj root) (new 'process 'trsqv)) (process-drawable-from-entity! obj arg0) (let ((s4-0 (-> arg0 etype))) - (if (valid? s4-0 type #f #f 0) + (if (valid? s4-0 type (the-as string #f) #f 0) (init-viewer (symbol->string (-> s4-0 symbol)) (res-lump-struct arg0 'name string)) (go process-drawable-art-error "unknown") ) diff --git a/test/decompiler/reference/jak2/engine/dma/dma-disasm_REF.gc b/test/decompiler/reference/jak2/engine/dma/dma-disasm_REF.gc index 8d7704a57..0fcb04418 100644 --- a/test/decompiler/reference/jak2/engine/dma/dma-disasm_REF.gc +++ b/test/decompiler/reference/jak2/engine/dma/dma-disasm_REF.gc @@ -547,7 +547,7 @@ (a2-2 "dma-list tag pointer") ) (cond - ((not (t9-1 a0-2 (the-as type a1-2) (the-as symbol a2-2) #t gp-0)) + ((not (t9-1 a0-2 (the-as type a1-2) a2-2 #t gp-0)) (format gp-0 "ERROR: dma-list tag pointer invalid~%") (set! s0-0 'error) ) @@ -558,7 +558,7 @@ (a1-4 #f) ) (set! a2-2 "dma-list data pointer") - (t9-3 a0-4 (the-as type a1-4) (the-as symbol a2-2) #t gp-0) + (t9-3 a0-4 (the-as type a1-4) a2-2 #t gp-0) ) ) ) diff --git a/test/decompiler/reference/jak2/engine/entity/entity_REF.gc b/test/decompiler/reference/jak2/engine/entity/entity_REF.gc index ffad1409e..92a6d9cff 100644 --- a/test/decompiler/reference/jak2/engine/entity/entity_REF.gc +++ b/test/decompiler/reference/jak2/engine/entity/entity_REF.gc @@ -71,6 +71,7 @@ ) ;; definition for method 3 of type actor-group +;; INFO: this function exists in multiple non-identical object files (defmethod inspect actor-group ((obj actor-group)) (format #t "[~8x] ~A~%" obj (-> obj type)) (format #t "~Tlength: ~D~%" (-> obj length)) @@ -530,6 +531,7 @@ ) ;; definition for method 2 of type process +;; INFO: this function exists in multiple non-identical object files (defmethod print process ((obj process)) (cond ((and (-> obj top-thread) (!= (-> obj status) 'dead)) @@ -658,7 +660,7 @@ ;; WARN: Return type mismatch entity-actor vs none. (defmethod debug-print entity-actor ((obj entity-actor) (arg0 symbol) (arg1 type)) (let ((s4-0 (-> obj etype))) - (when (or (not arg1) (and s4-0 (valid? s4-0 type #f #f 0) (type-type? s4-0 arg1))) + (when (or (not arg1) (and s4-0 (valid? s4-0 type (the-as string #f) #f 0) (type-type? s4-0 arg1))) (format #t "~5D #x~8X ~-26S" (-> obj extra vis-id) obj (res-lump-struct obj 'name structure)) (let ((t9-4 format) (a0-5 #t) @@ -1813,7 +1815,10 @@ ) ((begin (set! (-> s4-0 type) s5-0) - (and s5-0 (valid? s5-0 type #f #f 0) (valid? (method-of-object s4-0 init-from-entity!) function #f #f 0)) + (and s5-0 + (valid? s5-0 type (the-as string #f) #f 0) + (valid? (method-of-object s4-0 init-from-entity!) function (the-as string #f) #f 0) + ) ) (init-entity s4-0 obj (the-as process s5-0)) ) diff --git a/test/decompiler/reference/jak2/engine/level/level_REF.gc b/test/decompiler/reference/jak2/engine/level/level_REF.gc index 4e23a2f26..81ee77fe8 100644 --- a/test/decompiler/reference/jak2/engine/level/level_REF.gc +++ b/test/decompiler/reference/jak2/engine/level/level_REF.gc @@ -186,7 +186,7 @@ (dotimes (s5-0 8) (let ((s4-0 (-> obj bsp vis-info s5-0))) (cond - ((and s4-0 (nonzero? s4-0) (valid? s4-0 level-vis-info #f #f 0)) + ((and s4-0 (nonzero? s4-0) (valid? s4-0 level-vis-info (the-as string #f) #f 0)) (set! (-> obj vis-info s5-0) s4-0) (set! (-> s4-0 current-vis-string) (the-as uint -1)) (if (= (-> s4-0 from-level) (-> obj load-name)) @@ -1110,7 +1110,7 @@ (set! (-> *level* loading-level) obj) (set! *level-type-list* (the-as type (&-> obj level-type))) (cond - ((valid? (-> obj bsp light-hash) light-hash #f #t 0) + ((valid? (-> obj bsp light-hash) light-hash (the-as string #f) #t 0) (set! (-> obj light-hash) (-> obj bsp light-hash)) ) (else diff --git a/test/decompiler/reference/jak2/engine/process-drawable/process-drawable_REF.gc b/test/decompiler/reference/jak2/engine/process-drawable/process-drawable_REF.gc index fcd5f1052..91228a4fd 100644 --- a/test/decompiler/reference/jak2/engine/process-drawable/process-drawable_REF.gc +++ b/test/decompiler/reference/jak2/engine/process-drawable/process-drawable_REF.gc @@ -813,7 +813,7 @@ ) (format (clear *temp-string*) "skel-~S" arg0) (let ((s4-1 (s3-0 s4-0 *temp-string* (the-as (pointer uint32) #f)))) - (if (and (nonzero? s4-1) (valid? s4-1 skeleton-group #f #f 0)) + (if (and (nonzero? s4-1) (valid? s4-1 skeleton-group (the-as string #f) #f 0)) (initialize-skeleton obj (the-as skeleton-group s4-1) (the-as pair 0)) (go process-drawable-art-error arg0) ) @@ -1948,7 +1948,7 @@ (let ((s3-0 (-> arg0 node-list data s4-0))) (when (-> s3-0 geo) (cond - ((valid? (-> s3-0 geo) drawable (the-as symbol "cspace geo") #t *valid-con*) + ((valid? (-> s3-0 geo) drawable "cspace geo" #t *valid-con*) ) (else (format *valid-con* "ERROR: ~A has an invalid geo ~A~%" s3-0 (-> s3-0 geo)) @@ -1974,7 +1974,7 @@ (cond ((logtest? (-> s2-0 command) (joint-control-command joint-control-command-4)) ) - ((valid? (-> s2-0 frame-group) art-joint-anim (the-as symbol "joint-control frame-group") #t *valid-con*) + ((valid? (-> s2-0 frame-group) art-joint-anim "joint-control frame-group" #t *valid-con*) (when (not (and (>= (the int (-> s2-0 frame-num)) 0) (< (the int (-> s2-0 frame-num)) (the-as int (-> s2-0 frame-group frames num-frames))) ) diff --git a/test/decompiler/reference/jak2/engine/spatial-hash/spatial-hash_REF.gc b/test/decompiler/reference/jak2/engine/spatial-hash/spatial-hash_REF.gc index 9e479b6c7..a1d83cb2e 100644 --- a/test/decompiler/reference/jak2/engine/spatial-hash/spatial-hash_REF.gc +++ b/test/decompiler/reference/jak2/engine/spatial-hash/spatial-hash_REF.gc @@ -949,7 +949,7 @@ (defmethod validate-objects spatial-hash ((obj spatial-hash)) (dotimes (s5-0 (-> obj object-count)) (let ((a0-2 (-> obj object-array s5-0 object))) - (when (not (valid? a0-2 basic (the-as symbol "") #t 0)) + (when (not (valid? a0-2 basic "" #t 0)) (break!) 0 ) diff --git a/test/decompiler/reference/jak2/engine/target/target-turret_REF.gc b/test/decompiler/reference/jak2/engine/target/target-turret_REF.gc index ca1aa90f4..dd6b31bb6 100644 --- a/test/decompiler/reference/jak2/engine/target/target-turret_REF.gc +++ b/test/decompiler/reference/jak2/engine/target/target-turret_REF.gc @@ -2336,7 +2336,7 @@ ;; definition for method 10 of type base-turret (defmethod deactivate base-turret ((obj base-turret)) - (if (valid? (-> obj hud) (the-as type #f) (the-as symbol "") #t 0) + (if (valid? (-> obj hud) (the-as type #f) "" #t 0) (send-event (handle->process (-> obj hud)) 'hide-and-die) ) (sound-stop (-> obj sound-id 0)) diff --git a/test/decompiler/reference/jak2/kernel/gcommon_REF.gc b/test/decompiler/reference/jak2/kernel/gcommon_REF.gc index 1ae7fc0f3..cf1a5342c 100644 --- a/test/decompiler/reference/jak2/kernel/gcommon_REF.gc +++ b/test/decompiler/reference/jak2/kernel/gcommon_REF.gc @@ -974,7 +974,7 @@ ;; ERROR: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] ;; ERROR: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] ;; ERROR: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] -(defun valid? ((arg0 object) (arg1 type) (arg2 symbol) (arg3 symbol) (arg4 object)) +(defun valid? ((arg0 object) (arg1 type) (arg2 string) (arg3 symbol) (arg4 object)) (local-vars (v1-11 int) (v1-26 int) (v1-56 int) (v1-60 int) (s7-0 none)) (let ((v1-1 (and (>= (the-as uint arg0) (the-as uint __START-OF-TABLE__)) (< (the-as uint arg0) (the-as uint #x8000000))) @@ -1110,7 +1110,7 @@ ) #f ) - ((and (!= arg1 type) (not (valid? (rtype-of arg0) type #f #t 0))) + ((and (!= arg1 type) (not (valid? (rtype-of arg0) type (the-as string #f) #t 0))) (if arg2 (format arg4 diff --git a/test/decompiler/reference/jak2/levels/castle/boss/casboss-part_REF.gc b/test/decompiler/reference/jak2/levels/castle/boss/casboss-part_REF.gc index 96ca44dae..dce795b8e 100644 --- a/test/decompiler/reference/jak2/levels/castle/boss/casboss-part_REF.gc +++ b/test/decompiler/reference/jak2/levels/castle/boss/casboss-part_REF.gc @@ -141,7 +141,7 @@ :flags (unk-4 unk-6 unk-7) :bounds (static-bspherem 0 -2 2 6) :rotate ((degrees 0) (degrees -90) (degrees 0)) - :scale (0.0 -16384.0 0.0) + :scale (1.5 0.6 1.5) :parts ((sp-item 5203 :fade-after (meters 300) :falloff-to (meters 300) :flags (bit7))) ) diff --git a/test/decompiler/reference/jak2/levels/city/onin_tent/onintent-scenes_REF.gc b/test/decompiler/reference/jak2/levels/city/onin_tent/onintent-scenes_REF.gc index 11420cf8f..0b4eaed4d 100644 --- a/test/decompiler/reference/jak2/levels/city/onin_tent/onintent-scenes_REF.gc +++ b/test/decompiler/reference/jak2/levels/city/onin_tent/onintent-scenes_REF.gc @@ -417,7 +417,7 @@ :flags (unk-6 unk-7) :bounds (static-bspherem 0 0 0 4) :rotate ((degrees 90) (degrees 0) (degrees 0)) - :scale (16384.0 0.0 0.0) + :scale (0.5 0.5 0.5) :parts ((sp-item 3478 :flags (is-3d bit6 bit7)) (sp-item 3481 :flags (bit6))) ) diff --git a/test/decompiler/reference/jak2/levels/city/port/ctyport-part_REF.gc b/test/decompiler/reference/jak2/levels/city/port/ctyport-part_REF.gc index be34df110..2c8423486 100644 --- a/test/decompiler/reference/jak2/levels/city/port/ctyport-part_REF.gc +++ b/test/decompiler/reference/jak2/levels/city/port/ctyport-part_REF.gc @@ -36,7 +36,7 @@ :id 930 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 12) - :scale (0.0 0.0 0.0) + :scale (0.625 0.625 0.625) :parts ((sp-item 4148 :fade-after (meters 250) :falloff-to (meters 150) :flags (bit7))) ) diff --git a/test/decompiler/reference/jak2/levels/common/enemy/hover/crimson-guard-hover_REF.gc b/test/decompiler/reference/jak2/levels/common/enemy/hover/crimson-guard-hover_REF.gc index 972fcb695..4ea40b04f 100644 --- a/test/decompiler/reference/jak2/levels/common/enemy/hover/crimson-guard-hover_REF.gc +++ b/test/decompiler/reference/jak2/levels/common/enemy/hover/crimson-guard-hover_REF.gc @@ -9,7 +9,7 @@ :flags (use-local-clock unk-5 unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (0.75 0.75 0.75) :parts ((sp-item 744 :flags (bit6) :period 900 :length 5) (sp-item 745 :flags (bit6) :period 900 :length 5) (sp-item 746 :period 900 :length 15) @@ -28,7 +28,7 @@ :flags (use-local-clock unk-5 unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (0.3 0.3 0.3) :parts ((sp-item 744 :flags (bit6) :period 900 :length 5) (sp-item 745 :flags (bit6) :period 900 :length 5) (sp-item 746 :period 900 :length 15) diff --git a/test/decompiler/reference/jak2/levels/common/enemy/hover/wasp_REF.gc b/test/decompiler/reference/jak2/levels/common/enemy/hover/wasp_REF.gc index cb0a5ee14..54565b171 100644 --- a/test/decompiler/reference/jak2/levels/common/enemy/hover/wasp_REF.gc +++ b/test/decompiler/reference/jak2/levels/common/enemy/hover/wasp_REF.gc @@ -9,7 +9,7 @@ :flags (use-local-clock unk-5 unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (0.25 0.25 0.25) :parts ((sp-item 726 :flags (bit6) :period 900 :length 5) (sp-item 727 :flags (bit6) :period 900 :length 5) (sp-item 728 :period 900 :length 15) diff --git a/test/decompiler/reference/jak2/levels/drill_platform/drill-part_REF.gc b/test/decompiler/reference/jak2/levels/drill_platform/drill-part_REF.gc index d24d1b225..06f9b4934 100644 --- a/test/decompiler/reference/jak2/levels/drill_platform/drill-part_REF.gc +++ b/test/decompiler/reference/jak2/levels/drill_platform/drill-part_REF.gc @@ -466,7 +466,7 @@ :id 404 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 7) - :scale (0.0 0.0 0.0) + :scale (0.6 0.6 0.6) :parts ((sp-item 1687 :fade-after (meters 200) :flags (bit6 bit7)) (sp-item 1688 :fade-after (meters 200) :flags (bit6 bit7)) (sp-item 1689 :fade-after (meters 200) :flags (bit6 bit7)) @@ -478,7 +478,7 @@ :id 405 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.7 0.7 0.7) :parts ((sp-item 1687 :fade-after (meters 200) :flags (bit6 bit7)) (sp-item 1688 :fade-after (meters 200) :flags (bit6 bit7)) (sp-item 1689 :fade-after (meters 200) :flags (bit6 bit7)) @@ -2138,7 +2138,7 @@ :flags (unk-4 unk-6 unk-7) :bounds (static-bspherem 0 -2 2 6) :rotate ((degrees 0) (degrees -90) (degrees 0)) - :scale (0.0 -16384.0 0.0) + :scale (0.6 0.6 0.6) :parts ((sp-item 1752 :fade-after (meters 100) :falloff-to (meters 100) :flags (bit7)) (sp-item 1753 :fade-after (meters 200) :falloff-to (meters 240) :flags (bit7)) ) diff --git a/test/decompiler/reference/jak2/levels/forest/forest-obs_REF.gc b/test/decompiler/reference/jak2/levels/forest/forest-obs_REF.gc index c45bc9730..90039bfed 100644 --- a/test/decompiler/reference/jak2/levels/forest/forest-obs_REF.gc +++ b/test/decompiler/reference/jak2/levels/forest/forest-obs_REF.gc @@ -471,7 +471,7 @@ This commonly includes things such as: ;; definition for method 10 of type forest-youngsamos (defmethod deactivate forest-youngsamos ((obj forest-youngsamos)) - (if (valid? (-> obj hud) (the-as type #f) (the-as symbol "") #t 0) + (if (valid? (-> obj hud) (the-as type #f) "" #t 0) (send-event (handle->process (-> obj hud)) 'hide-and-die) ) (sound-stop (the-as sound-id (-> obj sound-id))) diff --git a/test/decompiler/reference/jak2/levels/fortress/rescue/forrescb-part_REF.gc b/test/decompiler/reference/jak2/levels/fortress/rescue/forrescb-part_REF.gc index 50a7e12ab..2a48875b0 100644 --- a/test/decompiler/reference/jak2/levels/fortress/rescue/forrescb-part_REF.gc +++ b/test/decompiler/reference/jak2/levels/fortress/rescue/forrescb-part_REF.gc @@ -275,7 +275,7 @@ :id 664 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2904 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100) (sp-item 2905 :fade-after (meters 80) :flags (bit6 bit7) :period 400 :length 100) (sp-item 2906 :fade-after (meters 60) :flags (bit6 bit7) :period 600 :length 300) @@ -376,7 +376,7 @@ :id 665 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.85 0.85 0.85) :parts ((sp-item 2908 :fade-after (meters 80) :flags (bit6 bit7) :period 300 :length 150) (sp-item 2909 :fade-after (meters 60) :flags (bit6 bit7) :period 150 :length 50) (sp-item 2910 :fade-after (meters 40) :flags (bit6 bit7) :period 600 :length 300) @@ -474,7 +474,7 @@ :id 667 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2911 :fade-after (meters 40) :flags (bit6 bit7) :period 150 :length 75) (sp-item 2912 :fade-after (meters 60) :flags (bit6 bit7) :period 450 :length 50) (sp-item 2913 :fade-after (meters 80) :flags (bit6 bit7) :period 300 :length 225) @@ -788,7 +788,7 @@ :id 669 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2923 :fade-after (meters 40) :flags (bit6 bit7) :period 300 :length 150 :offset 150) (sp-item 2924 :fade-after (meters 60) :flags (bit6 bit7) :period 450 :length 150 :offset 150) (sp-item 2925 :fade-after (meters 80) :flags (bit6 bit7) :period 600 :length 150 :offset 300) @@ -1495,7 +1495,7 @@ :id 673 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2954 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100) (sp-item 2955 :fade-after (meters 60) :flags (bit6 bit7) :period 400 :length 100) (sp-item 2956 :fade-after (meters 40) :flags (bit6 bit7) :period 600 :length 300) @@ -1619,7 +1619,7 @@ :id 674 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2959 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100 :offset 50) (sp-item 2960 :fade-after (meters 60) :flags (bit6 bit7) :period 200 :length 100) (sp-item 2961 :fade-after (meters 40) :flags (bit6 bit7) :period 300 :length 100) @@ -1858,7 +1858,7 @@ :id 675 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2969 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100 :offset 100) (sp-item 2970 :fade-after (meters 60) :flags (bit6 bit7) :period 400 :length 150) (sp-item 2971 :fade-after (meters 40) :flags (bit6 bit7) :period 450 :length 125 :offset 85) @@ -2143,7 +2143,7 @@ :id 676 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2981 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100 :offset 50) (sp-item 2982 :fade-after (meters 60) :flags (bit6 bit7) :period 300 :length 75 :offset 150) (sp-item 2983 :fade-after (meters 40) :flags (bit6 bit7) :period 350 :length 150 :offset 80) @@ -2290,7 +2290,7 @@ :id 677 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2987 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100 :offset 50) (sp-item 2988 :fade-after (meters 60) :flags (bit6 bit7) :period 300 :length 75) (sp-item 2989 :fade-after (meters 40) :flags (bit6 bit7) :period 350 :length 150 :offset 125) @@ -2483,7 +2483,7 @@ :id 678 :flags (unk-4 unk-7) :bounds (static-bspherem 0 0 0 5) - :scale (0.0 0.0 0.0) + :scale (0.8 0.8 0.8) :parts ((sp-item 2995 :fade-after (meters 80) :flags (bit6 bit7) :period 200 :length 100 :offset 50) (sp-item 2996 :fade-after (meters 60) :flags (bit6 bit7) :period 300 :length 75 :offset 150) (sp-item 2997 :fade-after (meters 40) :flags (bit6 bit7) :period 350 :length 150 :offset 80) diff --git a/test/decompiler/reference/jak2/levels/gungame/gun-dummy_REF.gc b/test/decompiler/reference/jak2/levels/gungame/gun-dummy_REF.gc index 77c29c1eb..4f3bb0a97 100644 --- a/test/decompiler/reference/jak2/levels/gungame/gun-dummy_REF.gc +++ b/test/decompiler/reference/jak2/levels/gungame/gun-dummy_REF.gc @@ -63,7 +63,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.83 1.2) :parts ((sp-item 2297 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2298 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2299 :flags (bit7) :period 1200 :length 15) @@ -236,7 +236,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.97 0.87) :parts ((sp-item 2304 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2305 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2299 :flags (bit7) :period 1200 :length 15) @@ -358,7 +358,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.97 1.27) :parts ((sp-item 2306 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2307 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2299 :flags (bit7) :period 1200 :length 15) @@ -480,7 +480,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 1.13 1.3) :parts ((sp-item 2308 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2309 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2299 :flags (bit7) :period 1200 :length 15) @@ -602,7 +602,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.83 1.2) :parts ((sp-item 2310 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2311 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2312 :flags (bit7) :period 1200 :length 15) @@ -775,7 +775,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.83 1.2) :parts ((sp-item 2314 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2315 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2316 :flags (bit7) :period 1200 :length 15) @@ -948,7 +948,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.73 0.97) :parts ((sp-item 2318 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2319 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2320 :flags (bit7) :period 1200 :length 15) @@ -1210,7 +1210,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.6 0.43) :parts ((sp-item 2323 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2324 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2320 :flags (bit7) :period 1200 :length 15) @@ -1332,7 +1332,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 0.9 0.67) :parts ((sp-item 2325 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2326 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2320 :flags (bit7) :period 1200 :length 15) @@ -1454,7 +1454,7 @@ :flags (use-local-clock unk-6 unk-7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) - :scale (0.0 16384.0 0.0) + :scale (1.0 1.07 0.6) :parts ((sp-item 2327 :flags (is-3d bit7) :period 1200 :length 10) (sp-item 2328 :flags (is-3d bit7) :period 1200 :length 15) (sp-item 2320 :flags (bit7) :period 1200 :length 15) diff --git a/test/decompiler/reference/jak2/levels/mars_tomb/tomb-part_REF.gc b/test/decompiler/reference/jak2/levels/mars_tomb/tomb-part_REF.gc index d2cdef0ae..998650d7a 100644 --- a/test/decompiler/reference/jak2/levels/mars_tomb/tomb-part_REF.gc +++ b/test/decompiler/reference/jak2/levels/mars_tomb/tomb-part_REF.gc @@ -67,7 +67,7 @@ :id 687 :flags (unk-7) :bounds (static-bspherem 0 3 0 16) - :scale (0.0 0.0 0.0) + :scale (1.4 2.0 1.4) :parts ((sp-item 3069 :fade-after (meters 200) :falloff-to (meters 200) :flags (bit7)) (sp-item 3070 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 105 :length 45) (sp-item 3071 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 130 :length 35 :offset 20) @@ -190,7 +190,7 @@ :flags (unk-6 unk-7) :bounds (static-bspherem 0 3 0 16) :rotate ((degrees 0) (degrees 87) (degrees 0)) - :scale (0.0 15837.866 0.0) + :scale (0.9 0.7 1.2) :parts ((sp-item 3069 :fade-after (meters 200) :falloff-to (meters 200) :flags (bit7)) (sp-item 3070 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 115 :length 40) (sp-item 3071 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 175 :length 45 :offset 20) @@ -212,7 +212,7 @@ :flags (unk-6 unk-7) :bounds (static-bspherem 0 3 0 16) :rotate ((degrees 0) (degrees 223) (degrees 0)) - :scale (0.0 40595.91 0.0) + :scale (1.0 1.25 0.8) :parts ((sp-item 3069 :fade-after (meters 200) :falloff-to (meters 200) :flags (bit7)) (sp-item 3070 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 125 :length 40) (sp-item 3071 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 190 :length 45 :offset 20) @@ -233,7 +233,7 @@ :id 691 :flags (unk-7) :bounds (static-bspherem 0 3 0 16) - :scale (0.0 0.0 0.0) + :scale (0.5 0.5 0.5) :parts ((sp-item 3069 :fade-after (meters 50) :falloff-to (meters 200) :flags (bit7)) (sp-item 3070 :fade-after (meters 100) :falloff-to (meters 250) :flags (bit7) :period 125 :length 40) (sp-item 3071 :fade-after (meters 100) :falloff-to (meters 250) :flags (bit7) :period 190 :length 45 :offset 20) @@ -468,7 +468,7 @@ :id 692 :flags (unk-7) :bounds (static-bspherem 0 2 0 6) - :scale (0.0 0.0 0.0) + :scale (0.3 0.5 0.3) :parts ((sp-item 3083 :fade-after (meters 100) :falloff-to (meters 100) :flags (bit7)) (sp-item 3084 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 100 :length 50) (sp-item 3085 :fade-after (meters 150) :falloff-to (meters 150) :flags (bit7) :period 120 :length 55 :offset 20) @@ -492,7 +492,7 @@ :flags (unk-6 unk-7) :bounds (static-bspherem 0 2 0 6) :rotate ((degrees 0) (degrees 63) (degrees 0)) - :scale (0.0 11468.8 0.0) + :scale (0.25 0.6 0.35) :parts ((sp-item 3083 :fade-after (meters 100) :falloff-to (meters 100) :flags (bit7)) (sp-item 3084 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 90 :length 50) (sp-item 3085 :fade-after (meters 150) :falloff-to (meters 150) :flags (bit7) :period 160 :length 55 :offset 20) @@ -516,7 +516,7 @@ :flags (unk-6 unk-7) :bounds (static-bspherem 0 2 0 6) :rotate ((degrees 0) (degrees 173) (degrees 0)) - :scale (0.0 31493.69 0.0) + :scale (0.325 0.4 0.275) :parts ((sp-item 3083 :fade-after (meters 100) :falloff-to (meters 100) :flags (bit7)) (sp-item 3084 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 125 :length 50) (sp-item 3085 :fade-after (meters 150) :falloff-to (meters 150) :flags (bit7) :period 145 :length 55 :offset 20) diff --git a/test/decompiler/reference/jak2/levels/stadium/stadium-obs_REF.gc b/test/decompiler/reference/jak2/levels/stadium/stadium-obs_REF.gc index 47b2b2522..4a2317025 100644 --- a/test/decompiler/reference/jak2/levels/stadium/stadium-obs_REF.gc +++ b/test/decompiler/reference/jak2/levels/stadium/stadium-obs_REF.gc @@ -2280,7 +2280,7 @@ This commonly includes things such as: ;; definition for method 10 of type stad-samos (defmethod deactivate stad-samos ((obj stad-samos)) - (if (valid? (-> obj hud) (the-as type #f) (the-as symbol "") #t 0) + (if (valid? (-> obj hud) (the-as type #f) "" #t 0) (send-event (handle->process (-> obj hud)) 'hide-and-die) ) (kill-lightning obj) diff --git a/test/decompiler/reference/jak2/levels/underport/under-part_REF.gc b/test/decompiler/reference/jak2/levels/underport/under-part_REF.gc index a29e8a5b0..fa11a9ef7 100644 --- a/test/decompiler/reference/jak2/levels/underport/under-part_REF.gc +++ b/test/decompiler/reference/jak2/levels/underport/under-part_REF.gc @@ -642,7 +642,7 @@ :id 507 :flags (unk-7) :bounds (static-bspherem 0 2 0 6) - :scale (0.0 0.0 0.0) + :scale (0.3 0.5 0.3) :parts ((sp-item 2234 :fade-after (meters 100) :falloff-to (meters 100) :flags (bit7)) (sp-item 2235 :fade-after (meters 250) :falloff-to (meters 250) :flags (bit7) :period 100 :length 50) (sp-item 2236 :fade-after (meters 150) :falloff-to (meters 150) :flags (bit7) :period 120 :length 55 :offset 20)