;;-*-Lisp-*-
(in-package goal)

;; name: intro-scenes.gc
;; name in dgo: intro-scenes
;; dgos: INTROCST

;; DECOMP BEGINS

(defpartgroup group-intro-meteor-landing-meteor
  :id 1244
  :duration (seconds 0.017)
  :linger-duration (seconds 0.667)
  :flags (use-local-clock)
  :bounds (static-bspherem 0 0 0 640)
  :parts ((sp-item 5306) (sp-item 5307) (sp-item 5308) (sp-item 5309))
  )

(defpart 5306
  :init-specs ((:texture (new 'static 'texture-id :index #xbc :page #xc))
    (:num 1.0)
    (:scale-x (meters 12))
    (:rot-x (degrees 22.5))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 128.0)
    (:a 128.0)
    (:fade-a -0.2)
    (:timer (seconds 0.535))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:rotate-y (degrees 0))
    )
  )

(defpart 5307
  :init-specs ((:texture (new 'static 'texture-id :index #xca :page #xc))
    (:num 1.0)
    (:scale-x (meters 48))
    (:rot-x (degrees 22.5))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 128.0)
    (:b 0.0)
    (:a 12.0)
    (:scalevel-x (meters -0.21333334))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -1.7)
    (:fade-g -0.85333335)
    (:fade-b 1.7)
    (:fade-a -0.04)
    (:timer (seconds 0.5))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:rotate-y (degrees 0))
    )
  )

(defpart 5308
  :init-specs ((:num 4.0)
    (:rot-x 16)
    (:r 16384.0)
    (:g 12288.0)
    (:b 14745.6)
    (:vel-y (meters 0.026666667))
    (:fade-r 102.4)
    (:fade-g 25.6)
    (:fade-b 10.24)
    (:friction 0.96 0.02)
    (:timer (seconds 0.535))
    (:flags (distort))
    (:conerot-x (degrees 0) (degrees 3600))
    (:conerot-y (degrees 0) (degrees 3600))
    (:conerot-radius (meters 0) (meters 4))
    )
  )

(defpart 5309
  :init-specs ((:texture (new 'static 'texture-id :index #xc9 :page #xc))
    (:num 16.0)
    (:y (meters 0))
    (:scale-x (meters 2) (meters 1))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 128.0 128.0)
    (:b 0.0)
    (:a 16.0 16.0)
    (:vel-y (meters 0.053333335) (meters 0.053333335))
    (:scalevel-x (meters -0.0046875) (meters -0.009375))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -0.8 -0.8)
    (:fade-g -1.59375 -1.59375)
    (:fade-b 1.59375)
    (:accel-y (meters -0.00033333333) (meters -0.00016666666))
    (:friction 0.94)
    (:timer (seconds 1.067))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 use-global-acc))
    (:conerot-x (degrees 0) (degrees 3600))
    (:conerot-y (degrees 0) (degrees 3600))
    (:conerot-radius (meters 12) (meters 4))
    )
  )

(defpartgroup group-intro-meteor-landing-bubble
  :id 1245
  :duration (seconds 0.667)
  :linger-duration (seconds 1)
  :flags (use-local-clock)
  :bounds (static-bspherem 0 0 0 640)
  :parts ((sp-item 5310 :flags (launch-asap bit6))
    (sp-item 5311 :flags (launch-asap bit6))
    (sp-item 5309 :period (seconds 15) :length (seconds 0.267))
    (sp-item 5312 :period (seconds 15) :length (seconds 0.135) :offset 15)
    (sp-item 5313 :period (seconds 15) :length (seconds 0.067) :offset 60)
    )
  )

(defpart 5313
  :init-specs ((:texture (new 'static 'texture-id :page #xc))
    (:num 6.0)
    (:scale-x (meters 6) (meters 0.5))
    (:rot-x (degrees 2.25))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 0.0)
    (:a 16.0 8.0)
    (:vel-y (meters 0.013333334) (meters 0.21333334))
    (:scalevel-x (meters 0.020833334) (meters 0.014166667))
    (:scalevel-y :copy scalevel-x)
    (:fade-r 0.0 -0.8)
    (:fade-g -1.59375)
    (:fade-b 0.8 0.8)
    (:fade-a -0.026666667)
    (:friction 0.97)
    (:timer (seconds 3))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 2048.0)
    (:next-time (seconds 0.535))
    (:next-launcher 5314)
    (:conerot-x (degrees 0) (degrees 3600))
    (:conerot-y (degrees 0) (degrees 3600))
    (:conerot-z (degrees 0) (degrees 3600))
    (:conerot-radius (meters 0) (meters 1))
    )
  )

(defpart 5314
  :init-specs ((:scalevel-x (meters 0.01)) (:scalevel-y :copy scalevel-x) (:fade-r 0.0) (:fade-g 0.0) (:fade-b 0.0))
  )

(defpart 5312
  :init-specs ((:num 8.0)
    (:rot-x 8)
    (:r 8192.0)
    (:g 4096.0)
    (:b 4915.2)
    (:vel-y (meters 0.053333335) (meters 0.10666667))
    (:fade-b -1.3653333)
    (:timer (seconds 2))
    (:flags (distort))
    (:conerot-x (degrees 0) (degrees 3600))
    (:conerot-y (degrees 0) (degrees 3600))
    (:conerot-z (degrees 0) (degrees 3600))
    (:rotate-y (degrees 0) (degrees 360))
    (:conerot-radius (meters 0) (meters 5))
    )
  )

(defpart 5310
  :init-specs ((:texture (new 'static 'texture-id :index #x9 :page #x64e))
    (:num 1.0)
    (:scale-x (meters 0))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 128.0)
    (:scalevel-x (meters 0.2))
    (:scalevel-y :copy scalevel-x)
    (:timer (seconds 3.335))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:next-time (seconds 0.2))
    (:next-launcher 5315)
    )
  )

(defpart 5315
  :init-specs ((:scalevel-x (meters -0.026666667)) (:scalevel-y :copy scalevel-x))
  )

(defpart 5311
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:scale-x (meters 0))
    (:rot-x (degrees 45))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 40.0)
    (:scalevel-x (meters 0.25))
    (:rotvel-z (degrees 0.3))
    (:scalevel-y :copy scalevel-x)
    (:timer (seconds 2))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 40960.0)
    (:next-time (seconds 0.235))
    (:next-launcher 5316)
    )
  )

(defpart 5316
  :init-specs ((:scalevel-x (meters -0.044444446)) (:scalevel-y :copy scalevel-x) (:fade-a -0.022222223))
  )

(defpartgroup group-intro-meteor-explosion-meteor
  :id 1246
  :duration (seconds 0.667)
  :linger-duration (seconds 0.017)
  :flags (use-local-clock unk-4)
  :bounds (static-bspherem 0 0 0 640)
  :parts ((sp-item 5320 :flags (launch-asap bit7) :binding 5317)
    (sp-item 5317 :flags (bit1 start-dead) :binding 5318)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5318 :flags (bit1 start-dead launch-asap) :binding 5319)
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    (sp-item 5319 :flags (bit1 start-dead launch-asap))
    )
  )

(defpartgroup group-intro-meteor-explosion-ring
  :id 1247
  :duration (seconds 0.517)
  :linger-duration (seconds 0.017)
  :flags (use-local-clock unk-4)
  :bounds (static-bspherem 0 0 0 640)
  :parts ((sp-item 5321 :flags (is-3d launch-asap)))
  )

(defpartgroup group-intro-meteor-explosion-circle
  :id 1248
  :duration (seconds 0.585)
  :linger-duration (seconds 0.017)
  :flags (use-local-clock unk-4)
  :bounds (static-bspherem 0 0 0 640)
  :parts ((sp-item 5322 :flags (is-3d launch-asap)) (sp-item 5323 :flags (launch-asap)))
  )

(defpartgroup group-intro-meteor-explosion-pang
  :id 1249
  :duration (seconds 0.65)
  :linger-duration (seconds 0.017)
  :flags (use-local-clock unk-4)
  :bounds (static-bspherem 0 0 0 640)
  :parts ((sp-item 5324 :flags (launch-asap)))
  )

(defpartgroup group-intro-meteor-explosion-stays
  :id 1250
  :duration (seconds 0.335)
  :linger-duration (seconds 0.335)
  :flags (use-local-clock unk-4)
  :bounds (static-bspherem 0 0 0 640)
  :parts ((sp-item 5325 :period (seconds 4) :length (seconds 0.085) :offset 20)
    (sp-item 5326 :period (seconds 4) :length (seconds 0.067) :offset 20)
    )
  )

(defpart 5326
  :init-specs ((:texture (new 'static 'texture-id :page #xc))
    (:num 1.0)
    (:scale-x (meters 0))
    (:rot-x (degrees 45))
    (:rot-z (degrees 0) (degrees 3600))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 16.0)
    (:scalevel-x (meters 12) (meters 12))
    (:rotvel-z (degrees -0.3) (degrees 0.6))
    (:scalevel-y :copy scalevel-x)
    (:fade-r 0.0)
    (:fade-g -0.85333335)
    (:fade-b -3.4)
    (:fade-a 0.0)
    (:timer (seconds 2.135))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14 glow))
    (:userdata 409600.0)
    (:next-time (seconds 0.167))
    (:next-launcher 5327)
    )
  )

(defpart 5327
  :init-specs ((:scalevel-x (meters -0.625) (meters -0.3125))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -0.4)
    (:fade-g -1.225)
    (:fade-b 1.59375)
    (:fade-a -0.01875)
    (:next-time (seconds 0.5))
    (:next-launcher 5328)
    )
  )

(defpart 5328
  :init-specs ((:scalevel-x (meters -2.1875) (meters -0.625)) (:scalevel-y :copy scalevel-x))
  )

(defpart 5323
  :init-specs ((:texture (new 'static 'texture-id :page #xc))
    (:num 64.0)
    (:x (meters 80))
    (:scale-x (meters 32) (meters 64))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 16.0)
    (:vel-x (meters -0.15625))
    (:scalevel-x (meters -0.1))
    (:rotvel-z (degrees -1.2) (degrees 2.4))
    (:scalevel-y :copy scalevel-x)
    (:timer (seconds 1.667))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-4 left-multiply-quat))
    (:rotate-y (degrees 0) (degrees 3600))
    )
  )

(defpart 5322
  :init-specs ((:texture (new 'static 'texture-id :index #x26 :page #xc))
    (:num 1.0)
    (:scale-x (meters 0))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 128.0)
    (:scalevel-x (meters 4))
    (:scalevel-y :copy scalevel-x)
    (:timer (seconds 2.135))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-4 left-multiply-quat))
    (:next-time (seconds 0.135))
    (:next-launcher 5329)
    )
  )

(defpart 5329
  :init-specs ((:scalevel-x (meters -0.3125)) (:scalevel-y :copy scalevel-x))
  )

(defpart 5325
  :init-specs ((:texture (new 'static 'texture-id :index #xc9 :page #xc))
    (:num 32.0)
    (:y (meters -16) (meters 32))
    (:scale-x (meters 16) (meters 32))
    (:rot-x 4)
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 128.0 128.0)
    (:b 0.0)
    (:a 64.0 16.0)
    (:omega (degrees 1.125) (degrees 4.5))
    (:vel-y (meters 5.3333335) (meters 5.3333335))
    (:scalevel-x (meters -0.1) (meters -0.2))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -0.8 -0.8)
    (:fade-g -1.59375 -1.59375)
    (:fade-b 1.59375)
    (:accel-y (meters -0.0033333334) (meters -0.0016666667))
    (:friction 0.96 0.02)
    (:timer (seconds 1.067))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 use-global-acc))
    (:func 'sparticle-motion-blur)
    (:next-time (seconds 0) (seconds 1.497))
    (:next-launcher 5330)
    (:conerot-x (degrees 90))
    (:conerot-y (degrees 0) (degrees 3600))
    (:conerot-radius (meters 0))
    )
  )

(defpart 5321
  :init-specs ((:texture (new 'static 'texture-id :index #x2c :page #xc))
    (:num 2.0)
    (:scale-x (meters 16))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 128.0)
    (:b 255.0)
    (:a 128.0)
    (:scalevel-x (meters 33.333332))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -1.0625)
    (:fade-g -1.0666667)
    (:fade-b -0.53333336)
    (:fade-a -1.6)
    (:timer (seconds 1.067))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14 left-multiply-quat))
    (:next-time (seconds 0.135))
    (:next-launcher 5331)
    (:rotate-y (degrees 0) (degrees 3600))
    )
  )

(defpart 5331
  :init-specs ((:scalevel-x (meters 8.333333)) (:scalevel-y :copy scalevel-x) (:fade-a -0.26666668))
  )

(defpart 5324
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 8.0)
    (:scale-x (meters 16) (meters 16))
    (:rot-x (degrees 45))
    (:rot-z (degrees 0) (degrees 3600))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 32.0)
    (:scalevel-x (meters 6) (meters 6))
    (:rotvel-z (degrees 0.3))
    (:scalevel-y :copy scalevel-x)
    (:fade-r 0.0)
    (:fade-g -2.1333334)
    (:fade-b -8.5)
    (:fade-a 0.0)
    (:timer (seconds 1.335))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 122880.0)
    (:next-time (seconds 0.1))
    (:next-launcher 5332)
    )
  )

(defpart 5332
  :init-specs ((:scalevel-x (meters -0.05) (meters -0.05))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -0.8)
    (:fade-g -1.225)
    (:fade-b 1.59375)
    (:fade-a -0.2)
    )
  )

(defpart 5320
  :init-specs ((:texture (new 'static 'texture-id :index #xca :page #xc))
    (:num 1.0)
    (:scale-x (meters 512))
    (:rot-x (degrees 22.5))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 0.0)
    (:b 128.0)
    (:a 8.0)
    (:vel-y (meters 6.6666665))
    (:accel-y (meters -0.06666667))
    (:timer (seconds 1))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:rotate-y (degrees 0))
    )
  )

(defpart 5317
  :init-specs ((:texture (new 'static 'texture-id :index #xca :page #xc))
    (:num 1.0)
    (:scale-x (meters 128))
    (:rot-x (degrees 22.5))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 128.0)
    (:b 0.0)
    (:a 8.0)
    (:scalevel-x (meters -0.2))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -0.796875)
    (:fade-g -0.4)
    (:fade-b 0.796875)
    (:fade-a -0.0125)
    (:timer (seconds 1.067))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:rotate-y (degrees 0))
    )
  )

(defpart 5318
  :init-specs ((:num 1.0)
    (:rot-x 16)
    (:r 131072.0)
    (:g 90112.0)
    (:b 114688.0)
    (:fade-r 409.6)
    (:fade-g 665.6)
    (:fade-b 512.0)
    (:timer (seconds 0.535))
    (:flags (distort))
    )
  )

(defpart 5319
  :init-specs ((:texture (new 'static 'texture-id :index #xc9 :page #xc))
    (:num 16.0)
    (:y (meters -16) (meters 32))
    (:scale-x (meters 24) (meters 24))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 128.0 128.0)
    (:b 0.0)
    (:a 16.0 16.0)
    (:vel-y (meters 0) (meters 0.21333334))
    (:scalevel-x (meters -0.075) (meters -0.15))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -0.8 -0.8)
    (:fade-g -1.59375 -1.59375)
    (:fade-b 1.59375)
    (:accel-y (meters -0.0033333334) (meters -0.0016666667))
    (:friction 0.94)
    (:timer (seconds 1.067))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 use-global-acc))
    (:next-time (seconds 0) (seconds 1.497))
    (:next-launcher 5330)
    (:conerot-x (degrees 0) (degrees 3600))
    (:conerot-y (degrees 0) (degrees 3600))
    (:rotate-x (degrees 135))
    (:rotate-y (degrees 30))
    (:rotate-z (degrees 0))
    (:conerot-radius (meters 0) (meters 8))
    )
  )

