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

;; definition of type lavatube-part
(deftype lavatube-part (part-spawner)
  ()
  :heap-base #x60
  :method-count-assert 21
  :size-assert         #xd0
  :flag-assert         #x15006000d0
  )

;; definition for method 3 of type lavatube-part
(defmethod inspect lavatube-part ((obj lavatube-part))
  (let ((t9-0 (method-of-type part-spawner inspect)))
    (t9-0 obj)
    )
  obj
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-crust-20x20
  :id 616
  :bounds (static-bspherem 0 0 0 14)
  :parts ((sp-item 2489 :fade-after (meters 140) :falloff-to (meters 140)))
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-lowlava-20x20
  :id 617
  :bounds (static-bspherem 0 12 0 48)
  :parts ((sp-item 2490 :fade-after (meters 190) :falloff-to (meters 190)))
  )

;; failed to figure out what this is:
(defpart 2490
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2))
    (sp-flt spt-num 0.1)
    (sp-rnd-flt spt-x (meters -10) (meters 20) 1.0)
    (sp-flt spt-y (meters 3))
    (sp-rnd-flt spt-z (meters -10) (meters 20) 1.0)
    (sp-rnd-flt spt-scale-x (meters 8) (meters 6) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 256.0)
    (sp-flt spt-g 192.0)
    (sp-flt spt-a 0.0)
    (sp-flt spt-vel-y (meters 0.04))
    (sp-flt spt-scalevel-x (meters 0.0033333334))
    (sp-rnd-flt spt-rotvel-z (degrees -0.2) (degrees 0.4) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-flt spt-fade-g -0.6564103)
    (sp-flt spt-fade-a 0.13333334)
    (sp-int spt-timer 600)
    (sp-cpuinfo-flags bit2)
    (sp-int-plain-rnd spt-next-time 60 59 1)
    (sp-launcher-by-id spt-next-launcher 2491)
    (sp-flt spt-rotate-y (degrees 0.0))
    )
  )

;; failed to figure out what this is:
(defpart 2491
  :init-specs ((sp-flt spt-fade-a 0.0) (sp-int spt-next-time 75) (sp-launcher-by-id spt-next-launcher 2492))
  )

;; failed to figure out what this is:
(defpart 2492
  :init-specs ((sp-flt spt-fade-r -1.28)
    (sp-flt spt-fade-g 0.0)
    (sp-flt spt-fade-b 0.42666668)
    (sp-int spt-next-time 150)
    (sp-launcher-by-id spt-next-launcher 2493)
    )
  )

;; failed to figure out what this is:
(defpart 2493
  :init-specs ((sp-flt spt-fade-r 0.0) (sp-flt spt-fade-g 0.0) (sp-flt spt-fade-b 0.0) (sp-flt spt-fade-a -0.035555556))
  )

;; failed to figure out what this is:
(defpart 2489
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2))
    (sp-flt spt-num 0.2)
    (sp-rnd-flt spt-x (meters -10) (meters 20) 1.0)
    (sp-flt spt-y (meters 0))
    (sp-rnd-flt spt-z (meters -10) (meters 20) 1.0)
    (sp-rnd-flt spt-scale-x (meters 6) (meters 4) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 256.0)
    (sp-flt spt-g 192.0)
    (sp-flt spt-b 128.0)
    (sp-flt spt-a 0.0)
    (sp-flt spt-vel-y (meters 0.01))
    (sp-flt spt-scalevel-x (meters 0.0033333334))
    (sp-rnd-flt spt-rotvel-z (degrees -0.2) (degrees 0.4) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-flt spt-fade-a 0.16)
    (sp-int spt-timer 600)
    (sp-cpuinfo-flags bit2)
    (sp-int-plain-rnd spt-next-time 37 36 1)
    (sp-launcher-by-id spt-next-launcher 2494)
    (sp-flt spt-rotate-y (degrees 0.0))
    )
  )

;; failed to figure out what this is:
(defpart 2494
  :init-specs ((sp-flt spt-fade-a 0.0) (sp-int spt-next-time 75) (sp-launcher-by-id spt-next-launcher 2496))
  )

;; failed to figure out what this is:
(defpart 2496
  :init-specs ((sp-flt spt-fade-r -0.85333335)
    (sp-flt spt-fade-g -0.42666668)
    (sp-int spt-next-time 150)
    (sp-launcher-by-id spt-next-launcher 2497)
    )
  )

