d/jak2: finish remaining *-h files that aren't in progress or spoken for (#2059)

This finishes off all the remaining "header" files that someone isn't
already working on.
This commit is contained in:
Tyler Wilding 2022-12-30 12:09:04 -05:00 committed by GitHub
parent 6181c6c997
commit 2eca614870
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
32 changed files with 28830 additions and 261 deletions

View File

@ -128,7 +128,7 @@ tasks:
- '{{.OFFLINETEST_BIN_RELEASE_DIR}}/offline-test --iso_data_path "./iso_data/{{.GAME}}" --game {{.GAME}}'
offline-tests-fast:
cmds:
- '{{.OFFLINETEST_BIN_RELEASE_DIR}}/offline-test --iso_data_path "./iso_data/{{.GAME}}" --game {{.GAME}} -p --num_threads 32 --dump_current_output --fail-on-cmp'
- '{{.OFFLINETEST_BIN_RELEASE_DIR}}/offline-test --iso_data_path "./iso_data/{{.GAME}}" --game {{.GAME}} --pretty-print --num_threads 32 --dump_current_output --fail-on-cmp'
offline-test-file:
cmds:
- '{{.OFFLINETEST_BIN_RELEASE_DIR}}/offline-test --iso_data_path "./iso_data/{{.GAME}}" --game {{.GAME}} --file {{.FILE}}'
@ -136,7 +136,7 @@ tasks:
update-ref-tests:
cmds:
- cmd: python ./scripts/tasks/delete-file-or-folder.py --path failures
- cmd: '{{.OFFLINETEST_BIN_RELEASE_DIR}}/offline-test --iso_data_path "./iso_data/{{.GAME}}" --game {{.GAME}} --num_threads 32 --dump_current_output --fail-on-cmp'
- cmd: '{{.OFFLINETEST_BIN_RELEASE_DIR}}/offline-test --iso_data_path "./iso_data/{{.GAME}}" --game {{.GAME}} --pretty-print --num_threads 32 --dump_current_output --fail-on-cmp'
ignore_error: true
- python ./scripts/update_decomp_reference.py ./failures ./test/decompiler/reference/ --game {{.GAME}}
- task: offline-tests-fast

View File

@ -1268,6 +1268,7 @@ int TypeSystem::get_size_in_type(const Field& field) const {
"Attempted to use `{}` inline, this probably isn't what you wanted.\n",
field_type->get_name());
}
// TODO - crashes LSP
ASSERT(field_type->is_reference());
return field.array_size() * align(field_type->get_size_in_memory(),
field_type->get_inline_array_stride_alignment());

View File