(defpart 5330
  :init-specs ((:a 64.0 64.0) (:next-time (seconds 0.017) (seconds 0.015)) (:next-launcher 5333))
  )

(defpart 5333
  :init-specs ((:a 16.0 16.0) (:next-time (seconds 0.5) (seconds 1.497)) (:next-launcher 5330))
  )

(defpartgroup group-intro-rift-gate-off
  :id 1251
  :duration (seconds 0.017)
  :bounds (static-bspherem 0 0 0 128)
  :parts ((sp-item 5334 :flags (is-3d bit6))
    (sp-item 5335 :flags (bit6))
    (sp-item 5336 :flags (bit6))
    (sp-item 5337 :falloff-to (meters 400))
    (sp-item 5338 :falloff-to (meters 400))
    )
  )

(defpart 5334
  :init-specs ((:texture (new 'static 'texture-id :index #x13 :page #xc))
    (:num 1.0)
    (:scale-x (meters 24))
    (:rot-x (degrees 90))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 255.0)
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14))
    (:rotate-y (degrees 50.000004))
    )
  )

(defpart 5335
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:z (meters -1))
    (:scale-x (meters 40) (meters 2))
    (:rot-x (degrees 22.5))
    (:rot-z (degrees -22))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 64.0)
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14 glow))
    (:userdata 0.0)
    (:rotate-y (degrees -135))
    )
  )

(defpart 5336
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:z (meters -2))
    (:scale-x (meters 90) (meters 2))
    (:rot-x (degrees 22.5))
    (:rot-z (degrees -22))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 32.0)
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14 glow))
    (:userdata 0.0)
    (:rotate-y (degrees -135))
    )
  )

(defpart 5337
  :init-specs ((:texture (new 'static 'texture-id :index #xc9 :page #xc))
    (:num 32.0)
    (:z (meters 0) (meters -70))
    (:scale-x (meters 0.2) (meters 0.2))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 0.0)
    (:vel-y (meters -0.00066666666) (meters -0.0026666666))
    (:fade-a 0.85333335)
    (:timer (seconds 1))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14))
    (:next-time (seconds 0.25) (seconds 0.247))
    (:next-launcher 5339)
    (:rotate-y (degrees -75) (degrees -110))
    (:rotate-z (degrees -35) (degrees 110))
    )
  )

(defpart 5339
  :init-specs ((:fade-a -0.85333335))
  )

(defpart 5338
  :init-specs ((:texture (new 'static 'texture-id :index #xc9 :page #xc))
    (:num 1.0)
    (:z (meters 0) (meters -70))
    (:scale-x (meters 0.2) (meters 0.2))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 0.0)
    (:vel-y (meters -0.00066666666) (meters -0.0026666666))
    (:fade-a 0.85333335)
    (:timer (seconds 1))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14))
    (:userdata -4096000.0)
    (:func 'check-drop-level-bigdoor-open-pops)
    (:next-time (seconds 0.25) (seconds 0.247))
    (:next-launcher 5340)
    (:rotate-y (degrees -85) (degrees -90))
    (:rotate-z (degrees -45) (degrees 90))
    )
  )

(defpart 5340
  :init-specs ((:userdata 4096000.0))
  )

(defun check-drop-level-bigdoor-open-pops ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix))
  (when (< (-> arg2 vector 0 y) (-> arg1 user-float))
    (let ((gp-0 (new 'stack-no-clear 'vector)))
      (sp-kill-particle arg0 arg1)
      (set-vector! gp-0 (-> arg2 vector 0 x) (-> arg2 vector 0 y) (-> arg2 vector 0 z) 1.0)
      (let ((t9-1 sp-launch-particles-var)
            (a0-2 *sp-particle-system-2d*)
            (a1-1 (-> *part-id-table* 5341))
            (a2-1 *launch-matrix*)
            )
        (set! (-> a2-1 trans quad) (-> gp-0 quad))
        (t9-1 a0-2 a1-1 a2-1 (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0)
        )
      (let ((t9-2 sp-launch-particles-var)
            (a0-3 *sp-particle-system-2d*)
            (a1-2 (-> *part-id-table* 5342))
            (a2-2 *launch-matrix*)
            )
        (set! (-> a2-2 trans quad) (-> gp-0 quad))
        (t9-2 a0-3 a1-2 a2-2 (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0)
        )
      )
    )
  (none)
  )

(defpart 5342
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:scale-x (meters 1.5) (meters 0.4))
    (:rot-x (degrees 2.25))
    (:rot-z (degrees 0) (degrees 3600))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 16.0 32.0)
    (:omega (degrees 4511.25))
    (:fade-a -1.92)
    (:timer (seconds 0.067))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 0.0)
    )
  )

(defpart 5341
  :init-specs ((:texture (new 'static 'texture-id :index #xc9 :page #xc))
    (:num 4.0 4.0)
    (:scale-x (meters 0.3) (meters 0.2))
    (:scale-y :copy scale-x)
    (:r 192.0 64.0)
    (:g 192.0 64.0)
    (:b 192.0 64.0)
    (:a 32.0 64.0)
    (:vel-y (meters 0.053333335) (meters 0.053333335))
    (:accel-y (meters -0.0016666667) (meters -0.00066666666))
    (:friction 0.85)
    (:timer (seconds 0.3) (seconds 0.197))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:conerot-x (degrees 0) (degrees 3600))
    (:conerot-y (degrees 0) (degrees 3600))
    )
  )

(defpartgroup group-intro-rift-gate-on
  :id 1252
  :duration (seconds 0.017)
  :linger-duration (seconds 1.5)
  :flags (unk-6)
  :bounds (static-bspherem 0 0 0 640)
  :rotate ((degrees 90) (degrees 50.000004) (degrees 0))
  :parts ((sp-item 5343 :flags (is-3d bit6 bit7))
    (sp-item 5344 :flags (is-3d bit6 bit7))
    (sp-item 5345 :flags (bit7))
    (sp-item 5346 :flags (bit6))
    (sp-item 5347 :flags (bit6))
    (sp-item 5348 :flags (bit7))
    )
  )

(defpart 5348
  :init-specs ((:texture (new 'static 'texture-id :index #xc9 :page #xc))
    (:num 1.0 1.0)
    (:x (meters 30))
    (:y (meters 10))
    (:scale-x (meters 0.25) (meters 0.25))
    (:rot-x 4)
    (:scale-y :copy scale-x)
    (:r 64.0)
    (:g 0.0)
    (:b 128.0)
    (:a 64.0)
    (:omega (degrees 0.0225) (degrees 0.0225))
    (:vel-x (meters -0.36666667))
    (:vel-y (meters -0.123333335))
    (:fade-r 0.32)
    (:fade-g 0.64)
    (:fade-b 0.0)
    (:fade-a 0.32)
    (:friction 0.95)
    (:timer (seconds 0.667))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:func 'sparticle-motion-blur)
    (:rotate-y (degrees 0) (degrees 3600))
    )
  )

(defpart 5344
  :init-specs ((:texture (new 'static 'texture-id :index #x13 :page #xc))
    (:num 1.0)
    (:scale-x (meters 24))
    (:scale-y :copy scale-x)
    (:r 16.0)
    (:g 0.0)
    (:b 32.0)
    (:a 128.0)
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-14))
    (:rotate-y (degrees 0))
    )
  )

(defpart 5346
  :init-specs ((:texture (new 'static 'texture-id :index #xca :page #xc))
    (:num 1.0)
    (:scale-x (meters 5))
    (:rot-x (degrees 45))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 48.0 32.0)
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 819.2)
    )
  )

(defpart 5347
  :init-specs ((:texture (new 'static 'texture-id :index #xca :page #xc))
    (:num 1.0)
    (:scale-x (meters 48))
    (:rot-x (degrees 45))
    (:scale-y :copy scale-x)
    (:r 64.0)
    (:g 0.0)
    (:b 128.0)
    (:a 48.0 4.0)
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 65536.0)
    )
  )

(defpart 5343
  :init-specs ((:texture (new 'static 'texture-id :page #xc))
    (:num 0.0 0.1)
    (:z (meters 0.2))
    (:scale-x (meters 2) (meters 24))
    (:scale-y :copy scale-x)
    (:r 196.0)
    (:g 255.0)
    (:b 196.0)
    (:a 0.0)
    (:fade-a 0.4 0.4)
    (:timer (seconds 1.067))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14 left-multiply-quat))
    (:next-time (seconds 0.267))
    (:next-launcher 5349)
    (:rotate-y (degrees 0) (degrees 3600))
    )
  )

(defpart 5349
  :init-specs ((:fade-a 0.0) (:next-time (seconds 0.535)) (:next-launcher 5350))
  )

(defpart 5350
  :init-specs ((:fade-a -0.8))
  )

(defpart 5345
  :init-specs ((:texture (new 'static 'texture-id :page #xc))
    (:num 16.0)
    (:x (meters 12))
    (:scale-x (meters 3) (meters 3))
    (:scale-y :copy scale-x)
    (:r 0.0 196.0)
    (:g 0.0)
    (:b 128.0 128.0)
    (:a 16.0 16.0)
    (:omega (degrees 0.045) (degrees 0.045))
    (:vel-x (meters -0.10666667))
    (:fade-r -0.42666668 0.6533333)
    (:fade-g 0.42666668)
    (:fade-b 0.0 -0.21333334)
    (:friction 0.96)
    (:timer (seconds 1))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:func 'sparticle-motion-blur)
    (:rotate-y (degrees 0) (degrees 3600))
    )
  )

(defpartgroup group-rift-rider-donut-antenna-glow
  :id 1253
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 5351))
  )

(defpart 5351
  :init-specs ((:texture (new 'static 'texture-id :index #xc9 :page #xc))
    (:num 1.0)
    (:scale-x (meters 1))
    (:scale-y :copy scale-x)
    (:r 0.0)
    (:g 0.0)
    (:b 128.0)
    (:a 64.0)
    (:scalevel-x (meters -0.01))
    (:scalevel-y :copy scalevel-x)
    (:fade-a -0.64)
    (:timer (seconds 0.335))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14))
    )
  )

(defpartgroup group-rift-rider-donut-nipple-glow
  :id 1254
  :flags (unk-4)
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 5352 :flags (bit6 bit7)))
  )

(defpart 5352
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:z (meters -1))
    (:scale-x (meters 5))
    (:rot-x (degrees 2.25))
    (:scale-y :copy scale-x)
    (:r 0.0)
    (:g 96.0)
    (:b 96.0)
    (:a 36.0)
    (:omega (degrees 9015.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-14 glow))
    (:userdata 5529.6)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-rift-rider-donut-light-glow
  :id 1255
  :flags (unk-4)
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 5353 :flags (bit6 bit7)))
  )

(defpart 5353
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:z (meters -0.1))
    (:scale-x (meters 2))
    (:rot-x (degrees 2.25))
    (:scale-y :copy scale-x)
    (:r 0.0)
    (:g 96.0)
    (:b 96.0)
    (:a 36.0)
    (:omega (degrees 9015.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-14 glow))
    (:userdata 3072.0)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-rift-rider-button-yellow-1
  :id 1256
  :flags (use-local-clock)
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 5354 :period (seconds 1) :length (seconds 0.017)))
  )

(defpartgroup group-rift-rider-button-yellow-2
  :id 1257
  :flags (use-local-clock)
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 5354 :period (seconds 1) :length (seconds 0.017) :offset 75))
  )

(defpart 5354
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:scale-x (meters 0.2))
    (:rot-x (degrees 2.25))
    (:scale-y :copy scale-x)
    (:r 128.0)
    (:g 128.0)
    (:b 0.0)
    (:a 32.0)
    (:omega (degrees 2715.75))
    (:timer (seconds 0.25))
    (:flags (glow))
    (:userdata 1024.0)
    )
  )

(defpartgroup group-rift-rider-button-blue-1
  :id 1258
  :flags (use-local-clock)
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 5355 :period (seconds 1) :length (seconds 0.017) :offset 150))
  )

(defpartgroup group-rift-rider-button-blue-2
  :id 1259
  :flags (use-local-clock)
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 5355 :period (seconds 1) :length (seconds 0.017) :offset 225))
  )

(defpart 5355
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:scale-x (meters 0.2))
    (:rot-x (degrees 2.25))
    (:scale-y :copy scale-x)
    (:r 0.0)
    (:g 128.0)
    (:b 64.0)
    (:a 32.0)
    (:omega (degrees 2715.75))
    (:timer (seconds 0.25))
    (:flags (glow))
    (:userdata 1024.0)
    )
  )

(defpartgroup group-time-map-glow
  :id 1260
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 5356 :flags (bit6)))
  )

(defpart 5356
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:y (meters 0.1))
    (:scale-x (meters 0.3) (meters 0.1))
    (:rot-x (degrees 2.25))
    (:scale-y :copy scale-x)
    (:r 192.0)
    (:g 128.0)
    (:b 24.0)
    (:a 48.0 16.0)
    (:omega (degrees 2715.75))
    (:timer (seconds 0.017))
    (:flags (glow))
    (:userdata 1024.0)
    )
  )

(defpartgroup group-time-map-glow-fx
  :id 1261
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 5358 :binding 5357)
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5357 :flags (start-dead launch-asap))
    (sp-item 5359)
    )
  )

(defpart 5358
  :init-specs ((:texture (new 'static 'texture-id :index #xbc :page #xc))
    (:num 1.0)
    (:y (meters 0.15))
    (:scale-x (meters 0.02))
    (:scale-y :copy scale-x)
    (:r 0.0)
    (:g 0.0)
    (:b 0.0)
    (:a 32.0)
    (:timer (seconds 0.5))
    (:flags (sp-cpuinfo-flag-3))
    )
  )

(defpart 5357
  :init-specs ((:texture (new 'static 'texture-id :index #x29 :page #xc))
    (:num 1.0)
    (:x (meters 0) (meters 160))
    (:y (meters 0) (meters 2.2222223))
    (:z (meters 0.2))
    (:scale-x (meters 0.01) (meters 0.02))
    (:scale-y :copy scale-x)
    (:r 192.0 64.0)
    (:g 64.0 16.0)
    (:b 0.0 32.0)
    (:a 16.0 16.0)
    (:omega (degrees 0) (degrees 3600))
    (:vel-x (meters 0) (meters 0.07703704))
    (:vel-y (meters 0))
    (:vel-z (meters 0))
    (:accel-x (meters 0))
    (:accel-y (meters 0))
    (:accel-z (meters 0))
    (:timer (seconds 0.5))
    (:flags (sp-cpuinfo-flag-3 ready-to-launch))
    (:next-time (seconds 0.25) (seconds 0.247))
    (:next-launcher 5360)
    )
  )

(defpart 5360
  :init-specs ((:a 128.0))
  )

(defpart 5359
  :init-specs ((:texture (new 'static 'texture-id :index #xca :page #xc))
    (:num 1.0 1.0)
    (:x (meters 0) (meters 0.1))
    (:y (meters -0.15) (meters 0.6))
    (:scale-x (meters 0.01))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 128.0 128.0)
    (:b 0.0 128.0)
    (:a 32.0 16.0)
    (:timer (seconds 0.5))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:next-time (seconds 0.335) (seconds 0.247))
    (:next-launcher 5360)
    (:rotate-y (degrees 0) (degrees 3600))
    )
  )

(defpartgroup group-heart-of-mar-glow
  :id 1262
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 5361 :flags (bit6)))
  )

(defpart 5361
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:y (meters 0.1))
    (:scale-x (meters 0.5))
    (:rot-x (degrees 2.25))
    (:scale-y :copy scale-x)
    (:r 96.0)
    (:g 0.0)
    (:b 12.0)
    (:a 32.0)
    (:omega (degrees 2715.75))
    (:timer (seconds 0.017))
    (:flags (glow))
    (:userdata 1024.0)
    )
  )