;; failed to figure out what this is:
(defpart 2497
  :init-specs ((sp-flt spt-fade-r 0.0) (sp-flt spt-fade-g 0.0) (sp-flt spt-fade-a -0.026666667))
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-crust-40x40
  :id 629
  :bounds (static-bspherem 0 0 0 32)
  :parts ((sp-item 2529 :fade-after (meters 180) :falloff-to (meters 180)))
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-lowlava-40x40
  :id 630
  :bounds (static-bspherem 0 12 0 32)
  :parts ((sp-item 2530 :fade-after (meters 200) :falloff-to (meters 200)))
  )

;; failed to figure out what this is:
(defpart 2530
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2))
    (sp-flt spt-num 0.4)
    (sp-rnd-flt spt-x (meters -20) (meters 40) 1.0)
    (sp-flt spt-y (meters 3))
    (sp-rnd-flt spt-z (meters -20) (meters 40) 1.0)
    (sp-rnd-flt spt-scale-x (meters 8) (meters 6) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 256.0)
    (sp-flt spt-g 192.0)
    (sp-flt spt-a 0.0)
    (sp-flt spt-vel-y (meters 0.04))
    (sp-flt spt-scalevel-x (meters 0.0033333334))
    (sp-rnd-flt spt-rotvel-z (degrees -0.2) (degrees 0.4) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-flt spt-fade-g -0.6564103)
    (sp-flt spt-fade-a 0.13333334)
    (sp-int spt-timer 600)
    (sp-cpuinfo-flags bit2)
    (sp-int-plain-rnd spt-next-time 60 59 1)
    (sp-launcher-by-id spt-next-launcher 2491)
    (sp-flt spt-rotate-y (degrees 0.0))
    )
  )

;; failed to figure out what this is:
(defpart 2529
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2))
    (sp-flt spt-num 0.8)
    (sp-rnd-flt spt-x (meters -20) (meters 40) 1.0)
    (sp-flt spt-y (meters 0))
    (sp-rnd-flt spt-z (meters -20) (meters 40) 1.0)
    (sp-rnd-flt spt-scale-x (meters 6) (meters 4) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 256.0)
    (sp-flt spt-g 192.0)
    (sp-flt spt-b 128.0)
    (sp-flt spt-a 0.0)
    (sp-flt spt-vel-y (meters 0.01))
    (sp-flt spt-scalevel-x (meters 0.0033333334))
    (sp-rnd-flt spt-rotvel-z (degrees -0.2) (degrees 0.4) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-flt spt-fade-a 0.16)
    (sp-int spt-timer 600)
    (sp-cpuinfo-flags bit2)
    (sp-int-plain-rnd spt-next-time 37 36 1)
    (sp-launcher-by-id spt-next-launcher 2494)
    (sp-flt spt-rotate-y (degrees 0.0))
    )
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-green-smoke-down-1
  :id 621
  :bounds (static-bspherem 0 -6 0 8)
  :parts ((sp-item 2516 :fade-after (meters 100) :falloff-to (meters 120) :period 1260 :length 75)
    (sp-item 2516 :fade-after (meters 100) :falloff-to (meters 120) :period 770 :length 96)
    (sp-item 2516 :fade-after (meters 140) :falloff-to (meters 160) :period 936 :length 60)
    (sp-item 2517 :fade-after (meters 100) :falloff-to (meters 100))
    )
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-green-smoke-down-2
  :id 622
  :bounds (static-bspherem 0 -6 0 8)
  :parts ((sp-item 2516 :fade-after (meters 100) :falloff-to (meters 120) :period 1536 :length 75)
    (sp-item 2516 :fade-after (meters 100) :falloff-to (meters 120) :period 596 :length 96)
    (sp-item 2516 :fade-after (meters 140) :falloff-to (meters 160) :period 1070 :length 60)
    (sp-item 2517 :fade-after (meters 100) :falloff-to (meters 100))
    )
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-green-smoke-down-3
  :id 623
  :bounds (static-bspherem 0 -6 0 8)
  :parts ((sp-item 2516 :fade-after (meters 100) :falloff-to (meters 120) :period 1161 :length 75)
    (sp-item 2516 :fade-after (meters 100) :falloff-to (meters 120) :period 869 :length 96)
    (sp-item 2516 :fade-after (meters 140) :falloff-to (meters 160) :period 1029 :length 60)
    (sp-item 2517 :fade-after (meters 100) :falloff-to (meters 100))
    )
  )