@ -35368,7 +35368,6 @@
;; hover-enemy-h ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#|
(deftype hover-enemy-info (structure)
((fly-forward-anim int32 :offset-assert 0)
(fly-backward-anim int32 :offset-assert 4)
@ -35386,36 +35385,34 @@
:size-assert #x2c
:flag-assert #x90000002c
)
|#
#|
(deftype hover-enemy (enemy)
((hover basic :offset-assert 528)
(hover-info hover-enemy-info :offset-assert 532)
(formation-entity basic :offset-assert 536)
(fly-anim-speed float :offset-assert 540)
(restart-fly-anims basic :offset-assert 544)
(main-joint-acc vector :inline :offset-assert 556)
(main-joint-vel vector :inline :offset-assert 572)
(main-joint-pos vector :inline :offset-assert 588)
(thrust UNKNOWN 2 :offset-assert 604)
(rotation-vec vector :inline :offset-assert 620)
(dest-pos vector :inline :offset-assert 636)
(offset vector :inline :offset-assert 652)
(surface-normal vector :inline :offset-assert 668)
(local-dir vector :inline :offset-assert 684)
(scale float :offset-assert 700)
(scale-timer uint64 :offset-assert 708)
(hit-surface? basic :offset-assert 716)
(knocked-start-level float :offset-assert 720)
(knocked-fall-dist float :offset-assert 724)
(flying-death-anim int32 :offset-assert 728)
(flying-death-transv vector :inline :offset-assert 732)
(flying-death-engine int32 :offset-assert 748)
(flying-death-thrust-rotate float :offset-assert 752)
(flying-death-spin float :offset-assert 756)
(flying-death-spin-dest float :offset-assert 760)
(flying-death-spin-axis vector :inline :offset-assert 764)
((hover basic :offset-assert 532)
(hover-info hover-enemy-info :offset-assert 536)
(formation-entity basic :offset-assert 540)
(fly-anim-speed float :offset-assert 544)
(restart-fly-anims basic :offset-assert 548)
(main-joint-acc vector :inline :offset-assert 560)
(main-joint-vel vector :inline :offset-assert 576)
(main-joint-pos vector :inline :offset-assert 592)
(thrust int64 2 :offset-assert 608)
(rotation-vec vector :inline :offset-assert 624)
(dest-pos vector :inline :offset-assert 640)
(offset vector :inline :offset-assert 656)
(surface-normal vector :inline :offset-assert 672)
(local-dir vector :inline :offset-assert 688)
(scale float :offset-assert 704)
(scale-timer uint64 :offset-assert 712)
(hit-surface? basic :offset-assert 720)
(knocked-start-level float :offset-assert 724)
(knocked-fall-dist float :offset-assert 728)
(flying-death-anim int32 :offset-assert 732)
(flying-death-transv vector :inline :offset-assert 736)
(flying-death-engine int32 :offset-assert 752)
(flying-death-thrust-rotate float :offset-assert 756)
(flying-death-spin float :offset-assert 760)
(flying-death-spin-dest float :offset-assert 764)
(flying-death-spin-axis vector :inline :offset-assert 768)
)
:method-count-assert 156
:size-assert #x310
@ -35442,7 +35439,6 @@
(hover-enemy-method-155 () none 155)
)
)
|#
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -36017,22 +36013,48 @@
;; predator-h ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#|
;; +++predator-h:predator-node-flag
(defenum predator-node-flag
:type uint32
:bitfield #t
(taken)
(spawnable)
)
;; ---predator-h:predator-node-flag
(deftype predator-node (structure)
()
(
(position vector :inline :offset-assert 0)
(nav-mesh-id uint32 :offset-assert 16)
(edge-index int16 :offset-assert 20)
(edge-count int16 :offset-assert 22)
(radius float :offset-assert 24)
(flags predator-node-flag :offset-assert 28)
(points uint32 :offset-assert 32)
(pos-x float :offset 0)
(pos-y float :offset 4)
(pos-z float :offset 8)
)
:method-count-assert 9
:size-assert #x24
:flag-assert #x900000024
;; Failed to read fields.
)
|#
;; (deftype predator-edge (structure)
;; ()
;; :flag-assert #x900000004
;; )
;; +++predator-h:predator-edge-flag
(defenum predator-edge-flag
:type uint16
:bitfield #t
)
;; ---predator-h:predator-edge-flag
(deftype predator-edge (structure)
(
(dest-node-id uint16 :offset-assert 0)
(flags predator-edge-flag :offset-assert 2)
)
:flag-assert #x900000004
)
#|
(deftype predator-graph (structure)
((node-count uint16 :offset-assert 0)
(edge-count uint16 :offset-assert 2)
@ -36043,7 +36065,6 @@
:size-assert #xc
:flag-assert #x90000000c
)
|#
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -38499,13 +38520,13 @@
;; ai-task-h ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#|
(deftype ai-task (basic)
((next basic :offset-assert 4)
(prev basic :offset-assert 8)
(pool basic :offset-assert 12)
(unique-id uint32 :offset-assert 16)
(bytes UNKNOWN 16 :offset-assert 32)
((next basic :offset-assert 4)
(prev basic :offset-assert 8)
(pool basic :offset-assert 12)
(unique-id uint32 :offset-assert 16)
(pad-ik1n231 uint32 3 :offset-assert 20)
(bytes int8 16 :offset-assert 32)
)
:method-count-assert 12
:size-assert #x30
@ -38516,7 +38537,6 @@
(ai-task-method-11 () none 11)
)
)
|#
#|
(deftype ai-task-pool (basic)
@ -38563,7 +38583,6 @@
;; bot-h ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#|
(deftype bot-focus-info (structure)
((max-los-dist float :offset-assert 0)
(fproc basic :offset-assert 4)
@ -38582,7 +38601,6 @@
:size-assert #x70
:flag-assert #x900000070
)
|#
#|
(deftype bot-turn-info (structure)
@ -38629,20 +38647,18 @@
)
|#
#|
(deftype bot-spot (structure)
((center vector :inline :offset-assert 0)
(center-x float :offset-assert 0)
(center-y float :offset-assert 4)
(center-z float :offset-assert 8)
(inside-xz-dist float :offset-assert 12)
(center-x float :offset 0)
(center-y float :offset 4)
(center-z float :offset 8)
(inside-xz-dist float :offset 12)
(blocked-xz-dist float :offset-assert 16)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
|#
#|
(deftype bot-waypoint (basic)
@ -38663,7 +38679,6 @@
)
|#
#|
(deftype bot-course (basic)
((course-id uint8 :offset-assert 4)
(speech-count uint16 :offset-assert 6)
@ -38684,62 +38699,60 @@
:flag-assert #x900000030
;; field default-check-too-far uses ~A with a signed load
)
|#
#|
(deftype bot (nav-enemy)
((bot-flags uint32 :offset-assert 600)
(min-speed float :offset-assert 604)
(max-speed float :offset-assert 608)
(follow-offset float :offset-assert 612)
(too-far-warn-dist float :offset-assert 616)
(too-far-fail-dist-delta float :offset-assert 620)
(too-far-warn-dist-default float :offset-assert 624)
(too-far-fail-dist-delta-default float :offset-assert 628)
(travel-prev-ry float :offset-assert 632)
(travel-prev-ry1 float :offset-assert 636)
(player-blocking float :offset-assert 640)
(ai-ctrl basic :offset-assert 644)
(course basic :offset-assert 648)
(waypoint basic :offset-assert 652)
(waypoint-bits uint32 :offset-assert 656)
(waypoint-int32a int32 :offset-assert 660)
(bot-task-bits uint32 :offset-assert 664)
(hit-invuln-ignore-me-delay uint32 :offset-assert 668)
(hit-invuln-focus-disable-delay uint32 :offset-assert 672)
(warn-to-fail-timeout uint32 :offset-assert 676)
(warn-min-delay uint32 :offset-assert 680)
(warn-max-delay uint32 :offset-assert 684)
(spot-color uint32 :offset-assert 688)
(waypoint-request int16 :offset-assert 692)
(hit-by-enemy-count uint16 :offset-assert 694)
(hit-by-player-count uint16 :offset-assert 696)
(notice-enemy-dist float :offset-assert 700)
(channel uint8 :offset-assert 704)
(focus-mode int8 :offset-assert 705)
(nav-mesh-index int8 :offset-assert 706)
(delay-too-far-check int8 :offset-assert 707)
(slave-id int8 :offset-assert 708)
(vehicle-seat-index int8 :offset-assert 709)
(bot-health-index int8 :offset-assert 710)
(task basic :offset-assert 712)
(swivel-joint-mod basic :offset-assert 716)
(health-handle uint64 :offset-assert 724)
(poi-handle uint64 :offset-assert 732)
(my-simple-focus uint32 :offset-assert 740)
(attacker-handle uint64 :offset-assert 748)
(scene-player-handle uint64 :offset-assert 756)
(master-handle uint64 :offset-assert 764)
(vehicle-handle uint64 :offset-assert 772)
(hit-invuln-starting-time time-frame :offset-assert 780)
(danger-time time-frame :offset-assert 788)
(attacker-time time-frame :offset-assert 796)
(started-warning-time time-frame :offset-assert 804)
(waypoint-time0 uint64 :offset-assert 812)
(next-too-far-warn-time time-frame :offset-assert 820)
(spot bot-spot :inline :offset-assert 828)
(follow-dir vector :inline :offset-assert 860)
(focus-info bot-focus-info :inline :offset-assert 876)
((bot-flags uint32 :offset-assert 604)
(min-speed float :offset-assert 608)
(max-speed float :offset-assert 612)
(follow-offset float :offset-assert 616)
(too-far-warn-dist float :offset-assert 620)
(too-far-fail-dist-delta float :offset-assert 624)
(too-far-warn-dist-default float :offset-assert 628)
(too-far-fail-dist-delta-default float :offset-assert 632)
(travel-prev-ry float :offset-assert 636)
(travel-prev-ry1 float :offset-assert 640)
(player-blocking float :offset-assert 644)
(ai-ctrl basic :offset-assert 648)
(course basic :offset-assert 652)
(waypoint basic :offset-assert 656)
(waypoint-bits uint32 :offset-assert 660)
(waypoint-int32a int32 :offset-assert 664)
(bot-task-bits uint32 :offset-assert 668)
(hit-invuln-ignore-me-delay uint32 :offset-assert 672)
(hit-invuln-focus-disable-delay uint32 :offset-assert 676)
(warn-to-fail-timeout uint32 :offset-assert 680)
(warn-min-delay uint32 :offset-assert 684)
(warn-max-delay uint32 :offset-assert 688)
(spot-color uint32 :offset-assert 692)
(waypoint-request int16 :offset-assert 696)
(hit-by-enemy-count uint16 :offset-assert 698)
(hit-by-player-count uint16 :offset-assert 700)
(notice-enemy-dist float :offset-assert 704)
(channel uint8 :offset-assert 708)
(focus-mode int8 :offset-assert 709)
(nav-mesh-index int8 :offset-assert 710)
(delay-too-far-check int8 :offset-assert 711)
(slave-id int8 :offset-assert 712)
(vehicle-seat-index int8 :offset-assert 713)
(bot-health-index int8 :offset-assert 714)
(task basic :offset-assert 716)
(swivel-joint-mod basic :offset-assert 720)
(health-handle uint64 :offset-assert 728)
(poi-handle uint64 :offset-assert 736)
(my-simple-focus uint32 :offset-assert 744)
(attacker-handle uint64 :offset-assert 752)
(scene-player-handle uint64 :offset-assert 760)
(master-handle uint64 :offset-assert 768)
(vehicle-handle uint64 :offset-assert 776)
(hit-invuln-starting-time time-frame :offset-assert 784)
(danger-time time-frame :offset-assert 792)
(attacker-time time-frame :offset-assert 800)
(started-warning-time time-frame :offset-assert 808)
(waypoint-time0 uint64 :offset-assert 816)
(next-too-far-warn-time time-frame :offset-assert 824)
(spot bot-spot :inline :offset-assert 832)
(follow-dir vector :inline :offset-assert 864)
(focus-info bot-focus-info :inline :offset-assert 880)
)
:method-count-assert 225
:size-assert #x3e0
@ -38794,7 +38807,6 @@
(bot-method-224 () none 224)
)
)
|#
#|
(deftype bot-speech-list (basic)
@ -38896,7 +38908,7 @@
(deftype sig-path (basic)
((sample-count int32 :offset-assert 4)
(samples uint32 :offset-assert 8)
(samples (inline-array sig-path-sample) :offset-assert 8)
)
:method-count-assert 9
:size-assert #xc
@ -40492,10 +40504,9 @@
;; hal-h ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#|
(deftype hal (bot)
((handle-failed-slave-id int8 :offset-assert 988)
(slave-handle UNKNOWN 3 :offset-assert 996)
((handle-failed-slave-id int8 :offset-assert 992)
(slave-handle uint64 3 :offset-assert 1000)
)
:method-count-assert 227
:size-assert #x400
@ -40505,14 +40516,12 @@
(hal-method-226 () none 226)
)
)
|#
#|
(deftype halt-wait-spot (ai-task)
((check-done basic :offset-assert 32)
(which-spot int8 :offset-assert 36)
(num-spots uint8 :offset-assert 37)
(spot-indexes UNKNOWN 6 :offset-assert 38)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(spot-indexes int8 6 :offset 38)
)
:method-count-assert 12
:size-assert #x30
@ -40520,7 +40529,6 @@
(:methods
)
)
|#
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -40541,22 +40549,18 @@
;; ruf-h ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#|
(deftype ruffian-course (bot-course)
((ouch-speeches basic :offset-assert 48)
)
:method-count-assert 9
:size-assert #x34
:flag-assert #x900000034
;; field default-check-too-far uses ~A with a signed load
)
|#
#|
(deftype ruffian (bot)
((travel-anim-interp float :offset-assert 988)
(fired-gun-count uint32 :offset-assert 992)
(next-fire-time time-frame :offset-assert 996)
((travel-anim-interp float :offset-assert 992)
(fired-gun-count uint32 :offset-assert 996)
(next-fire-time time-frame :offset-assert 1000)
)
:method-count-assert 246
:size-assert #x3f0
@ -40585,30 +40589,24 @@
(ruffian-method-245 () none 245)
)
)
|#
#|
(deftype ruft-wait-spot (ai-task)
((check-done basic :offset-assert 32)
(which-spot int8 :offset-assert 36)
(num-spots uint8 :offset-assert 37)
(spot-indexes UNKNOWN 6 :offset-assert 38)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(spot-indexes int8 6 :offset 38)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
(:methods
)
)
|#
#|
(deftype ruft-choose-jump (ai-task)
((check-done basic :offset-assert 32)
(which-spot int8 :offset-assert 36)
(num-spots uint8 :offset-assert 37)
(src-spot-indexes UNKNOWN 4 :offset-assert 38)
(dest-spot-indexes UNKNOWN 4 :offset-assert 42)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(src-spot-indexes int8 4 :offset 38)
(dest-spot-indexes int8 4 :offset 42)
)
:method-count-assert 14
:size-assert #x30
@ -40618,34 +40616,25 @@
(ruft-choose-jump-method-13 () none 13)
)
)
|#
#|
(deftype ruft-fight-focus (ai-task)
()
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
(:methods
)
)
|#
#|
(deftype ruft-plant-bomb (ai-task)
((check-done basic :offset-assert 32)
(which-spot int8 :offset-assert 36)
(num-spots uint8 :offset-assert 37)
(stand-spot-indexes UNKNOWN 2 :offset-assert 38)
(face-spot-indexes UNKNOWN 2 :offset-assert 40)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(stand-spot-indexes int8 2 :offset 38)
(face-spot-indexes int8 2 :offset 40)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
(:methods
)
)
|#
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -40667,19 +40656,15 @@
;; jinx-h ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#|
(deftype jinx (ruffian)
((bomb-handle uint64 :offset-assert 1004)
(bomb-func basic :offset-assert 1012)
(bomb-fuse-delay uint32 :offset-assert 1016)
((bomb-handle uint64 :offset-assert 1008)
(bomb-func basic :offset-assert 1016)
(bomb-fuse-delay uint32 :offset-assert 1020)
)
:method-count-assert 246
:size-assert #x400
:flag-assert #xf603800400
(:methods
)
)
|#
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -40789,16 +40774,12 @@
;; grim-h ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#|
(deftype grim (jinx)
()
:method-count-assert 246
:size-assert #x400
:flag-assert #xf603800400
(:methods
)
)
|#
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -41894,13 +41875,12 @@
;; kidesc-h ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#|
(deftype kid-escort (bot)
((travel-anim-interp float :offset-assert 988)
(arrest-attempt-time time-frame :offset-assert 996)
(arrestor-handle uint64 :offset-assert 1004)
(crocadog-handle uint64 :offset-assert 1012)
(exit-vehicle-dest vector :inline :offset-assert 364)
((travel-anim-interp float :offset-assert 992)
(arrest-attempt-time time-frame :offset-assert 1000)
(arrestor-handle handle :offset-assert 1008)
(crocadog-handle handle :offset-assert 1016)
(exit-vehicle-dest vector :inline :offset 368 :score 999)
)
:method-count-assert 240
:size-assert #x400
@ -41923,35 +41903,30 @@
(kid-escort-method-239 () none 239)
)
)
|#
#|
(deftype kidesct-wait-spot (ai-task)
((check-done basic :offset-assert 32)
(which-spot int8 :offset-assert 36)
(num-spots uint8 :offset-assert 37)
(spot-indexes UNKNOWN 6 :offset-assert 38)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(spot-indexes int8 6 :offset 38)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
(:methods
)
)
|#
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; crocesc-h ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#|
(deftype crocadog-escort (bot)
((travel-anim-interp float :offset-assert 988)
(anim-speed float :offset-assert 992)
(kid-handle uint64 :offset-assert 996)
(local-seat-pos vector :inline :offset-assert 1020)
(exit-vehicle-dest vector :inline :offset-assert 364)
((travel-anim-interp float :offset-assert 992)
(anim-speed float :offset-assert 996)
(kid-handle handle :offset-assert 1000)
(pad-ki1jn23ikuj1n2 uint32 4 :offset-assert 1008)
(local-seat-pos vector :inline :offset-assert 1024)
(exit-vehicle-dest vector :inline :offset 368 :score 999)
)
:method-count-assert 239
:size-assert #x410
@ -41973,22 +41948,17 @@
(crocadog-escort-method-238 () none 238)
)
)
|#
#|
(deftype crocesct-wait-spot (ai-task)
((check-done basic :offset-assert 32)
(which-spot int8 :offset-assert 36)
(num-spots uint8 :offset-assert 37)
(spot-indexes UNKNOWN 6 :offset-assert 38)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(spot-indexes int8 6 :offset 38)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
(:methods
)
)
|#
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -42926,21 +42896,18 @@
;; bombbot-h ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#|
(deftype bombbot-node (structure)
((position vector :inline :offset-assert 0)
(nav-mesh-id uint32 :offset-assert 16)
(pos-x float :offset-assert 0)
(pos-y float :offset-assert 4)
(pos-z float :offset-assert 8)
(pos-x float :offset 0)
(pos-y float :offset 4)
(pos-z float :offset 8)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
|#
#|
(deftype bombbot-path (structure)
((node-count uint16 :offset-assert 0)
(node uint32 :offset-assert 4)
@ -42949,7 +42916,6 @@
:size-assert #x8
:flag-assert #x900000008
)
|#
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -47935,13 +47901,13 @@
;; sig5-cent1-path0 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; (define-extern *sig5-cent1-path0* sig-path)
(define-extern *sig5-cent1-path0* sig-path)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; sig5-cent2-path0 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; (define-extern *sig5-cent2-path0* sig-path)
(define-extern *sig5-cent2-path0* sig-path)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; sig5-course ;;

View File

@ -64,13 +64,13 @@
// "DGO/TBO.DGO",
"DGO/THR.DGO",
"DGO/PRI.DGO",
// "DGO/LKIDDOGE.DGO",
"DGO/LKIDDOGE.DGO",
// "DGO/NESTT.DGO",
"DGO/LWIDEC.DGO",
// "DGO/SAG.DGO",
"DGO/NEB.DGO",
"DGO/COB.DGO",
// "DGO/LBOMBBOT.DGO",
"DGO/LBOMBBOT.DGO",
// "DGO/DEMO.DGO",
// "DGO/LRACEDF.DGO",
"DGO/LERLCHAL.DGO",

View File

@ -733,6 +733,7 @@ const std::unordered_map<
{{"init-specs", ArrayFieldDecompMeta(TypeSpec("sp-field-init-spec"), 16)}}},
{"sparticle-launch-group",
{{"launcher", ArrayFieldDecompMeta(TypeSpec("sparticle-group-item"), 32)}}},
{"sig-path", {{"samples", ArrayFieldDecompMeta(TypeSpec("sig-path-sample"), 64)}}},
{"race-info",
{{"turbo-pad-array", ArrayFieldDecompMeta(TypeSpec("race-turbo-pad"), 32)},
{"racer-array", ArrayFieldDecompMeta(TypeSpec("race-racer-info"), 16)},

View File

@ -7,3 +7,29 @@
;; DECOMP BEGINS
(deftype sig-path-sample (structure)
((bytes uint8 32 :offset-assert 0)
(pos vector :inline :offset-assert 32)
(quat quaternion :inline :offset-assert 48)
(flags uint8 :offset 12)
(pos-x float :offset 32)
(pos-y float :offset 36)
(pos-z float :offset 40)
(quat-x float :offset 48)
(quat-y float :offset 52)
(quat-z float :offset 56)
(quat-w float :offset 60)
)
:method-count-assert 9
:size-assert #x40
:flag-assert #x900000040
)
(deftype sig-path (basic)
((sample-count int32 :offset-assert 4)
(samples (inline-array sig-path-sample) :offset-assert 8)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)

View File

@ -2518,22 +2518,22 @@
;; ;; LBOMBBOT
;; ;;;;;;;;;;;;;;;;;;;;;
;; (cgo "LBOMBBOT.DGO" "lbombbot.gd")
(cgo "LBOMBBOT.DGO" "lbombbot.gd")
;; (goal-src-sequence
;; ""
;; :deps ("$OUT/obj/los-control.o")
;; "levels/common/enemy/bombots/bombbot-h.gc"
;; "levels/common/enemy/bombots/bombbot-path.gc"
;; "levels/common/enemy/bombots/bombbot.gc"
;; )
(goal-src-sequence
""
:deps ("$OUT/obj/los-control.o")
"levels/common/enemy/bombots/bombbot-h.gc"
"levels/common/enemy/bombots/bombbot-path.gc"
"levels/common/enemy/bombots/bombbot.gc"
)
;; (copy-textures 2751)
(copy-textures 2751)
;; (copy-gos
;; "bombbot-ag"
;; "lbombbot"
;; )
(copy-gos
"bombbot-ag"
"lbombbot"
)
;; ;;;;;;;;;;;;;;;;;;;;;
;; ;; LBRNERMK
@ -2814,38 +2814,38 @@
;; ;; LKIDDOGE
;; ;;;;;;;;;;;;;;;;;;;;;
;; (cgo "LKIDDOGE.DGO" "lkiddoge.gd")
(cgo "LKIDDOGE.DGO" "lkiddoge.gd")
;; (goal-src-sequence
;; ""
;; :deps ("$OUT/obj/los-control.o")
;; "levels/common/ai/ai-task-h.gc"
;; "levels/common/ai/bot-h.gc"
;; "levels/common/ai/bot.gc"
;; "levels/common/ai/bot-states.gc"
;; "levels/undefined/hal-h.gc"
;; "levels/undefined/hal-task.gc"
;; "levels/undefined/hal.gc"
;; "levels/city/kid_escort/kidesc-h.gc"
;; "levels/city/kid_escort/crocesc-h.gc"
;; "levels/city/kid_escort/hal4-course.gc"
;; "levels/city/kid_escort/kidesc-task.gc"
;; "levels/city/kid_escort/kidesc.gc"
;; "levels/city/kid_escort/kidesc-states.gc"
;; "levels/city/kid_escort/crocesc-task.gc"
;; "levels/city/kid_escort/crocesc.gc"
;; "levels/city/kid_escort/crocesc-states.gc"
;; "levels/city/kid_escort/kidesc4-course.gc"
;; "levels/city/kid_escort/crocesc4-course.gc"
;; )
(goal-src-sequence
""
:deps ("$OUT/obj/los-control.o")
"levels/common/ai/ai-task-h.gc"
"levels/common/ai/bot-h.gc"
"levels/common/ai/bot.gc"
"levels/common/ai/bot-states.gc"
"levels/undefined/hal-h.gc"
"levels/undefined/hal-task.gc"
"levels/undefined/hal.gc"
"levels/city/kid_escort/kidesc-h.gc"
"levels/city/kid_escort/crocesc-h.gc"
"levels/city/kid_escort/hal4-course.gc"
"levels/city/kid_escort/kidesc-task.gc"
"levels/city/kid_escort/kidesc.gc"
"levels/city/kid_escort/kidesc-states.gc"
"levels/city/kid_escort/crocesc-task.gc"
"levels/city/kid_escort/crocesc.gc"
"levels/city/kid_escort/crocesc-states.gc"
"levels/city/kid_escort/kidesc4-course.gc"
"levels/city/kid_escort/crocesc4-course.gc"
)
;; (copy-textures 2209)
(copy-textures 2209)
;; (copy-gos
;; "crocadog-escort-ag"
;; "kid-escort-ag"
;; "lkiddoge"
;; )
(copy-gos
"crocadog-escort-ag"
"kid-escort-ag"
"lkiddoge"
)
;; ;;;;;;;;;;;;;;;;;;;;;
;; ;; LMEETBRT
@ -3987,13 +3987,13 @@
(goal-src-sequence
""
:deps ("$OUT/obj/los-control.o")
"levels/common/ai/ai-task-h.gc"
"levels/common/ai/bot-h.gc"
"levels/common/ai/bot.gc"
"levels/common/ai/bot-states.gc"
"levels/undefined/hal-h.gc"
"levels/undefined/hal-task.gc"
"levels/undefined/hal.gc"
;; "levels/common/ai/ai-task-h.gc"
;; "levels/common/ai/bot-h.gc"
;; "levels/common/ai/bot.gc"
;; "levels/common/ai/bot-states.gc"
;; "levels/undefined/hal-h.gc"
;; "levels/undefined/hal-task.gc"
;; "levels/undefined/hal.gc"
"levels/undefined/ruf-h.gc"
"levels/undefined/ruf-task.gc"
"levels/undefined/ruf.gc"

View File

@ -7,3 +7,51 @@
;; DECOMP BEGINS
(deftype crocadog-escort (bot)
((travel-anim-interp float :offset-assert 992)
(anim-speed float :offset-assert 996)
(kid-handle handle :offset-assert 1000)
(pad-ki1jn23ikuj1n2 uint32 4 :offset-assert 1008)
(local-seat-pos vector :inline :offset-assert 1024)
(exit-vehicle-dest vector :inline :offset 368)
)
:heap-base #x390
:method-count-assert 239
:size-assert #x410
:flag-assert #xef03900410
(:methods
(crocadog-escort-method-225 () none 225)
(crocadog-escort-method-226 () none 226)
(crocadog-escort-method-227 () none 227)
(crocadog-escort-method-228 () none 228)
(crocadog-escort-method-229 () none 229)
(crocadog-escort-method-230 () none 230)
(crocadog-escort-method-231 () none 231)
(crocadog-escort-method-232 () none 232)
(crocadog-escort-method-233 () none 233)
(crocadog-escort-method-234 () none 234)
(crocadog-escort-method-235 () none 235)
(crocadog-escort-method-236 () none 236)
(crocadog-escort-method-237 () none 237)
(crocadog-escort-method-238 () none 238)
)
)
(defskelgroup skel-crocadog-escort crocadog-escort 0 3
((1 (meters 999999)))
:bounds (static-spherem 0 0 0 2)
:shadow 2
:origin-joint-index 20
)
(deftype crocesct-wait-spot (ai-task)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(spot-indexes int8 6 :offset 38)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
)

View File

@ -7,3 +7,51 @@
;; DECOMP BEGINS
(deftype kid-escort (bot)
((travel-anim-interp float :offset-assert 992)
(arrest-attempt-time time-frame :offset-assert 1000)
(arrestor-handle handle :offset-assert 1008)
(crocadog-handle handle :offset-assert 1016)
(exit-vehicle-dest vector :inline :offset 368)
)
:heap-base #x380
:method-count-assert 240
:size-assert #x400
:flag-assert #xf003800400
(:methods
(kid-escort-method-225 () none 225)
(kid-escort-method-226 () none 226)
(kid-escort-method-227 () none 227)
(kid-escort-method-228 () none 228)
(kid-escort-method-229 () none 229)
(kid-escort-method-230 () none 230)
(kid-escort-method-231 () none 231)
(kid-escort-method-232 () none 232)
(kid-escort-method-233 () none 233)
(kid-escort-method-234 () none 234)
(kid-escort-method-235 () none 235)
(kid-escort-method-236 () none 236)
(kid-escort-method-237 () none 237)
(kid-escort-method-238 () none 238)
(kid-escort-method-239 () none 239)
)
)
(defskelgroup skel-kid-escort kid-escort 0 3
((1 (meters 999999)))
:bounds (static-spherem 0 0 0 2)
:shadow 2
:origin-joint-index 13
)
(deftype kidesct-wait-spot (ai-task)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(spot-indexes int8 6 :offset 38)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
)

View File

@ -7,3 +7,20 @@
;; DECOMP BEGINS
(deftype ai-task (basic)
((next basic :offset-assert 4)
(prev basic :offset-assert 8)
(pool basic :offset-assert 12)
(unique-id uint32 :offset-assert 16)
(pad-ik1n231 uint32 3 :offset-assert 20)
(bytes int8 16 :offset-assert 32)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
(:methods
(ai-task-method-9 () none 9)
(ai-task-method-10 () none 10)
(ai-task-method-11 () none 11)
)
)

View File

@ -7,3 +7,163 @@
;; DECOMP BEGINS
(deftype bot-focus-info (structure)
((max-los-dist float :offset-assert 0)
(fproc basic :offset-assert 4)
(bullseye-xz-dist float :offset-assert 8)
(ry-diff float :offset-assert 12)
(my-facing-ry float :offset-assert 16)
(bullseye-ry float :offset-assert 20)
(los int8 :offset-assert 24)
(update-time time-frame :offset-assert 32)
(bullseye vector :inline :offset-assert 48)
(pos vector :inline :offset-assert 64)
(my-facing-xz-dir vector :inline :offset-assert 80)
(bullseye-xz-dir vector :inline :offset-assert 96)
)
:method-count-assert 9
:size-assert #x70
:flag-assert #x900000070
)
(deftype bot-spot (structure)
((center vector :inline :offset-assert 0)
(center-x float :offset 0)
(center-y float :offset 4)
(center-z float :offset 8)
(inside-xz-dist float :offset 12)
(blocked-xz-dist float :offset-assert 16)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
(deftype bot-course (basic)
((course-id uint8 :offset-assert 4)
(speech-count uint16 :offset-assert 6)
(spot-count uint16 :offset-assert 8)
(retry-cookie uint8 :offset-assert 10)
(too-far-warn-speeches basic :offset-assert 12)
(too-far-fail-speeches basic :offset-assert 16)
(attack-player-speeches basic :offset-assert 20)
(default-check-too-far basic :offset-assert 24)
(waypoints basic :offset-assert 28)
(speeches uint32 :offset-assert 32)
(speech-tunings uint32 :offset-assert 36)
(dirs uint32 :offset-assert 40)
(spots uint32 :offset-assert 44)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
;; field default-check-too-far uses ~A with a signed load
)
(deftype bot (nav-enemy)
((bot-flags uint32 :offset-assert 604)
(min-speed float :offset-assert 608)
(max-speed float :offset-assert 612)
(follow-offset float :offset-assert 616)
(too-far-warn-dist float :offset-assert 620)
(too-far-fail-dist-delta float :offset-assert 624)
(too-far-warn-dist-default float :offset-assert 628)
(too-far-fail-dist-delta-default float :offset-assert 632)
(travel-prev-ry float :offset-assert 636)
(travel-prev-ry1 float :offset-assert 640)
(player-blocking float :offset-assert 644)
(ai-ctrl basic :offset-assert 648)
(course basic :offset-assert 652)
(waypoint basic :offset-assert 656)
(waypoint-bits uint32 :offset-assert 660)
(waypoint-int32a int32 :offset-assert 664)
(bot-task-bits uint32 :offset-assert 668)
(hit-invuln-ignore-me-delay uint32 :offset-assert 672)
(hit-invuln-focus-disable-delay uint32 :offset-assert 676)
(warn-to-fail-timeout uint32 :offset-assert 680)
(warn-min-delay uint32 :offset-assert 684)
(warn-max-delay uint32 :offset-assert 688)
(spot-color uint32 :offset-assert 692)
(waypoint-request int16 :offset-assert 696)
(hit-by-enemy-count uint16 :offset-assert 698)
(hit-by-player-count uint16 :offset-assert 700)
(notice-enemy-dist float :offset-assert 704)
(channel uint8 :offset-assert 708)
(focus-mode int8 :offset-assert 709)
(nav-mesh-index int8 :offset-assert 710)
(delay-too-far-check int8 :offset-assert 711)
(slave-id int8 :offset-assert 712)
(vehicle-seat-index int8 :offset-assert 713)
(bot-health-index int8 :offset-assert 714)
(task basic :offset-assert 716)
(swivel-joint-mod basic :offset-assert 720)
(health-handle uint64 :offset-assert 728)
(poi-handle uint64 :offset-assert 736)
(my-simple-focus uint32 :offset-assert 744)
(attacker-handle uint64 :offset-assert 752)
(scene-player-handle uint64 :offset-assert 760)
(master-handle uint64 :offset-assert 768)
(vehicle-handle uint64 :offset-assert 776)
(hit-invuln-starting-time time-frame :offset-assert 784)
(danger-time time-frame :offset-assert 792)
(attacker-time time-frame :offset-assert 800)
(started-warning-time time-frame :offset-assert 808)
(waypoint-time0 uint64 :offset-assert 816)
(next-too-far-warn-time time-frame :offset-assert 824)
(spot bot-spot :inline :offset-assert 832)
(follow-dir vector :inline :offset-assert 864)
(focus-info bot-focus-info :inline :offset-assert 880)
)
:method-count-assert 225
:size-assert #x3e0
:flag-assert #xe1036003e0
(:methods
(bot-method-178 () none 178)
(bot-method-179 () none 179)
(bot-method-180 () none 180)
(bot-method-181 () none 181)
(bot-method-182 () none 182)
(bot-method-183 () none 183)
(bot-method-184 () none 184)
(bot-method-185 () none 185)
(bot-method-186 () none 186)
(bot-method-187 () none 187)
(bot-method-188 () none 188)
(bot-method-189 () none 189)
(bot-method-190 () none 190)
(bot-method-191 () none 191)
(bot-method-192 () none 192)
(bot-method-193 () none 193)
(bot-method-194 () none 194)
(bot-method-195 () none 195)
(bot-method-196 () none 196)
(bot-method-197 () none 197)
(bot-method-198 () none 198)
(bot-method-199 () none 199)
(bot-method-200 () none 200)
(bot-method-201 () none 201)
(bot-method-202 () none 202)
(bot-method-203 () none 203)
(bot-method-204 () none 204)
(bot-method-205 () none 205)
(bot-method-206 () none 206)
(bot-method-207 () none 207)
(bot-method-208 () none 208)
(bot-method-209 () none 209)
(bot-method-210 () none 210)
(bot-method-211 () none 211)
(bot-method-212 () none 212)
(bot-method-213 () none 213)
(bot-method-214 () none 214)
(bot-method-215 () none 215)
(bot-method-216 () none 216)
(bot-method-217 () none 217)
(bot-method-218 () none 218)
(bot-method-219 () none 219)
(bot-method-220 () none 220)
(bot-method-221 () none 221)
(bot-method-222 () none 222)
(bot-method-223 () none 223)
(bot-method-224 () none 224)
)
)

View File

@ -7,3 +7,24 @@
;; DECOMP BEGINS
(deftype bombbot-node (structure)
((position vector :inline :offset-assert 0)
(nav-mesh-id uint32 :offset-assert 16)
(pos-x float :offset 0)
(pos-y float :offset 4)
(pos-z float :offset 8)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
(deftype bombbot-path (structure)
((node-count uint16 :offset-assert 0)
(node uint32 :offset-assert 4)
)
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)

View File

@ -7,3 +7,76 @@
;; DECOMP BEGINS
(deftype hover-enemy-info (structure)
((fly-forward-anim int32 :offset-assert 0)
(fly-backward-anim int32 :offset-assert 4)
(fly-left-anim int32 :offset-assert 8)
(fly-right-anim int32 :offset-assert 12)
(shoot-anim int32 :offset-assert 16)
(main-joint int32 :offset-assert 20)
(gun-base int32 :offset-assert 24)
(engine-left int32 :offset-assert 28)
(engine-right int32 :offset-assert 32)
(thrust-rotate-left float :offset-assert 36)
(thrust-rotate-right float :offset-assert 40)
)
:method-count-assert 9
:size-assert #x2c
:flag-assert #x90000002c
)
(deftype hover-enemy (enemy)
((hover basic :offset-assert 532)
(hover-info hover-enemy-info :offset-assert 536)
(formation-entity basic :offset-assert 540)
(fly-anim-speed float :offset-assert 544)
(restart-fly-anims basic :offset-assert 548)
(main-joint-acc vector :inline :offset-assert 560)
(main-joint-vel vector :inline :offset-assert 576)
(main-joint-pos vector :inline :offset-assert 592)
(thrust int64 2 :offset-assert 608)
(rotation-vec vector :inline :offset-assert 624)
(dest-pos vector :inline :offset-assert 640)
(offset vector :inline :offset-assert 656)
(surface-normal vector :inline :offset-assert 672)
(local-dir vector :inline :offset-assert 688)
(scale float :offset-assert 704)
(scale-timer uint64 :offset-assert 712)
(hit-surface? basic :offset-assert 720)
(knocked-start-level float :offset-assert 724)
(knocked-fall-dist float :offset-assert 728)
(flying-death-anim int32 :offset-assert 732)
(flying-death-transv vector :inline :offset-assert 736)
(flying-death-engine int32 :offset-assert 752)
(flying-death-thrust-rotate float :offset-assert 756)
(flying-death-spin float :offset-assert 760)
(flying-death-spin-dest float :offset-assert 764)
(flying-death-spin-axis vector :inline :offset-assert 768)
)
:heap-base #x290
:method-count-assert 156
:size-assert #x310
:flag-assert #x9c02900310
(:methods
(hover-enemy-method-137 () none 137)
(hover-enemy-method-138 () none 138)
(hover-enemy-method-139 () none 139)
(hover-enemy-method-140 () none 140)
(hover-enemy-method-141 () none 141)
(hover-enemy-method-142 () none 142)
(hover-enemy-method-143 () none 143)
(hover-enemy-method-144 () none 144)
(hover-enemy-method-145 () none 145)
(hover-enemy-method-146 () none 146)
(hover-enemy-method-147 () none 147)
(hover-enemy-method-148 () none 148)
(hover-enemy-method-149 () none 149)
(hover-enemy-method-150 () none 150)
(hover-enemy-method-151 () none 151)
(hover-enemy-method-152 () none 152)
(hover-enemy-method-153 () none 153)
(hover-enemy-method-154 () none 154)
(hover-enemy-method-155 () none 155)
)
)

View File

@ -5,5 +5,61 @@
;; name in dgo: predator-h
;; dgos: FOR
;; +++predator-node-flag
(defenum predator-node-flag
:type uint32
:bitfield #t
(taken)
(spawnable)
)
;; ---predator-node-flag
;; +++predator-edge-flag
(defenum predator-edge-flag
:type uint16
:bitfield #t
)
;; ---predator-edge-flag
;; DECOMP BEGINS
(deftype predator-node (structure)
((position vector :inline :offset-assert 0)
(nav-mesh-id uint32 :offset-assert 16)
(edge-index int16 :offset-assert 20)
(edge-count int16 :offset-assert 22)
(radius float :offset-assert 24)
(flags predator-node-flag :offset-assert 28)
(points uint32 :offset-assert 32)
(pos-x float :offset 0)
(pos-y float :offset 4)
(pos-z float :offset 8)
)
:method-count-assert 9
:size-assert #x24
:flag-assert #x900000024
)
(deftype predator-edge (structure)
((dest-node-id uint16 :offset-assert 0)
(flags predator-edge-flag :offset-assert 2)
)
:method-count-assert 9
:size-assert #x4
:flag-assert #x900000004
)
(deftype predator-graph (structure)
((node-count uint16 :offset-assert 0)
(edge-count uint16 :offset-assert 2)
(node uint32 :offset-assert 4)
(edge uint32 :offset-assert 8)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)

View File

@ -7,3 +7,10 @@
;; DECOMP BEGINS
(deftype grim (jinx)
()
:heap-base #x380
:method-count-assert 246
:size-assert #x400
:flag-assert #xf603800400
)

View File

@ -7,3 +7,22 @@
;; DECOMP BEGINS
(deftype jinx (ruffian)
((bomb-handle uint64 :offset-assert 1008)
(bomb-func basic :offset-assert 1016)
(bomb-fuse-delay uint32 :offset-assert 1020)
)
:heap-base #x380
:method-count-assert 246
:size-assert #x400
:flag-assert #xf603800400
)
(defskelgroup skel-jinx jinx 0 3
((1 (meters 999999)))
:bounds (static-spherem 0 0 0 5)
:shadow 2
:origin-joint-index 15
:shadow-joint-index 15
)

View File

@ -7,3 +7,28 @@
;; DECOMP BEGINS
(deftype hal (bot)
((handle-failed-slave-id int8 :offset-assert 992)
(slave-handle uint64 3 :offset-assert 1000)
)
:heap-base #x380
:method-count-assert 227
:size-assert #x400
:flag-assert #xe303800400
(:methods
(hal-method-225 () none 225)
(hal-method-226 () none 226)
)
)
(deftype halt-wait-spot (ai-task)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(spot-indexes int8 6 :offset 38)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
)

View File

@ -7,3 +7,95 @@
;; DECOMP BEGINS
(deftype ruffian-course (bot-course)
((ouch-speeches basic :offset-assert 48)
)
:method-count-assert 9
:size-assert #x34
:flag-assert #x900000034
)
(deftype ruffian (bot)
((travel-anim-interp float :offset-assert 992)
(fired-gun-count uint32 :offset-assert 996)
(next-fire-time time-frame :offset-assert 1000)
)
:heap-base #x370
:method-count-assert 246
:size-assert #x3f0
:flag-assert #xf6037003f0
(:methods
(ruffian-method-225 () none 225)
(ruffian-method-226 () none 226)
(ruffian-method-227 () none 227)
(ruffian-method-228 () none 228)
(ruffian-method-229 () none 229)
(ruffian-method-230 () none 230)
(ruffian-method-231 () none 231)
(ruffian-method-232 () none 232)
(ruffian-method-233 () none 233)
(ruffian-method-234 () none 234)
(ruffian-method-235 () none 235)
(ruffian-method-236 () none 236)
(ruffian-method-237 () none 237)
(ruffian-method-238 () none 238)
(ruffian-method-239 () none 239)
(ruffian-method-240 () none 240)
(ruffian-method-241 () none 241)
(ruffian-method-242 () none 242)
(ruffian-method-243 () none 243)
(ruffian-method-244 () none 244)
(ruffian-method-245 () none 245)
)
)
(deftype ruft-wait-spot (ai-task)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(spot-indexes int8 6 :offset 38)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
)
(deftype ruft-choose-jump (ai-task)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(src-spot-indexes int8 4 :offset 38)
(dest-spot-indexes int8 4 :offset 42)
)
:method-count-assert 14
:size-assert #x30
:flag-assert #xe00000030
(:methods
(ruft-choose-jump-method-12 () none 12)
(ruft-choose-jump-method-13 () none 13)
)
)
(deftype ruft-fight-focus (ai-task)
()
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
)
(deftype ruft-plant-bomb (ai-task)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(stand-spot-indexes int8 2 :offset 38)
(face-spot-indexes int8 2 :offset 40)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,99 @@
;;-*-Lisp-*-
(in-package goal)
;; definition of type crocadog-escort
(deftype crocadog-escort (bot)
((travel-anim-interp float :offset-assert 992)
(anim-speed float :offset-assert 996)
(kid-handle handle :offset-assert 1000)
(pad-ki1jn23ikuj1n2 uint32 4 :offset-assert 1008)
(local-seat-pos vector :inline :offset-assert 1024)
(exit-vehicle-dest vector :inline :offset 368)
)
:heap-base #x390
:method-count-assert 239
:size-assert #x410
:flag-assert #xef03900410
(:methods
(crocadog-escort-method-225 () none 225)
(crocadog-escort-method-226 () none 226)
(crocadog-escort-method-227 () none 227)
(crocadog-escort-method-228 () none 228)
(crocadog-escort-method-229 () none 229)
(crocadog-escort-method-230 () none 230)
(crocadog-escort-method-231 () none 231)
(crocadog-escort-method-232 () none 232)
(crocadog-escort-method-233 () none 233)
(crocadog-escort-method-234 () none 234)
(crocadog-escort-method-235 () none 235)
(crocadog-escort-method-236 () none 236)
(crocadog-escort-method-237 () none 237)
(crocadog-escort-method-238 () none 238)
)
)
;; definition for method 3 of type crocadog-escort
(defmethod inspect crocadog-escort ((obj crocadog-escort))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(let ((t9-0 (method-of-type bot inspect)))
(t9-0 obj)
)
(format #t "~2Ttravel-anim-interp: ~f~%" (-> obj travel-anim-interp))
(format #t "~2Tanim-speed: ~f~%" (-> obj anim-speed))
(format #t "~2Tkid-handle: ~D~%" (-> obj kid-handle))
(format #t "~2Tvehicle-handle: ~D~%" (-> obj vehicle-handle))
(format #t "~2Tlocal-seat-pos: #<vector @ #x~X>~%" (-> obj local-seat-pos))
(format #t "~2Texit-vehicle-dest: ~`vector`P~%" (-> obj exit-vehicle-dest))
(label cfg-4)
obj
)
;; failed to figure out what this is:
(defskelgroup skel-crocadog-escort crocadog-escort 0 3
((1 (meters 999999)))
:bounds (static-spherem 0 0 0 2)
:shadow 2
:origin-joint-index 20
)
;; definition of type crocesct-wait-spot
(deftype crocesct-wait-spot (ai-task)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(spot-indexes int8 6 :offset 38)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
)
;; definition for method 3 of type crocesct-wait-spot
(defmethod inspect crocesct-wait-spot ((obj crocesct-wait-spot))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj (-> obj type))
(format #t "~1Tnext: ~A~%" (-> obj next))
(format #t "~1Tprev: ~A~%" (-> obj prev))
(format #t "~1Tpool: ~A~%" (-> obj pool))
(format #t "~1Tunique-id: ~D~%" (-> obj unique-id))
(format #t "~1Tbytes[16] @ #x~X~%" (-> obj bytes))
(format #t "~1Tcheck-done: ~A~%" (-> obj check-done))
(format #t "~1Twhich-spot: ~D~%" (-> obj which-spot))
(format #t "~1Tnum-spots: ~D~%" (-> obj num-spots))
(format #t "~1Tspot-indexes[6] @ #x~X~%" (-> obj spot-indexes))
(label cfg-4)
obj
)
;; failed to figure out what this is:
0

View File

@ -0,0 +1,94 @@
;;-*-Lisp-*-
(in-package goal)
;; definition of type kid-escort
(deftype kid-escort (bot)
((travel-anim-interp float :offset-assert 992)
(arrest-attempt-time time-frame :offset-assert 1000)
(arrestor-handle handle :offset-assert 1008)
(crocadog-handle handle :offset-assert 1016)
(exit-vehicle-dest vector :inline :offset 368)
)
:heap-base #x380
:method-count-assert 240
:size-assert #x400
:flag-assert #xf003800400
(:methods
(kid-escort-method-225 () none 225)
(kid-escort-method-226 () none 226)
(kid-escort-method-227 () none 227)
(kid-escort-method-228 () none 228)
(kid-escort-method-229 () none 229)
(kid-escort-method-230 () none 230)
(kid-escort-method-231 () none 231)
(kid-escort-method-232 () none 232)
(kid-escort-method-233 () none 233)
(kid-escort-method-234 () none 234)
(kid-escort-method-235 () none 235)
(kid-escort-method-236 () none 236)
(kid-escort-method-237 () none 237)
(kid-escort-method-238 () none 238)
(kid-escort-method-239 () none 239)
)
)
;; definition for method 3 of type kid-escort
(defmethod inspect kid-escort ((obj kid-escort))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(let ((t9-0 (method-of-type bot inspect)))
(t9-0 obj)
)
(format #t "~2Ttravel-anim-interp: ~f~%" (-> obj travel-anim-interp))
(format #t "~2Tarrest-attempt-time: ~D~%" (-> obj arrest-attempt-time))
(format #t "~2Tarrestor-handle: ~D~%" (-> obj arrestor-handle))
(format #t "~2Tcrocadog-handle: ~D~%" (-> obj crocadog-handle))
(format #t "~2Texit-vehicle-dest: ~`vector`P~%" (-> obj exit-vehicle-dest))
(label cfg-4)
obj
)
;; failed to figure out what this is:
(defskelgroup skel-kid-escort kid-escort 0 3
((1 (meters 999999)))
:bounds (static-spherem 0 0 0 2)
:shadow 2
:origin-joint-index 13
)
;; definition of type kidesct-wait-spot
(deftype kidesct-wait-spot (ai-task)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(spot-indexes int8 6 :offset 38)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
)
;; definition for method 3 of type kidesct-wait-spot
(defmethod inspect kidesct-wait-spot ((obj kidesct-wait-spot))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj (-> obj type))
(format #t "~1Tnext: ~A~%" (-> obj next))
(format #t "~1Tprev: ~A~%" (-> obj prev))
(format #t "~1Tpool: ~A~%" (-> obj pool))
(format #t "~1Tunique-id: ~D~%" (-> obj unique-id))
(format #t "~1Tbytes[16] @ #x~X~%" (-> obj bytes))
(format #t "~1Tcheck-done: ~A~%" (-> obj check-done))
(format #t "~1Twhich-spot: ~D~%" (-> obj which-spot))
(format #t "~1Tnum-spots: ~D~%" (-> obj num-spots))
(format #t "~1Tspot-indexes[6] @ #x~X~%" (-> obj spot-indexes))
(label cfg-4)
obj
)
;; failed to figure out what this is:
0

View File

@ -0,0 +1,61 @@
;;-*-Lisp-*-
(in-package goal)
;; definition of type bombbot-node
(deftype bombbot-node (structure)
((position vector :inline :offset-assert 0)
(nav-mesh-id uint32 :offset-assert 16)
(pos-x float :offset 0)
(pos-y float :offset 4)
(pos-z float :offset 8)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
;; definition for method 3 of type bombbot-node
(defmethod inspect bombbot-node ((obj bombbot-node))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj 'bombbot-node)
(format #t "~1Tposition: ~`vector`P~%" (-> obj position))
(format #t "~1Tnav-mesh-id: ~D~%" (-> obj nav-mesh-id))
(format #t "~1Tpos-x: ~f~%" (-> obj position x))
(format #t "~1Tpos-y: ~f~%" (-> obj position y))
(format #t "~1Tpos-z: ~f~%" (-> obj position z))
(label cfg-4)
obj
)
;; definition of type bombbot-path
(deftype bombbot-path (structure)
((node-count uint16 :offset-assert 0)
(node uint32 :offset-assert 4)
)
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
;; definition for method 3 of type bombbot-path
(defmethod inspect bombbot-path ((obj bombbot-path))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj 'bombbot-path)
(format #t "~1Tnode-count: ~D~%" (-> obj node-count))
(format #t "~1Tnode: #x~X~%" (-> obj node))
(label cfg-4)
obj
)
;; failed to figure out what this is:
0

View File

@ -0,0 +1,145 @@
;;-*-Lisp-*-
(in-package goal)
;; definition of type hover-enemy-info
(deftype hover-enemy-info (structure)
((fly-forward-anim int32 :offset-assert 0)
(fly-backward-anim int32 :offset-assert 4)
(fly-left-anim int32 :offset-assert 8)
(fly-right-anim int32 :offset-assert 12)
(shoot-anim int32 :offset-assert 16)
(main-joint int32 :offset-assert 20)
(gun-base int32 :offset-assert 24)
(engine-left int32 :offset-assert 28)
(engine-right int32 :offset-assert 32)
(thrust-rotate-left float :offset-assert 36)
(thrust-rotate-right float :offset-assert 40)
)
:method-count-assert 9
:size-assert #x2c
:flag-assert #x90000002c
)
;; definition for method 3 of type hover-enemy-info
(defmethod inspect hover-enemy-info ((obj hover-enemy-info))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj 'hover-enemy-info)
(format #t "~1Tfly-forward-anim: ~D~%" (-> obj fly-forward-anim))
(format #t "~1Tfly-backward-anim: ~D~%" (-> obj fly-backward-anim))
(format #t "~1Tfly-left-anim: ~D~%" (-> obj fly-left-anim))
(format #t "~1Tfly-right-anim: ~D~%" (-> obj fly-right-anim))
(format #t "~1Tshoot-anim: ~D~%" (-> obj shoot-anim))
(format #t "~1Tmain-joint: ~D~%" (-> obj main-joint))
(format #t "~1Tgun-base: ~D~%" (-> obj gun-base))
(format #t "~1Tengine-left: ~D~%" (-> obj engine-left))
(format #t "~1Tengine-right: ~D~%" (-> obj engine-right))
(format #t "~1Tthrust-rotate-left: ~f~%" (-> obj thrust-rotate-left))
(format #t "~1Tthrust-rotate-right: ~f~%" (-> obj thrust-rotate-right))
(label cfg-4)
obj
)
;; definition of type hover-enemy
(deftype hover-enemy (enemy)
((hover basic :offset-assert 532)
(hover-info hover-enemy-info :offset-assert 536)
(formation-entity basic :offset-assert 540)
(fly-anim-speed float :offset-assert 544)
(restart-fly-anims basic :offset-assert 548)
(main-joint-acc vector :inline :offset-assert 560)
(main-joint-vel vector :inline :offset-assert 576)
(main-joint-pos vector :inline :offset-assert 592)
(thrust int64 2 :offset-assert 608)
(rotation-vec vector :inline :offset-assert 624)
(dest-pos vector :inline :offset-assert 640)
(offset vector :inline :offset-assert 656)
(surface-normal vector :inline :offset-assert 672)
(local-dir vector :inline :offset-assert 688)
(scale float :offset-assert 704)
(scale-timer uint64 :offset-assert 712)
(hit-surface? basic :offset-assert 720)
(knocked-start-level float :offset-assert 724)
(knocked-fall-dist float :offset-assert 728)
(flying-death-anim int32 :offset-assert 732)
(flying-death-transv vector :inline :offset-assert 736)
(flying-death-engine int32 :offset-assert 752)
(flying-death-thrust-rotate float :offset-assert 756)
(flying-death-spin float :offset-assert 760)
(flying-death-spin-dest float :offset-assert 764)
(flying-death-spin-axis vector :inline :offset-assert 768)
)
:heap-base #x290
:method-count-assert 156
:size-assert #x310
:flag-assert #x9c02900310
(:methods
(hover-enemy-method-137 () none 137)
(hover-enemy-method-138 () none 138)
(hover-enemy-method-139 () none 139)
(hover-enemy-method-140 () none 140)
(hover-enemy-method-141 () none 141)
(hover-enemy-method-142 () none 142)
(hover-enemy-method-143 () none 143)
(hover-enemy-method-144 () none 144)
(hover-enemy-method-145 () none 145)
(hover-enemy-method-146 () none 146)
(hover-enemy-method-147 () none 147)
(hover-enemy-method-148 () none 148)
(hover-enemy-method-149 () none 149)
(hover-enemy-method-150 () none 150)
(hover-enemy-method-151 () none 151)
(hover-enemy-method-152 () none 152)
(hover-enemy-method-153 () none 153)
(hover-enemy-method-154 () none 154)
(hover-enemy-method-155 () none 155)
)
)
;; definition for method 3 of type hover-enemy
(defmethod inspect hover-enemy ((obj hover-enemy))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(let ((t9-0 (method-of-type enemy inspect)))
(t9-0 obj)
)
(format #t "~2Thover: ~A~%" (-> obj hover))
(format #t "~2Thover-info: #<hover-enemy-info @ #x~X>~%" (-> obj hover-info))
(format #t "~2Tformation-entity: ~A~%" (-> obj formation-entity))
(format #t "~2Tfly-anim-speed: ~f~%" (-> obj fly-anim-speed))
(format #t "~2Trestart-fly-anims: ~A~%" (-> obj restart-fly-anims))
(format #t "~2Tmain-joint-acc: #<vector @ #x~X>~%" (-> obj main-joint-acc))
(format #t "~2Tmain-joint-vel: #<vector @ #x~X>~%" (-> obj main-joint-vel))
(format #t "~2Tmain-joint-pos: #<vector @ #x~X>~%" (-> obj main-joint-pos))
(format #t "~2Tthrust[2] @ #x~X~%" (-> obj thrust))
(format #t "~2Trotation-vec: #<vector @ #x~X>~%" (-> obj rotation-vec))
(format #t "~2Tdest-pos: #<vector @ #x~X>~%" (-> obj dest-pos))
(format #t "~2Toffset: #<vector @ #x~X>~%" (-> obj offset))
(format #t "~2Tsurface-normal: #<vector @ #x~X>~%" (-> obj surface-normal))
(format #t "~2Tlocal-dir: #<vector @ #x~X>~%" (-> obj local-dir))
(format #t "~2Tscale: ~f~%" (-> obj scale))
(format #t "~2Tscale-timer: ~D~%" (-> obj scale-timer))
(format #t "~2Thit-surface?: ~A~%" (-> obj hit-surface?))
(format #t "~2Tknocked-start-level: ~f~%" (-> obj knocked-start-level))
(format #t "~2Tknocked-fall-dist: ~f~%" (-> obj knocked-fall-dist))
(format #t "~2Tflying-death-anim: ~D~%" (-> obj flying-death-anim))
(format #t "~2Tflying-death-transv: #<vector @ #x~X>~%" (-> obj flying-death-transv))
(format #t "~2Tflying-death-engine: ~D~%" (-> obj flying-death-engine))
(format #t "~2Tflying-death-thrust-rotate: ~f~%" (-> obj flying-death-thrust-rotate))
(format #t "~2Tflying-death-spin: ~f~%" (-> obj flying-death-spin))
(format #t "~2Tflying-death-spin-dest: ~f~%" (-> obj flying-death-spin-dest))
(format #t "~2Tflying-death-spin-axis: #<vector @ #x~X>~%" (-> obj flying-death-spin-axis))
(label cfg-4)
obj
)
;; failed to figure out what this is:
0

View File

@ -0,0 +1,109 @@
;;-*-Lisp-*-
(in-package goal)
;; definition of type predator-node
(deftype predator-node (structure)
((position vector :inline :offset-assert 0)
(nav-mesh-id uint32 :offset-assert 16)
(edge-index int16 :offset-assert 20)
(edge-count int16 :offset-assert 22)
(radius float :offset-assert 24)
(flags predator-node-flag :offset-assert 28)
(points uint32 :offset-assert 32)
(pos-x float :offset 0)
(pos-y float :offset 4)
(pos-z float :offset 8)
)
:method-count-assert 9
:size-assert #x24
:flag-assert #x900000024
)
;; definition for method 3 of type predator-node
(defmethod inspect predator-node ((obj predator-node))
(when (not obj)
(set! obj obj)
(goto cfg-8)
)
(format #t "[~8x] ~A~%" obj 'predator-node)
(format #t "~1Tposition: ~`vector`P~%" (-> obj position))
(format #t "~1Tnav-mesh-id: ~D~%" (-> obj nav-mesh-id))
(format #t "~1Tedge-index: ~D~%" (-> obj edge-index))
(format #t "~1Tedge-count: ~D~%" (-> obj edge-count))
(format #t "~1Tradius: ~f~%" (-> obj radius))
(format #t "~1Tflags: #x~X : (predator-node-flag " (-> obj flags))
(let ((s5-0 (-> obj flags)))
(if (= (logand s5-0 (predator-node-flag spawnable)) (predator-node-flag spawnable))
(format #t "spawnable ")
)
(if (= (logand s5-0 (predator-node-flag taken)) (predator-node-flag taken))
(format #t "taken ")
)
)
(format #t ")~%")
(format #t "~1Tpoints: ~D~%" (-> obj points))
(format #t "~1Tpos-x: ~f~%" (-> obj position x))
(format #t "~1Tpos-y: ~f~%" (-> obj position y))
(format #t "~1Tpos-z: ~f~%" (-> obj position z))
(label cfg-8)
obj
)
;; definition of type predator-edge
(deftype predator-edge (structure)
((dest-node-id uint16 :offset-assert 0)
(flags predator-edge-flag :offset-assert 2)
)
:method-count-assert 9
:size-assert #x4
:flag-assert #x900000004
)
;; definition for method 3 of type predator-edge
(defmethod inspect predator-edge ((obj predator-edge))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj 'predator-edge)
(format #t "~1Tdest-node-id: ~D~%" (-> obj dest-node-id))
(format #t "~1Tflags: #x~X : (predator-edge-flag " (-> obj flags))
(-> obj flags)
(format #t ")~%")
(label cfg-4)
obj
)
;; definition of type predator-graph
(deftype predator-graph (structure)
((node-count uint16 :offset-assert 0)
(edge-count uint16 :offset-assert 2)
(node uint32 :offset-assert 4)
(edge uint32 :offset-assert 8)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)
;; definition for method 3 of type predator-graph
(defmethod inspect predator-graph ((obj predator-graph))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj 'predator-graph)
(format #t "~1Tnode-count: ~D~%" (-> obj node-count))
(format #t "~1Tedge-count: ~D~%" (-> obj edge-count))
(format #t "~1Tnode: #x~X~%" (-> obj node))
(format #t "~1Tedge: #x~X~%" (-> obj edge))
(label cfg-4)
obj
)
;; failed to figure out what this is:
0

View File

@ -0,0 +1,31 @@
;;-*-Lisp-*-
(in-package goal)
;; definition of type grim
(deftype grim (jinx)
()
:heap-base #x380
:method-count-assert 246
:size-assert #x400
:flag-assert #xf603800400
)
;; definition for method 3 of type grim
(defmethod inspect grim ((obj grim))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(let ((t9-0 (method-of-type jinx inspect)))
(t9-0 obj)
)
(label cfg-4)
obj
)
;; failed to figure out what this is:
0

View File

@ -0,0 +1,46 @@
;;-*-Lisp-*-
(in-package goal)
;; definition of type jinx
(deftype jinx (ruffian)
((bomb-handle uint64 :offset-assert 1008)
(bomb-func basic :offset-assert 1016)
(bomb-fuse-delay uint32 :offset-assert 1020)
)
:heap-base #x380
:method-count-assert 246
:size-assert #x400
:flag-assert #xf603800400
)
;; definition for method 3 of type jinx
(defmethod inspect jinx ((obj jinx))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(let ((t9-0 (method-of-type ruffian inspect)))
(t9-0 obj)
)
(format #t "~2Tbomb-handle: ~D~%" (-> obj bomb-handle))
(format #t "~2Tbomb-func: ~A~%" (-> obj bomb-func))
(format #t "~2Tbomb-fuse-delay: ~D~%" (-> obj bomb-fuse-delay))
(label cfg-4)
obj
)
;; failed to figure out what this is:
(defskelgroup skel-jinx jinx 0 3
((1 (meters 999999)))
:bounds (static-spherem 0 0 0 5)
:shadow 2
:origin-joint-index 15
:shadow-joint-index 15
)
;; failed to figure out what this is:
0

View File

@ -0,0 +1,71 @@
;;-*-Lisp-*-
(in-package goal)
;; definition of type hal
(deftype hal (bot)
((handle-failed-slave-id int8 :offset-assert 992)
(slave-handle uint64 3 :offset-assert 1000)
)
:heap-base #x380
:method-count-assert 227
:size-assert #x400
:flag-assert #xe303800400
(:methods
(hal-method-225 () none 225)
(hal-method-226 () none 226)
)
)
;; definition for method 3 of type hal
(defmethod inspect hal ((obj hal))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(let ((t9-0 (method-of-type bot inspect)))
(t9-0 obj)
)
(format #t "~2Thandle-failed-slave-id: ~D~%" (-> obj handle-failed-slave-id))
(format #t "~2Tslave-handle[3] @ #x~X~%" (-> obj slave-handle))
(label cfg-4)
obj
)
;; definition of type halt-wait-spot
(deftype halt-wait-spot (ai-task)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(spot-indexes int8 6 :offset 38)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
)
;; definition for method 3 of type halt-wait-spot
(defmethod inspect halt-wait-spot ((obj halt-wait-spot))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj (-> obj type))
(format #t "~1Tnext: ~A~%" (-> obj next))
(format #t "~1Tprev: ~A~%" (-> obj prev))
(format #t "~1Tpool: ~A~%" (-> obj pool))
(format #t "~1Tunique-id: ~D~%" (-> obj unique-id))
(format #t "~1Tbytes[16] @ #x~X~%" (-> obj bytes))
(format #t "~1Tcheck-done: ~A~%" (-> obj check-done))
(format #t "~1Twhich-spot: ~D~%" (-> obj which-spot))
(format #t "~1Tnum-spots: ~D~%" (-> obj num-spots))
(format #t "~1Tspot-indexes[6] @ #x~X~%" (-> obj spot-indexes))
(label cfg-4)
obj
)
;; failed to figure out what this is:
0

View File

@ -0,0 +1,222 @@
;;-*-Lisp-*-
(in-package goal)
;; definition of type ruffian-course
(deftype ruffian-course (bot-course)
((ouch-speeches basic :offset-assert 48)
)
:method-count-assert 9
:size-assert #x34
:flag-assert #x900000034
)
;; definition for method 3 of type ruffian-course
(defmethod inspect ruffian-course ((obj ruffian-course))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj (-> obj type))
(format #t "~1Tcourse-id: ~D~%" (-> obj course-id))
(format #t "~1Tspeech-count: ~D~%" (-> obj speech-count))
(format #t "~1Tspot-count: ~D~%" (-> obj spot-count))
(format #t "~1Tretry-cookie: ~D~%" (-> obj retry-cookie))
(format #t "~1Ttoo-far-warn-speeches: ~A~%" (-> obj too-far-warn-speeches))
(format #t "~1Ttoo-far-fail-speeches: ~A~%" (-> obj too-far-fail-speeches))
(format #t "~1Tattack-player-speeches: ~A~%" (-> obj attack-player-speeches))
(format #t "~1Tdefault-check-too-far: ~A~%" (-> obj default-check-too-far))
(format #t "~1Twaypoints: ~A~%" (-> obj waypoints))
(format #t "~1Tspeeches: #x~X~%" (-> obj speeches))
(format #t "~1Tspeech-tunings: #x~X~%" (-> obj speech-tunings))
(format #t "~1Tdirs: #x~X~%" (-> obj dirs))
(format #t "~1Tspots: #x~X~%" (-> obj spots))
(format #t "~1Touch-speeches: ~A~%" (-> obj ouch-speeches))
(label cfg-4)
obj
)
;; definition of type ruffian
(deftype ruffian (bot)
((travel-anim-interp float :offset-assert 992)
(fired-gun-count uint32 :offset-assert 996)
(next-fire-time time-frame :offset-assert 1000)
)
:heap-base #x370
:method-count-assert 246
:size-assert #x3f0
:flag-assert #xf6037003f0
(:methods
(ruffian-method-225 () none 225)
(ruffian-method-226 () none 226)
(ruffian-method-227 () none 227)
(ruffian-method-228 () none 228)
(ruffian-method-229 () none 229)
(ruffian-method-230 () none 230)
(ruffian-method-231 () none 231)
(ruffian-method-232 () none 232)
(ruffian-method-233 () none 233)
(ruffian-method-234 () none 234)
(ruffian-method-235 () none 235)
(ruffian-method-236 () none 236)
(ruffian-method-237 () none 237)
(ruffian-method-238 () none 238)
(ruffian-method-239 () none 239)
(ruffian-method-240 () none 240)
(ruffian-method-241 () none 241)
(ruffian-method-242 () none 242)
(ruffian-method-243 () none 243)
(ruffian-method-244 () none 244)
(ruffian-method-245 () none 245)
)
)
;; definition for method 3 of type ruffian
(defmethod inspect ruffian ((obj ruffian))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(let ((t9-0 (method-of-type bot inspect)))
(t9-0 obj)
)
(format #t "~2Ttravel-anim-interp: ~f~%" (-> obj travel-anim-interp))
(format #t "~2Tfired-gun-count: ~D~%" (-> obj fired-gun-count))
(format #t "~2Tnext-fire-time: ~D~%" (-> obj next-fire-time))
(label cfg-4)
obj
)
;; definition of type ruft-wait-spot
(deftype ruft-wait-spot (ai-task)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(spot-indexes int8 6 :offset 38)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
)
;; definition for method 3 of type ruft-wait-spot
(defmethod inspect ruft-wait-spot ((obj ruft-wait-spot))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj (-> obj type))
(format #t "~1Tnext: ~A~%" (-> obj next))
(format #t "~1Tprev: ~A~%" (-> obj prev))
(format #t "~1Tpool: ~A~%" (-> obj pool))
(format #t "~1Tunique-id: ~D~%" (-> obj unique-id))
(format #t "~1Tbytes[16] @ #x~X~%" (-> obj bytes))
(format #t "~1Tcheck-done: ~A~%" (-> obj check-done))
(format #t "~1Twhich-spot: ~D~%" (-> obj which-spot))
(format #t "~1Tnum-spots: ~D~%" (-> obj num-spots))
(format #t "~1Tspot-indexes[6] @ #x~X~%" (-> obj spot-indexes))
(label cfg-4)
obj
)
;; definition of type ruft-choose-jump
(deftype ruft-choose-jump (ai-task)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(src-spot-indexes int8 4 :offset 38)
(dest-spot-indexes int8 4 :offset 42)
)
:method-count-assert 14
:size-assert #x30
:flag-assert #xe00000030
(:methods
(ruft-choose-jump-method-12 () none 12)
(ruft-choose-jump-method-13 () none 13)
)
)
;; definition for method 3 of type ruft-choose-jump
(defmethod inspect ruft-choose-jump ((obj ruft-choose-jump))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj (-> obj type))
(format #t "~1Tnext: ~A~%" (-> obj next))
(format #t "~1Tprev: ~A~%" (-> obj prev))
(format #t "~1Tpool: ~A~%" (-> obj pool))
(format #t "~1Tunique-id: ~D~%" (-> obj unique-id))
(format #t "~1Tbytes[16] @ #x~X~%" (-> obj bytes))
(format #t "~1Tcheck-done: ~A~%" (-> obj check-done))
(format #t "~1Twhich-spot: ~D~%" (-> obj which-spot))
(format #t "~1Tnum-spots: ~D~%" (-> obj num-spots))
(format #t "~1Tsrc-spot-indexes[4] @ #x~X~%" (-> obj src-spot-indexes))
(format #t "~1Tdest-spot-indexes[4] @ #x~X~%" (-> obj dest-spot-indexes))
(label cfg-4)
obj
)
;; definition of type ruft-fight-focus
(deftype ruft-fight-focus (ai-task)
()
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
)
;; definition for method 3 of type ruft-fight-focus
(defmethod inspect ruft-fight-focus ((obj ruft-fight-focus))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj (-> obj type))
(format #t "~1Tnext: ~A~%" (-> obj next))
(format #t "~1Tprev: ~A~%" (-> obj prev))
(format #t "~1Tpool: ~A~%" (-> obj pool))
(format #t "~1Tunique-id: ~D~%" (-> obj unique-id))
(format #t "~1Tbytes[16] @ #x~X~%" (-> obj bytes))
(label cfg-4)
obj
)
;; definition of type ruft-plant-bomb
(deftype ruft-plant-bomb (ai-task)
((check-done basic :offset 32)
(which-spot int8 :offset 36)
(num-spots uint8 :offset 37)
(stand-spot-indexes int8 2 :offset 38)
(face-spot-indexes int8 2 :offset 40)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
)
;; definition for method 3 of type ruft-plant-bomb
(defmethod inspect ruft-plant-bomb ((obj ruft-plant-bomb))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj (-> obj type))
(format #t "~1Tnext: ~A~%" (-> obj next))
(format #t "~1Tprev: ~A~%" (-> obj prev))
(format #t "~1Tpool: ~A~%" (-> obj pool))
(format #t "~1Tunique-id: ~D~%" (-> obj unique-id))
(format #t "~1Tbytes[16] @ #x~X~%" (-> obj bytes))
(format #t "~1Tcheck-done: ~A~%" (-> obj check-done))
(format #t "~1Twhich-spot: ~D~%" (-> obj which-spot))
(format #t "~1Tnum-spots: ~D~%" (-> obj num-spots))
(format #t "~1Tstand-spot-indexes[2] @ #x~X~%" (-> obj stand-spot-indexes))
(format #t "~1Tface-spot-indexes[2] @ #x~X~%" (-> obj face-spot-indexes))
(label cfg-4)
obj
)
;; failed to figure out what this is:
0

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -36,7 +36,9 @@
"DGO/HIPHOG.DGO",
"DGO/INTROCST.DGO",
"DGO/KIOSK.DGO",
"DGO/LBOMBBOT.DGO",
"DGO/LERLCHAL.DGO",
"DGO/LKIDDOGE.DGO",
"DGO/MCN.DGO",
"DGO/MTN.DGO",
"DGO/NEB.DGO",
@ -50,6 +52,7 @@
"DGO/PAS.DGO",
"DGO/PRI.DGO",
"DGO/RUI.DGO",
"DGO/RUI.DGO",
"DGO/SEB.DGO",
"DGO/SKA.DGO",
"DGO/STA.DGO",