(defpartgroup group-screen-a-glow
  :id 1263
  :flags (unk-4 unk-6)
  :bounds (static-bspherem 0 0 0 2)
  :rotate ((degrees 90) (degrees 0) (degrees 0))
  :parts ((sp-item 5362 :flags (is-3d bit7) :period (seconds 0.085) :length (seconds 0.017)))
  )

(defpart 5362
  :init-specs ((:texture (new 'static 'texture-id :index #xca :page #xc))
    (:num 1.0)
    (:y (meters -0.03))
    (:scale-x (meters 0.8))
    (:rot-x (degrees 10))
    (:scale-y (meters 0.4))
    (:r 0.0)
    (:g 255.0)
    (:b 255.0)
    (:a 32.0)
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-3))
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-screen-b-glow
  :id 1264
  :flags (unk-4 unk-6)
  :bounds (static-bspherem 0 0 0 2)
  :rotate ((degrees 90) (degrees 0) (degrees 0))
  :parts ((sp-item 5363 :flags (is-3d bit7) :period (seconds 0.085) :length (seconds 0.017)))
  )

(defpart 5363
  :init-specs ((:texture (new 'static 'texture-id :index #xca :page #xc))
    (:num 1.0)
    (:y (meters -0.03))
    (:scale-x (meters 1))
    (:rot-x (degrees 10))
    (:scale-y (meters 0.8))
    (:r 0.0)
    (:g 255.0)
    (:b 255.0)
    (:a 32.0)
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-3))
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-intro-vortex
  :id 1265
  :duration (seconds 0.035)
  :linger-duration (seconds 1.5)
  :flags (unk-4 unk-6)
  :bounds (static-bspherem 0 0 0 256)
  :rotate ((degrees 0) (degrees 90) (degrees 0))
  :parts ((sp-item 5364 :flags (bit7))
    (sp-item 5365 :flags (bit7))
    (sp-item 5366 :flags (bit7))
    (sp-item 5367 :flags (bit6))
    )
  )

(defpart 5367
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:z (meters 200))
    (:scale-x (meters 500))
    (:rot-x (degrees 225))
    (:rot-z (degrees -17))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 32.0)
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 0.0)
    )
  )

(defpart 5365
  :init-specs ((:texture (new 'static 'texture-id :page #xc))
    (:num 2.0)
    (:x (meters 70))
    (:y (meters -20) (meters 40))
    (:scale-x (meters 16) (meters 4))
    (:rot-x 4)
    (:rot-z (degrees 0) (degrees 3600))
    (:scale-y :copy scale-x)
    (:r 32.0 32.0)
    (:g 0.0)
    (:b 128.0)
    (:a 16.0 16.0)
    (:omega (degrees 0.225) (degrees 0.225))
    (:vel-x (meters -0.46666667))
    (:timer (seconds 1))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:rotate-x (degrees 0) (degrees 3600))
    )
  )

(defun check-split-level-intro-vortex-pop-userdata ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix))
  (when (< (-> arg1 user-float) 0.0)
    (let ((s3-0 (new 'stack-no-clear 'vector)))
      (sp-kill-particle arg0 arg1)
      (set-vector! s3-0 (-> arg2 vector 0 x) (-> arg2 vector 0 y) (-> arg2 vector 0 z) 1.0)
      (let ((t9-1 sp-launch-particles-var)
            (a0-3 *sp-particle-system-2d*)
            (a1-2 (-> *part-id-table* 5368))
            (a2-1 *launch-matrix*)
            )
        (set! (-> a2-1 trans quad) (-> s3-0 quad))
        (t9-1 a0-3 a1-2 a2-1 (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0)
        )
      )
    )
  (sparticle-motion-blur arg0 arg1 (the-as vector arg2))
  (none)
  )

(defpart 5368
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:scale-x (meters 1.5) (meters 0.25))
    (:rot-x (degrees 2.25))
    (:rot-z (degrees 0) (degrees 3600))
    (:scale-y :copy scale-x)
    (:r 128.0)
    (:g 64.0)
    (:b 255.0)
    (:a 128.0)
    (:vel-z (meters -0.6666667))
    (:fade-a -5.12)
    (:timer (seconds 0.085))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 0.0)
    )
  )

(defpart 5366
  :init-specs ((:texture (new 'static 'texture-id :index #xc9 :page #xc))
    (:num 1.0)
    (:x (meters 100))
    (:y (meters -20) (meters 40))
    (:scale-x (meters 0.25) (meters 0.25))
    (:rot-x 4)
    (:rot-z (degrees 0) (degrees 3600))
    (:scale-y :copy scale-x)
    (:r 64.0)
    (:g 0.0)
    (:b 128.0)
    (:a 128.0)
    (:omega (degrees 0.0225) (degrees 0.0225))
    (:vel-x (meters -0.6666667))
    (:timer (seconds 1))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:userdata 409600.0)
    (:func 'check-split-level-intro-vortex-pop-userdata)
    (:next-time (seconds 0.017) (seconds 3.33))
    (:next-launcher 5369)
    (:rotate-x (degrees 0) (degrees 3600))
    )
  )

(defpart 5369
  :init-specs ((:userdata -409600.0))
  )

(defpart 5364
  :init-specs ((:texture (new 'static 'texture-id :index #xc9 :page #xc))
    (:num 5.0)
    (:x (meters 100))
    (:y (meters -20) (meters 40))
    (:scale-x (meters 0.25) (meters 0.25))
    (:rot-x 4)
    (:rot-z (degrees 0) (degrees 3600))
    (:scale-y :copy scale-x)
    (:r 32.0)
    (:g 0.0)
    (:b 128.0)
    (:a 128.0)
    (:omega (degrees 0.0225) (degrees 0.0225))
    (:vel-x (meters -0.6666667))
    (:timer (seconds 1))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:func 'sparticle-motion-blur)
    (:next-time (seconds 0.267) (seconds 0.265))
    (:next-launcher 5370)
    (:rotate-x (degrees 0) (degrees 3600))
    )
  )

(defpart 5370
  :init-specs ((:r 64.0 64.0) (:g 64.0) (:b 255.0) (:next-time (seconds 0.017)) (:next-launcher 5371))
  )

(defpart 5371
  :init-specs ((:r 32.0) (:g 0.0) (:b 128.0) (:next-time (seconds 0.267) (seconds 0.265)) (:next-launcher 5370))
  )

(defpartgroup group-intro-dust
  :id 1266
  :duration (seconds 0.017)
  :linger-duration (seconds 1)
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 5372))
  )

(defpartgroup group-intro-dust-big
  :id 1267
  :duration (seconds 0.017)
  :linger-duration (seconds 1)
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 5372)
    (sp-item 5372)
    (sp-item 5372)
    (sp-item 5372)
    (sp-item 5372)
    (sp-item 5372)
    (sp-item 5372)
    (sp-item 5372)
    (sp-item 5372)
    (sp-item 5372)
    (sp-item 5372)
    (sp-item 5372)
    (sp-item 5372)
    )
  )

(defpart 5372
  :init-specs ((:texture (new 'static 'texture-id :page #xc))
    (:num 1.0 2.0)
    (:scale-x (meters 0.5) (meters 0.5))
    (:rot-z (degrees 0) (degrees 360))
    (:scale-y :copy scale-x)
    (:r 64.0 128.0)
    (:g :copy r)
    (:b :copy g)
    (:a 16.0 16.0)
    (:vel-y (meters 0.006666667) (meters 0.013333334))
    (:scalevel-x (meters 0.0016666667) (meters 0.0033333334))
    (:rotvel-z (degrees -0.2) (degrees 0.4))
    (:scalevel-y :copy scalevel-x)
    (:fade-a -0.21333334 -0.21333334)
    (:accel-y (meters -0.00033333333))
    (:friction 0.95)
    (:timer (seconds 1))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-12))
    (:conerot-x (degrees 60) (degrees 30))
    (:conerot-y (degrees 0) (degrees 3600))
    )
  )

(defpartgroup group-intro-vortex-hit-explosion
  :id 1268
  :duration (seconds 2)
  :linger-duration (seconds 1)
  :flags (use-local-clock unk-5 unk-6)
  :bounds (static-bspherem 0 0 0 15)
  :rotate ((degrees 0) (degrees 90) (degrees 0))
  :parts ((sp-item 5373 :flags (bit6) :period (seconds 3) :length (seconds 0.017))
    (sp-item 5374 :flags (bit6) :period (seconds 3) :length (seconds 0.017))
    (sp-item 5375 :period (seconds 3) :length (seconds 0.05))
    (sp-item 5376 :fade-after (meters 60) :period (seconds 3) :length (seconds 0.035) :offset 10)
    (sp-item 5377 :fade-after (meters 60) :falloff-to (meters 60) :period (seconds 3) :length (seconds 0.167) :offset 20)
    (sp-item 5378 :fade-after (meters 200) :falloff-to (meters 200) :period (seconds 3) :length (seconds 0.085) :offset 20)
    (sp-item 5379 :fade-after (meters 150) :falloff-to (meters 150) :period (seconds 3) :length (seconds 0.067) :offset 30)
    )
  )

(defpart 5374
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:scale-x (meters 2))
    (:rot-x (degrees 11.25))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 24.0)
    (:scalevel-x (meters 0.10666667))
    (:rotvel-z (degrees 0.3))
    (:scalevel-y :copy scalevel-x)
    (:fade-r 0.0)
    (:fade-g -4.266667)
    (:fade-b -4.266667)
    (:fade-a 0.0)
    (:timer (seconds 0.5))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14 glow))
    (:next-time (seconds 0.25))
    (:next-launcher 5380)
    )
  )

(defpart 5380
  :init-specs ((:scalevel-x (meters 0))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -0.64)
    (:fade-g -1.28)
    (:fade-b -1.28)
    (:fade-a -0.48)
    )
  )

(defpart 5379
  :init-specs ((:texture (new 'static 'texture-id :index #x34 :page #xc))
    (:num 5.0 0.2)
    (:scale-x (meters 1) (meters 1))
    (:rot-z (degrees 0) (degrees 3600) :store)
    (:scale-y (meters 0.8) (meters 0.2))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 32.0 32.0)
    (:scalevel-x (meters 0.01) (meters 0.13333334))
    (:scalevel-y :copy scalevel-x)
    (:fade-r 0.0)
    (:fade-g -0.36)
    (:fade-b -4.24)
    (:fade-a -0.22068965)
    (:friction 0.95)
    (:timer (seconds 3.335))
    (:flags (sp-cpuinfo-flag-2))
    (:next-time (seconds 0.085))
    (:next-launcher 5381)
    (:conerot-x '*sp-temp*)
    (:conerot-y (degrees 0) (degrees 3600))
    )
  )

(defpart 5378
  :init-specs ((:texture (new 'static 'texture-id :index #x33 :page #xc))
    (:birth-func 'birth-func-texture-group)
    (:num 4.0 1.2)
    (:scale-x (meters 1) (meters 1))
    (:rot-z (degrees 0))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 32.0 32.0)
    (:vel-y (meters 0.02) (meters 0.01))
    (:scalevel-x (meters 0.01) (meters 0.13333334))
    (:rotvel-z (degrees -0.12) (degrees 0.24))
    (:scalevel-y :copy scalevel-x)
    (:fade-r 0.0)
    (:fade-g -0.36)
    (:fade-b -4.24)
    (:fade-a -0.22068965)
    (:friction 0.95)
    (:timer (seconds 3.335))
    (:flags (sp-cpuinfo-flag-2))
    (:userdata :data (new 'static 'boxed-array :type int32 40 1 0 #xc00000 #xc03300))
    (:next-time (seconds 0.085))
    (:next-launcher 5381)
    (:conerot-x (degrees 0) (degrees 3600))
    (:conerot-y (degrees 0) (degrees 3600))
    )
  )

(defpart 5381
  :init-specs ((:fade-r 0.0) (:fade-g 0.0) (:fade-b 0.0) (:next-time (seconds 0.017) (seconds 0.065)) (:next-launcher 5382))
  )

(defpart 5382
  :init-specs ((:scalevel-x (meters 0.016666668) (meters 0.016666668))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -0.44)
    (:fade-g -2.36)
    (:fade-b -2.64)
    (:next-time (seconds 0.117) (seconds 0.047))
    (:next-launcher 5383)
    )
  )

(defpart 5383
  :init-specs ((:scalevel-x (meters 0.008333334) (meters 0.008333334))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -1.2944444)
    (:fade-g -0.7111111)
    (:fade-b -0.094444446)
    (:fade-a -0.06545454 -0.06545454)
    (:next-time (seconds 0.5) (seconds 0.097))
    (:next-launcher 5384)
    )
  )

(defpart 5384
  :init-specs ((:fade-r 0.0) (:fade-g 0.0) (:fade-b 0.0) (:fade-a -0.1125))
  )

(defpart 5373
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:scale-x (meters 5))
    (:rot-x (degrees 11.25))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 96.0)
    (:scalevel-x (meters 0.5))
    (:rotvel-z (degrees 0.3))
    (:scalevel-y :copy scalevel-x)
    (:fade-r 0.0)
    (:fade-g -1.28)
    (:fade-b -5.1)
    (:fade-a 0.0)
    (:timer (seconds 0.217))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:next-time (seconds 0.1))
    (:next-launcher 5385)
    )
  )

(defpart 5385
  :init-specs ((:scalevel-x (meters -0.2857143))
    (:scalevel-y :copy scalevel-x)
    (:fade-r 0.0)
    (:fade-g -3.6571429)
    (:fade-b 0.0)
    (:fade-a -2.7428572)
    )
  )