;; failed to figure out what this is:
(defpart 2517
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2))
    (sp-rnd-flt spt-num 0.0 0.5 1.0)
    (sp-rnd-flt spt-x (meters 0) (meters 3) 1.0)
    (sp-flt spt-y (meters -1))
    (sp-rnd-flt spt-scale-x (meters 6) (meters 4) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 0.0)
    (sp-flt spt-g 255.0)
    (sp-rnd-flt spt-b 89.0 60.0 1.0)
    (sp-flt spt-a 0.0)
    (sp-rnd-flt spt-vel-y (meters 0.053333335) (meters 0.026666667) 1.0)
    (sp-rnd-flt spt-scalevel-x (meters 0.02) (meters 0.01) 1.0)
    (sp-rnd-flt spt-rotvel-z (degrees -0.6) (degrees 1.2) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-flt spt-fade-a 4.266667)
    (sp-int spt-timer 300)
    (sp-cpuinfo-flags bit2 bit14)
    (sp-int-plain-rnd spt-next-time 20 4 1)
    (sp-launcher-by-id spt-next-launcher 2518)
    (sp-flt spt-conerot-x (degrees 180.0))
    (sp-flt spt-conerot-y (degrees 0.0))
    (sp-flt spt-conerot-z (degrees 0.0))
    (sp-rnd-flt spt-rotate-y (degrees 0.0) (degrees 360.0) 1.0)
    )
  )

;; failed to figure out what this is:
(defpart 2518
  :init-specs ((sp-flt spt-fade-a -0.47407407))
  )

;; failed to figure out what this is:
(defpart 2516
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2))
    (sp-rnd-flt spt-num 0.7 0.6 1.0)
    (sp-sound (static-sound-spec "steam-release" :num 0.05 :volume 100.0))
    (sp-rnd-flt spt-x (meters 0) (meters 3) 1.0)
    (sp-flt spt-y (meters -1))
    (sp-rnd-flt spt-scale-x (meters 6) (meters 4) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 0.0)
    (sp-flt spt-g 255.0)
    (sp-rnd-flt spt-b 89.0 60.0 1.0)
    (sp-flt spt-a 0.0)
    (sp-rnd-flt spt-vel-y (meters 0.16) (meters 0.08) 1.0)
    (sp-rnd-flt spt-scalevel-x (meters 0.02) (meters 0.01) 1.0)
    (sp-rnd-flt spt-rotvel-z (degrees -0.6) (degrees 1.2) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-flt spt-fade-a 4.266667)
    (sp-rnd-flt spt-accel-y 0.68266666 0.13653333 1.0)
    (sp-flt spt-friction 0.9)
    (sp-int spt-timer 300)
    (sp-cpuinfo-flags bit2 bit14)
    (sp-int-plain-rnd spt-next-time 20 4 1)
    (sp-launcher-by-id spt-next-launcher 2518)
    (sp-flt spt-conerot-x (degrees 180.0))
    (sp-flt spt-conerot-y (degrees 0.0))
    (sp-flt spt-conerot-z (degrees 0.0))
    (sp-rnd-flt spt-rotate-y (degrees 0.0) (degrees 360.0) 1.0)
    )
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-green-smoke-angle-1
  :id 624
  :bounds (static-bspherem 0 -6 0 8)
  :parts ((sp-item 2519 :fade-after (meters 100) :falloff-to (meters 120) :period 1050 :length 75)
    (sp-item 2519 :fade-after (meters 100) :falloff-to (meters 120) :period 886 :length 96)
    (sp-item 2519 :fade-after (meters 140) :falloff-to (meters 160) :period 1276 :length 60)
    (sp-item 2520 :fade-after (meters 100) :falloff-to (meters 100))
    )
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-green-smoke-angle-2
  :id 625
  :bounds (static-bspherem 0 -6 0 8)
  :parts ((sp-item 2519 :fade-after (meters 100) :falloff-to (meters 120) :period 1830 :length 75)
    (sp-item 2519 :fade-after (meters 100) :falloff-to (meters 120) :period 970 :length 96)
    (sp-item 2519 :fade-after (meters 140) :falloff-to (meters 160) :period 1102 :length 60)
    (sp-item 2520 :fade-after (meters 100) :falloff-to (meters 100))
    )
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-green-smoke-angle-3
  :id 626
  :bounds (static-bspherem 0 -6 0 8)
  :parts ((sp-item 2519 :fade-after (meters 100) :falloff-to (meters 120) :period 1530 :length 75)
    (sp-item 2519 :fade-after (meters 100) :falloff-to (meters 120) :period 1189 :length 96)
    (sp-item 2519 :fade-after (meters 140) :falloff-to (meters 160) :period 862 :length 60)
    (sp-item 2520 :fade-after (meters 100) :falloff-to (meters 100))
    )
  )

;; failed to figure out what this is:
(defpart 2520
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2))
    (sp-rnd-flt spt-num 0.0 0.5 1.0)
    (sp-rnd-flt spt-scale-x (meters 5) (meters 3) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 0.0)
    (sp-flt spt-g 255.0)
    (sp-rnd-flt spt-b 89.0 60.0 1.0)
    (sp-flt spt-a 0.0)
    (sp-rnd-flt spt-vel-y (meters 0.053333335) (meters 0.026666667) 1.0)
    (sp-rnd-flt spt-scalevel-x (meters 0.02) (meters 0.01) 1.0)
    (sp-rnd-flt spt-rotvel-z (degrees -0.6) (degrees 1.2) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-flt spt-fade-a 4.266667)
    (sp-rnd-flt spt-accel-y 0.68266666 2.048 1.0)
    (sp-int spt-timer 300)
    (sp-cpuinfo-flags bit2 bit14)
    (sp-int-plain-rnd spt-next-time 20 4 1)
    (sp-launcher-by-id spt-next-launcher 2518)
    (sp-flt spt-conerot-x (degrees 0.0))
    (sp-flt spt-conerot-y (degrees 0.0))
    (sp-flt spt-conerot-z (degrees 0.0))
    )
  )

;; failed to figure out what this is:
(defpart 2519
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2))
    (sp-rnd-flt spt-num 0.4 0.3 1.0)
    (sp-sound (static-sound-spec "steam-release" :num 0.05 :volume 100.0))
    (sp-rnd-flt spt-scale-x (meters 6) (meters 4) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 0.0)
    (sp-flt spt-g 255.0)
    (sp-rnd-flt spt-b 89.0 60.0 1.0)
    (sp-flt spt-a 0.0)
    (sp-rnd-flt spt-vel-y (meters 0.16) (meters 0.08) 1.0)
    (sp-rnd-flt spt-scalevel-x (meters 0.016666668) (meters 0.006666667) 1.0)
    (sp-rnd-flt spt-rotvel-z (degrees -0.6) (degrees 1.2) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-flt spt-fade-a 4.266667)
    (sp-rnd-flt spt-accel-y 1.3653333 4.096 1.0)
    (sp-flt spt-friction 0.9)
    (sp-int spt-timer 300)
    (sp-cpuinfo-flags bit2 bit14)
    (sp-int-plain-rnd spt-next-time 20 4 1)
    (sp-launcher-by-id spt-next-launcher 2518)
    (sp-flt spt-conerot-x (degrees 0.0))
    (sp-flt spt-conerot-y (degrees 0.0))
    (sp-flt spt-conerot-z (degrees 0.0))
    )
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-fountain
  :id 627
  :bounds (static-bspherem 0 -10 0 12)
  :parts ((sp-item 2521 :fade-after (meters 100) :falloff-to (meters 100))
    (sp-item 2522 :fade-after (meters 100) :falloff-to (meters 100))
    )
  )