(defpart 5377
  :init-specs ((:texture (new 'static 'texture-id :index #x32 :page #xc))
    (:num 8.0 2.0)
    (:x (meters 0.25))
    (:scale-x (meters 1) (meters 0.25))
    (:rot-z (degrees 0) (degrees 360))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 16.0 48.0)
    (:vel-y (meters 0.083333336) (meters 0.083333336))
    (:scalevel-x (meters 0.006666667) (meters 0.0016666667))
    (:rotvel-z (degrees -0.12) (degrees 0.24))
    (:scalevel-y :copy scalevel-x)
    (:fade-r 0.0)
    (:fade-g -0.18)
    (:fade-b -2.12)
    (:accel-y (meters -0.00016666666) (meters -0.00033333333))
    (:friction 0.87)
    (:timer (seconds 3.335))
    (:flags (sp-cpuinfo-flag-2))
    (:next-time (seconds 0.117) (seconds 0.047))
    (:next-launcher 5386)
    (:conerot-x (degrees 0) (degrees 3600))
    (:conerot-y (degrees 0) (degrees 3600))
    )
  )

(defpart 5386
  :init-specs ((:scalevel-x (meters 0.0016666667))
    (:scalevel-y :copy scalevel-x)
    (:fade-r 0.0)
    (:fade-g 0.02)
    (:fade-b 0.23555556)
    (:next-time (seconds 0.15) (seconds 0.047))
    (:next-launcher 5387)
    )
  )

(defpart 5387
  :init-specs ((:fade-r -0.5543478) (:fade-g -0.5543478) (:fade-a -0.13913043))
  )

(defpart 5375
  :init-specs ((:texture (new 'static 'texture-id :page #xc))
    (:num 8.0 1.0)
    (:x (meters 0) (meters 0.6))
    (:scale-x (meters 2.5) (meters 2))
    (:rot-z (degrees 0) (degrees 360))
    (:scale-y :copy scale-x)
    (:r 70.0 20.0)
    (:g 70.0 20.0)
    (:b 70.0 20.0)
    (:a 0.0 40.0)
    (:vel-y (meters 0) (meters 0.1))
    (:scalevel-x (meters 0.033333335) (meters 0.02))
    (:rotvel-z (degrees -0.12) (degrees 0.24))
    (:scalevel-y :copy scalevel-x)
    (:fade-r 3.3)
    (:fade-g 3.12)
    (:fade-b 1.18)
    (:fade-a 1.76)
    (:friction 0.88)
    (:timer (seconds 2.367))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:next-time (seconds 0.117) (seconds 0.047))
    (:next-launcher 5388)
    (:conerot-x (degrees 0) (degrees 3600))
    (:conerot-y (degrees 0) (degrees 3600))
    )
  )

(defpart 5388
  :init-specs ((:scalevel-x (meters 0.0033333334))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -0.53333336)
    (:fade-g -1.9666667)
    (:fade-b -2.2)
    (:fade-a -0.41666666)
    (:next-time (seconds 0.15) (seconds 0.047))
    (:next-launcher 5389)
    )
  )

(defpart 5389
  :init-specs ((:scalevel-x (meters 0))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -0.38833332)
    (:fade-g -0.21333334)
    (:fade-b -0.028333334)
    (:fade-a -0.38833332)
    )
  )

(defpart 5376
  :init-specs ((:texture (new 'static 'texture-id :index #x31 :page #xc))
    (:num 16.0 2.0)
    (:scale-x (meters 0.2) (meters 0.5))
    (:rot-x 4)
    (:rot-z (degrees 0) (degrees 360))
    (:scale-y (meters 0.2) (meters 0.1))
    (:r 128.0 128.0)
    (:g 96.0)
    (:b 64.0)
    (:a 64.0 64.0)
    (:scalevel-x (meters 0.13333334) (meters 0.02))
    (:fade-g 1.6)
    (:fade-b 3.2)
    (:fade-a -1.6)
    (:timer (seconds 0.3))
    (:flags (sp-cpuinfo-flag-2))
    )
  )

(defpart 5390
  :init-specs ((:texture (new 'static 'texture-id :index #xc9 :page #xc))
    (:num 1.0)
    (:scale-x (meters 0.08))
    (:scale-y :copy scale-x)
    (:r 128.0)
    (:g 0.0)
    (:b 96.0)
    (:a 32.0 12.0)
    (:accel-y (meters 0) (meters 0.00066666666))
    (:timer (seconds 0.017) (seconds 0.33))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:func 'sparticle-texture-glow-soft)
    (:next-time (seconds 0.035))
    (:next-launcher 5391)
    )
  )

(defpart 5391
  :init-specs ((:scalevel-x (meters -0.0008)) (:scalevel-y (meters 0) (meters 0.0026666666)))
  )

(defpartgroup group-prison-plat-jet
  :id 1269
  :linger-duration (seconds 1.5)
  :bounds (static-bspherem 0 0 0 12)
  :parts ((sp-item 5392) (sp-item 5393) (sp-item 5394))
  )

(defpart 5392
  :init-specs ((:texture (new 'static 'texture-id :page #xc))
    (:num 1.0 4.0)
    (:y (meters 0) (meters -0.25))
    (:scale-x (meters 0.2) (meters 0.2))
    (:rot-z (degrees 0) 1 (degrees 180))
    (:scale-y (meters 1) (meters 0.6))
    (:r 192.0)
    (:g 64.0)
    (:b 0.0)
    (:a 0.0 16.0)
    (:vel-y (meters -0.05) (meters -0.016666668))
    (:scalevel-x (meters 0.033333335))
    (:scalevel-y (meters 0.006666667))
    (:fade-r -2.0)
    (:fade-g 2.0)
    (:fade-b 5.0)
    (:fade-a 1.28)
    (:accel-x (meters 0) (meters 0.0016666667))
    (:accel-y (meters 0.00016666666) (meters 0.0005))
    (:friction 0.94)
    (:timer (seconds 1))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-12 sp-cpuinfo-flag-14))
    (:next-time (seconds 0.085))
    (:next-launcher 5395)
    (:rotate-y (degrees 0) (degrees 360))
    )
  )

(defpart 5395
  :init-specs ((:r 64.0 64.0)
    (:g 64.0 64.0)
    (:b 64.0 64.0)
    (:fade-r 0.0)
    (:fade-g 0.0)
    (:fade-b 0.0)
    (:fade-a -0.32 -0.256)
    )
  )

(defpart 5393
  :init-specs ((:texture (new 'static 'texture-id :index #xc9 :page #xc))
    (:num 0.1 0.5)
    (:x (meters 0) (meters 0.05))
    (:y (meters 0.25) (meters -0.5))
    (:scale-x (meters 0.1))
    (:scale-y :copy scale-x)
    (:r 192.0 64.0)
    (:g 0.0 128.0)
    (:b 0.0)
    (:a 128.0)
    (:omega (degrees 0.01125) (degrees 0.0225))
    (:vel-y (meters -0.033333335) (meters -0.026666667))
    (:scalevel-x (meters -0.005))
    (:scalevel-y :copy scalevel-x)
    (:fade-g 0.0)
    (:accel-x (meters 0) (meters 0.0016666667))
    (:accel-y (meters 0.00016666666) (meters 0.0005))
    (:friction 0.96)
    (:timer (seconds 0.167) (seconds 0.247))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-12 sp-cpuinfo-flag-14))
    (:func 'sparticle-motion-blur)
    (:next-time (seconds 0.1))
    (:next-launcher 5396)
    (:rotate-y (degrees 0) (degrees 360))
    )
  )

(defpart 5396
  :init-specs ((:scalevel-x (meters 0)) (:scalevel-y (meters 0)))
  )

(defpart 5394
  :init-specs ((:num 0.4)
    (:rot-x 8)
    (:r 1638.4)
    (:g 1331.2)
    (:b 1433.6)
    (:vel-y (meters -0.05) (meters -0.016666668))
    (:fade-r 32.768)
    (:fade-g 28.671999)
    (:fade-b 26.623999)
    (:accel-x (meters 0) (meters 0.0016666667))
    (:friction 0.94)
    (:timer (seconds 0.335))
    (:flags (distort))
    (:next-time (seconds 0.167))
    (:next-launcher 5397)
    (:rotate-y (degrees 0) (degrees 360))
    )
  )

(defpart 5397
  :init-specs ((:fade-r 0.0) (:fade-g 0.0) (:fade-b -4.096))
  )

(defpartgroup group-intro-machine-white-light-glow
  :id 1270
  :bounds (static-bspherem 0 0 0 40)
  :parts ((sp-item 5398 :flags (bit6)))
  )

(defpart 5398
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:scale-x (meters 2))
    (:rot-x (degrees 4.5))
    (:rot-z (degrees 45))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 96.0 1.0)
    (:omega (degrees 4518))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-12 glow))
    (:userdata 2048.0)
    )
  )

(defpartgroup group-intro-prison-restraints-snap
  :id 1271
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 5399) (sp-item 5400) (sp-item 5401 :flags (is-3d)))
  )