;; failed to figure out what this is:
(defpart 2522
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #xf :page #x2))
    (sp-rnd-flt spt-num 1.0 1.0 1.0)
    (sp-rnd-flt spt-y (meters -0.75) (meters 0.25) 1.0)
    (sp-rnd-flt spt-scale-x (meters 0.4) (meters 0.8) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 256.0)
    (sp-rnd-flt spt-g 0.0 128.0 1.0)
    (sp-rnd-flt spt-a 64.0 64.0 1.0)
    (sp-rnd-flt spt-vel-y (meters 0.026666667) (meters 0.026666667) 1.0)
    (sp-rnd-flt spt-scalevel-x (meters -0.00033333333) (meters 0.00033333333) 1.0)
    (sp-rnd-flt spt-rotvel-z (degrees -0.3) (degrees 0.6) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-rnd-flt spt-accel-y -5.4613333 -5.4613333 1.0)
    (sp-flt spt-friction 0.98)
    (sp-int spt-timer 450)
    (sp-cpuinfo-flags bit2 bit14)
    (sp-rnd-flt spt-conerot-x (degrees 80.0) (degrees 20.0) 1.0)
    (sp-rnd-flt spt-conerot-y (degrees -70.0) (degrees 50.000004) 1.0)
    (sp-flt spt-conerot-z (degrees 0.0))
    )
  )

;; failed to figure out what this is:
(defpart 2521
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2))
    (sp-rnd-flt spt-num 0.0 0.1 1.0)
    (sp-rnd-flt spt-scale-x (meters 6) (meters 4) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 256.0)
    (sp-flt spt-g 192.0)
    (sp-flt spt-a 0.0)
    (sp-rnd-flt spt-vel-y (meters 0.013333334) (meters 0.01) 1.0)
    (sp-rnd-flt spt-scalevel-x (meters 0.0033333334) (meters 0.0013333333) 1.0)
    (sp-rnd-flt spt-rotvel-z (degrees -0.3) (degrees 0.6) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-flt spt-fade-g -0.42666668)
    (sp-flt spt-fade-a 0.16)
    (sp-int spt-timer 900)
    (sp-cpuinfo-flags bit2 bit14)
    (sp-int-plain-rnd spt-next-time 210 89 1)
    (sp-launcher-by-id spt-next-launcher 2523)
    (sp-rnd-flt spt-conerot-x (degrees 90.0) (degrees 10.0) 1.0)
    (sp-rnd-flt spt-conerot-y (degrees -60.0) (degrees 30.0) 1.0)
    (sp-flt spt-conerot-z (degrees 0.0))
    )
  )

;; failed to figure out what this is:
(defpart 2523
  :init-specs ((sp-flt spt-fade-r -0.64)
    (sp-flt spt-fade-g 0.0)
    (sp-flt spt-fade-b 0.21333334)
    (sp-flt spt-fade-a -0.08)
    (sp-int-plain-rnd spt-next-time 210 89 1)
    (sp-launcher-by-id spt-next-launcher 2524)
    )
  )

;; failed to figure out what this is:
(defpart 2524
  :init-specs ((sp-flt spt-fade-r 0.0) (sp-flt spt-fade-g 0.0) (sp-flt spt-fade-b 0.0))
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-vents
  :id 628
  :bounds (static-bspherem 0 0 0 12)
  :parts ((sp-item 2525 :fade-after (meters 160) :falloff-to (meters 160)))
  )

;; failed to figure out what this is:
(defpart 2525
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2))
    (sp-rnd-flt spt-num 0.0 0.3 1.0)
    (sp-flt spt-y (meters -1))
    (sp-rnd-flt spt-scale-x (meters 8) (meters 6) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 256.0)
    (sp-flt spt-g 192.0)
    (sp-flt spt-a 0.0)
    (sp-rnd-flt spt-vel-y (meters 0.013333334) (meters 0.01) 1.0)
    (sp-rnd-flt spt-scalevel-x (meters 0.0033333334) (meters 0.0013333333) 1.0)
    (sp-rnd-flt spt-rotvel-z (degrees -0.3) (degrees 0.6) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-flt spt-fade-g -0.42666668)
    (sp-flt spt-fade-a 0.32)
    (sp-int spt-timer 600)
    (sp-cpuinfo-flags bit2 bit14)
    (sp-int-plain-rnd spt-next-time 90 59 1)
    (sp-launcher-by-id spt-next-launcher 2526)
    (sp-flt spt-conerot-x (degrees 0.0))
    (sp-flt spt-conerot-y (degrees 0.0))
    (sp-flt spt-conerot-z (degrees 0.0))
    )
  )

;; failed to figure out what this is:
(defpart 2526
  :init-specs ((sp-flt spt-fade-r -1.28)
    (sp-flt spt-fade-g 0.0)
    (sp-flt spt-fade-b 0.42666668)
    (sp-flt spt-fade-a -0.10666667)
    (sp-int-plain-rnd spt-next-time 90 59 1)
    (sp-launcher-by-id spt-next-launcher 2527)
    )
  )

;; failed to figure out what this is:
(defpart 2527
  :init-specs ((sp-flt spt-fade-r 0.0) (sp-flt spt-fade-g 0.0) (sp-flt spt-fade-b 0.0))
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-heavy-smoke
  :id 631
  :bounds (static-bspherem 0 10 0 22)
  :parts ((sp-item 2531 :fade-after (meters 140) :falloff-to (meters 140)))
  )

;; failed to figure out what this is:
(defpart 2531
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2))
    (sp-rnd-flt spt-num 0.0 0.4 1.0)
    (sp-rnd-flt spt-x (meters -16) (meters 32) 1.0)
    (sp-rnd-flt spt-z (meters -16) (meters 32) 1.0)
    (sp-rnd-flt spt-scale-x (meters 12) (meters 12) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 256.0)
    (sp-flt spt-g 192.0)
    (sp-flt spt-a 0.0)
    (sp-rnd-flt spt-vel-y (meters 0.02) (meters 0.02) 1.0)
    (sp-rnd-flt spt-scalevel-x (meters 0.006666667) (meters 0.0033333334) 1.0)
    (sp-rnd-flt spt-rotvel-z (degrees -0.3) (degrees 0.6) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-flt spt-fade-g -0.42666668)
    (sp-flt spt-fade-a 0.16)
    (sp-int spt-timer 900)
    (sp-cpuinfo-flags bit2 bit14)
    (sp-int-plain-rnd spt-next-time 210 89 1)
    (sp-launcher-by-id spt-next-launcher 2523)
    (sp-rnd-flt spt-rotate-y (degrees 0.0) (degrees 360.0) 1.0)
    )
  )

;; failed to figure out what this is:
(defpart 2532
  :init-specs ((sp-flt spt-fade-r -0.64)
    (sp-flt spt-fade-g 0.0)
    (sp-flt spt-fade-b 0.21333334)
    (sp-flt spt-fade-a -0.08)
    (sp-int-plain-rnd spt-next-time 210 89 1)
    (sp-launcher-by-id spt-next-launcher 2524)
    )
  )

;; failed to figure out what this is:
(defpart 2533
  :init-specs ((sp-flt spt-fade-r 0.0) (sp-flt spt-fade-g 0.0) (sp-flt spt-fade-b 0.0))
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-heavy-smoke-start
  :id 632
  :bounds (static-bspherem 0 10 0 22)
  :parts ((sp-item 2534 :fade-after (meters 140) :falloff-to (meters 140))
    (sp-item 2535 :fade-after (meters 200) :falloff-to (meters 200))
    )
  )

;; failed to figure out what this is:
(defpart 2534
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #xf :page #x2))
    (sp-rnd-flt spt-num 1.0 5.0 1.0)
    (sp-rnd-flt spt-x (meters -14) (meters 28) 1.0)
    (sp-rnd-flt spt-y (meters 8) (meters 8) 1.0)
    (sp-rnd-flt spt-z (meters 4) (meters 1) 1.0)
    (sp-rnd-flt spt-scale-x (meters 0.4) (meters 0.8) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 256.0)
    (sp-rnd-flt spt-g 64.0 64.0 1.0)
    (sp-rnd-flt spt-a 64.0 64.0 1.0)
    (sp-rnd-flt spt-vel-y (meters -0.04) (meters -0.013333334) 1.0)
    (sp-rnd-flt spt-scalevel-x (meters -0.00033333333) (meters 0.00033333333) 1.0)
    (sp-rnd-flt spt-rotvel-z (degrees -0.3) (degrees 0.6) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-rnd-flt spt-accel-y -8.192 -2.7306666 1.0)
    (sp-flt spt-friction 0.98)
    (sp-int spt-timer 450)
    (sp-cpuinfo-flags bit2 bit14)
    (sp-flt spt-conerot-x (degrees 60.0))
    (sp-flt spt-rotate-y (degrees 90.0))
    )
  )