(defpart 5399
  :init-specs ((:texture (new 'static 'texture-id :index #x92 :page #xc))
    (:num 16.0 4.0)
    (:scale-x (meters 2.5))
    (:rot-x 4)
    (:scale-y (meters 0.01) (meters 0.005))
    (:r 255.0)
    (:g 128.0 128.0)
    (:b 0.0 128.0)
    (:a 128.0)
    (:omega (degrees 0.00225) (degrees 0.001125))
    (:vel-y (meters 0.06666667) (meters 0.1))
    (:fade-g -2.55 -2.55)
    (:fade-b -8.0)
    (:fade-a -0.64 -0.64)
    (:accel-y (meters -0.0033333334) (meters -0.0016666667))
    (:friction 0.8 0.02)
    (:timer (seconds 0.335))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:func 'sparticle-motion-blur)
    (:conerot-x (degrees 0) (degrees 3600))
    (:conerot-y (degrees 0) (degrees 3600))
    )
  )

(defpart 5400
  :init-specs ((:texture (new 'static 'texture-id :index #xbb :page #xc))
    (:num 1.0)
    (:scale-x (meters 0.25))
    (:rot-x (degrees 0.225))
    (:rot-z (degrees 0) (degrees 3600))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 128.0 128.0)
    (:b 0.0)
    (:a 32.0 16.0)
    (:omega (degrees 1136.25))
    (:scalevel-x (meters 0.08))
    (:scalevel-y :copy scalevel-x)
    (:fade-g -10.2)
    (:fade-a -4.48)
    (:timer (seconds 0.085))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 0.0)
    )
  )

(defpart 5401
  :init-specs ((:texture (new 'static 'texture-id :index #x6 :page #xa05))
    (:birth-func 'birth-func-texture-group)
    (:num 12.0 4.0)
    (:scale-x (meters 0.05) (meters 0.1))
    (:rot-x (degrees 0) (degrees 3600))
    (:rot-y (degrees 0) (degrees 3600))
    (:rot-z (degrees 0) (degrees 3600))
    (:scale-y (meters 0.05) (meters 0.1))
    (:r 0.0 128.0)
    (:g :copy r)
    (:b :copy g)
    (:a 128.0)
    (:vel-y (meters 0.05) (meters 0.06666667))
    (:scalevel-x (meters -0.00022222222))
    (:rotvel-x (degrees -4.8) (degrees 9.6))
    (:rotvel-y (degrees -4.8) (degrees 9.6))
    (:rotvel-z (degrees -4.8) (degrees 9.6))
    (:scalevel-y (meters -0.00022222222))
    (:accel-y (meters -0.0033333334) (meters -0.0016666667))
    (:friction 0.92 0.07)
    (:timer (seconds 4))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-12))
    (:userdata :data (new 'static 'boxed-array :type int32 5 0 0 -1605368320 -1605368064))
    (:conerot-x (degrees 0) (degrees 3600))
    (:conerot-y (degrees 0) (degrees 3600))
    (:rotate-y (degrees 0))
    (:conerot-radius (meters 0) (meters 1))
    )
  )

(defskelgroup skel-rift-rider-break rift-rider-break rift-rider-break-lod0-jg -1
              ((rift-rider-break-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 20)
              :origin-joint-index 25
              )

(defskelgroup skel-rift-rider-break-a rift-rider-break rift-rider-break-a-lod0-jg -1
              ((rift-rider-break-a-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 20)
              :origin-joint-index 10
              )

(defskelgroup skel-vortex vortex 0 -1
              ((1 (meters 999999)))
              :bounds (static-spherem 0 0 0 400)
              :origin-joint-index 3
              )

(defskelgroup skel-vortex-b vortex-b 0 -1
              ((1 (meters 999999)))
              :bounds (static-spherem 0 0 0 400)
              :origin-joint-index 3
              )

(defskelgroup skel-vortex-light vortex-light vortex-light-lod0-jg -1
              ((vortex-light-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 5000)
              :origin-joint-index 3
              )

(defskelgroup skel-rift-rider-bar rift-rider-bar rift-rider-bar-lod0-jg -1
              ((rift-rider-bar-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 2)
              :origin-joint-index 3
              )

(defskelgroup skel-rift-rider-chunk-a rift-rider-chunk-a rift-rider-chunk-a-lod0-jg -1
              ((rift-rider-chunk-a-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 10)
              :origin-joint-index 3
              )

(defskelgroup skel-rift-rider-break-b rift-rider-break-b rift-rider-break-b-lod0-jg -1
              ((rift-rider-break-b-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 10)
              :origin-joint-index 3
              )

(defskelgroup skel-rift-rider-break-c rift-rider-break-c rift-rider-break-c-lod0-jg -1
              ((rift-rider-break-c-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 10)
              :origin-joint-index 3
              )

(defskelgroup skel-meteor meteor meteor-lod0-jg -1
              ((meteor-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 10)
              :origin-joint-index 3
              )

(defskelgroup skel-metalkor-torso metalkor-torso metalkor-torso-lod0-jg -1
              ((metalkor-torso-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 30)
              :origin-joint-index 3
              )

(defskelgroup skel-rift-rider-donut rift-rider-donut rift-rider-donut-lod0-jg -1
              ((rift-rider-donut-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 10)
              :origin-joint-index 3
              )

(defskelgroup skel-vil-break-support vil-break-support vil-break-support-lod0-jg -1
              ((vil-break-support-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 120)
              :origin-joint-index 3
              )

(defskelgroup skel-prsn-chair-shackle prsn-chair-shackle prsn-chair-shackle-lod0-jg -1
              ((prsn-chair-shackle-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 4)
              :origin-joint-index 3
              )

(defskelgroup skel-prsn-daxter-plat prsn-daxter-plat prsn-daxter-plat-lod0-jg -1
              ((prsn-daxter-plat-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 4)
              :origin-joint-index 3
              )

(defskelgroup skel-jak-clothes jak-clothes jak-clothes-lod0-jg -1
              ((jak-clothes-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 10)
              :origin-joint-index 3
              )

(defskelgroup skel-rift-rider-dash rift-rider-dash rift-rider-dash-lod0-jg -1
              ((rift-rider-dash-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 10)
              :origin-joint-index 3
              )

(defskelgroup skel-rift-rider-heart-of-mar rift-rider-heart-of-mar rift-rider-heart-of-mar-lod0-jg -1
              ((rift-rider-heart-of-mar-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 10)
              :origin-joint-index 3
              )

(scene-method-16
  (new 'static 'scene
    :name "intro-samos-hut"
    :extra #f
    :info #f
    :mask-to-clear (process-mask movie projectile)
    :entity "scene-stage-64"
    :art-group "scenecamera"
    :anim "intro-samos-hut"
    :parts 72
    :command-list '((0
        (send-event "jakone-highres" 'eval ,(lambda ((arg0 process-drawable)) (let ((v0-0 (-> arg0 root scale)))
                                                                                (set! (-> v0-0 x) 1.4)
                                                                                (set! (-> v0-0 y) 1.4)
                                                                                (set! (-> v0-0 z) 1.4)
                                                                                (set! (-> v0-0 w) 1.0)
                                                                                v0-0
                                                                                )
                                                    )
                    )
        (send-event "keira-highres" 'shadow #f)
        (send-event "rift-rider" 'shadow #f)
        (apply
          ,(lambda :behavior scene-player
             ()
             (set! (-> *setting-control* user-default border-mode) #t)
             (set! (-> *level* play?) (-> *setting-control* user-default border-mode))
             (setup
               *screen-filter*
               (new 'static 'vector :w 128.0)
               (new 'static 'vector :w 128.0)
               (-> self clock seconds-per-frame)
               (bucket-id screen-filter)
               )
             (update-mood-weather! *mood-control* 0.25 0.5 0.0 0.0)
             (update-mood-weather! *mood-control* 0.25 0.5 1.0 1.0)
             (set-time-for-random-weather! *mood-control* 1800000.0 1800000.0)
             (clear-village1-interp!)
             (if (not (-> *setting-control* user-current subtitle))
                 (process-spawn-function
                   process
                   (lambda :behavior scene-player
                     ()
                     (talker-spawn-func (-> *talker-speech* 123) self (target-pos 0) (the-as region #f))
                     (let ((gp-1 (current-time)))
                       (until (>= (- (current-time) gp-1) (seconds 5))
                         (if (cpad-pressed? 0 square)
                             (return #f)
                             )
                         (suspend)
                         )
                       )
                     #f
                     )
                   :to self
                   )
                 )
             )
          )
        (send-event *time-of-day* 'change 'ratio (float (new 'static 'bfloat :data 1.0)))
        (send-event *time-of-day* 'change 'hour (int 7))
        (setting-reset half-speed mode #t)
        )
      (0
        (apply
          ,(lambda () (case (scf-get-territory)
                        ((1)
                         (talker-spawn-func (-> *talker-speech* 119) *entity-pool* (target-pos 0) (the-as region #f))
                         )
                        ((2)
                         (talker-spawn-func (-> *talker-speech* 120) *entity-pool* (target-pos 0) (the-as region #f))
                         )
                        ((3)
                         (talker-spawn-func (-> *talker-speech* 121) *entity-pool* (target-pos 0) (the-as region #f))
                         )
                        (else
                          (talker-spawn-func (-> *talker-speech* 118) *entity-pool* (target-pos 0) (the-as region #f))
                          )
                        )
                   )
          )
        )
      (2 (setting-unset half-speed))
      (180
        (apply
          ,(lambda :behavior scene-player
             ()
             (process-spawn-function
               process
               (lambda :behavior scene-player
                 ()
                 (logclear! (-> self mask) (process-mask pause))
                 (let ((gp-0 (new 'stack 'hud-sprite))
                       (s5-0 (level-get *level* 'village1))
                       (f30-0 0.0)
                       )
                   (set! (-> gp-0 flags) (the-as uint 8))
                   (set! (-> gp-0 tex) (lookup-texture-by-id (new 'static 'texture-id :index #xb :page #xdbc)))
                   (set-vector! (-> gp-0 pos) 256 180 #xffffff 0)
                   (let ((v1-7 (-> gp-0 color2)))
                     (set! (-> v1-7 0) 128)
                     (set! (-> v1-7 1) 128)
                     (set! (-> v1-7 2) 128)
                     (set! (-> v1-7 3) 128)
                     )
                   (set! (-> gp-0 scale-x) 1.0)
                   (set! (-> gp-0 scale-y) 1.0)
                   (when (and s5-0 (-> gp-0 tex))
                     (let ((s4-0 (current-time)))
                       (until (>= (- (current-time) s4-0) (seconds 5))
                         (let ((f0-2 1.0))
                           (cond
                             ((< f30-0 2.0)
                              (set! f0-2 (* 0.5 f30-0))
                              )
                             ((< 3.0 f30-0)
                              (set! f0-2 (* 0.5 (- 5.0 f30-0)))
                              )
                             )
                           (set! (-> gp-0 color w) (the int (* 128.0 f0-2)))
                           )
                         (let* ((s2-0 (-> *display* frames (-> *display* on-screen) global-buf))
                                (s3-0 (-> s2-0 base))
                                )
                           (draw gp-0 s2-0 s5-0)
                           (let ((a3-0 (-> s2-0 base)))
                             (let ((v1-31 (the-as object (-> s2-0 base))))
                               (set! (-> (the-as dma-packet v1-31) dma) (new 'static 'dma-tag :id (dma-tag-id next)))
                               (set! (-> (the-as dma-packet v1-31) vif0) (new 'static 'vif-tag))
                               (set! (-> (the-as dma-packet v1-31) vif1) (new 'static 'vif-tag))
                               (set! (-> s2-0 base) (&+ (the-as pointer v1-31) 16))
                               )
                             (dma-bucket-insert-tag
                               (-> *display* frames (-> *display* on-screen) bucket-group)
                               (bucket-id subtitle)
                               s3-0
                               (the-as (pointer dma-tag) a3-0)
                               )
                             )
                           )
                         (if (not (paused?))
                             (+! f30-0 (-> self clock seconds-per-frame))
                             )
                         (suspend)
                         )
                       )
                     #f
                     )
                   )
                 )
               :to self
               )
             )
          )
        )
      (360
        (apply
          ,(lambda :behavior scene-player
             ()
             (setup
               *screen-filter*
               (new 'static 'vector :w 128.0)
               (new 'static 'vector)
               (-> self clock seconds-per-frame)
               (bucket-id screen-filter)
               )
             (none)
             )
          )
        (apply
          ,(lambda :behavior scene-player
             ()
             (process-spawn-function
               process
               (lambda :behavior scene-player
                 ()
                 (logclear! (-> self mask) (process-mask pause))
                 (let ((gp-0 (new 'stack 'hud-sprite))
                       (s5-0 (new 'stack 'hud-sprite))
                       (s4-0 (level-get *level* 'village1))
                       (f30-0 0.0)
                       )
                   (set! (-> gp-0 flags) (the-as uint 8))
                   (set! (-> gp-0 scale-x) 0.85)
                   (set! (-> gp-0 scale-y) 0.85)
                   (let ((v1-8 (-> gp-0 color2)))
                     (set! (-> v1-8 0) 128)
                     (set! (-> v1-8 1) 128)
                     (set! (-> v1-8 2) 128)
                     (set! (-> v1-8 3) 128)
                     )
                   (case (scf-get-territory)
                     ((1)
                      (set-vector! (-> gp-0 pos) 256 170 #xffffff 0)
                      (set! (-> gp-0 tex) (lookup-texture-by-id (new 'static 'texture-id :index #xa :page #xdbc)))
                      (set! (-> s5-0 flags) (the-as uint 8))
                      (let ((v1-13 (-> s5-0 color2)))
                        (set! (-> v1-13 0) 128)
                        (set! (-> v1-13 1) 128)
                        (set! (-> v1-13 2) 128)
                        (set! (-> v1-13 3) 128)
                        )
                      (set! (-> s5-0 scale-x) 0.55)
                      (set-vector! (-> s5-0 pos) 285 255 #xffffff 0)
                      (case (-> *setting-control* user-current language)
                        (((language-enum french))
                         (set! (-> s5-0 tex) (lookup-texture-by-id (new 'static 'texture-id :index #x6 :page #xdbc)))
                         (set! (-> s5-0 scale-y) 0.65)
                         )
                        (((language-enum spanish))
                         (set! (-> s5-0 tex) (lookup-texture-by-id (new 'static 'texture-id :index #x8 :page #xdbc)))
                         (set! (-> s5-0 scale-y) 0.65)
                         )
                        (else
                          (set! (-> s5-0 tex) (lookup-texture-by-id (new 'static 'texture-id :index #x9 :page #xdbc)))
                          (set! (-> s5-0 scale-y) 0.45)
                          )
                        )
                      )
                     ((2)
                      (set-vector! (-> gp-0 pos) 256 188 #xffffff 0)
                      (set! (-> gp-0 tex) (lookup-texture-by-id (new 'static 'texture-id :index #x7 :page #xdbc)))
                      (set! (-> s5-0 tex) #f)
                      )
                     (else
                       (set-vector! (-> gp-0 pos) 256 188 #xffffff 0)
                       (set! (-> gp-0 tex) (lookup-texture-by-id (new 'static 'texture-id :index #xa :page #xdbc)))
                       (set! (-> s5-0 tex) #f)
                       )
                     )
                   (when (and s4-0 (-> gp-0 tex))
                     (let ((s3-0 (current-time)))
                       (until (>= (- (current-time) s3-0) (seconds 8))
                         (let ((f0-6 1.0))
                           (cond
                             ((< f30-0 2.0)
                              (set! f0-6 (* 0.5 f30-0))
                              )
                             ((< 6.0 f30-0)
                              (set! f0-6 (* 0.5 (- 8.0 f30-0)))
                              )
                             )
                           (set! (-> gp-0 color w) (the int (* 128.0 f0-6)))
                           (set! (-> s5-0 color w) (the int (* 128.0 f0-6)))
                           )
                         (let* ((s1-0 (-> *display* frames (-> *display* on-screen) global-buf))
                                (s2-0 (-> s1-0 base))
                                )
                           (draw gp-0 s1-0 s4-0)
                           (if (-> s5-0 tex)
                               (draw s5-0 s1-0 s4-0)
                               )
                           (let ((a3-0 (-> s1-0 base)))
                             (let ((v1-59 (the-as object (-> s1-0 base))))
                               (set! (-> (the-as dma-packet v1-59) dma) (new 'static 'dma-tag :id (dma-tag-id next)))
                               (set! (-> (the-as dma-packet v1-59) vif0) (new 'static 'vif-tag))
                               (set! (-> (the-as dma-packet v1-59) vif1) (new 'static 'vif-tag))
                               (set! (-> s1-0 base) (&+ (the-as pointer v1-59) 16))
                               )
                             (dma-bucket-insert-tag
                               (-> *display* frames (-> *display* on-screen) bucket-group)
                               (bucket-id subtitle)
                               s2-0
                               (the-as (pointer dma-tag) a3-0)
                               )
                             )
                           )
                         (if (not (paused?))
                             (+! f30-0 (-> self clock seconds-per-frame))
                             )
                         (suspend)
                         )
                       )
                     #f
                     )
                   )
                 )
               :to self
               )
             )
          )
        (part-tracker
          "group-intro-rift-gate-off"
          entity
          "rift-ring"
          joint
          "gate"
          track
          #t
          duration
          (frame-range 360 2000)
          )
        )
      (1906
        (part-tracker
          "group-rift-rider-button-yellow-1"
          entity
          "rift-rider"
          joint
          "button_a"
          track
          #t
          duration
          (frame-range 1906 2170)
          )
        (part-tracker
          "group-rift-rider-button-yellow-2"
          entity
          "rift-rider"
          joint
          "button_c"
          track
          #t
          duration
          (frame-range 1906 2170)
          )
        (part-tracker
          "group-rift-rider-button-blue-1"
          entity
          "rift-rider"
          joint
          "button_b"
          track
          #t
          duration
          (frame-range 1906 2170)
          )
        (part-tracker
          "group-rift-rider-button-blue-2"
          entity
          "rift-rider"
          joint
          "button_d"
          track
          #t
          duration
          (frame-range 1906 2170)
          )
        (part-tracker
          "group-heart-of-mar-glow"
          entity
          "rift-rider"
          joint
          "heart_of_mar"
          track
          #t
          duration
          (frame-range 1906 2170)
          )
        (part-tracker
          "group-screen-a-glow"
          entity
          "rift-rider"
          joint
          "screen_a"
          track
          #t
          duration
          (frame-range 1906 2165)
          )
        (part-tracker
          "group-screen-b-glow"
          entity
          "rift-rider"
          joint
          "screen_b"
          track
          #t
          duration
          (frame-range 1951 2041)
          )
        )
      (1921
        (part-tracker
          "group-time-map-glow"
          entity
          "time-map"
          joint
          "time_map_glow"
          track
          #t
          duration
          (frame-range 1921 2158)
          )
        (part-tracker
          "group-time-map-glow-fx"
          entity
          "time-map"
          joint
          "time_map_glow"
          track
          #t
          duration
          (frame-range 1921 2128)
          )
        )
      (2160
        (part-tracker
          "group-rift-rider-donut-nipple-glow"
          entity
          "rift-rider-donut"
          joint
          "light_center_a"
          track
          #t
          duration
          (frame-range 2160 2485)
          )
        (part-tracker
          "group-rift-rider-donut-nipple-glow"
          entity
          "rift-rider-donut"
          joint
          "light_center_b"
          track
          #t
          duration
          (frame-range 2160 2485)
          )
        (part-tracker
          "group-rift-rider-donut-nipple-glow"
          entity
          "rift-rider-donut"
          joint
          "light_center_c"
          track
          #t
          duration
          (frame-range 2160 2485)
          )
        (part-tracker
          "group-rift-rider-donut-nipple-glow"
          entity
          "rift-rider-donut"
          joint
          "light_center_d"
          track
          #t
          duration
          (frame-range 2160 2485)
          )
        (part-tracker
          "group-rift-rider-donut-light-glow"
          entity
          "rift-rider-donut"
          joint
          "light_small_a"
          track
          #t
          duration
          (frame-range 2160 2485)
          )
        (part-tracker
          "group-rift-rider-donut-light-glow"
          entity
          "rift-rider-donut"
          joint
          "light_small_b"
          track
          #t
          duration
          (frame-range 2160 2485)
          )
        (part-tracker
          "group-rift-rider-donut-light-glow"
          entity
          "rift-rider-donut"
          joint
          "light_small_c"
          track
          #t
          duration
          (frame-range 2160 2485)
          )
        (part-tracker
          "group-rift-rider-donut-light-glow"
          entity
          "rift-rider-donut"
          joint
          "light_small_d"
          track
          #t
          duration
          (frame-range 2160 2485)
          )
        (part-tracker
          "group-rift-rider-donut-antenna-glow"
          entity
          "rift-rider-donut"
          joint
          "zappera"
          track
          #t
          duration
          (frame-range 2160 2485)
          )
        (part-tracker
          "group-rift-rider-donut-antenna-glow"
          entity
          "rift-rider-donut"
          joint
          "zapperb"
          track
          #t
          duration
          (frame-range 2160 2485)
          )
        (part-tracker
          "group-rift-rider-donut-antenna-glow"
          entity
          "rift-rider-donut"
          joint
          "zapperc"
          track
          #t
          duration
          (frame-range 2160 2485)
          )
        (part-tracker
          "group-rift-rider-donut-antenna-glow"
          entity
          "rift-rider-donut"
          joint
          "zapperd"
          track
          #t
          duration
          (frame-range 2160 2485)
          )
        (send-event
          *time-of-day*
          'dest-clock-ratio-set
          (float (new 'static 'bfloat :data 70.0))
          (seconds (new 'static 'bfloat :data 10.0))
          )
        (apply ,(lambda () (set-village1-interp!) (update-mood-weather! *mood-control* 0.35 0.25 320.0 320.0) (none)))
        )
      (2220
        (lightning-tracker
          "lightning-shock"
          from-entity
          "rift-rider-donut"
          to-entity
          "rift-ring"
          from-joint
          "zapperd"
          to-joint
          "zaptarget"
          duration
          (frame-range 2220 2255)
          )
        )
      (2231
        (part-tracker
          "group-intro-rift-gate-on"
          entity
          "rift-ring"
          joint
          "gate"
          track
          #t
          duration
          (frame-range 2200 3460)
          )
        )
      (2270
        (lightning-tracker
          "lightning-shock"
          from-entity
          "rift-rider-donut"
          to-entity
          "rift-ring"
          from-joint
          "zapperc"
          to-joint
          "zaptarget"
          duration
          (frame-range 2270 2300)
          )
        )
      (2326
        (part-tracker
          "group-screen-a-glow"
          entity
          "rift-rider"
          joint
          "screen_a"
          track
          #t
          duration
          (frame-range 2326 2485)
          )
        (part-tracker
          "group-screen-b-glow"
          entity
          "rift-rider"
          joint
          "screen_b"
          track
          #t
          duration
          (frame-range 2326 2485)
          )
        )
      (2330)
      (2595 (send-event "metalhead-spawner-1" 'trigger))
      (2621
        (part-tracker
          "group-rift-rider-donut-nipple-glow"
          entity
          "rift-rider-donut"
          joint
          "light_center_a"
          track
          #t
          duration
          (frame-range 2621 2825)
          )
        (part-tracker
          "group-rift-rider-donut-nipple-glow"
          entity
          "rift-rider-donut"
          joint
          "light_center_b"
          track
          #t
          duration
          (frame-range 2621 2825)
          )
        (part-tracker
          "group-rift-rider-donut-nipple-glow"
          entity
          "rift-rider-donut"
          joint
          "light_center_c"
          track
          #t
          duration
          (frame-range 2621 2825)
          )
        (part-tracker
          "group-rift-rider-donut-nipple-glow"
          entity
          "rift-rider-donut"
          joint
          "light_center_d"
          track
          #t
          duration
          (frame-range 2621 2825)
          )
        (part-tracker
          "group-rift-rider-donut-light-glow"
          entity
          "rift-rider-donut"
          joint
          "light_small_a"
          track
          #t
          duration
          (frame-range 2621 2825)
          )
        (part-tracker
          "group-rift-rider-donut-light-glow"
          entity
          "rift-rider-donut"
          joint
          "light_small_b"
          track
          #t
          duration
          (frame-range 2621 2825)
          )
        (part-tracker
          "group-rift-rider-donut-light-glow"
          entity
          "rift-rider-donut"
          joint
          "light_small_c"
          track
          #t
          duration
          (frame-range 2621 2825)
          )
        (part-tracker
          "group-rift-rider-donut-light-glow"
          entity
          "rift-rider-donut"
          joint
          "light_small_d"
          track
          #t
          duration
          (frame-range 2621 2825)
          )
        (part-tracker
          "group-rift-rider-donut-antenna-glow"
          entity
          "rift-rider-donut"
          joint
          "zappera"
          track
          #t
          duration
          (frame-range 2621 2825)
          )
        (part-tracker
          "group-rift-rider-donut-antenna-glow"
          entity
          "rift-rider-donut"
          joint
          "zapperb"
          track
          #t
          duration
          (frame-range 2621 2825)
          )
        (part-tracker
          "group-rift-rider-donut-antenna-glow"
          entity
          "rift-rider-donut"
          joint
          "zapperc"
          track
          #t
          duration
          (frame-range 2621 2825)
          )
        (part-tracker
          "group-rift-rider-donut-antenna-glow"
          entity
          "rift-rider-donut"
          joint
          "zapperd"
          track
          #t
          duration
          (frame-range 2621 2825)
          )
        )
      (2830
        (send-event
          *time-of-day*
          'dest-clock-ratio-set
          (float (new 'static 'bfloat :data 120.0))
          (seconds (new 'static 'bfloat :data 4.8))
          )
        )
      (2976
        (part-tracker
          "group-rift-rider-donut-nipple-glow"
          entity
          "rift-rider-donut"
          joint
          "light_center_a"
          track
          #t
          duration
          (frame-range 2976 3175)
          )
        (part-tracker
          "group-rift-rider-donut-nipple-glow"
          entity
          "rift-rider-donut"
          joint
          "light_center_b"
          track
          #t
          duration
          (frame-range 2976 3175)
          )
        (part-tracker
          "group-rift-rider-donut-nipple-glow"
          entity
          "rift-rider-donut"
          joint
          "light_center_c"
          track
          #t
          duration
          (frame-range 2976 3175)
          )
        (part-tracker
          "group-rift-rider-donut-nipple-glow"
          entity
          "rift-rider-donut"
          joint
          "light_center_d"
          track
          #t
          duration
          (frame-range 2976 3175)
          )
        (part-tracker
          "group-rift-rider-donut-light-glow"
          entity
          "rift-rider-donut"
          joint
          "light_small_a"
          track
          #t
          duration
          (frame-range 2976 3175)
          )
        (part-tracker
          "group-rift-rider-donut-light-glow"
          entity
          "rift-rider-donut"
          joint
          "light_small_b"
          track
          #t
          duration
          (frame-range 2976 3175)
          )
        (part-tracker
          "group-rift-rider-donut-light-glow"
          entity
          "rift-rider-donut"
          joint
          "light_small_c"
          track
          #t
          duration
          (frame-range 2976 3175)
          )
        (part-tracker
          "group-rift-rider-donut-light-glow"
          entity
          "rift-rider-donut"
          joint
          "light_small_d"
          track
          #t
          duration
          (frame-range 2976 3175)
          )
        (part-tracker
          "group-rift-rider-donut-antenna-glow"
          entity
          "rift-rider-donut"
          joint
          "zappera"
          track
          #t
          duration
          (frame-range 2976 3175)
          )
        (part-tracker
          "group-rift-rider-donut-antenna-glow"
          entity
          "rift-rider-donut"
          joint
          "zapperb"
          track
          #t
          duration
          (frame-range 2976 3175)
          )
        (part-tracker
          "group-rift-rider-donut-antenna-glow"
          entity
          "rift-rider-donut"
          joint
          "zapperc"
          track
          #t
          duration
          (frame-range 2976 3175)
          )
        (part-tracker
          "group-rift-rider-donut-antenna-glow"
          entity
          "rift-rider-donut"
          joint
          "zapperd"
          track
          #t
          duration
          (frame-range 2976 3175)
          )
        )
      (3102
        (part-tracker
          "group-rift-rider-button-yellow-1"
          entity
          "rift-rider"
          joint
          "button_a"
          track
          #t
          duration
          (frame-range 3102 3135)
          )
        (part-tracker
          "group-rift-rider-button-yellow-2"
          entity
          "rift-rider"
          joint
          "button_c"
          track
          #t
          duration
          (frame-range 3102 3135)
          )
        (part-tracker
          "group-rift-rider-button-blue-1"
          entity
          "rift-rider"
          joint
          "button_b"
          track
          #t
          duration
          (frame-range 3102 3135)
          )
        (part-tracker
          "group-rift-rider-button-blue-2"
          entity
          "rift-rider"
          joint
          "button_d"
          track
          #t
          duration
          (frame-range 3102 3135)
          )
        (part-tracker
          "group-heart-of-mar-glow"
          entity
          "rift-rider"
          joint
          "heart_of_mar"
          track
          #t
          duration
          (frame-range 3102 3135)
          )
        (part-tracker
          "group-screen-a-glow"
          entity
          "rift-rider"
          joint
          "screen_a"
          track
          #t
          duration
          (frame-range 3102 3135)
          )
        (part-tracker
          "group-screen-b-glow"
          entity
          "rift-rider"
          joint
          "screen_b"
          track
          #t
          duration
          (frame-range 3102 3135)
          )
        )
      (3200
        (apply
          ,(lambda :behavior scene-player
             ()
             (when (not (-> self aborted?))
               (disable *screen-filter*)
               (setup
                 *screen-filter*
                 (new 'static 'vector :x 255.0 :y 255.0 :z 255.0)
                 (new 'static 'vector :x 255.0 :y 255.0 :z 255.0 :w 128.0)
                 (* 0.2 (-> self clock seconds-per-frame))
                 (bucket-id screen-filter)
                 )
               (set-setting! 'allow-blackout #f 0.0 0)
               )
             (none)
             )
          )
        )
      (3500 (send-event "metalhead-spawner-1" 'die))
      (10000
        (send-event *time-of-day* 'change 'ratio (float 1))
        (apply ,(lambda :behavior scene-player
                  ()
                  (when (-> self aborted?)
                    (task-node-close! (game-task-node fortress-escape-introduction))
                    (disable *screen-filter*)
                    (set-blackout-frames (seconds 0.2))
                    (remove-setting! 'allow-blackout)
                    (set-filter-color! 1.0 1.0 1.0)
                    )
                  (set-filter-color! 1.0 1.0 1.0)
                  (clear-village1-interp!)
                  (kill-by-type talker *active-pool*)
                  )
               )
        )
      )
    :cut-list '(671
       781
       871
       971
       1106
       1196
       1347
       1461
       1591
       1726
       1861
       1951
       2041
       2171
       2231
       2326
       2411
       2486
       2621
       2681
       2761
       2826
       2896
       2976
       3054
       3102
       3136
       3176
       )
    :wait-ground-time (seconds 1)
    :draw-target #f
    :abort #t
    :actor (new 'static 'boxed-array :type scene-actor
      (new 'static 'scene-actor
        :name "scenecamera"
        :level #f
        :art-group "skel-scenecamera"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :camera 4
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "sidekick-highres"
        :level 'introcst
        :art-group "skel-sidekick-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "jakone-highres"
        :level 'introcst
        :art-group "skel-jakone-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "keira-highres"
        :level 'lintcstb
        :art-group "skel-keira-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        :no-draw-seg #x6
        )
      (new 'static 'scene-actor
        :name "samos-highres"
        :level 'lintcstb
        :art-group "skel-samos-highres"
        :prefix ""
        :draw-frames '((min 1591) (1726 1861) (1951 max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "rift-rider"
        :level 'lintcstb
        :art-group "skel-rift-rider"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '((1861 1951) (2041 2171))
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "rift-rider-dash"
        :level 'introcst
        :art-group "skel-rift-rider-dash"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '((2041 2171))
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "rift-rider-heart-of-mar"
        :level 'introcst
        :art-group "skel-rift-rider-heart-of-mar"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '((2041 2171))
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "metalkor-torso"
        :level 'village1
        :art-group "skel-metalkor-torso"
        :prefix ""
        :draw-frames '((min 3136) (3176 max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "rift-ring"
        :level 'village1
        :art-group "skel-rift-ring"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '((min 360) (1194 1347) (2411 2486) (2680 2760) (2974 3057))
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "rift-rider-donut"
        :level 'village1
        :art-group "skel-rift-rider-donut"
        :prefix ""
        :draw-frames '((min 3176))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "time-map"
        :level 'introcst
        :art-group "skel-time-map"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "vil-break-support"
        :level 'village1
        :art-group "skel-vil-break-support"
        :prefix ""
        :draw-frames '((min 2611))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "intro-flamer"
        :level 'village1
        :art-group "skel-intro-flamer"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "intro-flamer"
        :level 'village1
        :art-group "skel-intro-flamer"
        :prefix "b-"
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "intro-flamer"
        :level 'village1
        :art-group "skel-intro-flamer"
        :prefix "c-"
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "intro-flamer"
        :level 'village1
        :art-group "skel-intro-flamer"
        :prefix "d-"
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "intro-flamer"
        :level 'village1
        :art-group "skel-intro-flamer"
        :prefix "e-"
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      )
    :load-point-obj "village1-start"
    :end-point-obj #f
    :borrow '((ctywide 0 lcguard special) (prison 0 ldjakbrn special) (introcst 0 lintcstb special))
    :sfx-volume -1.0
    :ambient-volume -1.0
    :blackout-end #t
    :peaceful #t
    :music-delay 1500.0
    :save #t
    )
  )

(set! (-> *lightning-spec-id-table* 31) (new 'static 'lightning-spec
                                          :name "lightning-rift-rider"
                                          :flags (lightning-spec-flags lsf0)
                                          :start-color (new 'static 'rgba :r #xff :g #xff :b #xff :a #x80)
                                          :end-color (new 'static 'rgba :r #xff :g #xff :b #xff :a #x80)
                                          :fade-to-color (new 'static 'rgba :r #xbf :b #x8f :a #x5)
                                          :fade-start-factor 0.2
                                          :fade-time 60.0
                                          :texture (new 'static 'texture-id :index #x83 :page #xc)
                                          :reduction 0.42
                                          :num-points 8
                                          :box-size 3276.8
                                          :merge-factor 0.5
                                          :merge-count 2
                                          :radius 1638.4
                                          :duration 150.0
                                          :duration-rand 150.0
                                          :sound #f
                                          )
      )

(scene-method-16
  (new 'static 'scene
    :name "intro-vortex"
    :extra #f
    :info #f
    :mask-to-clear (process-mask movie projectile)
    :entity "scene-stage-65"
    :art-group "scenecamera"
    :anim "intro-vortex"
    :parts 9
    :command-list '((0
        (send-event "jakone-highres" 'eval ,(lambda ((arg0 process-drawable)) (let ((v0-0 (-> arg0 root scale)))
                                                                                (set! (-> v0-0 x) 1.4)
                                                                                (set! (-> v0-0 y) 1.4)
                                                                                (set! (-> v0-0 z) 1.4)
                                                                                (set! (-> v0-0 w) 1.0)
                                                                                v0-0
                                                                                )
                                                    )
                    )
        (send-event "vortex-light" 'no-fog)
        (send-event *time-of-day* 'change 'ratio (float (new 'static 'bfloat :data 30.0)))
        (part-tracker
          "group-intro-vortex"
          entity
          "particleman"
          joint
          "particleA"
          track
          #t
          duration
          (frame-range 0 10000)
          )
        (apply
          ,(lambda :behavior scene-player
             ()
             (set! (-> *sky-work* draw-vortex) (the-as basic #t))
             (set! (-> *display* vu1-enable-user-menu)
                   (vu1-renderer-mask sky generic merc emerc sprite rn31 rn32 rn33 depth-cue)
                   )
             (set-vortex-white! #f)
             (let ((gp-0 (level-get *level* 'village1)))
               (when gp-0
                 (clear-mood-context (-> gp-0 mood-context))
                 (if #f
                     ((the-as (function mood-context none) #f) (-> gp-0 mood-context))
                     )
                 (set! (-> gp-0 mood-func) (the-as (function mood-context float int none) update-mood-vortex))
                 (set! (-> gp-0 info sky) #t)
                 )
               )
             (let ((gp-1 (level-get *level* 'introcst)))
               (when gp-1
                 (clear-mood-context (-> gp-1 mood-context))
                 (if #f
                     ((the-as (function mood-context none) #f) (-> gp-1 mood-context))
                     )
                 (set! (-> gp-1 mood-func) (the-as (function mood-context float int none) update-mood-vortex))
                 (set! (-> gp-1 info sky) #t)
                 )
               )
             (let ((gp-2 (level-get *level* 'lintcstb)))
               (when gp-2
                 (clear-mood-context (-> gp-2 mood-context))
                 (if #f
                     ((the-as (function mood-context none) #f) (-> gp-2 mood-context))
                     )
                 (set! (-> gp-2 mood-func) (the-as (function mood-context float int none) update-mood-vortex))
                 (set! (-> gp-2 info sky) #t)
                 )
               )
             (remove-setting! 'allow-blackout)
             (setup
               *screen-filter*
               (new 'static 'vector :x 255.0 :y 255.0 :z 255.0 :w 128.0)
               (new 'static 'vector :x 255.0 :y 255.0 :z 255.0)
               (* 0.2 (-> self clock seconds-per-frame))
               (bucket-id screen-filter)
               )
             (update-mood-weather! *mood-control* 0.25 0.0 0.0 0.0)
             (update-mood-weather! *mood-control* 0.25 0.0 1.0 1.0)
             (set-time-for-random-weather! *mood-control* 1800000.0 1800000.0)
             (set-filter-color! 1.0 1.0 1.0)
             (none)
             )
          )
        )
      (10 (want-load 'introcst 'ctywide 'ctyindb))
      (384 (apply ,(lambda () (set-vortex-white! #t))))
      (409
        (send-event
          "particleman"
          'eval
          ,(lambda ()
             (local-vars (sv-48 symbol) (sv-64 symbol) (sv-80 vector))
             (with-pp
               (let ((gp-0 (the-as target (command-get-process "particleman" *target*)))
                     (s5-0 (get-process *default-dead-pool* lightning-tracker #x4000))
                     )
                 (when s5-0
                   (let ((t9-2 (method-of-type lightning-tracker activate)))
                     (t9-2
                       (the-as lightning-tracker s5-0)
                       pp
                       (symbol->string (-> lightning-tracker symbol))
                       (the-as pointer #x70004000)
                       )
                     )
                   (let ((s4-0 run-function-in-process)
                         (s3-0 s5-0)
                         (s2-0 lightning-tracker-init)
                         (s1-0 (-> *lightning-spec-id-table* 1))
                         (s0-0 30)
                         )
                     (set! sv-48 (the-as symbol #f))
                     (set! sv-64 (the-as symbol #f))
                     (set! sv-80 (vector<-cspace! (new 'stack-no-clear 'vector) (-> gp-0 node-list data 5)))
                     (let ((t3-0 (vector<-cspace! (new 'stack-no-clear 'vector) (-> gp-0 node-list data 6))))
                       ((the-as (function object object object object object object object object none) s4-0)
                        s3-0
                        s2-0
                        s1-0
                        s0-0
                        sv-48
                        sv-64
                        sv-80
                        t3-0
                        )
                       )
                     )
                   (-> s5-0 ppointer)
                   )
                 )
               )
             )
          )
        (send-event
          "rift-rider-break"
          'eval
          ,(lambda ()
             (with-pp
               (let ((gp-0 (command-get-process "particleman" *target*))
                     (s5-0 (command-get-process "rift-rider-break" *target*))
                     (s4-0
                       (lambda ((arg0 object) (arg1 int) (arg2 symbol) (arg3 process-tree) (arg4 vector) (arg5 vector))
                         (process-spawn
                           lightning-tracker
                           :init lightning-tracker-init
                           (-> *lightning-spec-id-table* 31)
                           arg1
                           #f
                           arg2
                           arg4
                           arg5
                           :to arg3
                           )
                         )
                       )
                     )
                 (s4-0 pp 30 (the-as symbol gp-0) s5-0 (the-as vector 6) (the-as vector 60))
                 (s4-0 pp 0 (the-as symbol s5-0) s5-0 (the-as vector 60) (the-as vector 30))
                 (s4-0 pp 0 (the-as symbol s5-0) s5-0 (the-as vector 60) (the-as vector 31))
                 (s4-0 pp 0 (the-as symbol s5-0) s5-0 (the-as vector 60) (the-as vector 35))
                 (s4-0 pp 0 (the-as symbol s5-0) s5-0 (the-as vector 60) (the-as vector 32))
                 (s4-0 pp 0 (the-as symbol s5-0) s5-0 (the-as vector 60) (the-as vector 42))
                 (s4-0 pp 0 (the-as symbol s5-0) s5-0 (the-as vector 60) (the-as vector 44))
                 (s4-0 pp 0 (the-as symbol s5-0) s5-0 (the-as vector 60) (the-as vector 49))
                 (s4-0 pp 0 (the-as symbol s5-0) s5-0 (the-as vector 60) (the-as vector 53))
                 (s4-0 pp 0 (the-as symbol s5-0) s5-0 (the-as vector 60) (the-as vector 54))
                 (s4-0 pp 0 (the-as symbol s5-0) s5-0 (the-as vector 60) (the-as vector 66))
                 (s4-0 pp 0 (the-as symbol s5-0) s5-0 (the-as vector 60) (the-as vector 58))
                 )
               )
             )
          )
        )
      (411
        (part-tracker
          "group-intro-vortex-hit-explosion"
          entity
          "rift-rider-break-a"
          joint
          "explode_engine_top"
          track
          #t
          duration
          (frame-range 411 426)
          )
        )
      (415 (apply ,(lambda ((arg0 float)) (set-vortex-flash! arg0))))
      (424
        (part-tracker
          "group-intro-vortex-hit-explosion"
          entity
          "rift-rider-break-a"
          joint
          "explode_engine"
          track
          #t
          duration
          (frame-range 424 424)
          )
        )
      (460 (want-display 'ctyindb 'display) (want-display 'introcst 'display) (save))
      (485
        (apply
          ,(lambda ()
             (set-setting!
               'borrow
               '((ctywide 0 lcguard special) (prison 0 ldjakbrn special) (introcst 0 lcitylow #f))
               0.0
               0
               )
             (apply-settings *setting-control*)
             )
          )
        )
      (592
        (apply
          ,(lambda ()
             (with-pp
               (set-setting! 'allow-blackout #f 0.0 0)
               (setup
                 *screen-filter*
                 (new 'static 'vector :x 255.0 :y 255.0 :z 255.0)
                 (new 'static 'vector :x 255.0 :y 255.0 :z 255.0 :w 128.0)
                 (* 2.0 (-> pp clock seconds-per-frame))
                 (bucket-id screen-filter)
                 )
               (none)
               )
             )
          )
        )
      (10000
        (send-event *time-of-day* 'change 'ratio (float 1))
        (apply ,(lambda :behavior scene-player
                  ()
                  (when (-> self aborted?)
                    (task-node-close! (game-task-node fortress-escape-introduction))
                    (remove-setting! 'allow-blackout)
                    (disable *screen-filter*)
                    )
                  (set! (-> *sky-work* draw-vortex) #f)
                  (set! (-> *display* vu1-enable-user-menu) (vu1-renderer-mask
                                                              sky
                                                              ocean
                                                              ocean-wave
                                                              tfrag
                                                              tie
                                                              tie-envmap
                                                              tie-scissor
                                                              tie-envmap-scissor
                                                              tie-vanish
                                                              generic
                                                              merc
                                                              emerc
                                                              shrubbery
                                                              shrub-near
                                                              billboard
                                                              shrubbery-vanish
                                                              tfrag-trans
                                                              tie-scissor-trans
                                                              tie-trans
                                                              tie-envmap-trans
                                                              tie-envmap-scissor-trans
                                                              tfrag-water
                                                              tie-scissor-water
                                                              tie-water
                                                              tie-envmap-water
                                                              tie-envmap-scissor-water
                                                              sprite
                                                              shadow
                                                              rn31
                                                              rn32
                                                              rn33
                                                              depth-cue
                                                              )
                        )
                  (none)
                  )
               )
        )
      )
    :cut-list '(66 181 226 316 384 460)
    :wait-ground-time (seconds 1)
    :draw-target #f
    :abort #t
    :actor (new 'static 'boxed-array :type scene-actor
      (new 'static 'scene-actor
        :name "scenecamera"
        :level #f
        :art-group "skel-scenecamera"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :camera 4
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "sidekick-highres"
        :level 'introcst
        :art-group "skel-sidekick-highres"
        :prefix ""
        :draw-frames '((min 600))
        :scissor-frames '()
        :light-index #x1
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "jakone-highres"
        :level 'introcst
        :art-group "skel-jakone-highres"
        :prefix ""
        :draw-frames '((min 600))
        :scissor-frames '()
        :light-index #x1
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "keira-highres"
        :level 'lintcstb
        :art-group "skel-keira-highres"
        :prefix ""
        :draw-frames '((min 484))
        :scissor-frames '()
        :light-index #x1
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        :no-draw-seg #x6
        )
      (new 'static 'scene-actor
        :name "samos-highres"
        :level 'lintcstb
        :art-group "skel-samos-highres"
        :prefix ""
        :draw-frames '((min 484))
        :scissor-frames '()
        :light-index #x1
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        :no-draw-seg #x2
        )
      (new 'static 'scene-actor
        :name "vortex-light"
        :level 'introcst
        :art-group "skel-vortex-light"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '((min max))
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "particleman"
        :level 'introcst
        :art-group "skel-particleman"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "rift-rider"
        :level 'lintcstb
        :art-group "skel-rift-rider"
        :prefix ""
        :draw-frames '((min 411))
        :scissor-frames '((181 226))
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "rift-rider-dash"
        :level 'introcst
        :art-group "skel-rift-rider-dash"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "rift-rider-break"
        :level 'lintcstb
        :art-group "skel-rift-rider-break"
        :prefix ""
        :draw-frames '((min 484))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "rift-rider-break-a"
        :level 'lintcstb
        :art-group "skel-rift-rider-break-a"
        :prefix "a-"
        :draw-frames '((min 484))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      )
    :load-point-obj "village1-start"
    :end-point-obj #f
    :borrow '((ctywide 0 lcguard special) (prison 0 ldjakbrn special) (introcst 0 lintcstb special))
    :sfx-volume -1.0
    :ambient-volume -1.0
    :blackout-end #t
    :peaceful #t
    :music-delay 1500.0
    :save #t
    )
  )

(scene-method-16
  (new 'static 'scene
    :name "intro-city-square"
    :extra #f
    :info #f
    :mask-to-clear (process-mask movie projectile)
    :entity "scene-stage-62"
    :art-group "scenecamera"
    :anim "intro-city-square"
    :parts 32
    :command-list '((0
        (send-event "jakone-highres" 'eval ,(lambda ((arg0 process-drawable)) (let ((v0-0 (-> arg0 root scale)))
                                                                                (set! (-> v0-0 x) 1.4)
                                                                                (set! (-> v0-0 y) 1.4)
                                                                                (set! (-> v0-0 z) 1.4)
                                                                                (set! (-> v0-0 w) 1.0)
                                                                                v0-0
                                                                                )
                                                    )
                    )
        (send-event *time-of-day* 'change 'ratio (float (new 'static 'bfloat :data 55.0)))
        (send-event *time-of-day* 'change 'hour (int 15))
        (send-event
          *time-of-day*
          'dest-clock-ratio-set
          (float (new 'static 'bfloat :data 1.0))
          (seconds (new 'static 'bfloat :data 4.0))
          )
        (apply
          ,(lambda ()
             (with-pp
               (setup
                 *screen-filter*
                 (new 'static 'vector :x 255.0 :y 255.0 :z 255.0 :w 128.0)
                 (new 'static 'vector :x 255.0 :y 255.0 :z 255.0)
                 (-> pp clock seconds-per-frame)
                 (bucket-id screen-filter)
                 )
               (update-mood-weather! *mood-control* 1.0 0.5 0.0 0.0)
               (update-mood-weather! *mood-control* 0.2 0.5 80.0 80.0)
               (set-time-for-random-weather! *mood-control* 180000.0 180000.0)
               (let ((gp-0 (level-get *level* 'introcst)))
                 (when gp-0
                   (clear-mood-context (-> gp-0 mood-context))
                   (if #f
                       ((the-as (function mood-context none) #f) (-> gp-0 mood-context))
                       )
                   (set! (-> gp-0 mood-func) update-mood-ctywide)
                   (set! (-> gp-0 info sky) #t)
                   )
                 )
               (set-filter-color! 1.0 1.0 1.0)
               (none)
               )
             )
          )
        (want-force-vis 'ctyindb #t)
        (send-event *traffic-manager* 'set-guard-target-level (unbox 0))
        (send-event *traffic-manager* 'set-max-alert-level (unbox 0))
        (send-event *traffic-manager* 'set-alert-level (unbox 0))
        (send-event *traffic-manager* 'set-alert-duration (unbox 10800000))
        (send-event *traffic-manager* 'deactivate-by-type (unbox 6))
        (send-event *traffic-manager* 'deactivate-by-type (unbox 18))
        (send-event *traffic-manager* 'deactivate-by-type (unbox 19))
        )
      (122
        (part-tracker
          "group-intro-meteor-explosion-pang"
          entity
          "meteor"
          joint
          "main"
          track
          #f
          duration
          (frame-time-30 (new 'static 'bfloat :data 39.0))
          )
        )
      ((new 'static 'bfloat :data 122.2)
       (part-tracker
         "group-intro-meteor-explosion-stays"
         entity
         "meteor"
         joint
         "main"
         track
         #f
         duration
         (frame-time-30 (new 'static 'bfloat :data 20.0))
         )
       )
      (126
        (part-tracker
          "group-intro-meteor-explosion-circle"
          entity
          "meteor"
          joint
          "main"
          track
          #f
          duration
          (frame-time-30 (new 'static 'bfloat :data 35.0))
          )
        )
      (130
        (part-tracker
          "group-intro-meteor-explosion-meteor"
          entity
          "meteor"
          joint
          "main"
          track
          #f
          duration
          (frame-time-30 (new 'static 'bfloat :data 29.0))
          )
        )
      ((new 'static 'bfloat :data 130.2)
       (part-tracker
         "group-intro-meteor-explosion-ring"
         entity
         "meteor"
         joint
         "main"
         track
         #f
         duration
         (frame-time-30 (new 'static 'bfloat :data 31.0))
         )
       )
      (161
        (part-tracker
          "group-intro-meteor-landing-meteor"
          entity
          "meteor"
          joint
          "main"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 161.0) (new 'static 'bfloat :data 184.0))
          )
        )
      (185
        (part-tracker
          "group-intro-meteor-landing-bubble"
          entity
          "meteor"
          joint
          "main"
          track
          #f
          duration
          (frame-time-30 (new 'static 'bfloat :data 10.0))
          )
        )
      (190
        (apply
          ,(lambda :behavior scene-player
             ()
             (if (not (-> self aborted?))
                 (setup
                   *screen-filter*
                   (new 'static 'vector :x 255.0 :y 255.0 :z 255.0 :w 128.0)
                   (new 'static 'vector :x 255.0 :y 128.0)
                   (* 0.025 (-> self clock seconds-per-frame))
                   (bucket-id screen-filter)
                   )
                 )
             (none)
             )
          )
        )
      ((new 'static 'bfloat :data 200.1)
       (fma-sphere
         (danger)
         duration
         (frame-range (new 'static 'bfloat :data 200.0) (new 'static 'bfloat :data 1200.0))
         danger
         (new 'static 'traffic-danger-info
           :sphere (new 'static 'sphere :x 4259840.0 :y 120832.0 :z 2277376.0 :r 122880.0)
           :notify-radius 245760.0
           :danger-level 1.0
           :flags (traffic-danger-flags tdf0)
           :danger-type (traffic-danger-type tdt4)
           )
         )
       (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 4261069.0 :y 99532.8 :z 2193817.5 :w 4096.0))
       (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 4259922.0 :y 99532.8 :z 2207129.5 :w 5816.32))
       (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 4258775.0 :y 99532.8 :z 2220441.5 :w 7536.64))
       (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 4257628.0 :y 99532.8 :z 2233753.5 :w 9256.96))
       (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 4256481.5 :y 99532.8 :z 2247065.5 :w 10977.28))
       (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 4255334.5 :y 99532.8 :z 2260377.5 :w 12697.6))
       (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 4254187.5 :y 99532.8 :z 2273689.5 :w 14417.92))
       (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 4253081.5 :y 99532.8 :z 2267340.8 :w 16138.24))
       (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 4272128.0 :y 99532.8 :z 2260992.0 :w 8192.0))
       )
      (238
        (part-tracker
          "group-intro-dust-big"
          entity
          "particleman"
          joint
          "particleA"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 238.0) (new 'static 'bfloat :data 240.0))
          )
        )
      (249
        (part-tracker
          "group-intro-dust"
          entity
          "particleman"
          joint
          "particleC"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 249.0) (new 'static 'bfloat :data 275.0))
          )
        )
      (350
        (apply ,(lambda :behavior scene-player () (update-mood-weather! *mood-control* 0.0 0.5 80.0 80.0) (none)))
        )
      (395 (send-event *time-of-day* 'change 'hour (int 16)))
      (1185 (apply ,(lambda :behavior scene-player
                      ()
                      (remove-setting! 'allow-blackout)
                      (setup
                        *screen-filter*
                        (new 'static 'vector :w 128.0)
                        (new 'static 'vector :w 128.0)
                        (* 128.0 (-> self clock seconds-per-frame))
                        (bucket-id screen-filter)
                        )
                      (none)
                      )
                   )
            )
      (1200 (joint-eval pm-print-b))
      (1239 (want-load 'introcst 'prison #f))
      (1345 (talker-spawn "intro04"))
      (1360 (want-display 'prison 'display) (save))
      (10000
        (apply ,(lambda :behavior scene-player
                  ()
                  (if (-> self aborted?)
                      (task-node-close! (game-task-node fortress-escape-introduction))
                      )
                  (disable *screen-filter*)
                  (kill-by-type talker *active-pool*)
                  )
               )
        (send-event *time-of-day* 'change 'ratio (float 1))
        )
      )
    :cut-list '(163 235 247 313 487 855 883 912 962 981 1008 1086 1137)
    :wait-ground-time (seconds 1)
    :draw-target #f
    :abort #t
    :actor (new 'static 'boxed-array :type scene-actor
      (new 'static 'scene-actor
        :name "scenecamera"
        :level #f
        :art-group "skel-scenecamera"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :camera 4
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "sidekick-highres"
        :level 'introcst
        :art-group "skel-sidekick-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "jakone-highres"
        :level 'introcst
        :art-group "skel-jakone-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "errol-highres"
        :level 'introcst
        :art-group "skel-errol-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "crimson-guard-highres"
        :level 'lcguard
        :art-group "skel-crimson-guard-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "crimson-guard-lowres"
        :level 'introcst
        :art-group "skel-crimson-guard-lowres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        :no-draw-seg #x4
        )
      (new 'static 'scene-actor
        :name "crimson-guard-lowres"
        :level 'introcst
        :art-group "skel-crimson-guard-lowres"
        :prefix "b-"
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        :no-draw-seg #x4
        )
      (new 'static 'scene-actor
        :name "particleman"
        :level 'introcst
        :art-group "skel-particleman"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "rift-rider-bar"
        :level 'introcst
        :art-group "skel-rift-rider-bar"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "rift-rider-chunk-a"
        :level 'introcst
        :art-group "skel-rift-rider-chunk-a"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "rift-rider-break-b"
        :level 'introcst
        :art-group "skel-rift-rider-break-b"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "rift-rider-break-c"
        :level 'introcst
        :art-group "skel-rift-rider-break-c"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "meteor"
        :level 'introcst
        :art-group "skel-meteor"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      )
    :load-point-obj "ctyindb-intro-start"
    :end-point-obj "prison-intro-start"
    :borrow '((ctywide 0 lcguard special) (prison 0 ldjakbrn special) (introcst 0 lcitylow display))
    :sfx-volume -1.0
    :ambient-volume -1.0
    :blackout-end #t
    :peaceful #t
    :music-delay 1500.0
    :save #t
    )
  )

(define *jak-highres-src-lightning-joints* (new 'static 'boxed-array :type int32 8 5))

(define *jak-highres-dst-lightning-joints* (new 'static 'boxed-array :type int32 21 17 28 35))

(scene-method-16
  (new 'static 'scene
    :name "intro-prison"
    :extra #f
    :info #f
    :mask-to-clear (process-mask movie projectile)
    :entity "scene-stage-49"
    :art-group "scenecamera"
    :anim "intro-prison"
    :parts 80
    :command-list '((-30
        (blackout 0)
        (kill "prsn-torture-1")
        (kill "prsn-chair-shackle-1")
        (apply
          ,(lambda :behavior scene-player
             ()
             (let ((gp-0 (level-get *level* 'introcst)))
               (when gp-0
                 (clear-mood-context (-> gp-0 mood-context))
                 (if #f
                     ((the-as (function mood-context none) #f) (-> gp-0 mood-context))
                     )
                 (set! (-> gp-0 mood-func) (the-as (function mood-context float int none) update-mood-copy-prison))
                 (set! (-> gp-0 info sky) #f)
                 )
               )
             (set-prison-torture-flag! #t)
             (set-filter-color! 1.0 1.0 1.0)
             (none)
             )
          )
        (send-event "jak-highres-prison" 'shadow #f)
        (send-event
          "jak-highres-prison"
          'trans-hook
          ,(lambda :behavior scene-player
             ()
             (let ((f30-0 (ja-aframe-num 0)))
               (when (or (and (< 60.0 f30-0) (< f30-0 350.0))
                         (and (< 360.0 f30-0) (< f30-0 390.0))
                         (and (< 405.0 f30-0) (< f30-0 424.0))
                         )
                 (let* ((gp-0 *jak-highres-dst-lightning-joints*)
                        (a0-1 (-> gp-0 length))
                        (s5-0 (rand-vu-int-count a0-1))
                        (s4-0 *jak-highres-src-lightning-joints*)
                        (a0-2 (-> s4-0 length))
                        (v1-13 (rand-vu-int-count a0-2))
                        )
                   (process-drawable-shock-skel-effect
                     self
                     (-> *lightning-spec-id-table* 20)
                     lightning-probe-callback
                     (-> *part-id-table* 166)
                     1228.8
                     (-> s4-0 v1-13)
                     (-> gp-0 s5-0)
                     )
                   )
                 )
               (let ((gp-1 (-> self node-list length))
                     (s5-1 (+ (rand-vu-int-count 2) 1))
                     )
                 (when (and (>= f30-0 150.0) (>= 400.0 f30-0))
                   (let ((s4-1 3))
                     (while (< s4-1 gp-1)
                       (when (not (and (>= s4-1 7) (>= 12 s4-1)))
                         (let ((t9-5 sp-launch-particles-var)
                               (a0-6 *sp-particle-system-2d*)
                               (a1-2 (-> *part-id-table* 5390))
                               (a2-1 *launch-matrix*)
                               )
                           (set! (-> a2-1 trans quad) (-> self node-list data s4-1 bone transform trans quad))
                           (t9-5 a0-6 a1-2 a2-1 (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0)
                           )
                         )
                       (+! s4-1 s5-1)
                       )
                     )
                   )
                 )
               (when (or (and (< 2690.0 f30-0) (< f30-0 2720.0))
                         (and (< 2740.0 f30-0) (< f30-0 2750.0))
                         (and (< 2810.0 f30-0) (< f30-0 3035.0))
                         )
                 (if (zero? (rand-vu-int-count 5))
                     (process-drawable-shock-skel-effect
                       self
                       (-> *lightning-spec-id-table* 20)
                       lightning-probe-callback
                       (-> *part-id-table* 166)
                       1228.8
                       -1
                       -1
                       )
                     )
                 (if (zero? (rand-vu-int-count 5))
                     (process-drawable-shock-effect
                       self
                       (-> *lightning-spec-id-table* 8)
                       lightning-probe-callback
                       (-> *part-id-table* 179)
                       0
                       0
                       40960.0
                       )
                     )
                 )
               (cond
                 ((< f30-0 2680.0)
                  (set-jakb-prison-texture-morph! 0.0)
                  )
                 ((and (>= f30-0 2680.0) (>= 2700.0 f30-0))
                  (set-jakb-prison-texture-morph! (* 0.05 (+ -2680.0 f30-0)))
                  )
                 (else
                   (set-jakb-prison-texture-morph! 1.0)
                   )
                 )
               )
             (none)
             )
          )
        (want-force-vis 'prison #t)
        (part-tracker
          "group-intro-machine-white-light-glow"
          entity
          "prsn-torture"
          joint
          "machlight_1"
          track
          #t
          duration
          (frame-range -30 10000)
          )
        (part-tracker
          "group-intro-machine-white-light-glow"
          entity
          "prsn-torture"
          joint
          "machlight_2"
          track
          #t
          duration
          (frame-range -30 10000)
          )
        (part-tracker
          "group-intro-machine-white-light-glow"
          entity
          "prsn-torture"
          joint
          "machlight_3"
          track
          #t
          duration
          (frame-range -30 10000)
          )
        (part-tracker
          "group-intro-machine-white-light-glow"
          entity
          "prsn-torture"
          joint
          "machlight_4"
          track
          #t
          duration
          (frame-range -30 10000)
          )
        (part-tracker
          "group-intro-machine-white-light-glow"
          entity
          "prsn-torture"
          joint
          "machlight_5"
          track
          #t
          duration
          (frame-range -30 10000)
          )
        (part-tracker
          "group-intro-machine-white-light-glow"
          entity
          "prsn-torture"
          joint
          "machlight_6"
          track
          #t
          duration
          (frame-range -30 10000)
          )
        (send-event "baron-highres" 'shadow #f)
        (fadein (frame-time-30 15))
        )
      (60
        (send-event "prsn-torture" 'event-hook dark-lightning-handler)
        (send-event "prsn-chair-shackle" 'event-hook dark-lightning-handler)
        )
      (70 (send-event "prsn-torture" 'lightning-needle))
      (80 (send-event "prsn-torture" 'lightning-needle))
      (85 (send-event "prsn-torture" 'lightning-needle))
      (95 (send-event "prsn-torture" 'lightning-needle))
      (150 (send-event "prsn-torture" 'lightning-needle))
      (160 (send-event "prsn-torture" 'lightning-needle))
      (170 (send-event "prsn-torture" 'lightning-needle))
      (185 (send-event "prsn-torture" 'lightning-needle))
      (185 (send-event "prsn-torture" 'lightning-needle))
      (185 (send-event "prsn-torture" 'lightning-needle))
      (194 (send-event "baron-highres" 'shadow #t))
      (195 (send-event "prsn-torture" 'lightning-claw))
      (205 (send-event "prsn-torture" 'lightning-claw))
      (215 (send-event "prsn-torture" 'lightning-needle))
      (225 (send-event "prsn-torture" 'lightning-claw))
      (255 (send-event "prsn-torture" 'lightning-claw))
      (255 (send-event "prsn-torture" 'lightning-claw))
      (295 (send-event "prsn-torture" 'lightning-needle))
      (330 (send-event "prsn-torture" 'lightning-needle))
      (330 (send-event "prsn-torture" 'lightning-needle))
      (332 (send-event "prsn-torture" 'lightning-claw))
      (332 (send-event "prsn-torture" 'lightning-claw))
      (332 (send-event "prsn-torture" 'lightning-claw))
      (340 (want-force-vis 'prison #f))
      (440 (apply ,(lambda () (set-prison-torture-flag! #f))))
      (1630
        (part-tracker
          "group-prison-plat-jet"
          entity
          "prsn-daxter-plat"
          joint
          "platjet_1"
          track
          #t
          duration
          (frame-range 1630 1950)
          )
        (part-tracker
          "group-prison-plat-jet"
          entity
          "prsn-daxter-plat"
          joint
          "platjet_2"
          track
          #t
          duration
          (frame-range 1630 1950)
          )
        (part-tracker
          "group-prison-plat-jet"
          entity
          "prsn-daxter-plat"
          joint
          "platjet_3"
          track
          #t
          duration
          (frame-range 1630 1950)
          )
        (part-tracker
          "group-prison-plat-jet"
          entity
          "prsn-daxter-plat"
          joint
          "platjet_4"
          track
          #t
          duration
          (frame-range 1630 1950)
          )
        )
      (2698
        (part-tracker
          "group-intro-prison-restraints-snap"
          entity
          "jak-highres-prison"
          joint
          "sk_lhand"
          track
          #f
          duration
          (frame-range 411 412)
          )
        )
      (2699
        (part-tracker
          "group-intro-prison-restraints-snap"
          entity
          "jak-highres-prison"
          joint
          "sk_rhand"
          track
          #f
          duration
          (frame-range 411 412)
          )
        )
      (2700
        (part-tracker
          "group-intro-prison-restraints-snap"
          entity
          "jak-highres-prison"
          joint
          "Lankle"
          track
          #f
          duration
          (frame-range 411 412)
          )
        )
      (2702
        (part-tracker
          "group-intro-prison-restraints-snap"
          entity
          "jak-highres-prison"
          joint
          "Rankle"
          track
          #f
          duration
          (frame-range 411 412)
          )
        )
      (2813
        (send-event
          "jak-highres-prison"
          'trans-hook
          ,(lambda :behavior scene-player
             ()
             (let ((f30-0 (ja-aframe-num 0)))
               (when (or (and (< 2690.0 f30-0) (< f30-0 2720.0))
                         (and (< 2740.0 f30-0) (< f30-0 2750.0))
                         (and (< 2810.0 f30-0) (< f30-0 3035.0))
                         )
                 (if (zero? (rand-vu-int-count 5))
                     (process-drawable-shock-skel-effect
                       self
                       (-> *lightning-spec-id-table* 20)
                       lightning-probe-callback
                       (-> *part-id-table* 166)
                       1228.8
                       -1
                       -1
                       )
                     )
                 (if (zero? (rand-vu-int-count 5))
                     (process-drawable-shock-effect
                       self
                       (-> *lightning-spec-id-table* 8)
                       lightning-probe-callback
                       (-> *part-id-table* 179)
                       0
                       0
                       40960.0
                       )
                     )
                 )
               (cond
                 ((< 3100.0 f30-0)
                  (set-jakb-prison-texture-morph! 0.0)
                  )
                 ((and (>= f30-0 3060.0) (>= 3100.0 f30-0))
                  (set-jakb-prison-texture-morph! (* 0.025 (- 3100.0 f30-0)))
                  )
                 (else
                   (set-jakb-prison-texture-morph! 1.0)
                   )
                 )
               )
             (none)
             )
          )
        )
      (2820 (send-event "jak-highres-prison" 'shadow #t))
      (3521 (fadeout (frame-time-30 15)))
      (10000 (task-close! "fortress-escape-introduction"))
      )
    :cut-list '(340
       591
       792
       924
       1056
       1130
       1260
       1336
       1477
       1545
       1620
       1806
       1937
       2206
       2241
       2420
       2502
       2588
       2747
       2812
       2910
       2951
       3022
       3106
       3222
       3279
       3536
       )
    :wait-ground-time (seconds 1)
    :draw-target #f
    :abort #t
    :actor (new 'static 'boxed-array :type scene-actor
      (new 'static 'scene-actor
        :name "scenecamera"
        :level #f
        :art-group "skel-scenecamera"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :camera 4
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "particleman"
        :level 'introcst
        :art-group "skel-particleman"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "sidekick-highres"
        :level 'prison
        :art-group "skel-sidekick-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :light-index #xa
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "jak-highres-prison"
        :level 'ldjakbrn
        :art-group "skel-jak-highres-prison"
        :prefix ""
        :draw-frames '((min 2747) (2812 max))
        :scissor-frames '()
        :light-index #xa
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "errol-highres"
        :level 'introcst
        :art-group "skel-errol-highres"
        :prefix ""
        :draw-frames '((min 792) (924 max))
        :scissor-frames '()
        :light-index #xa
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "baron-highres"
        :level 'ldjakbrn
        :art-group "skel-baron-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '((792 924))
        :light-index #xa
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "prsn-torture"
        :level 'prison
        :art-group "skel-prsn-torture"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :light-index #xa
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "prsn-chair-shackle"
        :level 'prison
        :art-group "skel-prsn-chair-shackle"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :light-index #xa
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "prsn-daxter-plat"
        :level 'ldjakbrn
        :art-group "skel-prsn-daxter-plat"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :light-index #xa
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "jak-clothes"
        :level 'ldjakbrn
        :art-group "skel-jak-clothes"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :light-index #xa
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      )
    :load-point-obj "prison-intro-start"
    :end-point-obj "prison-start"
    :borrow '((prison 0 ldjakbrn special) (introcst 0 #f #f))
    :sfx-volume -1.0
    :ambient-volume -1.0
    :blackout-end #t
    :peaceful #t
    :music-delay 1500.0
    :save #t
    )
  )