;; failed to figure out what this is:
(defpart 2535
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2))
    (sp-rnd-flt spt-num 0.4 0.8 1.0)
    (sp-rnd-flt spt-x (meters -16) (meters 32) 1.0)
    (sp-rnd-flt spt-y (meters -14) (meters 30) 1.0)
    (sp-rnd-flt spt-z (meters -8) (meters 8) 1.0)
    (sp-rnd-flt spt-scale-x (meters 12) (meters 12) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 256.0)
    (sp-flt spt-g 192.0)
    (sp-flt spt-a 0.0)
    (sp-rnd-flt spt-vel-y (meters 0.02) (meters 0.02) 1.0)
    (sp-rnd-flt spt-scalevel-x (meters 0.006666667) (meters 0.0033333334) 1.0)
    (sp-rnd-flt spt-rotvel-z (degrees -0.3) (degrees 0.6) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-flt spt-fade-g -0.42666668)
    (sp-flt spt-fade-a 0.16)
    (sp-int spt-timer 900)
    (sp-cpuinfo-flags bit2 bit14)
    (sp-int-plain-rnd spt-next-time 210 89 1)
    (sp-launcher-by-id spt-next-launcher 2523)
    (sp-flt spt-rotate-y (degrees 90.0))
    )
  )

;; failed to figure out what this is:
(defpartgroup group-lavatube-heavy-smoke-end
  :id 633
  :bounds (static-bspherem 0 10 0 22)
  :parts ((sp-item 2536 :fade-after (meters 140) :falloff-to (meters 140))
    (sp-item 2537 :fade-after (meters 200) :falloff-to (meters 200))
    )
  )

;; failed to figure out what this is:
(defpart 2536
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #xf :page #x2))
    (sp-rnd-flt spt-num 1.0 3.0 1.0)
    (sp-rnd-flt spt-x (meters -10) (meters 20) 1.0)
    (sp-rnd-flt spt-y (meters 0) (meters 8) 1.0)
    (sp-rnd-flt spt-z (meters 2) (meters 1) 1.0)
    (sp-rnd-flt spt-scale-x (meters 0.4) (meters 0.8) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 256.0)
    (sp-rnd-flt spt-g 64.0 64.0 1.0)
    (sp-rnd-flt spt-a 64.0 64.0 1.0)
    (sp-rnd-flt spt-vel-y (meters -0.04) (meters -0.013333334) 1.0)
    (sp-rnd-flt spt-scalevel-x (meters -0.00033333333) (meters 0.00033333333) 1.0)
    (sp-rnd-flt spt-rotvel-z (degrees -0.3) (degrees 0.6) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-rnd-flt spt-accel-y -8.192 -2.7306666 1.0)
    (sp-flt spt-friction 0.98)
    (sp-int spt-timer 450)
    (sp-cpuinfo-flags bit2 bit14)
    (sp-flt spt-conerot-x (degrees 60.0))
    (sp-flt spt-rotate-y (degrees 240.0))
    )
  )

;; failed to figure out what this is:
(defpart 2537
  :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2))
    (sp-rnd-flt spt-num 0.2 0.4 1.0)
    (sp-rnd-flt spt-x (meters -10) (meters 20) 1.0)
    (sp-rnd-flt spt-y (meters -22) (meters 30) 1.0)
    (sp-rnd-flt spt-z (meters -8) (meters 8) 1.0)
    (sp-rnd-flt spt-scale-x (meters 12) (meters 12) 1.0)
    (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
    (sp-copy-from-other spt-scale-y -4)
    (sp-flt spt-r 256.0)
    (sp-flt spt-g 192.0)
    (sp-flt spt-a 0.0)
    (sp-rnd-flt spt-vel-y (meters 0.02) (meters 0.02) 1.0)
    (sp-rnd-flt spt-scalevel-x (meters 0.006666667) (meters 0.0033333334) 1.0)
    (sp-rnd-flt spt-rotvel-z (degrees -0.3) (degrees 0.6) 1.0)
    (sp-copy-from-other spt-scalevel-y -4)
    (sp-flt spt-fade-g -0.42666668)
    (sp-flt spt-fade-a 0.16)
    (sp-int spt-timer 900)
    (sp-cpuinfo-flags bit2 bit14)
    (sp-int-plain-rnd spt-next-time 210 89 1)
    (sp-launcher-by-id spt-next-launcher 2523)
    (sp-flt spt-rotate-y (degrees 180.0))
    )
  )
