Advertisement
liquidspark

Halo Tag File Definitions

Aug 27th, 2018
5,092
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 521.20 KB | None | 0 0
  1. extracthalotagdefs and its resulting file are by sparky (e-mail:galaxyverge+halo@pm.me discord:sparky#0343 chat:https://discord.gg/mcEzrrv)
  2. tetelestai
  3. tag definitions parsed from guerilla.exe
  4. modify output to suit your source code syntax needs by modifying extracthalotagdefs
  5. all credit to Jesus Christ for anything that pleases His Majesty, King of Glory
  6. note that these definitions do not fully equate to stored file data...
  7. respect me and what I freely did for you by leaving this printf statement intact
  8.  
  9. Tag Definition Offset: 0x5d8710
  10. Extension: model
  11. Unknown: 9
  12. Class: mode
  13. No superclass
  14. Version: 4
  15. Dialog Data Offset: 0x494cd0
  16. Definition Block:
  17. {
  18. Name: model
  19. Count: 1
  20. Size: 232
  21. Chunks Offset: 0x5d85d0
  22. Dialog Data 2 Offset: 0x494bc0
  23. }
  24. long_flags flags*
  25. {
  26. blend shared normals
  27. parts have local nodes
  28. ignore skinning
  29. }
  30. long_integer node list checksum*
  31. real super-high detail cutoff:pixels
  32. real high detail cutoff:pixels
  33. real medium detail cutoff:pixels
  34. real low detail cutoff:pixels
  35. real super-low cutoff:pixels
  36. short_integer super-high detail node count*:nodes
  37. short_integer high detail node count*:nodes
  38. short_integer medium detail node count*:nodes
  39. short_integer low detail node count*:nodes
  40. short_integer super-low detail node count*:nodes
  41. pad[2]
  42. pad[8]
  43. real base map u-scale*#0 defaults to 1
  44. real base map v-scale*#0 defaults to 1
  45. pad[116]
  46. block markers*
  47. {
  48. Name: model_markers_block
  49. Max Chunks: 256
  50. Chunk Size: 64
  51. Max Chunks x Chunk Size: 16384
  52. Chunk Definition Offset: 0x5d8548
  53. {
  54. string name^*
  55. short_integer magic identifier*
  56. pad[2]
  57. pad[16]
  58. block instances*
  59. {
  60. Name: model_marker_instance_block
  61. Max Chunks: 32
  62. Chunk Size: 32
  63. Max Chunks x Chunk Size: 1024
  64. Chunk Definition Offset: 0x5d84c8
  65. {
  66. char_integer region index*
  67. char_integer permutation index*
  68. char_integer node index*
  69. pad[1]
  70. real_point_3d translation*
  71. real_quaternion rotation*
  72. }
  73. }
  74. }
  75. }
  76. block nodes*
  77. {
  78. Name: model_node_block
  79. Max Chunks: 64
  80. Chunk Size: 156
  81. Max Chunks x Chunk Size: 9984
  82. Chunk Definition Offset: 0x5d8170
  83. {
  84. string name^*
  85. short_block_index next sibling node index*
  86. {
  87. Block Name: model_node_block
  88. }
  89. short_block_index first child node index*
  90. {
  91. Block Name: model_node_block
  92. }
  93. short_block_index parent node index*
  94. {
  95. Block Name: model_node_block
  96. }
  97. pad[2]
  98. real_point_3d default translation*
  99. real_quaternion default rotation*
  100. real node distance from parent*
  101. pad[32]
  102. pad[52]
  103. }
  104. }
  105. block regions*
  106. {
  107. Name: model_region_block
  108. Max Chunks: 32
  109. Chunk Size: 76
  110. Max Chunks x Chunk Size: 2432
  111. Chunk Definition Offset: 0x5d8410
  112. {
  113. string name^*
  114. pad[32]
  115. block permutations*
  116. {
  117. Name: model_region_permutation_block
  118. Max Chunks: 32
  119. Chunk Size: 88
  120. Max Chunks x Chunk Size: 2816
  121. Chunk Definition Offset: 0x5d82b0
  122. {
  123. string name^*
  124. long_flags flags*
  125. {
  126. cannot be chosen randomly
  127. }
  128. pad[28]
  129. short_block_index super low*
  130. {
  131. Block Name: model_geometry_block
  132. }
  133. short_block_index low*
  134. {
  135. Block Name: model_geometry_block
  136. }
  137. short_block_index medium*
  138. {
  139. Block Name: model_geometry_block
  140. }
  141. short_block_index high*
  142. {
  143. Block Name: model_geometry_block
  144. }
  145. short_block_index super high*
  146. {
  147. Block Name: model_geometry_block
  148. }
  149. pad[2]
  150. block markers*
  151. {
  152. Name: model_region_permutation_marker_block
  153. Max Chunks: 64
  154. Chunk Size: 80
  155. Max Chunks x Chunk Size: 5120
  156. Chunk Definition Offset: 0x5d8220
  157. {
  158. string name^*
  159. short_block_index node index*
  160. {
  161. Block Name: model_node_block
  162. }
  163. pad[2]
  164. real_quaternion rotation*
  165. real_point_3d translation*
  166. pad[16]
  167. }
  168. }
  169. }
  170. }
  171. }
  172. }
  173. block geometries*
  174. {
  175. Name: model_geometry_block
  176. Max Chunks: 256
  177. Chunk Size: 48
  178. Max Chunks x Chunk Size: 12288
  179. Chunk Definition Offset: 0x5d80b8
  180. {
  181. long_flags flags*
  182. {
  183. }
  184. pad[32]
  185. block parts*
  186. {
  187. Name: model_geometry_part_block
  188. Max Chunks: 32
  189. Chunk Size: 104
  190. Max Chunks x Chunk Size: 3328
  191. Chunk Definition Offset: 0x5d7eb0
  192. {
  193. long_flags flags*
  194. {
  195. stripped (INTERNAL)
  196. ZONER: _model_part_local_nodes
  197. }
  198. short_block_index shader index*
  199. {
  200. Block Name: model_shader_reference_block
  201. }
  202. char_integer prev filthy part index
  203. char_integer next filthy part index
  204. short_integer centroid primary node*
  205. short_integer centroid secondary node*
  206. real_fraction centroid primary weight*
  207. real_fraction centroid secondary weight*
  208. real_point_3d centroid*
  209. block uncompressed vertices*
  210. {
  211. Name: model_vertex_uncompressed_block
  212. Max Chunks: 65535
  213. Chunk Size: 68
  214. Max Chunks x Chunk Size: 4456380
  215. Chunk Definition Offset: 0x5d7c90
  216. {
  217. real_point_3d position*
  218. real_vector_3d normal*
  219. real_vector_3d binormal*
  220. real_vector_3d tangent*
  221. real_point_2d texture coords*
  222. short_integer node0 index*
  223. short_integer node1 index*
  224. real node0 weight*
  225. real node1 weight*
  226. }
  227. }
  228. block compressed vertices*
  229. {
  230. Name: model_vertex_compressed_block
  231. Max Chunks: 65535
  232. Chunk Size: 32
  233. Max Chunks x Chunk Size: 2097120
  234. Chunk Definition Offset: 0x5d7d38
  235. {
  236. real_point_3d position*
  237. long_integer normal[11.11.10-bit]*
  238. long_integer binormal[11.11.10-bit]*
  239. long_integer tangent[11.11.10-bit]*
  240. short_integer texture coordinate u[16-bit]*
  241. short_integer texture coordinate v[16-bit]*
  242. char_integer node0 index(x3)*
  243. char_integer node1 index(x3)*
  244. short_integer node0 weight[16-bit]*
  245. }
  246. }
  247. block triangles*
  248. {
  249. Name: model_triangle_block
  250. Max Chunks: 65535
  251. Chunk Size: 6
  252. Max Chunks x Chunk Size: 393210
  253. Chunk Definition Offset: 0x5d7ddc
  254. {
  255. short_integer vertex0 index*
  256. short_integer vertex1 index*
  257. short_integer vertex2 index*
  258. }
  259. }
  260. pad[20]
  261. pad[16]
  262. }
  263. }
  264. }
  265. }
  266. block shaders*
  267. {
  268. Name: model_shader_reference_block
  269. Max Chunks: 32
  270. Chunk Size: 32
  271. Max Chunks x Chunk Size: 1024
  272. Chunk Definition Offset: 0x5d7e48
  273. {
  274. tag reference shader^
  275. {
  276. Supported tag class category: shdr
  277. }
  278. short_integer permutation
  279. pad[2]
  280. pad[12]
  281. }
  282. }
  283. POORLY-DETERMINED MIN FILESIZE OF mode (including 64-byte header): 296
  284. POORLY-DETERMINED MAX FILESIZE OF mode (including 64-byte header): 7001661
  285.  
  286. Tag Definition Offset: 0x5d88b0
  287. Extension: gbxmodel
  288. Unknown: 9
  289. Class: mod2
  290. No superclass
  291. Version: 5
  292. Dialog Data Offset: 0x494cd0
  293. Definition Block:
  294. {
  295. Name: gbxmodel
  296. Count: 1
  297. Size: 232
  298. Chunks Offset: 0x5d8770
  299. Dialog Data 2 Offset: 0x494bc0
  300. }
  301. long_flags flags*
  302. {
  303. blend shared normals
  304. parts have local nodes
  305. ignore skinning
  306. }
  307. long_integer node list checksum*
  308. real super-high detail cutoff:pixels
  309. real high detail cutoff:pixels
  310. real medium detail cutoff:pixels
  311. real low detail cutoff:pixels
  312. real super-low cutoff:pixels
  313. short_integer super-high detail node count*:nodes
  314. short_integer high detail node count*:nodes
  315. short_integer medium detail node count*:nodes
  316. short_integer low detail node count*:nodes
  317. short_integer super-low detail node count*:nodes
  318. pad[2]
  319. pad[8]
  320. real base map u-scale*#0 defaults to 1
  321. real base map v-scale*#0 defaults to 1
  322. pad[116]
  323. block markers*
  324. {
  325. Name: model_markers_block
  326. Max Chunks: 256
  327. Chunk Size: 64
  328. Max Chunks x Chunk Size: 16384
  329. Chunk Definition Offset: 0x5d8548
  330. {
  331. string name^*
  332. short_integer magic identifier*
  333. pad[2]
  334. pad[16]
  335. block instances*
  336. {
  337. Name: model_marker_instance_block
  338. Max Chunks: 32
  339. Chunk Size: 32
  340. Max Chunks x Chunk Size: 1024
  341. Chunk Definition Offset: 0x5d84c8
  342. {
  343. char_integer region index*
  344. char_integer permutation index*
  345. char_integer node index*
  346. pad[1]
  347. real_point_3d translation*
  348. real_quaternion rotation*
  349. }
  350. }
  351. }
  352. }
  353. block nodes*
  354. {
  355. Name: model_node_block
  356. Max Chunks: 64
  357. Chunk Size: 156
  358. Max Chunks x Chunk Size: 9984
  359. Chunk Definition Offset: 0x5d8170
  360. {
  361. string name^*
  362. short_block_index next sibling node index*
  363. {
  364. Block Name: model_node_block
  365. }
  366. short_block_index first child node index*
  367. {
  368. Block Name: model_node_block
  369. }
  370. short_block_index parent node index*
  371. {
  372. Block Name: model_node_block
  373. }
  374. pad[2]
  375. real_point_3d default translation*
  376. real_quaternion default rotation*
  377. real node distance from parent*
  378. pad[32]
  379. pad[52]
  380. }
  381. }
  382. block regions*
  383. {
  384. Name: gbxmodel_region_block
  385. Max Chunks: 32
  386. Chunk Size: 76
  387. Max Chunks x Chunk Size: 2432
  388. Chunk Definition Offset: 0x5d846c
  389. {
  390. string name^*
  391. pad[32]
  392. block permutations*
  393. {
  394. Name: gbxmodel_region_permutation_block
  395. Max Chunks: 32
  396. Chunk Size: 88
  397. Max Chunks x Chunk Size: 2816
  398. Chunk Definition Offset: 0x5d8360
  399. {
  400. string name^*
  401. long_flags flags*
  402. {
  403. cannot be chosen randomly
  404. }
  405. pad[28]
  406. short_block_index super low*
  407. {
  408. Block Name: gbxmodel_geometry_block
  409. }
  410. short_block_index low*
  411. {
  412. Block Name: gbxmodel_geometry_block
  413. }
  414. short_block_index medium*
  415. {
  416. Block Name: gbxmodel_geometry_block
  417. }
  418. short_block_index high*
  419. {
  420. Block Name: gbxmodel_geometry_block
  421. }
  422. short_block_index super high*
  423. {
  424. Block Name: gbxmodel_geometry_block
  425. }
  426. pad[2]
  427. block markers*
  428. {
  429. Name: model_region_permutation_marker_block
  430. Max Chunks: 64
  431. Chunk Size: 80
  432. Max Chunks x Chunk Size: 5120
  433. Chunk Definition Offset: 0x5d8220
  434. {
  435. string name^*
  436. short_block_index node index*
  437. {
  438. Block Name: model_node_block
  439. }
  440. pad[2]
  441. real_quaternion rotation*
  442. real_point_3d translation*
  443. pad[16]
  444. }
  445. }
  446. }
  447. }
  448. }
  449. }
  450. block geometries*
  451. {
  452. Name: gbxmodel_geometry_block
  453. Max Chunks: 256
  454. Chunk Size: 48
  455. Max Chunks x Chunk Size: 12288
  456. Chunk Definition Offset: 0x5d8114
  457. {
  458. long_flags flags*
  459. {
  460. }
  461. pad[32]
  462. block parts*
  463. {
  464. Name: gbxmodel_geometry_part_block
  465. Max Chunks: 32
  466. Chunk Size: 132
  467. Max Chunks x Chunk Size: 4224
  468. Chunk Definition Offset: 0x5d7f90
  469. {
  470. long_flags flags*
  471. {
  472. stripped (INTERNAL)
  473. ZONER: _model_part_local_nodes
  474. }
  475. short_block_index shader index*
  476. {
  477. Block Name: model_shader_reference_block
  478. }
  479. char_integer prev filthy part index
  480. char_integer next filthy part index
  481. short_integer centroid primary node*
  482. short_integer centroid secondary node*
  483. real_fraction centroid primary weight*
  484. real_fraction centroid secondary weight*
  485. real_point_3d centroid*
  486. block uncompressed vertices*
  487. {
  488. Name: model_vertex_uncompressed_block
  489. Max Chunks: 65535
  490. Chunk Size: 68
  491. Max Chunks x Chunk Size: 4456380
  492. Chunk Definition Offset: 0x5d7c90
  493. {
  494. real_point_3d position*
  495. real_vector_3d normal*
  496. real_vector_3d binormal*
  497. real_vector_3d tangent*
  498. real_point_2d texture coords*
  499. short_integer node0 index*
  500. short_integer node1 index*
  501. real node0 weight*
  502. real node1 weight*
  503. }
  504. }
  505. block compressed vertices*
  506. {
  507. Name: model_vertex_compressed_block
  508. Max Chunks: 65535
  509. Chunk Size: 32
  510. Max Chunks x Chunk Size: 2097120
  511. Chunk Definition Offset: 0x5d7d38
  512. {
  513. real_point_3d position*
  514. long_integer normal[11.11.10-bit]*
  515. long_integer binormal[11.11.10-bit]*
  516. long_integer tangent[11.11.10-bit]*
  517. short_integer texture coordinate u[16-bit]*
  518. short_integer texture coordinate v[16-bit]*
  519. char_integer node0 index(x3)*
  520. char_integer node1 index(x3)*
  521. short_integer node0 weight[16-bit]*
  522. }
  523. }
  524. block triangles*
  525. {
  526. Name: model_triangle_block
  527. Max Chunks: 65535
  528. Chunk Size: 6
  529. Max Chunks x Chunk Size: 393210
  530. Chunk Definition Offset: 0x5d7ddc
  531. {
  532. short_integer vertex0 index*
  533. short_integer vertex1 index*
  534. short_integer vertex2 index*
  535. }
  536. }
  537. pad[20]
  538. pad[16]
  539. pad[1]
  540. pad[1]
  541. pad[1]
  542. pad[1]
  543. pad[24]
  544. }
  545. }
  546. }
  547. }
  548. block shaders*
  549. {
  550. Name: model_shader_reference_block
  551. Max Chunks: 32
  552. Chunk Size: 32
  553. Max Chunks x Chunk Size: 1024
  554. Chunk Definition Offset: 0x5d7e48
  555. {
  556. tag reference shader^
  557. {
  558. Supported tag class category: shdr
  559. }
  560. short_integer permutation
  561. pad[2]
  562. pad[12]
  563. }
  564. }
  565. POORLY-DETERMINED MIN FILESIZE OF mod2 (including 64-byte header): 296
  566. POORLY-DETERMINED MAX FILESIZE OF mod2 (including 64-byte header): 7002557
  567.  
  568. Tag Definition Offset: 0x5d7728
  569. Extension: model_animations
  570. Unknown: 9
  571. Class: antr
  572. No superclass
  573. Version: 4
  574. Definition Block:
  575. {
  576. Name: model_animations
  577. Count: 1
  578. Size: 128
  579. Chunks Offset: 0x5d7650
  580. Dialog Data 1 Offset: 0x494460
  581. }
  582. block OBJECTS
  583. {
  584. Name: animation_graph_object_overlay
  585. Max Chunks: 4
  586. Chunk Size: 20
  587. Max Chunks x Chunk Size: 80
  588. Chunk Definition Offset: 0x5d6e38
  589. {
  590. short_block_index animation
  591. {
  592. Block Name: animation_block
  593. }
  594. enum function
  595. {
  596. A out
  597. B out
  598. C out
  599. D out
  600. }
  601. enum function controls
  602. {
  603. frame
  604. scale
  605. }
  606. pad[2]
  607. pad[12]
  608. }
  609. }
  610. block UNITS
  611. {
  612. Name: animation_graph_unit_seat_block
  613. Max Chunks: 32
  614. Chunk Size: 100
  615. Max Chunks x Chunk Size: 3200
  616. Chunk Definition Offset: 0x5d7168
  617. {
  618. string label^
  619. explanation looking screen bounds
  620. {
  621. Dialog Data Offset: 0x494b11
  622. {
  623.  
  624. }
  625. }
  626. angle right yaw per frame
  627. angle left yaw per frame
  628. short_integer right frame count
  629. short_integer left frame count
  630. angle down pitch per frame
  631. angle up pitch per frame
  632. short_integer down pitch frame count
  633. short_integer up pitch frame count
  634. pad[8]
  635. block animations
  636. {
  637. Name: unit_seat_animation_block
  638. Max Chunks: 30
  639. Chunk Size: 2
  640. Max Chunks x Chunk Size: 60
  641. Chunk Definition Offset: 0x5d7120
  642. {
  643. short_block_index animation
  644. {
  645. Block Name: animation_block
  646. }
  647. }
  648. }
  649. block ik points
  650. {
  651. Name: animation_graph_unit_seat_ik_point
  652. Max Chunks: 4
  653. Chunk Size: 64
  654. Max Chunks x Chunk Size: 256
  655. Chunk Definition Offset: 0x5d6eac
  656. {
  657. string marker#the marker name on the object being attached
  658. string attach to marker#the marker name object (weapon, vehicle, etc.) the above marker is being attached to
  659. }
  660. }
  661. block weapons
  662. {
  663. Name: animation_graph_weapon_block
  664. Max Chunks: 16
  665. Chunk Size: 188
  666. Max Chunks x Chunk Size: 3008
  667. Chunk Definition Offset: 0x5d7028
  668. {
  669. string name^
  670. string grip marker#the marker name on the weapon to which the hand is attached (leave blank to use origin)
  671. string hand marker#the marker name on the unit to which the weapon is attached
  672. explanation aiming screen bounds
  673. {
  674. Dialog Data Offset: 0x494b11
  675. {
  676.  
  677. }
  678. }
  679. angle right yaw per frame
  680. angle left yaw per frame
  681. short_integer right frame count
  682. short_integer left frame count
  683. angle down pitch per frame
  684. angle up pitch per frame
  685. short_integer down pitch frame count
  686. short_integer up pitch frame count
  687. pad[32]
  688. block animations
  689. {
  690. Name: weapon_class_animation_block
  691. Max Chunks: 55
  692. Chunk Size: 2
  693. Max Chunks x Chunk Size: 110
  694. Chunk Definition Offset: 0x5d6f9c
  695. {
  696. short_block_index animation
  697. {
  698. Block Name: animation_block
  699. }
  700. }
  701. }
  702. block ik points
  703. {
  704. Name: animation_graph_unit_seat_ik_point
  705. Max Chunks: 4
  706. Chunk Size: 64
  707. Max Chunks x Chunk Size: 256
  708. Chunk Definition Offset: 0x5d6eac
  709. {
  710. string marker#the marker name on the object being attached
  711. string attach to marker#the marker name object (weapon, vehicle, etc.) the above marker is being attached to
  712. }
  713. }
  714. block weapon types
  715. {
  716. Name: animation_graph_weapon_type_block
  717. Max Chunks: 16
  718. Chunk Size: 60
  719. Max Chunks x Chunk Size: 960
  720. Chunk Definition Offset: 0x5d6f40
  721. {
  722. string label^
  723. pad[16]
  724. block animations
  725. {
  726. Name: weapon_type_animation_block
  727. Max Chunks: 10
  728. Chunk Size: 2
  729. Max Chunks x Chunk Size: 20
  730. Chunk Definition Offset: 0x5d6efc
  731. {
  732. short_block_index animation
  733. {
  734. Block Name: animation_block
  735. }
  736. }
  737. }
  738. }
  739. }
  740. }
  741. }
  742. }
  743. }
  744. block WEAPONS
  745. {
  746. Name: animation_graph_weapon_animations_block
  747. Max Chunks: 1
  748. Chunk Size: 28
  749. Max Chunks x Chunk Size: 28
  750. Chunk Definition Offset: 0x5d728c
  751. {
  752. pad[16]
  753. block animations
  754. {
  755. Name: weapon_animation_block
  756. Max Chunks: 11
  757. Chunk Size: 2
  758. Max Chunks x Chunk Size: 22
  759. Chunk Definition Offset: 0x5d7248
  760. {
  761. short_block_index animation
  762. {
  763. Block Name: animation_block
  764. }
  765. }
  766. }
  767. }
  768. }
  769. block VEHICLES
  770. {
  771. Name: animation_graph_vehicle_animations_block
  772. Max Chunks: 1
  773. Chunk Size: 116
  774. Max Chunks x Chunk Size: 116
  775. Chunk Definition Offset: 0x5d7428
  776. {
  777. explanation steering screen
  778. {
  779. Dialog Data Offset: 0x494b11
  780. {
  781.  
  782. }
  783. }
  784. angle right yaw per frame
  785. angle left yaw per frame
  786. short_integer right frame count
  787. short_integer left frame count
  788. angle down pitch per frame
  789. angle up pitch per frame
  790. short_integer down pitch frame count
  791. short_integer up pitch frame count
  792. pad[68]
  793. block animations
  794. {
  795. Name: vehicle_animation_block
  796. Max Chunks: 8
  797. Chunk Size: 2
  798. Max Chunks x Chunk Size: 16
  799. Chunk Definition Offset: 0x5d73e4
  800. {
  801. short_block_index animation
  802. {
  803. Block Name: animation_block
  804. }
  805. }
  806. }
  807. block suspension animations
  808. {
  809. Name: suspension_animation_block
  810. Max Chunks: 8
  811. Chunk Size: 20
  812. Max Chunks x Chunk Size: 160
  813. Chunk Definition Offset: 0x5d7370
  814. {
  815. short_integer mass point index
  816. short_block_index animation^
  817. {
  818. Block Name: animation_block
  819. }
  820. real full extension ground_depth
  821. real full compression ground_depth
  822. pad[8]
  823. }
  824. }
  825. }
  826. }
  827. block DEVICES
  828. {
  829. Name: device_animations
  830. Max Chunks: 1
  831. Chunk Size: 96
  832. Max Chunks x Chunk Size: 96
  833. Chunk Definition Offset: 0x5d7534
  834. {
  835. pad[84]
  836. block animations
  837. {
  838. Name: device_animation_block
  839. Max Chunks: 2
  840. Chunk Size: 2
  841. Max Chunks x Chunk Size: 4
  842. Chunk Definition Offset: 0x5d74f0
  843. {
  844. short_block_index animation
  845. {
  846. Block Name: animation_block
  847. }
  848. }
  849. }
  850. }
  851. }
  852. block UNIT DAMAGE
  853. {
  854. Name: unit_damage_animations
  855. Max Chunks: 176
  856. Chunk Size: 2
  857. Max Chunks x Chunk Size: 352
  858. Chunk Definition Offset: 0x5d6fe0
  859. {
  860. short_block_index animation^
  861. {
  862. Block Name: animation_block
  863. }
  864. }
  865. }
  866. block FIRST PERSON WEAPONS
  867. {
  868. Name: animation_graph_first_person_weapon_animations_block
  869. Max Chunks: 1
  870. Chunk Size: 28
  871. Max Chunks x Chunk Size: 28
  872. Chunk Definition Offset: 0x5d7320
  873. {
  874. pad[16]
  875. block animations
  876. {
  877. Name: first_person_weapon_block
  878. Max Chunks: 28
  879. Chunk Size: 2
  880. Max Chunks x Chunk Size: 56
  881. Chunk Definition Offset: 0x5d72dc
  882. {
  883. short_block_index animation
  884. {
  885. Block Name: animation_block
  886. }
  887. }
  888. }
  889. }
  890. }
  891. block sound references
  892. {
  893. Name: animation_graph_sound_reference_block
  894. Max Chunks: 257
  895. Chunk Size: 20
  896. Max Chunks x Chunk Size: 5140
  897. Chunk Definition Offset: 0x5d6b8c
  898. {
  899. tag reference sound^
  900. {
  901. Supported tag class category: snd!
  902. }
  903. pad[4]
  904. }
  905. }
  906. real limp body node radius#0 uses 0.04 default
  907. word_flags flags
  908. {
  909. compress all animations
  910. force idle compression
  911. }
  912. pad[2]
  913. block nodes*
  914. {
  915. Name: animation_graph_node_block
  916. Max Chunks: 64
  917. Chunk Size: 64
  918. Max Chunks x Chunk Size: 4096
  919. Chunk Definition Offset: 0x5d7598
  920. {
  921. string name^
  922. short_block_index next sibling node index*
  923. {
  924. Block Name: animation_graph_node_block
  925. }
  926. short_block_index first child node index*
  927. {
  928. Block Name: animation_graph_node_block
  929. }
  930. short_block_index parent node index*
  931. {
  932. Block Name: animation_graph_node_block
  933. }
  934. pad[2]
  935. long_flags Node joint flags
  936. {
  937. ball-socket
  938. hinge
  939. no movement
  940. }
  941. real_vector_3d base vector*
  942. real vector range*
  943. pad[4]
  944. }
  945. }
  946. block animations*
  947. {
  948. Name: animation_block
  949. Max Chunks: 256
  950. Chunk Size: 180
  951. Max Chunks x Chunk Size: 46080
  952. Chunk Definition Offset: 0x5d6c28
  953. {
  954. string name*^
  955. enum type*
  956. {
  957. base
  958. overlay
  959. replacement
  960. }
  961. short_integer frame count*
  962. short_integer frame size*
  963. enum frame info type*
  964. {
  965. none
  966. dx,dy
  967. dx,dy,dyaw
  968. dx,dy,dz,dyaw
  969. }
  970. long_integer node list checksum*
  971. short_integer node count*
  972. short_integer loop frame index
  973. real_fraction weight
  974. short_integer key frame index
  975. short_integer second key frame index
  976. short_block_index next animation*
  977. {
  978. Block Name: animation_block
  979. }
  980. word_flags flags*
  981. {
  982. compressed data
  983. world relative
  984. 25Hz (PAL)
  985. }
  986. short_block_index sound
  987. {
  988. Block Name: animation_graph_sound_reference_block
  989. }
  990. short_integer sound frame index
  991. char_integer left foot frame index
  992. char_integer right foot frame index
  993. pad[2]
  994. pad[4]
  995. data frame info*
  996. {
  997. Definition Name: frame_info_data_definition
  998. Max Bytes: 32768
  999. Extra Data Offset: 0x94190
  1000. }
  1001. array_start "node trans. flag data*" repeated 2 time(s):
  1002. long_integer
  1003. array_end
  1004. pad[8]
  1005. array_start "node rotation flag data*" repeated 2 time(s):
  1006. long_integer
  1007. array_end
  1008. pad[8]
  1009. array_start "node scale flag data*" repeated 2 time(s):
  1010. long_integer
  1011. array_end
  1012. pad[4]
  1013. long_integer offset to compressed data:bytes*
  1014. data default data*
  1015. {
  1016. Definition Name: animation_default_data_definition
  1017. Max Bytes: 16384
  1018. Extra Data Offset: 0x94360
  1019. }
  1020. data frame data*
  1021. {
  1022. Definition Name: animation_frame_data_definition
  1023. Max Bytes: 1048576
  1024. Extra Data Offset: 0x94200
  1025. }
  1026. }
  1027. }
  1028. POORLY-DETERMINED MIN FILESIZE OF antr (including 64-byte header): 192
  1029. POORLY-DETERMINED MAX FILESIZE OF antr (including 64-byte header): 1162319
  1030.  
  1031. Tag Definition Offset: 0x5d69c8
  1032. Extension: bitmap
  1033. Unknown: 8
  1034. Class: bitm
  1035. No superclass
  1036. Version: 7
  1037. Dialog Data Offset: 0x493770
  1038. Definition Block:
  1039. {
  1040. Name: bitmap
  1041. Count: 1
  1042. Size: 108
  1043. Chunks Offset: 0x5d6818
  1044. }
  1045. custom
  1046. {
  1047. Field Class: bshw
  1048. }
  1049. explanation type
  1050. {
  1051. Dialog Data Offset: 0x4da1d0
  1052. {
  1053. Type controls bitmap 'geometry'. All dimensions must be a power of two except for SPRITES and INTERFACE BITMAPS:
  1054.  
  1055. * 2D TEXTURES: Ordinary, 2D textures will be generated.
  1056. * 3D TEXTURES: Volume textures will be generated from each sequence of 2D texture 'slices'.
  1057. * CUBE MAPS: Cube maps will be generated from each consecutive set of six 2D textures in each sequence, all faces of a cube map must be square and the same size.
  1058. * SPRITES: Sprite texture pages will be generated.
  1059. * INTERFACE BITMAPS: Similar to 2D TEXTURES, but without mipmaps and without the power of two restriction.
  1060. }
  1061. }
  1062. enum type
  1063. {
  1064. 2D textures
  1065. 3D textures
  1066. cube maps
  1067. sprites
  1068. interface bitmaps
  1069. }
  1070. explanation format
  1071. {
  1072. Dialog Data Offset: 0x4d9c80
  1073. {
  1074. Format controls how pixels will be stored internally:
  1075.  
  1076. * COMPRESSED WITH COLOR-KEY TRANSPARENCY: DXT1 compression, uses 4 bits per pixel. 4x4 blocks of pixels are reduced to 2 colors and interpolated, alpha channel uses color-key transparency instead of alpha from the plate (all zero-alpha pixels also have zero-color).
  1077. * COMPRESSED WITH EXPLICIT ALPHA: DXT2/3 compression, uses 8 bits per pixel. Same as DXT1 without the color key transparency, alpha channel uses alpha from plate quantized down to 4 bits per pixel.
  1078. * COMPRESSED WITH INTERPOLATED ALPHA: DXT4/5 compression, uses 8 bits per pixel. Same as DXT2/3, except alpha is smoother. Better for smooth alpha gradients, worse for noisy alpha.
  1079. * 16-BIT COLOR: Uses 16 bits per pixel. Depending on the alpha channel, bitmaps are quantized to either r5g6b5 (no alpha), a1r5g5b5 (1-bit alpha), or a4r4g4b4 (>1-bit alpha).
  1080. * 32-BIT COLOR: Uses 32 bits per pixel. Very high quality, can have alpha at no added cost. This format takes up the most memory, however. Bitmap formats are x8r8g8b8 and a8r8g8b.
  1081. * MONOCHROME: Uses either 8 or 16 bits per pixel. Bitmap formats are a8 (alpha), y8 (intensity), ay8 (combined alpha-intensity) and a8y8 (separate alpha-intensity).
  1082.  
  1083. Note: Height maps (a.k.a. bump maps) should use 32-bit color; this is internally converted to a palettized format which takes less memory.
  1084. }
  1085. }
  1086. enum format
  1087. {
  1088. compressed with color-key transparency
  1089. compressed with explicit alpha
  1090. compressed with interpolated alpha
  1091. 16-bit color
  1092. 32-bit color
  1093. monochrome
  1094. }
  1095. explanation usage
  1096. {
  1097. Dialog Data Offset: 0x4d99e0
  1098. {
  1099. Usage controls how mipmaps are generated:
  1100.  
  1101. * ALPHA BLEND: Pixels with zero alpha are ignored in mipmaps, to prevent bleeding the transparent color.
  1102. * DEFAULT: Downsampling works normally, as in Photoshop.
  1103. * HEIGHT MAP: The bitmap (normally grayscale) is a height map which gets converted to a bump map. Uses <bump height> below. Alpha is passed through unmodified.
  1104. * DETAIL MAP: Mipmap color fades to gray, controlled by <detail fade factor> below. Alpha fades to white.
  1105. * LIGHT MAP: Generates no mipmaps. Do not use!
  1106. * VECTOR MAP: Used mostly for special effects; pixels are treated as XYZ vectors and normalized after downsampling. Alpha is passed through unmodified.
  1107. }
  1108. }
  1109. enum usage
  1110. {
  1111. alpha-blend
  1112. default
  1113. height map
  1114. detail map
  1115. light map
  1116. vector map
  1117. }
  1118. word_flags flags
  1119. {
  1120. enable diffusion dithering
  1121. disable height map compression
  1122. uniform sprite sequences
  1123. filthy sprite bug fix
  1124. }
  1125. explanation post-processing
  1126. {
  1127. Dialog Data Offset: 0x4d9994
  1128. {
  1129. These properties control how mipmaps are post-processed.
  1130. }
  1131. }
  1132. real_fraction detail fade factor:[0,1]#0 means fade to gray by last mipmap, 1 means fade to gray by first mipmap
  1133. real_fraction sharpen amount:[0,1]#sharpens mipmap after downsampling
  1134. real_fraction bump height:repeats#the apparent height of the bump map above the triangle it is textured onto, in texture repeats (i.e., 1.0 would be as high as the texture is wide)
  1135. explanation sprite processing
  1136. {
  1137. Dialog Data Offset: 0x4d9778
  1138. {
  1139. When creating a sprite group, specify the number and size of textures that the group is allowed to occupy. During importing, you'll receive feedback about how well the alloted space was used.
  1140. }
  1141. }
  1142. enum sprite budget size
  1143. {
  1144. 32x32
  1145. 64x64
  1146. 128x128
  1147. 256x256
  1148. 512x512
  1149. }
  1150. short_integer sprite budget count
  1151. explanation color plate
  1152. {
  1153. Dialog Data Offset: 0x4d970c
  1154. {
  1155. The original TIFF file used to import the bitmap group.
  1156. }
  1157. }
  1158. short_integer color plate width*:pixels
  1159. short_integer color plate height*:pixels
  1160. data compressed color plate data*
  1161. {
  1162. Definition Name: color_plate_data
  1163. Interface Flags: 1
  1164. Max Bytes: 16777216
  1165. }
  1166. explanation processed pixel data
  1167. {
  1168. Dialog Data Offset: 0x4d966c
  1169. {
  1170. Pixel data after being processed by the tool.
  1171. }
  1172. }
  1173. data processed pixel data*
  1174. {
  1175. Definition Name: bitmap_pixel_data
  1176. Max Bytes: 16777216
  1177. }
  1178. explanation miscellaneous
  1179. {
  1180. Dialog Data Offset: 0x494b11
  1181. {
  1182.  
  1183. }
  1184. }
  1185. real blur filter size:[0,10] pixels#blurs the bitmap before generating mipmaps
  1186. real alpha bias:[-1,1]#affects alpha mipmap generation
  1187. short_integer mipmap count:levels#0 defaults to all levels
  1188. explanation ...more sprite processing
  1189. {
  1190. Dialog Data Offset: 0x4d9544
  1191. {
  1192. Sprite usage controls the background color of sprite plates.
  1193. }
  1194. }
  1195. enum sprite usage
  1196. {
  1197. blend/add/subtract/max
  1198. multiply/min
  1199. double multiply
  1200. }
  1201. short_integer sprite spacing*
  1202. pad[2]
  1203. block sequences*
  1204. {
  1205. Name: bitmap_group_sequence_block
  1206. Max Chunks: 256
  1207. Chunk Size: 64
  1208. Max Chunks x Chunk Size: 16384
  1209. Chunk Definition Offset: 0x5d66c8
  1210. {
  1211. string name^
  1212. short_integer first bitmap index*
  1213. short_integer bitmap count*
  1214. pad[16]
  1215. block sprites*
  1216. {
  1217. Name: bitmap_group_sprite_block
  1218. Max Chunks: 64
  1219. Chunk Size: 32
  1220. Max Chunks x Chunk Size: 2048
  1221. Chunk Definition Offset: 0x5d6630
  1222. {
  1223. short_integer bitmap index*
  1224. pad[2]
  1225. pad[4]
  1226. real left*
  1227. real right*
  1228. real top*
  1229. real bottom*
  1230. real_point_2d registration point*
  1231. }
  1232. }
  1233. }
  1234. }
  1235. block bitmaps*
  1236. {
  1237. Name: bitmap_data_block
  1238. Max Chunks: 2048
  1239. Chunk Size: 48
  1240. Max Chunks x Chunk Size: 98304
  1241. Chunk Definition Offset: 0x5d6540
  1242. {
  1243. tag signature*
  1244. short_integer width*:pixels
  1245. short_integer height*:pixels
  1246. short_integer depth*:pixels#depth is 1 for 2D textures and cube maps
  1247. enum type*#determines bitmap 'geometry'
  1248. {
  1249. 2D texture
  1250. 3D texture
  1251. cube map
  1252. white
  1253. }
  1254. enum format*#determines how pixels are represented internally
  1255. {
  1256. a8
  1257. y8
  1258. ay8
  1259. a8y8
  1260. unused1
  1261. unused2
  1262. r5g6b5
  1263. unused3
  1264. a1r5g5b5
  1265. a4r4g4b4
  1266. x8r8g8b8
  1267. a8r8g8b8
  1268. unused4
  1269. unused5
  1270. dxt1
  1271. dxt3
  1272. dxt5
  1273. p8-bump
  1274. }
  1275. word_flags flags*
  1276. {
  1277. power of two dimensions
  1278. compressed
  1279. palettized
  1280. swizzled
  1281. linear
  1282. v16u16
  1283. }
  1284. point_2d registration point*
  1285. short_integer mipmap count*
  1286. pad[2]
  1287. long_integer pixels offset*
  1288. pad[4]
  1289. pad[4]
  1290. pad[4]
  1291. pad[8]
  1292. }
  1293. }
  1294. POORLY-DETERMINED MIN FILESIZE OF bitm (including 64-byte header): 172
  1295. POORLY-DETERMINED MAX FILESIZE OF bitm (including 64-byte header): 33671340
  1296.  
  1297. Tag Definition Offset: 0x5d6430
  1298. Extension: color_table
  1299. Unknown: 0
  1300. Class: colo
  1301. No superclass
  1302. Version: 1
  1303. Definition Block:
  1304. {
  1305. Name: color_table
  1306. Count: 1
  1307. Size: 12
  1308. Chunks Offset: 0x5d63ec
  1309. }
  1310. block colors
  1311. {
  1312. Name: color_block
  1313. Max Chunks: 512
  1314. Chunk Size: 48
  1315. Max Chunks x Chunk Size: 24576
  1316. Chunk Definition Offset: 0x5d6390
  1317. {
  1318. string name^
  1319. real_argb_color color
  1320. }
  1321. }
  1322. POORLY-DETERMINED MIN FILESIZE OF colo (including 64-byte header): 76
  1323. POORLY-DETERMINED MAX FILESIZE OF colo (including 64-byte header): 24652
  1324.  
  1325. Tag Definition Offset: 0x5d6228
  1326. Extension: string_list
  1327. Unknown: 0
  1328. Class: str#
  1329. No superclass
  1330. Version: 1
  1331. Definition Block:
  1332. {
  1333. Name: string_list
  1334. Count: 1
  1335. Size: 12
  1336. Chunks Offset: 0x5d61e0
  1337. }
  1338. block string references
  1339. {
  1340. Name: string reference
  1341. Max Chunks: 800
  1342. Chunk Size: 20
  1343. Max Chunks x Chunk Size: 16000
  1344. Chunk Definition Offset: 0x5d619c
  1345. {
  1346. data string
  1347. {
  1348. Definition Name: string data
  1349. Interface Flags: 2
  1350. Max Bytes: 4096
  1351. }
  1352. }
  1353. }
  1354. POORLY-DETERMINED MIN FILESIZE OF str# (including 64-byte header): 76
  1355. POORLY-DETERMINED MAX FILESIZE OF str# (including 64-byte header): 20172
  1356.  
  1357. Tag Definition Offset: 0x5d6330
  1358. Extension: unicode_string_list
  1359. Unknown: 0
  1360. Class: ustr
  1361. No superclass
  1362. Version: 1
  1363. Definition Block:
  1364. {
  1365. Name: unicode_string_list
  1366. Count: 1
  1367. Size: 12
  1368. Chunks Offset: 0x5d62e8
  1369. }
  1370. block string references
  1371. {
  1372. Name: string reference
  1373. Max Chunks: 800
  1374. Chunk Size: 20
  1375. Max Chunks x Chunk Size: 16000
  1376. Chunk Definition Offset: 0x5d62a4
  1377. {
  1378. data string
  1379. {
  1380. Definition Name: string data
  1381. Max Bytes: 32768
  1382. }
  1383. }
  1384. }
  1385. POORLY-DETERMINED MIN FILESIZE OF ustr (including 64-byte header): 76
  1386. POORLY-DETERMINED MAX FILESIZE OF ustr (including 64-byte header): 48844
  1387.  
  1388. Tag Definition Offset: 0x5d6120
  1389. Extension: font
  1390. Unknown: 0
  1391. Class: font
  1392. No superclass
  1393. Version: 1
  1394. Definition Block:
  1395. {
  1396. Name: font
  1397. Count: 1
  1398. Size: 156
  1399. Chunks Offset: 0x5d6048
  1400. Dialog Data 1 Offset: 0x493240
  1401. Dialog Data 2 Offset: 0x493220
  1402. }
  1403. long_integer flags
  1404. short_integer ascending height
  1405. short_integer decending height
  1406. short_integer leading height
  1407. short_integer leadin width
  1408. pad[36]
  1409. block character tables
  1410. {
  1411. Name: font_character_tables
  1412. Max Chunks: 256
  1413. Chunk Size: 12
  1414. Max Chunks x Chunk Size: 3072
  1415. Chunk Definition Offset: 0x5d6004
  1416. {
  1417. block character table
  1418. {
  1419. Name: font_character_table
  1420. Max Chunks: 256
  1421. Chunk Size: 2
  1422. Max Chunks x Chunk Size: 512
  1423. Chunk Definition Offset: 0x5d5fc0
  1424. {
  1425. short_block_index character index
  1426. {
  1427. Block Name: character
  1428. }
  1429. }
  1430. }
  1431. }
  1432. }
  1433. tag reference bold
  1434. {
  1435. Supported tag class category: font
  1436. }
  1437. tag reference italic
  1438. {
  1439. Supported tag class category: font
  1440. }
  1441. tag reference condense
  1442. {
  1443. Supported tag class category: font
  1444. }
  1445. tag reference underline
  1446. {
  1447. Supported tag class category: font
  1448. }
  1449. block characters
  1450. {
  1451. Name: character
  1452. Max Chunks: 32000
  1453. Chunk Size: 20
  1454. Max Chunks x Chunk Size: 640000
  1455. Chunk Definition Offset: 0x5d5f00
  1456. {
  1457. short_integer character*
  1458. short_integer character width
  1459. short_integer bitmap width*
  1460. short_integer bitmap height*
  1461. short_integer bitmap origin x
  1462. short_integer bitmap origin y
  1463. short_integer hardware character index*
  1464. pad[2]
  1465. long_integer pixels offset*
  1466. }
  1467. }
  1468. data pixels
  1469. {
  1470. Definition Name: pixels
  1471. Max Bytes: 8388608
  1472. }
  1473. POORLY-DETERMINED MIN FILESIZE OF font (including 64-byte header): 220
  1474. POORLY-DETERMINED MAX FILESIZE OF font (including 64-byte header): 9033432
  1475.  
  1476. Tag Definition Offset: 0x5d5ea0
  1477. Extension: unit
  1478. Unknown: 8
  1479. Class: unit
  1480. Superclass: obje
  1481. Version: 2
  1482. Definition Block:
  1483. {
  1484. Name: unit
  1485. Count: 1
  1486. Size: 372
  1487. Chunks Offset: 0x5d5bc8
  1488. Dialog Data 1 Offset: 0x493180
  1489. }
  1490. explanation $$$ UNIT $$$
  1491. {
  1492. Dialog Data Offset: 0x494b11
  1493. {
  1494.  
  1495. }
  1496. }
  1497. long_flags flags
  1498. {
  1499. circular aiming
  1500. destroyed after dying
  1501. half-speed interpolation
  1502. fires from camera
  1503. entrance inside bounding sphere
  1504. unused
  1505. causes passenger dialogue
  1506. resists pings
  1507. melee attack is fatal
  1508. don't reface during pings
  1509. has no aiming
  1510. simple creature
  1511. impact melee attaches to unit
  1512. impact melee dies on shields
  1513. cannot open doors automatically
  1514. melee attackers cannot attach
  1515. not instantly killed by melee
  1516. shield sapping
  1517. runs around flaming
  1518. inconsequential
  1519. special cinematic unit
  1520. ignored by autoaiming
  1521. shields fry infection forms
  1522. integrated light cntrls weapon
  1523. integrated light lasts forever
  1524. }
  1525. enum default team
  1526. {
  1527. none
  1528. player
  1529. human
  1530. covenant
  1531. flood
  1532. sentinel
  1533. unused (6)
  1534. unused (7)
  1535. unused (8)
  1536. unused (9)
  1537. }
  1538. enum constant sound volume
  1539. {
  1540. silent
  1541. medium
  1542. loud
  1543. shout
  1544. quiet
  1545. }
  1546. real rider damage fraction:[0,+inf]#what percent damage applied to us gets applied to our children (i.e., riders)
  1547. tag reference integrated light toggle
  1548. {
  1549. Supported tag class category: effe
  1550. }
  1551. enum A in
  1552. {
  1553. none
  1554. driver seat power
  1555. gunner seat power
  1556. aiming change
  1557. mouth aperture
  1558. integrated light power
  1559. can blink
  1560. shield sapping
  1561. }
  1562. enum B in
  1563. {
  1564. none
  1565. driver seat power
  1566. gunner seat power
  1567. aiming change
  1568. mouth aperture
  1569. integrated light power
  1570. can blink
  1571. shield sapping
  1572. }
  1573. enum C in
  1574. {
  1575. none
  1576. driver seat power
  1577. gunner seat power
  1578. aiming change
  1579. mouth aperture
  1580. integrated light power
  1581. can blink
  1582. shield sapping
  1583. }
  1584. enum D in
  1585. {
  1586. none
  1587. driver seat power
  1588. gunner seat power
  1589. aiming change
  1590. mouth aperture
  1591. integrated light power
  1592. can blink
  1593. shield sapping
  1594. }
  1595. angle camera field of view:degrees
  1596. real camera stiffness
  1597. string camera marker name
  1598. string camera submerged marker name
  1599. angle pitch auto-level
  1600. angle_bounds pitch range
  1601. block camera tracks
  1602. {
  1603. Name: unit_camera_track_block
  1604. Max Chunks: 2
  1605. Chunk Size: 28
  1606. Max Chunks x Chunk Size: 56
  1607. Chunk Definition Offset: 0x5d57d8
  1608. {
  1609. tag reference track
  1610. {
  1611. Supported tag class category: trak
  1612. }
  1613. pad[12]
  1614. }
  1615. }
  1616. real_vector_3d seat acceleration scale
  1617. pad[12]
  1618. real soft ping threshold:[0,1]
  1619. real soft ping interrupt time:seconds
  1620. real hard ping threshold:[0,1]
  1621. real hard ping interrupt time:seconds
  1622. real hard death threshold:[0,1]
  1623. real feign death threshold:[0,1]
  1624. real feign death time:seconds
  1625. real distance of evade anim:world units#this must be set to tell the AI how far it should expect our evade animation to move us
  1626. real distance of dive anim:world units#this must be set to tell the AI how far it should expect our dive animation to move us
  1627. pad[4]
  1628. real stunned movement threshold:[0,1]#if we take this much damage in a short space of time we will play our 'stunned movement' animations
  1629. real feign death chance:[0,1]
  1630. real feign repeat chance:[0,1]
  1631. tag reference spawned actor#actor variant which we spawn when we are destroyed or self-destruct
  1632. {
  1633. Supported tag class category: actv
  1634. }
  1635. short_integer_bounds spawned actor count#number of actors which we spawn
  1636. real spawned velocity#velocity at which we throw spawned actors
  1637. angle aiming velocity maximum:degrees per second
  1638. angle aiming acceleration maximum:degrees per second squared
  1639. real_fraction casual aiming modifier:[0,1]
  1640. angle looking velocity maximum:degrees per second
  1641. angle looking acceleration maximum:degrees per second squared
  1642. pad[8]
  1643. real AI vehicle radius#radius around this unit that the AI tries to avoid when entering it as a vehicle (zero = use bounding sphere radius)
  1644. real AI danger radius#danger radius around this unit that the AI tries to avoid
  1645. tag reference melee damage
  1646. {
  1647. Supported tag class category: jpt!
  1648. }
  1649. enum motion sensor blip size
  1650. {
  1651. medium
  1652. small
  1653. large
  1654. }
  1655. pad[2]
  1656. pad[12]
  1657. block NEW HUD INTERFACES
  1658. {
  1659. Name: unit_hud_reference_block
  1660. Max Chunks: 2
  1661. Chunk Size: 48
  1662. Max Chunks x Chunk Size: 96
  1663. Chunk Definition Offset: 0x5d5780
  1664. {
  1665. tag reference unit hud interface
  1666. {
  1667. Supported tag class category: unhi
  1668. }
  1669. pad[32]
  1670. }
  1671. }
  1672. block dialogue variants
  1673. {
  1674. Name: dialogue_variant_block
  1675. Max Chunks: 16
  1676. Chunk Size: 24
  1677. Max Chunks x Chunk Size: 384
  1678. Chunk Definition Offset: 0x5d5a6c
  1679. {
  1680. short_integer variant number#variant number to use this dialogue with (must match the suffix in the permutations on the unit's model)
  1681. pad[2]
  1682. pad[4]
  1683. tag reference dialogue
  1684. {
  1685. Supported tag class category: udlg
  1686. }
  1687. }
  1688. }
  1689. real grenade velocity:world units per second
  1690. enum grenade type
  1691. {
  1692. human fragmentation
  1693. covenant plasma
  1694. }
  1695. short_integer grenade count
  1696. pad[4]
  1697. block powered seats
  1698. {
  1699. Name: powered_seat_block
  1700. Max Chunks: 2
  1701. Chunk Size: 68
  1702. Max Chunks x Chunk Size: 136
  1703. Chunk Definition Offset: 0x5d59f8
  1704. {
  1705. pad[4]
  1706. real driver powerup time:seconds
  1707. real driver powerdown time:seconds
  1708. pad[56]
  1709. }
  1710. }
  1711. block weapons
  1712. {
  1713. Name: unit_weapon_block
  1714. Max Chunks: 4
  1715. Chunk Size: 36
  1716. Max Chunks x Chunk Size: 144
  1717. Chunk Definition Offset: 0x5d59a0
  1718. {
  1719. tag reference weapon^
  1720. {
  1721. Supported tag class category: weap
  1722. }
  1723. pad[20]
  1724. }
  1725. }
  1726. block seats
  1727. {
  1728. Name: unit_seat_block
  1729. Max Chunks: 16
  1730. Chunk Size: 284
  1731. Max Chunks x Chunk Size: 4544
  1732. Chunk Definition Offset: 0x5d5860
  1733. {
  1734. long_flags flags
  1735. {
  1736. invisible
  1737. locked
  1738. driver
  1739. gunner
  1740. third person camera
  1741. allows weapons
  1742. third person on enter
  1743. first person camera slaved to gun.
  1744. allow vehicle communication animations
  1745. not valid without driver
  1746. allow AI noncombatants
  1747. }
  1748. string label
  1749. string marker name^
  1750. pad[32]
  1751. real_vector_3d acceleration scale
  1752. pad[12]
  1753. real yaw rate:degrees per second
  1754. real pitch rate:degrees per second
  1755. string camera marker name
  1756. string camera submerged marker name
  1757. angle pitch auto-level
  1758. angle_bounds pitch range
  1759. block camera tracks
  1760. {
  1761. Name: unit_camera_track_block
  1762. Max Chunks: 2
  1763. Chunk Size: 28
  1764. Max Chunks x Chunk Size: 56
  1765. Chunk Definition Offset: 0x5d57d8
  1766. {
  1767. tag reference track
  1768. {
  1769. Supported tag class category: trak
  1770. }
  1771. pad[12]
  1772. }
  1773. }
  1774. block unit hud interface
  1775. {
  1776. Name: unit_hud_reference_block
  1777. Max Chunks: 2
  1778. Chunk Size: 48
  1779. Max Chunks x Chunk Size: 96
  1780. Chunk Definition Offset: 0x5d5780
  1781. {
  1782. tag reference unit hud interface
  1783. {
  1784. Supported tag class category: unhi
  1785. }
  1786. pad[32]
  1787. }
  1788. }
  1789. pad[4]
  1790. short_integer hud text message index
  1791. pad[2]
  1792. angle yaw minimum
  1793. angle yaw maximum
  1794. tag reference built-in gunner
  1795. {
  1796. Supported tag class category: actv
  1797. }
  1798. pad[20]
  1799. }
  1800. }
  1801. POORLY-DETERMINED MIN FILESIZE OF unit (including 64-byte header): 436
  1802. POORLY-DETERMINED MAX FILESIZE OF unit (including 64-byte header): 8498
  1803.  
  1804. Tag Definition Offset: 0x5d5718
  1805. Extension: biped
  1806. Unknown: 9
  1807. Class: bipd
  1808. Superclass: unit
  1809. Version: 3
  1810. Dialog Data Offset: 0x492d20
  1811. Definition Block:
  1812. {
  1813. Name: biped
  1814. Count: 1
  1815. Size: 516
  1816. Chunks Offset: 0x5d5440
  1817. }
  1818. explanation $$$ BIPED $$$
  1819. {
  1820. Dialog Data Offset: 0x494b11
  1821. {
  1822.  
  1823. }
  1824. }
  1825. angle moving turning speed:degrees per second
  1826. long_flags flags
  1827. {
  1828. turns without animating
  1829. uses player physics
  1830. flying
  1831. physics pill centered at origin
  1832. spherical
  1833. passes through other bipeds
  1834. can climb any surface
  1835. immune to falling damage
  1836. rotate while airborne
  1837. uses limp body physics
  1838. has no dying airborne
  1839. random speed increase
  1840. unit uses old (NTSC) player physics
  1841. }
  1842. angle stationary turning threshold
  1843. pad[16]
  1844. enum A in
  1845. {
  1846. none
  1847. flying velocity
  1848. }
  1849. enum B in
  1850. {
  1851. none
  1852. flying velocity
  1853. }
  1854. enum C in
  1855. {
  1856. none
  1857. flying velocity
  1858. }
  1859. enum D in
  1860. {
  1861. none
  1862. flying velocity
  1863. }
  1864. tag reference DON'T USE
  1865. {
  1866. Supported tag class category: jpt!
  1867. }
  1868. explanation flying
  1869. {
  1870. Dialog Data Offset: 0x494b11
  1871. {
  1872.  
  1873. }
  1874. }
  1875. angle bank angle:degrees#angle at which we bank left/right when sidestepping or turning while moving forwards
  1876. real bank apply time:seconds#time it takes us to apply a bank
  1877. real bank decay time:seconds#time it takes us to recover from a bank
  1878. real pitch ratio#amount that we pitch up/down when moving up or down
  1879. real max velocity:world units per second#max velocity when not crouching
  1880. real max sidestep velocity:world units per second#max sideways or up/down velocity when not crouching
  1881. real acceleration:world units per second squared
  1882. real deceleration:world units per second squared
  1883. angle angular velocity maximum:degrees per second#turn rate
  1884. angle angular acceleration maximum:degrees per second squared#turn acceleration rate
  1885. real crouch velocity modifier:[0,1]#how much slower we fly if crouching (zero = same speed)
  1886. pad[8]
  1887. explanation movement
  1888. {
  1889. Dialog Data Offset: 0x494b11
  1890. {
  1891.  
  1892. }
  1893. }
  1894. angle maximum slope angle:degrees
  1895. angle downhill falloff angle:degrees
  1896. angle downhill cutoff angle:degrees
  1897. real downhill velocity scale
  1898. angle uphill falloff angle:degrees
  1899. angle uphill cutoff angle:degrees
  1900. real uphill velocity scale
  1901. pad[24]
  1902. tag reference footsteps
  1903. {
  1904. Supported tag class category: foot
  1905. }
  1906. pad[24]
  1907. explanation jumping and landing
  1908. {
  1909. Dialog Data Offset: 0x494b11
  1910. {
  1911.  
  1912. }
  1913. }
  1914. real jump velocity:world units per second
  1915. pad[28]
  1916. real maximum soft landing time:seconds#the longest amount of time the biped can take to recover from a soft landing
  1917. real maximum hard landing time:seconds#the longest amount of time the biped can take to recover from a hard landing
  1918. real minimum soft landing velocity:world units per second#below this velocity the biped does not react when landing
  1919. real minimum hard landing velocity:world units per second#below this velocity the biped will not do a soft landing when returning to the ground
  1920. real maximum hard landing velocity:world units per second#the velocity corresponding to the maximum landing time
  1921. real death hard landing velocity:world units per second#the maximum velocity with which a character can strike the ground and live
  1922. pad[20]
  1923. explanation camera, collision, and autoaim
  1924. {
  1925. Dialog Data Offset: 0x494b11
  1926. {
  1927.  
  1928. }
  1929. }
  1930. real standing camera height:world units
  1931. real crouching camera height:world units
  1932. real crouch transition time:seconds
  1933. pad[24]
  1934. real standing collision height:world units
  1935. real crouching collision height:world units
  1936. real collision radius:world units
  1937. pad[40]
  1938. real autoaim width:world units
  1939. pad[140]
  1940. block contact points#these are the points where the biped touches the ground
  1941. {
  1942. Name: contact_point_block
  1943. Max Chunks: 2
  1944. Chunk Size: 64
  1945. Max Chunks x Chunk Size: 128
  1946. Chunk Definition Offset: 0x5d53a0
  1947. {
  1948. pad[32]
  1949. string marker name^
  1950. }
  1951. }
  1952. POORLY-DETERMINED MIN FILESIZE OF bipd (including 64-byte header): 580
  1953. POORLY-DETERMINED MAX FILESIZE OF bipd (including 64-byte header): 1218
  1954.  
  1955. Tag Definition Offset: 0x5d5340
  1956. Extension: vehicle
  1957. Unknown: 9
  1958. Class: vehi
  1959. Superclass: unit
  1960. Version: 1
  1961. Definition Block:
  1962. {
  1963. Name: vehicle
  1964. Count: 1
  1965. Size: 256
  1966. Chunks Offset: 0x5d5100
  1967. Dialog Data 1 Offset: 0x492cd0
  1968. }
  1969. explanation $$$ VEHICLE $$$
  1970. {
  1971. Dialog Data Offset: 0x494b11
  1972. {
  1973.  
  1974. }
  1975. }
  1976. long_flags flags
  1977. {
  1978. speed wakes physics
  1979. turn wakes physics
  1980. driver power wakes physics
  1981. gunner power wakes physics
  1982. control opposite speed sets brake
  1983. slide wakes physics
  1984. kills riders at terminal velocity
  1985. causes collision damage
  1986. ai weapon cannot rotate
  1987. ai does not require driver
  1988. ai unused
  1989. ai driver enable
  1990. ai driver flying
  1991. ai driver can-sidestep
  1992. ai driver hovering
  1993. }
  1994. enum type
  1995. {
  1996. human tank
  1997. human jeep
  1998. human boat
  1999. human plane
  2000. alien scout
  2001. alien fighter
  2002. turret
  2003. }
  2004. pad[2]
  2005. real maximum forward speed
  2006. real maximum reverse speed
  2007. real speed acceleration
  2008. real speed deceleration
  2009. real maximum left turn
  2010. real maximum right turn (negative)
  2011. real wheel circumference
  2012. real turn rate
  2013. real blur speed
  2014. enum A in
  2015. {
  2016. none
  2017. speed absolute
  2018. speed forward
  2019. speed backward
  2020. slide absolute
  2021. slide left
  2022. slide right
  2023. speed slide maximum
  2024. turn absolute
  2025. turn left
  2026. turn right
  2027. crouch
  2028. jump
  2029. walk
  2030. velocity air
  2031. velocity water
  2032. velocity ground
  2033. velocity forward
  2034. velocity left
  2035. velocity up
  2036. left tread position
  2037. right tread position
  2038. left tread velocity
  2039. right tread velocity
  2040. front left tire position
  2041. front right tire position
  2042. back left tire position
  2043. back right tire position
  2044. front left tire velocity
  2045. front right tire velocity
  2046. back left tire velocity
  2047. back right tire velocity
  2048. wingtip contrail
  2049. hover
  2050. thrust
  2051. engine hack
  2052. wingtip contrail new
  2053. }
  2054. enum B in
  2055. {
  2056. none
  2057. speed absolute
  2058. speed forward
  2059. speed backward
  2060. slide absolute
  2061. slide left
  2062. slide right
  2063. speed slide maximum
  2064. turn absolute
  2065. turn left
  2066. turn right
  2067. crouch
  2068. jump
  2069. walk
  2070. velocity air
  2071. velocity water
  2072. velocity ground
  2073. velocity forward
  2074. velocity left
  2075. velocity up
  2076. left tread position
  2077. right tread position
  2078. left tread velocity
  2079. right tread velocity
  2080. front left tire position
  2081. front right tire position
  2082. back left tire position
  2083. back right tire position
  2084. front left tire velocity
  2085. front right tire velocity
  2086. back left tire velocity
  2087. back right tire velocity
  2088. wingtip contrail
  2089. hover
  2090. thrust
  2091. engine hack
  2092. wingtip contrail new
  2093. }
  2094. enum C in
  2095. {
  2096. none
  2097. speed absolute
  2098. speed forward
  2099. speed backward
  2100. slide absolute
  2101. slide left
  2102. slide right
  2103. speed slide maximum
  2104. turn absolute
  2105. turn left
  2106. turn right
  2107. crouch
  2108. jump
  2109. walk
  2110. velocity air
  2111. velocity water
  2112. velocity ground
  2113. velocity forward
  2114. velocity left
  2115. velocity up
  2116. left tread position
  2117. right tread position
  2118. left tread velocity
  2119. right tread velocity
  2120. front left tire position
  2121. front right tire position
  2122. back left tire position
  2123. back right tire position
  2124. front left tire velocity
  2125. front right tire velocity
  2126. back left tire velocity
  2127. back right tire velocity
  2128. wingtip contrail
  2129. hover
  2130. thrust
  2131. engine hack
  2132. wingtip contrail new
  2133. }
  2134. enum D in
  2135. {
  2136. none
  2137. speed absolute
  2138. speed forward
  2139. speed backward
  2140. slide absolute
  2141. slide left
  2142. slide right
  2143. speed slide maximum
  2144. turn absolute
  2145. turn left
  2146. turn right
  2147. crouch
  2148. jump
  2149. walk
  2150. velocity air
  2151. velocity water
  2152. velocity ground
  2153. velocity forward
  2154. velocity left
  2155. velocity up
  2156. left tread position
  2157. right tread position
  2158. left tread velocity
  2159. right tread velocity
  2160. front left tire position
  2161. front right tire position
  2162. back left tire position
  2163. back right tire position
  2164. front left tire velocity
  2165. front right tire velocity
  2166. back left tire velocity
  2167. back right tire velocity
  2168. wingtip contrail
  2169. hover
  2170. thrust
  2171. engine hack
  2172. wingtip contrail new
  2173. }
  2174. pad[12]
  2175. real maximum left slide
  2176. real maximum right slide
  2177. real slide acceleration
  2178. real slide deceleration
  2179. real minimum flipping angular velocity
  2180. real maximum flipping angular velocity
  2181. pad[24]
  2182. real fixed gun yaw
  2183. real fixed gun pitch
  2184. pad[24]
  2185. real ai sideslip distance
  2186. real ai destination radius
  2187. real ai avoidance distance
  2188. real ai pathfinding radius
  2189. real ai charge repeat timeout
  2190. real ai strafing abort range
  2191. angle_bounds ai oversteering bounds
  2192. angle ai steering maximum
  2193. real ai throttle maximum
  2194. real ai move-position time
  2195. pad[4]
  2196. tag reference suspension sound
  2197. {
  2198. Supported tag class category: snd!
  2199. }
  2200. tag reference crash sound
  2201. {
  2202. Supported tag class category: snd!
  2203. }
  2204. tag reference material effects
  2205. {
  2206. Supported tag class category: foot
  2207. }
  2208. tag reference effect
  2209. {
  2210. Supported tag class category: effe
  2211. }
  2212. POORLY-DETERMINED MIN FILESIZE OF vehi (including 64-byte header): 320
  2213. POORLY-DETERMINED MAX FILESIZE OF vehi (including 64-byte header): 1340
  2214.  
  2215. Tag Definition Offset: 0x5d4f90
  2216. Extension: scenery
  2217. Unknown: 9
  2218. Class: scen
  2219. Superclass: obje
  2220. Version: 1
  2221. Definition Block:
  2222. {
  2223. Name: scenery
  2224. Count: 1
  2225. Size: 128
  2226. Chunks Offset: 0x5d4f48
  2227. }
  2228. pad[128]
  2229. POORLY-DETERMINED MIN FILESIZE OF scen (including 64-byte header): 192
  2230. POORLY-DETERMINED MAX FILESIZE OF scen (including 64-byte header): 192
  2231.  
  2232. Tag Definition Offset: 0x5d4ee8
  2233. Extension: physics
  2234. Unknown: 9
  2235. Class: phys
  2236. No superclass
  2237. Version: 4
  2238. Dialog Data Offset: 0x4928e0
  2239. Definition Block:
  2240. {
  2241. Name: physics
  2242. Count: 1
  2243. Size: 128
  2244. Chunks Offset: 0x5d4d90
  2245. }
  2246. real radius#positive uses old inferior physics, negative uses new improved physics
  2247. real_fraction moment scale
  2248. real mass
  2249. real_point_3d center of mass*
  2250. real density
  2251. real gravity scale
  2252. real ground friction
  2253. real ground depth
  2254. real_fraction ground damp fraction
  2255. real ground normal k1
  2256. real ground normal k0
  2257. pad[4]
  2258. real water friction
  2259. real water depth
  2260. real water density
  2261. pad[4]
  2262. real_fraction air friction
  2263. pad[4]
  2264. real xx moment
  2265. real yy moment
  2266. real zz moment
  2267. block inertial matrix and inverse*
  2268. {
  2269. Name: inertial_matrix_block
  2270. Max Chunks: 2
  2271. Chunk Size: 36
  2272. Max Chunks x Chunk Size: 72
  2273. Chunk Definition Offset: 0x5d4b38
  2274. {
  2275. real_vector_3d yy+zz -xy -zx
  2276. real_vector_3d -xy zz+xx -yz
  2277. real_vector_3d -zx -yz xx+yy
  2278. }
  2279. }
  2280. block powered mass points
  2281. {
  2282. Name: powered_mass_point_block
  2283. Max Chunks: 32
  2284. Chunk Size: 128
  2285. Max Chunks x Chunk Size: 4096
  2286. Chunk Definition Offset: 0x5d4bb8
  2287. {
  2288. string name^
  2289. long_flags flags
  2290. {
  2291. ground friction
  2292. water friction
  2293. air friction
  2294. water lift
  2295. air lift
  2296. thrust
  2297. antigrav
  2298. }
  2299. real antigrav strength
  2300. real antigrav offset
  2301. real antigrav height
  2302. real antigrav damp fraction
  2303. real antigrav normal k1
  2304. real antigrav normal k0
  2305. pad[68]
  2306. }
  2307. }
  2308. block mass points
  2309. {
  2310. Name: mass_point_block
  2311. Max Chunks: 32
  2312. Chunk Size: 128
  2313. Max Chunks x Chunk Size: 4096
  2314. Chunk Definition Offset: 0x5d4c88
  2315. {
  2316. string name^*
  2317. short_block_index powered mass point
  2318. {
  2319. Block Name: powered_mass_point_block
  2320. }
  2321. short_integer model node*
  2322. long_flags flags
  2323. {
  2324. metallic
  2325. }
  2326. real relative mass
  2327. real mass*
  2328. real relative density
  2329. real density*
  2330. real_point_3d position
  2331. real_vector_3d forward
  2332. real_vector_3d up
  2333. enum friction type
  2334. {
  2335. point
  2336. forward
  2337. left
  2338. up
  2339. }
  2340. pad[2]
  2341. real friction parallel scale
  2342. real friction perpendicular scale
  2343. real radius
  2344. pad[20]
  2345. }
  2346. }
  2347. POORLY-DETERMINED MIN FILESIZE OF phys (including 64-byte header): 192
  2348. POORLY-DETERMINED MAX FILESIZE OF phys (including 64-byte header): 8456
  2349.  
  2350. Tag Definition Offset: 0x5d4ad8
  2351. Extension: object
  2352. Unknown: 8
  2353. Class: obje
  2354. No superclass
  2355. Version: 1
  2356. Dialog Data Offset: 0x492300
  2357. Definition Block:
  2358. {
  2359. Name: object
  2360. Count: 1
  2361. Size: 380
  2362. Chunks Offset: 0x5d4940
  2363. }
  2364. pad[2]
  2365. word_flags flags
  2366. {
  2367. does not cast shadow
  2368. transparent self-occlusion
  2369. brighter than it should be
  2370. not a pathfinding obstacle
  2371. }
  2372. real bounding radius:world units
  2373. real_point_3d bounding offset
  2374. real_point_3d origin offset
  2375. real acceleration scale:[0,+inf]#marine 1.0, grunt 1.4, elite 0.9, hunter 0.5, etc.
  2376. pad[4]
  2377. tag reference model
  2378. {
  2379. Supported tag class category: mod2
  2380. }
  2381. tag reference animation graph
  2382. {
  2383. Supported tag class category: antr
  2384. }
  2385. pad[40]
  2386. tag reference collision model
  2387. {
  2388. Supported tag class category: coll
  2389. }
  2390. tag reference physics
  2391. {
  2392. Supported tag class category: phys
  2393. }
  2394. tag reference modifier shader
  2395. {
  2396. Supported tag class category: shdr
  2397. }
  2398. tag reference creation effect
  2399. {
  2400. Supported tag class category: effe
  2401. }
  2402. pad[84]
  2403. real render bounding radius:world units#if set, this radius is used to determine if the object is visible. set it for the pelican.
  2404. explanation export to functions
  2405. {
  2406. Dialog Data Offset: 0x494b11
  2407. {
  2408.  
  2409. }
  2410. }
  2411. enum A in
  2412. {
  2413. none
  2414. body vitality
  2415. shield vitality
  2416. recent body damage
  2417. recent shield damage
  2418. random constant
  2419. umbrella shield vitality
  2420. shield stun
  2421. recent umbrella shield vitality
  2422. umbrella shield stun
  2423. region #00 damage
  2424. region #01 damage
  2425. region #02 damage
  2426. region #03 damage
  2427. region #04 damage
  2428. region #05 damage
  2429. region #06 damage
  2430. region #07 damage
  2431. alive
  2432. compass
  2433. }
  2434. enum B in
  2435. {
  2436. none
  2437. body vitality
  2438. shield vitality
  2439. recent body damage
  2440. recent shield damage
  2441. random constant
  2442. umbrella shield vitality
  2443. shield stun
  2444. recent umbrella shield vitality
  2445. umbrella shield stun
  2446. region #00 damage
  2447. region #01 damage
  2448. region #02 damage
  2449. region #03 damage
  2450. region #04 damage
  2451. region #05 damage
  2452. region #06 damage
  2453. region #07 damage
  2454. alive
  2455. compass
  2456. }
  2457. enum C in
  2458. {
  2459. none
  2460. body vitality
  2461. shield vitality
  2462. recent body damage
  2463. recent shield damage
  2464. random constant
  2465. umbrella shield vitality
  2466. shield stun
  2467. recent umbrella shield vitality
  2468. umbrella shield stun
  2469. region #00 damage
  2470. region #01 damage
  2471. region #02 damage
  2472. region #03 damage
  2473. region #04 damage
  2474. region #05 damage
  2475. region #06 damage
  2476. region #07 damage
  2477. alive
  2478. compass
  2479. }
  2480. enum D in
  2481. {
  2482. none
  2483. body vitality
  2484. shield vitality
  2485. recent body damage
  2486. recent shield damage
  2487. random constant
  2488. umbrella shield vitality
  2489. shield stun
  2490. recent umbrella shield vitality
  2491. umbrella shield stun
  2492. region #00 damage
  2493. region #01 damage
  2494. region #02 damage
  2495. region #03 damage
  2496. region #04 damage
  2497. region #05 damage
  2498. region #06 damage
  2499. region #07 damage
  2500. alive
  2501. compass
  2502. }
  2503. pad[44]
  2504. short_integer hud text message index
  2505. short_integer forced shader permuation index
  2506. block attachments
  2507. {
  2508. Name: object_attachment_block
  2509. Max Chunks: 8
  2510. Chunk Size: 72
  2511. Max Chunks x Chunk Size: 576
  2512. Chunk Definition Offset: 0x5d46a8
  2513. {
  2514. tag reference type^
  2515. {
  2516. Supported tag class: ligh
  2517. Supported tag class: mgs2
  2518. Supported tag class: cont
  2519. Supported tag class: pctl
  2520. Supported tag class: effe
  2521. Supported tag class: lsnd
  2522. }
  2523. string marker
  2524. enum primary scale
  2525. {
  2526. none
  2527. A out
  2528. B out
  2529. C out
  2530. D out
  2531. }
  2532. enum secondary scale
  2533. {
  2534. none
  2535. A out
  2536. B out
  2537. C out
  2538. D out
  2539. }
  2540. enum change color
  2541. {
  2542. none
  2543. A
  2544. B
  2545. C
  2546. D
  2547. }
  2548. pad[2]
  2549. pad[16]
  2550. }
  2551. }
  2552. block widgets
  2553. {
  2554. Name: object_widget_block
  2555. Max Chunks: 4
  2556. Chunk Size: 32
  2557. Max Chunks x Chunk Size: 128
  2558. Chunk Definition Offset: 0x5d4758
  2559. {
  2560. tag reference reference^
  2561. {
  2562. Supported tag class: flag
  2563. Supported tag class: ant!
  2564. Supported tag class: glw!
  2565. Supported tag class: mgs2
  2566. Supported tag class: elec
  2567. }
  2568. pad[16]
  2569. }
  2570. }
  2571. block functions
  2572. {
  2573. Name: object_function_block
  2574. Max Chunks: 4
  2575. Chunk Size: 360
  2576. Max Chunks x Chunk Size: 1440
  2577. Chunk Definition Offset: 0x5d4530
  2578. {
  2579. long_flags flags
  2580. {
  2581. invert#result of function is one minus actual result
  2582. additive
  2583. always active#function does not deactivate when at or below lower bound
  2584. }
  2585. real period:seconds#this is the period for the above function (lower values make the function oscillate quickly, higher values make it oscillate slowly)
  2586. enum scale period by#multiply this function by the above period
  2587. {
  2588. none
  2589. A in
  2590. B in
  2591. C in
  2592. D in
  2593. A out
  2594. B out
  2595. C out
  2596. D out
  2597. }
  2598. enum function
  2599. {
  2600. one
  2601. zero
  2602. cosine
  2603. cosine (variable period)
  2604. diagonal wave
  2605. diagonal wave (variable period)
  2606. slide
  2607. slide (variable period)
  2608. noise
  2609. jitter
  2610. wander
  2611. spark
  2612. }
  2613. enum scale function by#multiply this function by the result of the above function
  2614. {
  2615. none
  2616. A in
  2617. B in
  2618. C in
  2619. D in
  2620. A out
  2621. B out
  2622. C out
  2623. D out
  2624. }
  2625. enum wobble function#the curve used for the wobble
  2626. {
  2627. one
  2628. zero
  2629. cosine
  2630. cosine (variable period)
  2631. diagonal wave
  2632. diagonal wave (variable period)
  2633. slide
  2634. slide (variable period)
  2635. noise
  2636. jitter
  2637. wander
  2638. spark
  2639. }
  2640. real wobble period:seconds#the length of time it takes for the magnitude of this function to complete a wobble
  2641. real wobble magnitude:percent#the amount of random wobble in the magnitude
  2642. real_fraction square wave threshold#if non-zero, all values above the square wave threshold are snapped to 1.0, and all values below it are snapped to 0.0 to create a square wave.
  2643. short_integer step count#the number of discrete values to snap to (e.g., a step count of 5 would snap the function to 0.00,0.25,0.50,0.75 or 1.00)
  2644. enum map to
  2645. {
  2646. linear
  2647. early
  2648. very early
  2649. late
  2650. very late
  2651. cosine
  2652. }
  2653. short_integer sawtooth count#the number of times this function should repeat (e.g., a sawtooth count of 5 would give the function a value of 1.0 at each of 0.25,0.50,0.75 as well as at 1.0
  2654. enum add#add this function to the final result of all of the above math
  2655. {
  2656. none
  2657. A in
  2658. B in
  2659. C in
  2660. D in
  2661. A out
  2662. B out
  2663. C out
  2664. D out
  2665. }
  2666. enum scale result by#multiply this function (from a weapon, vehicle, etc.) final result of all of the above math
  2667. {
  2668. none
  2669. A in
  2670. B in
  2671. C in
  2672. D in
  2673. A out
  2674. B out
  2675. C out
  2676. D out
  2677. }
  2678. enum bounds mode#controls how the bounds, below, are used
  2679. {
  2680. clip
  2681. clip and normalize
  2682. scale to fit
  2683. }
  2684. fraction_bounds bounds
  2685. pad[4]
  2686. pad[2]
  2687. short_block_index turn off with#if the specified function is off, so is this function
  2688. {
  2689. Block Name: object_function_block
  2690. }
  2691. real scale by#applied before clip, ignored if zero
  2692. pad[252]
  2693. pad[16]
  2694. string usage
  2695. }
  2696. }
  2697. block change colors
  2698. {
  2699. Name: object_change_colors
  2700. Max Chunks: 4
  2701. Chunk Size: 44
  2702. Max Chunks x Chunk Size: 176
  2703. Chunk Definition Offset: 0x5d4818
  2704. {
  2705. enum darken by
  2706. {
  2707. none
  2708. A in
  2709. B in
  2710. C in
  2711. D in
  2712. A out
  2713. B out
  2714. C out
  2715. D out
  2716. }
  2717. enum scale by
  2718. {
  2719. none
  2720. A in
  2721. B in
  2722. C in
  2723. D in
  2724. A out
  2725. B out
  2726. C out
  2727. D out
  2728. }
  2729. long_flags scale flags
  2730. {
  2731. blend in hsv#blends colors in hsv rather than rgb space
  2732. ...more colors#blends colors through more hues (goes the long way around the color wheel)
  2733. }
  2734. real_rgb_color color lower bound
  2735. real_rgb_color color upper bound
  2736. block permutations
  2737. {
  2738. Name: object_change_color_permutations
  2739. Max Chunks: 8
  2740. Chunk Size: 28
  2741. Max Chunks x Chunk Size: 224
  2742. Chunk Definition Offset: 0x5d47a8
  2743. {
  2744. real weight
  2745. real_rgb_color color lower bound
  2746. real_rgb_color color upper bound
  2747. }
  2748. }
  2749. }
  2750. }
  2751. block predicted resources*
  2752. {
  2753. Name: predicted_resource_block
  2754. Max Chunks: 1024
  2755. Chunk Size: 8
  2756. Max Chunks x Chunk Size: 8192
  2757. Chunk Definition Offset: 0x605ee0
  2758. {
  2759. enum type
  2760. {
  2761. bitmap
  2762. sound
  2763. }
  2764. short_integer resource index
  2765. long_integer tag index
  2766. }
  2767. }
  2768. POORLY-DETERMINED MIN FILESIZE OF obje (including 64-byte header): 444
  2769. POORLY-DETERMINED MAX FILESIZE OF obje (including 64-byte header): 13220
  2770.  
  2771. Tag Definition Offset: 0x5d43e8
  2772. Extension: contrail
  2773. Unknown: 8
  2774. Class: cont
  2775. No superclass
  2776. Version: 3
  2777. Definition Block:
  2778. {
  2779. Name: contrail
  2780. Count: 1
  2781. Size: 324
  2782. Chunks Offset: 0x5d4160
  2783. Dialog Data 1 Offset: 0x492160
  2784. }
  2785. word_flags flags
  2786. {
  2787. first point unfaded
  2788. last point unfaded
  2789. points start pinned to media
  2790. points start pinned to ground
  2791. points always pinned to media
  2792. points always pinned to ground
  2793. edge effect fades slowly
  2794. }
  2795. word_flags scale flags#these flags determine which fields are scaled by the contrail density
  2796. {
  2797. point generation rate
  2798. point velocity
  2799. point velocity delta
  2800. point velocity cone angle
  2801. inherited velocity fraction
  2802. sequence animation rate
  2803. texture scale u
  2804. texture scale v
  2805. texture animation u
  2806. texture animation v
  2807. }
  2808. explanation point creation
  2809. {
  2810. Dialog Data Offset: 0x494b11
  2811. {
  2812.  
  2813. }
  2814. }
  2815. real point generation rate:points per second#this many points are generated per second
  2816. real_bounds point velocity:world units per second#velocity added to each point's initial velocity
  2817. angle point velocity cone angle:degrees#initial velocity is inside the cone defined by the marker's forward vector and this angle
  2818. real_fraction inherited velocity fraction#fraction of parent object's velocity that is inherited by contrail points.
  2819. explanation rendering
  2820. {
  2821. Dialog Data Offset: 0x494b11
  2822. {
  2823.  
  2824. }
  2825. }
  2826. enum render type#this specifies how the contrail is oriented in space
  2827. {
  2828. vertical orientation
  2829. horizontal orientation
  2830. media mapped
  2831. ground mapped
  2832. viewer facing
  2833. double-marker linked
  2834. }
  2835. pad[2]
  2836. real texture repeats u#texture repeats per contrail segment
  2837. real texture repeats v#texture repeats across contrail width
  2838. real texture animation u:repeats per second#the texture along the contrail is animated by this value
  2839. real texture animation v:repeats per second#the texture across the contrail is animated by this value
  2840. real animation rate:frames per second
  2841. tag reference bitmap
  2842. {
  2843. Supported tag class category: bitm
  2844. }
  2845. short_integer first sequence index
  2846. short_integer sequence count
  2847. pad[64]
  2848. pad[40]
  2849. word_flags shader flags
  2850. {
  2851. sort bias
  2852. nonlinear tint
  2853. don't overdraw fp weapon
  2854. }
  2855. enum framebuffer blend function
  2856. {
  2857. alpha blend
  2858. multiply
  2859. double multiply
  2860. add
  2861. subtract
  2862. component min
  2863. component max
  2864. alpha-multiply add
  2865. }
  2866. enum framebuffer fade mode
  2867. {
  2868. none
  2869. fade when perpendicular
  2870. fade when parallel
  2871. }
  2872. word_flags map flags
  2873. {
  2874. unfiltered
  2875. }
  2876. pad[28]
  2877. explanation Secondary Map
  2878. {
  2879. Dialog Data Offset: 0x4cc2b4
  2880. {
  2881. Optional multitextured second map
  2882. }
  2883. }
  2884. tag reference bitmap
  2885. {
  2886. Supported tag class category: bitm
  2887. }
  2888. enum anchor
  2889. {
  2890. with primary
  2891. with screen space
  2892. zsprite
  2893. }
  2894. word_flags flags
  2895. {
  2896. unfiltered
  2897. }
  2898. enum u-animation source
  2899. {
  2900. none
  2901. A out
  2902. B out
  2903. C out
  2904. D out
  2905. }
  2906. enum u-animation function
  2907. {
  2908. one
  2909. zero
  2910. cosine
  2911. cosine (variable period)
  2912. diagonal wave
  2913. diagonal wave (variable period)
  2914. slide
  2915. slide (variable period)
  2916. noise
  2917. jitter
  2918. wander
  2919. spark
  2920. }
  2921. real u-animation period:seconds#0 defaults to 1
  2922. real u-animation phase
  2923. real u-animation scale:repeats#0 defaults to 1
  2924. enum v-animation source
  2925. {
  2926. none
  2927. A out
  2928. B out
  2929. C out
  2930. D out
  2931. }
  2932. enum v-animation function
  2933. {
  2934. one
  2935. zero
  2936. cosine
  2937. cosine (variable period)
  2938. diagonal wave
  2939. diagonal wave (variable period)
  2940. slide
  2941. slide (variable period)
  2942. noise
  2943. jitter
  2944. wander
  2945. spark
  2946. }
  2947. real v-animation period:seconds#0 defaults to 1
  2948. real v-animation phase
  2949. real v-animation scale:repeats#0 defaults to 1
  2950. enum rotation-animation source
  2951. {
  2952. none
  2953. A out
  2954. B out
  2955. C out
  2956. D out
  2957. }
  2958. enum rotation-animation function
  2959. {
  2960. one
  2961. zero
  2962. cosine
  2963. cosine (variable period)
  2964. diagonal wave
  2965. diagonal wave (variable period)
  2966. slide
  2967. slide (variable period)
  2968. noise
  2969. jitter
  2970. wander
  2971. spark
  2972. }
  2973. real rotation-animation period:seconds#0 defaults to 1
  2974. real rotation-animation phase
  2975. real rotation-animation scale:degrees#0 defaults to 360
  2976. real_point_2d rotation-animation center
  2977. pad[4]
  2978. real zsprite radius scale
  2979. pad[20]
  2980. block point states
  2981. {
  2982. Name: contrail_point_states_block
  2983. Max Chunks: 16
  2984. Chunk Size: 104
  2985. Max Chunks x Chunk Size: 1664
  2986. Chunk Definition Offset: 0x5d4038
  2987. {
  2988. explanation state timing
  2989. {
  2990. Dialog Data Offset: 0x494b11
  2991. {
  2992.  
  2993. }
  2994. }
  2995. real_bounds duration:seconds:seconds#the time a point spends in this state
  2996. real_bounds transition duration:seconds#the time a point takes to transition to the next state
  2997. explanation point variables
  2998. {
  2999. Dialog Data Offset: 0x494b11
  3000. {
  3001.  
  3002. }
  3003. }
  3004. tag reference physics
  3005. {
  3006. Supported tag class category: pphy
  3007. }
  3008. pad[32]
  3009. real width:world units#contrail width at this point
  3010. real_argb_color color lower bound#contrail color at this point
  3011. real_argb_color color upper bound#contrail color at this point
  3012. long_flags scale flags#these flags determine which fields are scaled by the contrail density
  3013. {
  3014. duration
  3015. duration delta
  3016. transition duration
  3017. transition duration delta
  3018. width
  3019. color
  3020. }
  3021. }
  3022. }
  3023. POORLY-DETERMINED MIN FILESIZE OF cont (including 64-byte header): 388
  3024. POORLY-DETERMINED MAX FILESIZE OF cont (including 64-byte header): 2817
  3025.  
  3026. Tag Definition Offset: 0x5d3f98
  3027. Extension: weapon
  3028. Unknown: 9
  3029. Class: weap
  3030. Superclass: item
  3031. Version: 2
  3032. Definition Block:
  3033. {
  3034. Name: weapon
  3035. Count: 1
  3036. Size: 512
  3037. Chunks Offset: 0x5d3ba0
  3038. Dialog Data 1 Offset: 0x491e00
  3039. }
  3040. explanation $$$ WEAPON $$$
  3041. {
  3042. Dialog Data Offset: 0x4d46f0
  3043. {
  3044. All weapons should have 'primary trigger' and 'secondary trigger' markers as appropriate.
  3045. Blurred permutations are called '$primary-blur' and '$secondary-blur'.
  3046. }
  3047. }
  3048. long_flags flags
  3049. {
  3050. vertical heat display
  3051. mutually exclusive triggers
  3052. attacks automatically on bump
  3053. must be readied
  3054. doesn't count toward maximum
  3055. aim assists only when zoomed
  3056. prevents grenade throwing
  3057. must be picked up
  3058. holds triggers when dropped
  3059. prevents melee attack
  3060. detonates when dropped
  3061. cannot fire at maximum age
  3062. secondary trigger overrides grenades
  3063. (OBSOLETE)does not depower active camo in multilplayer
  3064. enables integrated night vision
  3065. AIs use weapon melee damage
  3066. }
  3067. string label#the string used to match this weapon to an animation mode in the unit carrying it
  3068. enum secondary trigger mode
  3069. {
  3070. normal
  3071. slaved to primary
  3072. inhibits primary
  3073. loads alterate ammunition
  3074. loads multiple primary ammunition
  3075. }
  3076. short_integer maximum alternate shots loaded#if the second trigger loads alternate ammunition, this is the maximum number of shots that can be loaded at a time
  3077. explanation export to functions
  3078. {
  3079. Dialog Data Offset: 0x494b11
  3080. {
  3081.  
  3082. }
  3083. }
  3084. enum A in
  3085. {
  3086. none
  3087. heat
  3088. primary ammunition
  3089. secondary ammunition
  3090. primary rate of fire
  3091. secondary rate of fire
  3092. ready
  3093. primary ejection port
  3094. secondary ejection port
  3095. overheated
  3096. primary charged
  3097. secondary charged
  3098. illumination
  3099. age
  3100. integrated light
  3101. primary firing
  3102. secondary firing
  3103. primary firing on
  3104. secondary firing on
  3105. }
  3106. enum B in
  3107. {
  3108. none
  3109. heat
  3110. primary ammunition
  3111. secondary ammunition
  3112. primary rate of fire
  3113. secondary rate of fire
  3114. ready
  3115. primary ejection port
  3116. secondary ejection port
  3117. overheated
  3118. primary charged
  3119. secondary charged
  3120. illumination
  3121. age
  3122. integrated light
  3123. primary firing
  3124. secondary firing
  3125. primary firing on
  3126. secondary firing on
  3127. }
  3128. enum C in
  3129. {
  3130. none
  3131. heat
  3132. primary ammunition
  3133. secondary ammunition
  3134. primary rate of fire
  3135. secondary rate of fire
  3136. ready
  3137. primary ejection port
  3138. secondary ejection port
  3139. overheated
  3140. primary charged
  3141. secondary charged
  3142. illumination
  3143. age
  3144. integrated light
  3145. primary firing
  3146. secondary firing
  3147. primary firing on
  3148. secondary firing on
  3149. }
  3150. enum D in
  3151. {
  3152. none
  3153. heat
  3154. primary ammunition
  3155. secondary ammunition
  3156. primary rate of fire
  3157. secondary rate of fire
  3158. ready
  3159. primary ejection port
  3160. secondary ejection port
  3161. overheated
  3162. primary charged
  3163. secondary charged
  3164. illumination
  3165. age
  3166. integrated light
  3167. primary firing
  3168. secondary firing
  3169. primary firing on
  3170. secondary firing on
  3171. }
  3172. real ready time:seconds
  3173. tag reference ready effect
  3174. {
  3175. Supported tag class: snd!
  3176. Supported tag class: effe
  3177. }
  3178. explanation heat
  3179. {
  3180. Dialog Data Offset: 0x494b11
  3181. {
  3182.  
  3183. }
  3184. }
  3185. real_fraction heat recovery threshold:[0,1]#the heat value a weapon must return to before leaving the overheated state, once it has become overheated in the first place
  3186. real_fraction overheated threshold:[0,1]#the heat value over which a weapon first becomes overheated (should be greater than the heat recovery threshold)
  3187. real_fraction heat detonation threshold:[0,1]#the heat value above which the weapon has a chance of exploding each time it is fired
  3188. real_fraction heat detonation fraction:[0,1]#the percent chance (between 0.0 and 1.0) the weapon will explode when fired over the heat detonation threshold
  3189. real_fraction heat loss per second:[0,1]#the amount of heat lost each second when the weapon is not being fired
  3190. real_fraction heat illumination:[0,1]#the amount of illumination given off when the weapon is overheated
  3191. pad[16]
  3192. tag reference overheated
  3193. {
  3194. Supported tag class: snd!
  3195. Supported tag class: effe
  3196. }
  3197. tag reference detonation
  3198. {
  3199. Supported tag class: snd!
  3200. Supported tag class: effe
  3201. }
  3202. tag reference player melee damage
  3203. {
  3204. Supported tag class category: jpt!
  3205. }
  3206. tag reference player melee response
  3207. {
  3208. Supported tag class category: jpt!
  3209. }
  3210. pad[8]
  3211. explanation actor firing parameters
  3212. {
  3213. Dialog Data Offset: 0x4d4200
  3214. {
  3215. an optional actor variant that specifies the burst geometry and firing patterns to be used with this weapon
  3216. }
  3217. }
  3218. tag reference actor firing parameters
  3219. {
  3220. Supported tag class category: actv
  3221. }
  3222. explanation reticle
  3223. {
  3224. Dialog Data Offset: 0x494b11
  3225. {
  3226.  
  3227. }
  3228. }
  3229. real near reticle range:world units#the range at which the closer of the two static target reticles will be drawn
  3230. real far reticle range:world units#the range at which the farther of the two static target reticles will be drawn
  3231. real intersection reticle range#the maximum range at which the dynamic target reticle will be drawn
  3232. pad[2]
  3233. explanation zoom
  3234. {
  3235. Dialog Data Offset: 0x494b11
  3236. {
  3237.  
  3238. }
  3239. }
  3240. short_integer magnification levels#the number of magnification levels this weapon allows
  3241. real_bounds magnification range
  3242. explanation aim assist
  3243. {
  3244. Dialog Data Offset: 0x494b11
  3245. {
  3246.  
  3247. }
  3248. }
  3249. angle autoaim angle:degrees#the maximum angle that autoaim works at full strength
  3250. real autoaim range:world units#the maximum distance that autoaim works at full strength
  3251. angle magnetism angle:degrees#the maximum angle that magnetism works at full strength
  3252. real magnetism range:world units#the maximum distance that magnetism works at full strength
  3253. angle deviation angle:degrees#the maximum angle that a projectile is allowed to deviate from the gun barrel
  3254. pad[4]
  3255. explanation movement
  3256. {
  3257. Dialog Data Offset: 0x494b11
  3258. {
  3259.  
  3260. }
  3261. }
  3262. enum movement penalized
  3263. {
  3264. always
  3265. when zoomed
  3266. when zoomed or reloading
  3267. }
  3268. pad[2]
  3269. real_fraction forward movement penalty#percent slowdown to forward movement for units carrying this weapon
  3270. real_fraction sideways movement penalty#percent slowdown to sideways and backward movement for units carrying this weapon
  3271. pad[4]
  3272. explanation AI targeting parameters
  3273. {
  3274. Dialog Data Offset: 0x494b11
  3275. {
  3276.  
  3277. }
  3278. }
  3279. real minimum target range#minimum range that actors using this weapon will try and target stuff at
  3280. real looking time modifier#how much faster actors look around idly using this weapon (zero is unchanged)
  3281. pad[4]
  3282. explanation miscellaneous
  3283. {
  3284. Dialog Data Offset: 0x494b11
  3285. {
  3286.  
  3287. }
  3288. }
  3289. real light power-on time:seconds
  3290. real light power-off time:seconds
  3291. tag reference light power-on effect
  3292. {
  3293. Supported tag class: snd!
  3294. Supported tag class: effe
  3295. }
  3296. tag reference light power-off effect
  3297. {
  3298. Supported tag class: snd!
  3299. Supported tag class: effe
  3300. }
  3301. real age heat recovery penalty#how much the weapon's heat recovery is penalized as it ages
  3302. real age rate of fire penalty#how much the weapon's rate of fire is penalized as it ages
  3303. real_fraction age misfire start:[0,1]#the age threshold when the weapon begins to misfire
  3304. real_fraction age misfire chance:[0,1]#at age 1.0, the misfire chance per shot
  3305. pad[12]
  3306. explanation interface
  3307. {
  3308. Dialog Data Offset: 0x494b11
  3309. {
  3310.  
  3311. }
  3312. }
  3313. tag reference first person model
  3314. {
  3315. Supported tag class category: mod2
  3316. }
  3317. tag reference first person animations
  3318. {
  3319. Supported tag class category: antr
  3320. }
  3321. pad[4]
  3322. tag reference hud interface
  3323. {
  3324. Supported tag class category: wphi
  3325. }
  3326. tag reference pickup sound
  3327. {
  3328. Supported tag class category: snd!
  3329. }
  3330. tag reference zoom-in sound
  3331. {
  3332. Supported tag class category: snd!
  3333. }
  3334. tag reference zoom-out sound
  3335. {
  3336. Supported tag class category: snd!
  3337. }
  3338. pad[12]
  3339. real active camo ding#how much to decrease active camo when a round is fired
  3340. real active camo regrowth rate#how fast to increase active camo (per tick) when a round is fired
  3341. pad[12]
  3342. pad[2]
  3343. explanation more miscellaneous
  3344. {
  3345. Dialog Data Offset: 0x494b11
  3346. {
  3347.  
  3348. }
  3349. }
  3350. enum weapon type
  3351. {
  3352. undefined
  3353. shotgun
  3354. needler
  3355. plasma pistol
  3356. plasma rifle
  3357. }
  3358. block predicted resources
  3359. {
  3360. Name: predicted_resource_block
  3361. Max Chunks: 1024
  3362. Chunk Size: 8
  3363. Max Chunks x Chunk Size: 8192
  3364. Chunk Definition Offset: 0x605ee0
  3365. {
  3366. enum type
  3367. {
  3368. bitmap
  3369. sound
  3370. }
  3371. short_integer resource index
  3372. long_integer tag index
  3373. }
  3374. }
  3375. block magazines
  3376. {
  3377. Name: magazines
  3378. Max Chunks: 2
  3379. Chunk Size: 112
  3380. Max Chunks x Chunk Size: 224
  3381. Chunk Definition Offset: 0x5d3610
  3382. {
  3383. long_flags flags
  3384. {
  3385. wastes rounds when reloaded
  3386. every round must be chambered
  3387. }
  3388. short_integer rounds recharged:per second
  3389. short_integer rounds total initial
  3390. short_integer rounds total maximum
  3391. short_integer rounds loaded maximum
  3392. pad[8]
  3393. real reload time:seconds#the length of time it takes to load a single magazine into the weapon
  3394. short_integer rounds reloaded
  3395. pad[2]
  3396. real chamber time:seconds#the length of time it takes to chamber the next round
  3397. pad[8]
  3398. pad[16]
  3399. tag reference reloading effect
  3400. {
  3401. Supported tag class: snd!
  3402. Supported tag class: effe
  3403. }
  3404. tag reference chambering effect
  3405. {
  3406. Supported tag class: snd!
  3407. Supported tag class: effe
  3408. }
  3409. pad[12]
  3410. block magazines
  3411. {
  3412. Name: magazine_objects
  3413. Max Chunks: 2 [fixed from 8]
  3414. Chunk Size: 28
  3415. Max Chunks x Chunk Size: 56 [fixed from 224]
  3416. Chunk Definition Offset: 0x5d35a0
  3417. {
  3418. short_integer rounds
  3419. pad[10]
  3420. tag reference equipment
  3421. {
  3422. Supported tag class category: eqip
  3423. }
  3424. }
  3425. }
  3426. }
  3427. }
  3428. block triggers
  3429. {
  3430. Name: triggers
  3431. Max Chunks: 2
  3432. Chunk Size: 276
  3433. Max Chunks x Chunk Size: 552
  3434. Chunk Definition Offset: 0x5d3818
  3435. {
  3436. long_flags flags
  3437. {
  3438. tracks fired projectile#poo poo ca ca pee pee
  3439. random firing effects#rather than being chosen sequentially, firing effects are picked randomly
  3440. can fire with partial ammo#allows a weapon to be fired as long as there is a non-zero amount of ammunition loaded
  3441. does not repeat automatically#once fired, this trigger must be released and pressed to fire again
  3442. locks in on/off state#once depressed, this trigger must be released and pressed again to turn it off (and likewise to turn it back on)
  3443. projectiles use weapon origin#instead of coming out of the magic first person camera origin, the projectiles for this weapon actually come out of the gun
  3444. sticks when dropped#if this trigger is pressed when its owner drops the weapon (for whatever reason) this trigger stays down
  3445. ejects during chamber#this trigger's ejection port is started during the key frame of its chamber animation
  3446. discharging spews
  3447. analog rate of fire
  3448. use error when unzoomed
  3449. projectile vector cannot be adjusted#projectiles fired by this weapon cannot have their direction adjusted by the AI to hit the target
  3450. projectiles have identical error
  3451. projectile is client-side only
  3452. }
  3453. explanation firing
  3454. {
  3455. Dialog Data Offset: 0x494b11
  3456. {
  3457.  
  3458. }
  3459. }
  3460. real_bounds rounds per second#the number of firing effects created per second
  3461. real acceleration time:seconds#the continuous firing time it takes for the weapon to achieve its final rounds per second
  3462. real deceleration time:seconds#the continuous idle time it takes for the weapon to return from its final rounds per second to its initial
  3463. real_fraction blurred rate of fire#a percentage between 0 and 1 which controls how soon in its firing animation the weapon blurs
  3464. pad[8]
  3465. short_block_index magazine#the magazine from which this trigger draws its ammunition
  3466. {
  3467. Block Name: magazines
  3468. }
  3469. short_integer rounds per shot#the number of rounds expended to create a single firing effect
  3470. short_integer minimum rounds loaded#the minimum number of rounds necessary to fire the weapon
  3471. short_integer rounds between tracers#the number of non-tracer rounds fired between tracers
  3472. pad[6]
  3473. enum firing noise#how loud this weapon appears to the AI
  3474. {
  3475. silent
  3476. medium
  3477. loud
  3478. shout
  3479. quiet
  3480. }
  3481. explanation error
  3482. {
  3483. Dialog Data Offset: 0x494b11
  3484. {
  3485.  
  3486. }
  3487. }
  3488. real_bounds error#the accuracy (between 0.0 and 1.0) of the weapon during firing
  3489. real acceleration time:seconds#the continuous firing time it takes for the weapon to achieve its final error
  3490. real deceleration time:seconds#the continuous idle time it takes for the weapon to return to its initial error
  3491. pad[8]
  3492. explanation charging
  3493. {
  3494. Dialog Data Offset: 0x494b11
  3495. {
  3496.  
  3497. }
  3498. }
  3499. real charging time:seconds#the amount of time it takes for this trigger to become fully charged
  3500. real charged time:seconds#the amount of time this trigger can be charged before becoming overcharged
  3501. enum overcharged action
  3502. {
  3503. none
  3504. explode
  3505. discharge
  3506. }
  3507. pad[2]
  3508. real charged illumination:[0,1]#the amount of illumination given off when the weapon is fully charged
  3509. real spew time:seconds#length of time the weapon will spew (fire continuously) while discharging
  3510. tag reference charging effect#the charging effect is created once when the trigger begins to charge
  3511. {
  3512. Supported tag class: snd!
  3513. Supported tag class: effe
  3514. }
  3515. explanation projectile
  3516. {
  3517. Dialog Data Offset: 0x494b11
  3518. {
  3519.  
  3520. }
  3521. }
  3522. enum distribution function
  3523. {
  3524. point
  3525. horizontal fan
  3526. }
  3527. short_integer projectiles per shot
  3528. real distribution angle:degrees
  3529. pad[4]
  3530. angle minimum error:degrees
  3531. angle_bounds error angle:degrees
  3532. real_point_3d first person offset:world units#+x is forward, +z is up, +y is left
  3533. pad[4]
  3534. tag reference projectile
  3535. {
  3536. Supported tag class category: proj
  3537. }
  3538. explanation misc
  3539. {
  3540. Dialog Data Offset: 0x494b11
  3541. {
  3542.  
  3543. }
  3544. }
  3545. real ejection port recovery time#the amount of time (in seconds) it takes for the ejection port to transition from 1.0 (open) to 0.0 (closed) after a shot has been fired
  3546. real illumination recovery time#the amount of time (in seconds) it takes the illumination function to transition from 1.0 (bright) to 0.0 (dark) after a shot has been fired
  3547. pad[12]
  3548. real_fraction heat generated per round:[0,1]#the amount of heat generated each time the trigger is fired
  3549. real_fraction age generated per round:[0,1]#the amount the weapon ages each time the trigger is fired
  3550. pad[4]
  3551. real overload time:seconds#the next trigger fires this often while holding down this trigger
  3552. pad[8]
  3553. pad[32]
  3554. pad[24]
  3555. block firing effects#firing effects determine what happens when this trigger is fired
  3556. {
  3557. Name: trigger_firing_effect_block
  3558. Max Chunks: 8
  3559. Chunk Size: 132
  3560. Max Chunks x Chunk Size: 1056
  3561. Chunk Definition Offset: 0x5d3708
  3562. {
  3563. short_integer shot count lower bound#the minimum number of times this firing effect will be used, once it has been chosen
  3564. short_integer shot count upper bound#the maximum number of times this firing effect will be used, once it has been chosen
  3565. pad[32]
  3566. tag reference firing effect^#this effect is used when the weapon is loaded and fired normally
  3567. {
  3568. Supported tag class: snd!
  3569. Supported tag class: effe
  3570. }
  3571. tag reference misfire effect#this effect is used when the weapon is loaded but fired while overheated
  3572. {
  3573. Supported tag class: snd!
  3574. Supported tag class: effe
  3575. }
  3576. tag reference empty effect#this effect is used when the weapon is not loaded
  3577. {
  3578. Supported tag class: snd!
  3579. Supported tag class: effe
  3580. }
  3581. tag reference firing damage#this effect is used when the weapon is loaded and fired normally
  3582. {
  3583. Supported tag class category: jpt!
  3584. }
  3585. tag reference misfire damage#this effect is used when the weapon is loaded but fired while overheated
  3586. {
  3587. Supported tag class category: jpt!
  3588. }
  3589. tag reference empty damage#this effect is used when the weapon is not loaded
  3590. {
  3591. Supported tag class category: jpt!
  3592. }
  3593. }
  3594. }
  3595. }
  3596. }
  3597. POORLY-DETERMINED MIN FILESIZE OF weap (including 64-byte header): 576
  3598. POORLY-DETERMINED MAX FILESIZE OF weap (including 64-byte header): 17199
  3599.  
  3600. Tag Definition Offset: 0x5c8280
  3601. Extension: light
  3602. Unknown: 8
  3603. Class: ligh
  3604. No superclass
  3605. Version: 3
  3606. Definition Block:
  3607. {
  3608. Name: light
  3609. Count: 1
  3610. Size: 352
  3611. Chunks Offset: 0x5c8050
  3612. Dialog Data 1 Offset: 0x48d400
  3613. }
  3614. long_flags flags
  3615. {
  3616. dynamic#dynamically illuminate interiors
  3617. no specular#for dynamic lights, cast only diffuse light.
  3618. don't light own object#for dynamic lights, don't light the object that the light is attached to.
  3619. supersize in first person#for dynamic lights, light every environment surface if this light is on the gun of the current window.
  3620. first person flashlight
  3621. don't fade active camouflage
  3622. }
  3623. explanation SHAPE
  3624. {
  3625. Dialog Data Offset: 0x4bd718
  3626. {
  3627. the size and shape of the light
  3628. }
  3629. }
  3630. real radius#the radius where illumination is zero. (lens flare only if this is 0)
  3631. real_bounds radius modifer#how the radius changes with external scale
  3632. angle falloff angle#the angle at which the light begins to fade.
  3633. angle cutoff angle#the angle at which the illumination is zero.
  3634. real lens flare only radius
  3635. pad[24]
  3636. explanation COLOR
  3637. {
  3638. Dialog Data Offset: 0x494b11
  3639. {
  3640.  
  3641. }
  3642. }
  3643. long_flags interpolation flags
  3644. {
  3645. blend in hsv#blends colors in hsv rather than rgb space
  3646. ...more colors#blends colors through more hues (goes the long way around the color wheel)
  3647. }
  3648. real_argb_color color lower bound
  3649. real_argb_color color upper bound
  3650. pad[12]
  3651. explanation GEL
  3652. {
  3653. Dialog Data Offset: 0x4bd584
  3654. {
  3655. the gel map tints the light per-pixel of cube map
  3656. }
  3657. }
  3658. tag reference primary cube map#used for diffuse and specular light
  3659. {
  3660. Supported tag class category: bitm
  3661. }
  3662. pad[2]
  3663. enum texture animation function#a function to control texture animation
  3664. {
  3665. one
  3666. zero
  3667. cosine
  3668. cosine (variable period)
  3669. diagonal wave
  3670. diagonal wave (variable period)
  3671. slide
  3672. slide (variable period)
  3673. noise
  3674. jitter
  3675. wander
  3676. spark
  3677. }
  3678. real texture animation period:seconds#time between repeats
  3679. tag reference secondary cube map#used for specular light
  3680. {
  3681. Supported tag class category: bitm
  3682. }
  3683. pad[2]
  3684. enum yaw function#a function to control rotation of the gel in yaw
  3685. {
  3686. one
  3687. zero
  3688. cosine
  3689. cosine (variable period)
  3690. diagonal wave
  3691. diagonal wave (variable period)
  3692. slide
  3693. slide (variable period)
  3694. noise
  3695. jitter
  3696. wander
  3697. spark
  3698. }
  3699. real yaw period:seconds#time between repeats
  3700. pad[2]
  3701. enum roll function#a function to control rotation of the gel in roll
  3702. {
  3703. one
  3704. zero
  3705. cosine
  3706. cosine (variable period)
  3707. diagonal wave
  3708. diagonal wave (variable period)
  3709. slide
  3710. slide (variable period)
  3711. noise
  3712. jitter
  3713. wander
  3714. spark
  3715. }
  3716. real roll period:seconds#time between repeats
  3717. pad[2]
  3718. enum pitch function#a function to control rotation of the gel in pitch
  3719. {
  3720. one
  3721. zero
  3722. cosine
  3723. cosine (variable period)
  3724. diagonal wave
  3725. diagonal wave (variable period)
  3726. slide
  3727. slide (variable period)
  3728. noise
  3729. jitter
  3730. wander
  3731. spark
  3732. }
  3733. real pitch period:seconds#time between repeats
  3734. pad[8]
  3735. explanation LENS FLARE
  3736. {
  3737. Dialog Data Offset: 0x4bd31c
  3738. {
  3739. optional lens flare associated with this light
  3740. }
  3741. }
  3742. tag reference lens flare
  3743. {
  3744. Supported tag class category: lens
  3745. }
  3746. pad[24]
  3747. explanation RADIOSITY
  3748. {
  3749. Dialog Data Offset: 0x4bd2c0
  3750. {
  3751. how the light affects the lightmaps (ignored for dynamic lights)
  3752. }
  3753. }
  3754. real intensity
  3755. real_rgb_color color
  3756. pad[16]
  3757. explanation EFFECT PARAMETERS
  3758. {
  3759. Dialog Data Offset: 0x4bd260
  3760. {
  3761. if the light is created by an effect, it will animate itself as follows
  3762. }
  3763. }
  3764. real duration:seconds#the light will last this long when created by an effect
  3765. pad[2]
  3766. enum falloff function#the scale of the light will diminish over time according to this function
  3767. {
  3768. linear
  3769. early
  3770. very early
  3771. late
  3772. very late
  3773. cosine
  3774. }
  3775. pad[8]
  3776. pad[92]
  3777. POORLY-DETERMINED MIN FILESIZE OF ligh (including 64-byte header): 416
  3778. POORLY-DETERMINED MAX FILESIZE OF ligh (including 64-byte header): 1181
  3779.  
  3780. Tag Definition Offset: 0x5d3518
  3781. Extension: effect
  3782. Unknown: 9
  3783. Class: effe
  3784. No superclass
  3785. Version: 4
  3786. Dialog Data Offset: 0x491bb0
  3787. Definition Block:
  3788. {
  3789. Name: effect
  3790. Count: 1
  3791. Size: 64
  3792. Chunks Offset: 0x5d3498
  3793. }
  3794. long_flags flags
  3795. {
  3796. deleted when attachment deactivates
  3797. required for gameplay (cannot optimize out)
  3798. }
  3799. short_block_index loop start event
  3800. {
  3801. Block Name: effect_event_block
  3802. }
  3803. short_block_index loop stop event
  3804. {
  3805. Block Name: effect_event_block
  3806. }
  3807. pad[32]
  3808. block locations
  3809. {
  3810. Name: effect_locations_block
  3811. Max Chunks: 32
  3812. Chunk Size: 32
  3813. Max Chunks x Chunk Size: 1024
  3814. Chunk Definition Offset: 0x5d3080
  3815. {
  3816. string marker name^
  3817. }
  3818. }
  3819. block events
  3820. {
  3821. Name: effect_event_block
  3822. Max Chunks: 32
  3823. Chunk Size: 68
  3824. Max Chunks x Chunk Size: 2176
  3825. Chunk Definition Offset: 0x5d33f8
  3826. {
  3827. pad[4]
  3828. real_fraction skip fraction#chance that this event will be skipped entirely
  3829. real_bounds delay bounds:seconds#delay before this event takes place
  3830. real_bounds duration bounds:seconds#duration of this event
  3831. pad[20]
  3832. block parts
  3833. {
  3834. Name: effect_part_block
  3835. Max Chunks: 32
  3836. Chunk Size: 104
  3837. Max Chunks x Chunk Size: 3328
  3838. Chunk Definition Offset: 0x5d3308
  3839. {
  3840. enum create in
  3841. {
  3842. any environment
  3843. air only
  3844. water only
  3845. space only
  3846. }
  3847. enum create in
  3848. {
  3849. either mode
  3850. violent mode only
  3851. nonviolent mode only
  3852. }
  3853. short_block_index location
  3854. {
  3855. Block Name: effect_locations_block
  3856. }
  3857. word_flags flags
  3858. {
  3859. face down regardless of location (decals)
  3860. }
  3861. pad[16]
  3862. tag reference type^
  3863. {
  3864. Supported tag class: jpt!
  3865. Supported tag class: obje
  3866. Supported tag class: pctl
  3867. Supported tag class: snd!
  3868. Supported tag class: deca
  3869. Supported tag class: ligh
  3870. }
  3871. pad[24]
  3872. real_bounds velocity bounds:world units per second#initial velocity along the location's forward
  3873. angle velocity cone angle:degrees#initial velocity will be inside the cone defined by this angle.
  3874. angle_bounds angular velocity bounds:degrees per second
  3875. real_bounds radius modifier bounds
  3876. pad[4]
  3877. explanation SCALE MODIFIERS
  3878. {
  3879. Dialog Data Offset: 0x494b11
  3880. {
  3881.  
  3882. }
  3883. }
  3884. long_flags A scales values:
  3885. {
  3886. velocity
  3887. velocity delta
  3888. velocity cone angle
  3889. angular velocity
  3890. angular velocity delta
  3891. type-specific scale
  3892. }
  3893. long_flags B scales values:
  3894. {
  3895. velocity
  3896. velocity delta
  3897. velocity cone angle
  3898. angular velocity
  3899. angular velocity delta
  3900. type-specific scale
  3901. }
  3902. }
  3903. }
  3904. block particles
  3905. {
  3906. Name: effect_particles_block
  3907. Max Chunks: 32
  3908. Chunk Size: 232
  3909. Max Chunks x Chunk Size: 7424
  3910. Chunk Definition Offset: 0x5d3148
  3911. {
  3912. enum create in
  3913. {
  3914. any environment
  3915. air only
  3916. water only
  3917. space only
  3918. }
  3919. enum create in
  3920. {
  3921. either mode
  3922. violent mode only
  3923. nonviolent mode only
  3924. }
  3925. enum create
  3926. {
  3927. independent of camera mode
  3928. only in first person
  3929. only in third person
  3930. in first person if possible
  3931. }
  3932. pad[2]
  3933. short_block_index location
  3934. {
  3935. Block Name: effect_locations_block
  3936. }
  3937. pad[2]
  3938. real_euler_angles_2d relative direction#particle initial velocity direction relative to the location's forward
  3939. real_vector_3d relative offset#particle initial position offset relative to the locatin's forward
  3940. pad[12]
  3941. pad[40]
  3942. tag reference particle type^
  3943. {
  3944. Supported tag class category: part
  3945. }
  3946. long_flags flags
  3947. {
  3948. stay attached to marker
  3949. random initial angle
  3950. tint from object color
  3951. interpolate tint as HSV
  3952. ... across the long hue path
  3953. }
  3954. enum distribution function#describes how the part creations are distributed over the event duration
  3955. {
  3956. start
  3957. end
  3958. constant
  3959. buildup
  3960. falloff
  3961. buildup and falloff
  3962. }
  3963. pad[2]
  3964. short_integer_bounds count#number of particles created
  3965. real_bounds distribution radius:world units#initial distance from the location's origin
  3966. pad[12]
  3967. real_bounds velocity:world units per second#initial velocity along the specified direction
  3968. angle velocity cone angle:degrees#particle initial velocities will be inside the cone defined by this angle and the specified direction
  3969. angle_bounds angular velocity:degrees per second
  3970. pad[8]
  3971. real_bounds radius:world units#particle radius
  3972. pad[8]
  3973. real_argb_color tint lower bound
  3974. real_argb_color tint upper bound
  3975. pad[16]
  3976. explanation SCALE MODIFIERS
  3977. {
  3978. Dialog Data Offset: 0x494b11
  3979. {
  3980.  
  3981. }
  3982. }
  3983. long_flags A scales values:
  3984. {
  3985. velocity
  3986. velocity delta
  3987. velocity cone angle
  3988. angular velocity
  3989. angular velocity delta
  3990. count
  3991. count delta
  3992. distribution radius
  3993. distribution radius delta
  3994. particle radius
  3995. particle radius delta
  3996. tint
  3997. }
  3998. long_flags B scales values:
  3999. {
  4000. velocity
  4001. velocity delta
  4002. velocity cone angle
  4003. angular velocity
  4004. angular velocity delta
  4005. count
  4006. count delta
  4007. distribution radius
  4008. distribution radius delta
  4009. particle radius
  4010. particle radius delta
  4011. tint
  4012. }
  4013. }
  4014. }
  4015. }
  4016. }
  4017. POORLY-DETERMINED MIN FILESIZE OF effe (including 64-byte header): 128
  4018. POORLY-DETERMINED MAX FILESIZE OF effe (including 64-byte header): 14590
  4019.  
  4020. Tag Definition Offset: 0x5d2fa8
  4021. Extension: particle
  4022. Unknown: 8
  4023. Class: part
  4024. No superclass
  4025. Version: 2
  4026. Dialog Data Offset: 0x491770
  4027. Definition Block:
  4028. {
  4029. Name: particle
  4030. Count: 1
  4031. Size: 356
  4032. Chunks Offset: 0x5d2cd8
  4033. }
  4034. long_flags flags
  4035. {
  4036. can animate backwards
  4037. animation stops at rest
  4038. animation starts on random frame
  4039. animate once per frame
  4040. dies at rest
  4041. dies on contact with structure
  4042. tint from diffuse texture
  4043. dies on contact with water
  4044. dies on contact with air
  4045. self-illuminated#don't cast world-lights onto this particle
  4046. random horizontal mirroring
  4047. random vertical mirroring
  4048. }
  4049. tag reference bitmap
  4050. {
  4051. Supported tag class category: bitm
  4052. }
  4053. tag reference physics
  4054. {
  4055. Supported tag class category: pphy
  4056. }
  4057. tag reference marty traded his kids for this
  4058. {
  4059. Supported tag class category: foot
  4060. }
  4061. pad[4]
  4062. real_bounds lifespan:seconds
  4063. real fade in time
  4064. real fade out time
  4065. tag reference collision effect
  4066. {
  4067. Supported tag class: snd!
  4068. Supported tag class: effe
  4069. }
  4070. tag reference death effect
  4071. {
  4072. Supported tag class: snd!
  4073. Supported tag class: effe
  4074. }
  4075. real minimum size:pixels#in the distance, don't get any smaller than this size on the screen
  4076. pad[8]
  4077. real_bounds radius animation#when created, the radius is multiplied by the first number. at the end of the lifetime, the radius is multiplied by the second number.
  4078. pad[4]
  4079. real_bounds animation rate:frames per second#rate at which the particle animates
  4080. real contact deterioration#the decrease in the frame rate caused by a collision
  4081. real fade start size:pixels#begin fading the particle out when it's smaller than this size on the screen
  4082. real fade end size:pixels#kill the particle when it's smaller than this size on the screen
  4083. pad[4]
  4084. short_integer first sequence index#the index of the first sequence in the bitmap group used by this particle
  4085. short_integer initial sequence count
  4086. short_integer looping sequence count
  4087. short_integer final sequence count
  4088. pad[12]
  4089. enum orientation
  4090. {
  4091. screen facing
  4092. parallel to direction
  4093. perpendicular to direction
  4094. }
  4095. pad[2]
  4096. pad[40]
  4097. word_flags shader flags
  4098. {
  4099. sort bias
  4100. nonlinear tint
  4101. don't overdraw fp weapon
  4102. }
  4103. enum framebuffer blend function
  4104. {
  4105. alpha blend
  4106. multiply
  4107. double multiply
  4108. add
  4109. subtract
  4110. component min
  4111. component max
  4112. alpha-multiply add
  4113. }
  4114. enum framebuffer fade mode
  4115. {
  4116. none
  4117. fade when perpendicular
  4118. fade when parallel
  4119. }
  4120. word_flags map flags
  4121. {
  4122. unfiltered
  4123. }
  4124. pad[28]
  4125. explanation Secondary Map
  4126. {
  4127. Dialog Data Offset: 0x4cc2b4
  4128. {
  4129. Optional multitextured second map
  4130. }
  4131. }
  4132. tag reference bitmap
  4133. {
  4134. Supported tag class category: bitm
  4135. }
  4136. enum anchor
  4137. {
  4138. with primary
  4139. with screen space
  4140. zsprite
  4141. }
  4142. word_flags flags
  4143. {
  4144. unfiltered
  4145. }
  4146. enum u-animation source
  4147. {
  4148. none
  4149. A out
  4150. B out
  4151. C out
  4152. D out
  4153. }
  4154. enum u-animation function
  4155. {
  4156. one
  4157. zero
  4158. cosine
  4159. cosine (variable period)
  4160. diagonal wave
  4161. diagonal wave (variable period)
  4162. slide
  4163. slide (variable period)
  4164. noise
  4165. jitter
  4166. wander
  4167. spark
  4168. }
  4169. real u-animation period:seconds#0 defaults to 1
  4170. real u-animation phase
  4171. real u-animation scale:repeats#0 defaults to 1
  4172. enum v-animation source
  4173. {
  4174. none
  4175. A out
  4176. B out
  4177. C out
  4178. D out
  4179. }
  4180. enum v-animation function
  4181. {
  4182. one
  4183. zero
  4184. cosine
  4185. cosine (variable period)
  4186. diagonal wave
  4187. diagonal wave (variable period)
  4188. slide
  4189. slide (variable period)
  4190. noise
  4191. jitter
  4192. wander
  4193. spark
  4194. }
  4195. real v-animation period:seconds#0 defaults to 1
  4196. real v-animation phase
  4197. real v-animation scale:repeats#0 defaults to 1
  4198. enum rotation-animation source
  4199. {
  4200. none
  4201. A out
  4202. B out
  4203. C out
  4204. D out
  4205. }
  4206. enum rotation-animation function
  4207. {
  4208. one
  4209. zero
  4210. cosine
  4211. cosine (variable period)
  4212. diagonal wave
  4213. diagonal wave (variable period)
  4214. slide
  4215. slide (variable period)
  4216. noise
  4217. jitter
  4218. wander
  4219. spark
  4220. }
  4221. real rotation-animation period:seconds#0 defaults to 1
  4222. real rotation-animation phase
  4223. real rotation-animation scale:degrees#0 defaults to 360
  4224. real_point_2d rotation-animation center
  4225. pad[4]
  4226. real zsprite radius scale
  4227. pad[20]
  4228. POORLY-DETERMINED MIN FILESIZE OF part (including 64-byte header): 420
  4229. POORLY-DETERMINED MAX FILESIZE OF part (including 64-byte header): 1950
  4230.  
  4231. Tag Definition Offset: 0x5d2c28
  4232. Extension: globals
  4233. Unknown: 0
  4234. Class: matg
  4235. No superclass
  4236. Version: 3
  4237. Dialog Data Offset: 0x4915e0
  4238. Definition Block:
  4239. {
  4240. Name: globals
  4241. Count: 1
  4242. Size: 428
  4243. Chunks Offset: 0x5d2b30
  4244. }
  4245. pad[248]
  4246. block sounds
  4247. {
  4248. Name: sound_block
  4249. Max Chunks: 2
  4250. Chunk Size: 16
  4251. Max Chunks x Chunk Size: 32
  4252. Chunk Definition Offset: 0x5d2ae8
  4253. {
  4254. tag reference sound
  4255. {
  4256. Supported tag class category: snd!
  4257. }
  4258. }
  4259. }
  4260. block camera
  4261. {
  4262. Name: camera_block
  4263. Max Chunks: 1
  4264. Chunk Size: 16
  4265. Max Chunks x Chunk Size: 16
  4266. Chunk Definition Offset: 0x5d2a9c
  4267. {
  4268. tag reference default unit camera track
  4269. {
  4270. Supported tag class category: trak
  4271. }
  4272. }
  4273. }
  4274. block player control
  4275. {
  4276. Name: player_control_block
  4277. Max Chunks: 1
  4278. Chunk Size: 128
  4279. Max Chunks x Chunk Size: 128
  4280. Chunk Definition Offset: 0x5d29b0
  4281. {
  4282. real_fraction magnetism friction#how much the crosshair slows over enemies
  4283. real_fraction magnetism adhesion#how much the crosshair sticks to enemies
  4284. real_fraction inconsequential target scale#scales magnetism level for inconsequential targets like infection forms
  4285. pad[52]
  4286. real look acceleration time:seconds#time for a pegged look to reach maximum effect
  4287. real look acceleration scale#maximum effect of a pegged look (scales last value in the look function below)
  4288. real_fraction look peg threshold [0,1]#magnitude of yaw for pegged acceleration to kick in
  4289. real look default pitch rate:degrees
  4290. real look default yaw rate:degrees
  4291. real look autolevelling scale#1 is fast, 0 is none, >1 will probably be really fast
  4292. pad[20]
  4293. short_integer minimum weapon swap ticks#amount of time player needs to hold down ACTION to pick up a new weapon
  4294. short_integer minimum autolevelling ticks#amount of time player needs to move and not look up or down for autolevelling to kick in
  4295. angle minimum angle for vehicle flipping#0 means the vehicle's up vector is along the ground, 90 means the up vector is pointing straight up:degrees
  4296. block look function
  4297. {
  4298. Name: look_function_block
  4299. Max Chunks: 16
  4300. Chunk Size: 4
  4301. Max Chunks x Chunk Size: 64
  4302. Chunk Definition Offset: 0x5d2968
  4303. {
  4304. real scale
  4305. }
  4306. }
  4307. }
  4308. }
  4309. block difficulty
  4310. {
  4311. Name: difficulty_block
  4312. Max Chunks: 1
  4313. Chunk Size: 644
  4314. Max Chunks x Chunk Size: 644
  4315. Chunk Definition Offset: 0x5d23a8
  4316. {
  4317. explanation health
  4318. {
  4319. Dialog Data Offset: 0x4d17ac
  4320. {
  4321. scale values for enemy health and damage settings
  4322. }
  4323. }
  4324. real easy enemy damage#enemy damage multiplier on easy difficulty
  4325. real normal enemy damage#enemy damage multiplier on normal difficulty
  4326. real hard enemy damage#enemy damage multiplier on hard difficulty
  4327. real imposs. enemy damage#enemy damage multiplier on impossible difficulty
  4328. real easy enemy vitality#enemy maximum body vitality scale on easy difficulty
  4329. real normal enemy vitality#enemy maximum body vitality scale on normal difficulty
  4330. real hard enemy vitality#enemy maximum body vitality scale on hard difficulty
  4331. real imposs. enemy vitality#enemy maximum body vitality scale on impossible difficulty
  4332. real easy enemy shield#enemy maximum shield vitality scale on easy difficulty
  4333. real normal enemy shield#enemy maximum shield vitality scale on normal difficulty
  4334. real hard enemy shield#enemy maximum shield vitality scale on hard difficulty
  4335. real imposs. enemy shield#enemy maximum shield vitality scale on impossible difficulty
  4336. real easy enemy recharge#enemy shield recharge scale on easy difficulty
  4337. real normal enemy recharge#enemy shield recharge scale on normal difficulty
  4338. real hard enemy recharge#enemy shield recharge scale on hard difficulty
  4339. real imposs. enemy recharge#enemy shield recharge scale on impossible difficulty
  4340. real easy friend damage#friend damage multiplier on easy difficulty
  4341. real normal friend damage#friend damage multiplier on normal difficulty
  4342. real hard friend damage#friend damage multiplier on hard difficulty
  4343. real imposs. friend damage#friend damage multiplier on impossible difficulty
  4344. real easy friend vitality#friend maximum body vitality scale on easy difficulty
  4345. real normal friend vitality#friend maximum body vitality scale on normal difficulty
  4346. real hard friend vitality#friend maximum body vitality scale on hard difficulty
  4347. real imposs. friend vitality#friend maximum body vitality scale on impossible difficulty
  4348. real easy friend shield#friend maximum shield vitality scale on easy difficulty
  4349. real normal friend shield#friend maximum shield vitality scale on normal difficulty
  4350. real hard friend shield#friend maximum shield vitality scale on hard difficulty
  4351. real imposs. friend shield#friend maximum shield vitality scale on impossible difficulty
  4352. real easy friend recharge#friend shield recharge scale on easy difficulty
  4353. real normal friend recharge#friend shield recharge scale on normal difficulty
  4354. real hard friend recharge#friend shield recharge scale on hard difficulty
  4355. real imposs. friend recharge#friend shield recharge scale on impossible difficulty
  4356. real easy infection forms#toughness of infection forms (may be negative) on easy difficulty
  4357. real normal infection forms#toughness of infection forms (may be negative) on normal difficulty
  4358. real hard infection forms#toughness of infection forms (may be negative) on hard difficulty
  4359. real imposs. infection forms#toughness of infection forms (may be negative) on impossible difficulty
  4360. pad[16]
  4361. explanation ranged fire
  4362. {
  4363. Dialog Data Offset: 0x4d0c5c
  4364. {
  4365. difficulty-affecting values for enemy ranged combat settings
  4366. }
  4367. }
  4368. real easy rate of fire#enemy rate of fire scale on easy difficulty
  4369. real normal rate of fire#enemy rate of fire scale on normal difficulty
  4370. real hard rate of fire#enemy rate of fire scale on hard difficulty
  4371. real imposs. rate of fire#enemy rate of fire scale on impossible difficulty
  4372. real easy projectile error#enemy projectile error scale, as a fraction of their base firing error. on easy difficulty
  4373. real normal projectile error#enemy projectile error scale, as a fraction of their base firing error. on normal difficulty
  4374. real hard projectile error#enemy projectile error scale, as a fraction of their base firing error. on hard difficulty
  4375. real imposs. projectile error#enemy projectile error scale, as a fraction of their base firing error. on impossible difficulty
  4376. real easy burst error#enemy burst error scale; reduces intra-burst shot distance. on easy difficulty
  4377. real normal burst error#enemy burst error scale; reduces intra-burst shot distance. on normal difficulty
  4378. real hard burst error#enemy burst error scale; reduces intra-burst shot distance. on hard difficulty
  4379. real imposs. burst error#enemy burst error scale; reduces intra-burst shot distance. on impossible difficulty
  4380. real easy new target delay#enemy new-target delay scale factor. on easy difficulty
  4381. real normal new target delay#enemy new-target delay scale factor. on normal difficulty
  4382. real hard new target delay#enemy new-target delay scale factor. on hard difficulty
  4383. real imposs. new target delay#enemy new-target delay scale factor. on impossible difficulty
  4384. real easy burst separation#delay time between bursts scale factor for enemies. on easy difficulty
  4385. real normal burst separation#delay time between bursts scale factor for enemies. on normal difficulty
  4386. real hard burst separation#delay time between bursts scale factor for enemies. on hard difficulty
  4387. real imposs. burst separation#delay time between bursts scale factor for enemies. on impossible difficulty
  4388. real easy target tracking#additional target tracking fraction for enemies. on easy difficulty
  4389. real normal target tracking#additional target tracking fraction for enemies. on normal difficulty
  4390. real hard target tracking#additional target tracking fraction for enemies. on hard difficulty
  4391. real imposs. target tracking#additional target tracking fraction for enemies. on impossible difficulty
  4392. real easy target leading#additional target leading fraction for enemies. on easy difficulty
  4393. real normal target leading#additional target leading fraction for enemies. on normal difficulty
  4394. real hard target leading#additional target leading fraction for enemies. on hard difficulty
  4395. real imposs. target leading#additional target leading fraction for enemies. on impossible difficulty
  4396. real easy overcharge chance#overcharge chance scale factor for enemies. on easy difficulty
  4397. real normal overcharge chance#overcharge chance scale factor for enemies. on normal difficulty
  4398. real hard overcharge chance#overcharge chance scale factor for enemies. on hard difficulty
  4399. real imposs. overcharge chance#overcharge chance scale factor for enemies. on impossible difficulty
  4400. real easy special fire delay#delay between special-fire shots (overcharge, banshee bombs) scale factor for enemies. on easy difficulty
  4401. real normal special fire delay#delay between special-fire shots (overcharge, banshee bombs) scale factor for enemies. on normal difficulty
  4402. real hard special fire delay#delay between special-fire shots (overcharge, banshee bombs) scale factor for enemies. on hard difficulty
  4403. real imposs. special fire delay#delay between special-fire shots (overcharge, banshee bombs) scale factor for enemies. on impossible difficulty
  4404. real easy guidance vs player#guidance velocity scale factor for all projectiles targeted on a player. on easy difficulty
  4405. real normal guidance vs player#guidance velocity scale factor for all projectiles targeted on a player. on normal difficulty
  4406. real hard guidance vs player#guidance velocity scale factor for all projectiles targeted on a player. on hard difficulty
  4407. real imposs. guidance vs player#guidance velocity scale factor for all projectiles targeted on a player. on impossible difficulty
  4408. real easy melee delay base#delay period added to all melee attacks, even when berserk. on easy difficulty
  4409. real normal melee delay base#delay period added to all melee attacks, even when berserk. on normal difficulty
  4410. real hard melee delay base#delay period added to all melee attacks, even when berserk. on hard difficulty
  4411. real imposs. melee delay base#delay period added to all melee attacks, even when berserk. on impossible difficulty
  4412. real easy melee delay scale#multiplier for all existing non-berserk melee delay times. on easy difficulty
  4413. real normal melee delay scale#multiplier for all existing non-berserk melee delay times. on normal difficulty
  4414. real hard melee delay scale#multiplier for all existing non-berserk melee delay times. on hard difficulty
  4415. real imposs. melee delay scale#multiplier for all existing non-berserk melee delay times. on impossible difficulty
  4416. pad[16]
  4417. explanation grenades
  4418. {
  4419. Dialog Data Offset: 0x4cf8e0
  4420. {
  4421. difficulty-affecting values for enemy grenade behavior
  4422. }
  4423. }
  4424. real easy grenade chance scale#scale factor affecting the desicions to throw a grenade. on easy difficulty
  4425. real normal grenade chance scale#scale factor affecting the desicions to throw a grenade. on normal difficulty
  4426. real hard grenade chance scale#scale factor affecting the desicions to throw a grenade. on hard difficulty
  4427. real imposs. grenade chance scale#scale factor affecting the desicions to throw a grenade. on impossible difficulty
  4428. real easy grenade timer scale#scale factor affecting the delay period between grenades thrown from the same encounter (lower is more often). on easy difficulty
  4429. real normal grenade timer scale#scale factor affecting the delay period between grenades thrown from the same encounter (lower is more often). on normal difficulty
  4430. real hard grenade timer scale#scale factor affecting the delay period between grenades thrown from the same encounter (lower is more often). on hard difficulty
  4431. real imposs. grenade timer scale#scale factor affecting the delay period between grenades thrown from the same encounter (lower is more often). on impossible difficulty
  4432. pad[16]
  4433. pad[16]
  4434. pad[16]
  4435. explanation placement
  4436. {
  4437. Dialog Data Offset: 0x4cf46c
  4438. {
  4439. difficulty-affecting values for enemy placement
  4440. }
  4441. }
  4442. real easy major upgrade (normal)#fraction of actors upgraded to their major variant. on easy difficulty
  4443. real normal major upgrade (normal)#fraction of actors upgraded to their major variant. on normal difficulty
  4444. real hard major upgrade (normal)#fraction of actors upgraded to their major variant. on hard difficulty
  4445. real imposs. major upgrade (normal)#fraction of actors upgraded to their major variant. on impossible difficulty
  4446. real easy major upgrade (few)#fraction of actors upgraded to their major variant when mix = normal. on easy difficulty
  4447. real normal major upgrade (few)#fraction of actors upgraded to their major variant when mix = normal. on normal difficulty
  4448. real hard major upgrade (few)#fraction of actors upgraded to their major variant when mix = normal. on hard difficulty
  4449. real imposs. major upgrade (few)#fraction of actors upgraded to their major variant when mix = normal. on impossible difficulty
  4450. real easy major upgrade (many)#fraction of actors upgraded to their major variant when mix = many. on easy difficulty
  4451. real normal major upgrade (many)#fraction of actors upgraded to their major variant when mix = many. on normal difficulty
  4452. real hard major upgrade (many)#fraction of actors upgraded to their major variant when mix = many. on hard difficulty
  4453. real imposs. major upgrade (many)#fraction of actors upgraded to their major variant when mix = many. on impossible difficulty
  4454. pad[16]
  4455. pad[16]
  4456. pad[16]
  4457. pad[16]
  4458. pad[84]
  4459. }
  4460. }
  4461. block grenades
  4462. {
  4463. Name: grenades_block
  4464. Max Chunks: 2
  4465. Chunk Size: 68
  4466. Max Chunks x Chunk Size: 136
  4467. Chunk Definition Offset: 0x5d2328
  4468. {
  4469. short_integer maximum count
  4470. short_integer mp spawn default
  4471. tag reference throwing effect
  4472. {
  4473. Supported tag class category: effe
  4474. }
  4475. tag reference hud interface
  4476. {
  4477. Supported tag class category: grhi
  4478. }
  4479. tag reference equipment
  4480. {
  4481. Supported tag class category: eqip
  4482. }
  4483. tag reference projectile
  4484. {
  4485. Supported tag class category: proj
  4486. }
  4487. }
  4488. }
  4489. block rasterizer data
  4490. {
  4491. Name: rasterizer_data_block
  4492. Max Chunks: 1
  4493. Chunk Size: 428
  4494. Max Chunks x Chunk Size: 428
  4495. Chunk Definition Offset: 0x5d1fd0
  4496. {
  4497. explanation function textures
  4498. {
  4499. Dialog Data Offset: 0x4d1d30
  4500. {
  4501. Used internally by the rasterizer. (Do not change unless you know what you're doing!)
  4502. }
  4503. }
  4504. tag reference distance attenuation
  4505. {
  4506. Supported tag class category: bitm
  4507. }
  4508. tag reference vector normalization
  4509. {
  4510. Supported tag class category: bitm
  4511. }
  4512. tag reference atmospheric fog density
  4513. {
  4514. Supported tag class category: bitm
  4515. }
  4516. tag reference planar fog density
  4517. {
  4518. Supported tag class category: bitm
  4519. }
  4520. tag reference linear corner fade#used for shadows
  4521. {
  4522. Supported tag class category: bitm
  4523. }
  4524. tag reference active camouflage distortion
  4525. {
  4526. Supported tag class category: bitm
  4527. }
  4528. tag reference glow
  4529. {
  4530. Supported tag class category: bitm
  4531. }
  4532. pad[60]
  4533. explanation default textures
  4534. {
  4535. Dialog Data Offset: 0x4d1c10
  4536. {
  4537. Used internally by the rasterizer - additive, multiplicative, detail, vector. (Do not change ever, period.)
  4538. }
  4539. }
  4540. tag reference default 2D
  4541. {
  4542. Supported tag class category: bitm
  4543. }
  4544. tag reference default 3D
  4545. {
  4546. Supported tag class category: bitm
  4547. }
  4548. tag reference default cube map
  4549. {
  4550. Supported tag class category: bitm
  4551. }
  4552. explanation experimental textures
  4553. {
  4554. Dialog Data Offset: 0x4d1b80
  4555. {
  4556. Used internally by the rasterizer. (Used by Bernie's experimental shaders.)
  4557. }
  4558. }
  4559. tag reference test 0
  4560. {
  4561. Supported tag class category: bitm
  4562. }
  4563. tag reference test 1
  4564. {
  4565. Supported tag class category: bitm
  4566. }
  4567. tag reference test 2
  4568. {
  4569. Supported tag class category: bitm
  4570. }
  4571. tag reference test 3
  4572. {
  4573. Supported tag class category: bitm
  4574. }
  4575. explanation video effect textures
  4576. {
  4577. Dialog Data Offset: 0x4d1b34
  4578. {
  4579. Used in cinematics.
  4580. }
  4581. }
  4582. tag reference video scanline map
  4583. {
  4584. Supported tag class category: bitm
  4585. }
  4586. tag reference video noise map
  4587. {
  4588. Supported tag class category: bitm
  4589. }
  4590. pad[52]
  4591. explanation active camouflage
  4592. {
  4593. Dialog Data Offset: 0x494b11
  4594. {
  4595.  
  4596. }
  4597. }
  4598. word_flags flags
  4599. {
  4600. tint edge density
  4601. }
  4602. pad[2]
  4603. real refraction amount:pixels
  4604. real distance falloff
  4605. real_rgb_color tint color
  4606. real hyper-stealth refraction:pixels
  4607. real hyper-stealth distance falloff
  4608. real_rgb_color hyper-stealth tint color
  4609. explanation PC textures
  4610. {
  4611. Dialog Data Offset: 0x4d1a40
  4612. {
  4613. The PC can't use 3D textures, so we use this instead.
  4614. }
  4615. }
  4616. tag reference distance attenuation 2D#the pc can't use 3d textures, so we use this instead
  4617. {
  4618. Supported tag class category: bitm
  4619. }
  4620. }
  4621. }
  4622. block interface bitmaps
  4623. {
  4624. Name: interface_tag_references
  4625. Max Chunks: 1
  4626. Chunk Size: 304
  4627. Max Chunks x Chunk Size: 304
  4628. Chunk Definition Offset: 0x5d2198
  4629. {
  4630. tag reference font system
  4631. {
  4632. Supported tag class category: font
  4633. }
  4634. tag reference font terminal
  4635. {
  4636. Supported tag class category: font
  4637. }
  4638. tag reference screen color table
  4639. {
  4640. Supported tag class category: colo
  4641. }
  4642. tag reference hud color table
  4643. {
  4644. Supported tag class category: colo
  4645. }
  4646. tag reference editor color table
  4647. {
  4648. Supported tag class category: colo
  4649. }
  4650. tag reference dialog color table
  4651. {
  4652. Supported tag class category: colo
  4653. }
  4654. tag reference hud globals
  4655. {
  4656. Supported tag class category: hudg
  4657. }
  4658. tag reference motion sensor sweep bitmap
  4659. {
  4660. Supported tag class category: bitm
  4661. }
  4662. tag reference motion sensor sweep bitmap mask
  4663. {
  4664. Supported tag class category: bitm
  4665. }
  4666. tag reference multiplayer hud bitmap
  4667. {
  4668. Supported tag class category: bitm
  4669. }
  4670. tag reference localization
  4671. {
  4672. Supported tag class category: str#
  4673. }
  4674. tag reference hud digits definition
  4675. {
  4676. Supported tag class category: hud#
  4677. }
  4678. tag reference motion sensor blip bitmap
  4679. {
  4680. Supported tag class category: bitm
  4681. }
  4682. tag reference interface goo map1
  4683. {
  4684. Supported tag class category: bitm
  4685. }
  4686. tag reference interface goo map2
  4687. {
  4688. Supported tag class category: bitm
  4689. }
  4690. tag reference interface goo map3
  4691. {
  4692. Supported tag class category: bitm
  4693. }
  4694. pad[48]
  4695. }
  4696. }
  4697. block weapon list (update _weapon_list enum in game_globals.h)
  4698. {
  4699. Name: cheat_weapons_block
  4700. Max Chunks: 20
  4701. Chunk Size: 16
  4702. Max Chunks x Chunk Size: 320
  4703. Chunk Definition Offset: 0x5d229c
  4704. {
  4705. tag reference weapon^
  4706. {
  4707. Supported tag class category: item
  4708. }
  4709. }
  4710. }
  4711. block cheat powerups
  4712. {
  4713. Name: cheat_powerups_block
  4714. Max Chunks: 20
  4715. Chunk Size: 16
  4716. Max Chunks x Chunk Size: 320
  4717. Chunk Definition Offset: 0x5d22e0
  4718. {
  4719. tag reference powerup^
  4720. {
  4721. Supported tag class category: eqip
  4722. }
  4723. }
  4724. }
  4725. block multiplayer information
  4726. {
  4727. Name: multiplayer_information_block
  4728. Max Chunks: 1
  4729. Chunk Size: 160
  4730. Max Chunks x Chunk Size: 160
  4731. Chunk Definition Offset: 0x5d1c30
  4732. {
  4733. tag reference flag
  4734. {
  4735. Supported tag class category: item
  4736. }
  4737. tag reference unit
  4738. {
  4739. Supported tag class category: unit
  4740. }
  4741. block vehicles
  4742. {
  4743. Name: vehicles_block
  4744. Max Chunks: 20
  4745. Chunk Size: 16
  4746. Max Chunks x Chunk Size: 320
  4747. Chunk Definition Offset: 0x5d1b8c
  4748. {
  4749. tag reference vehicle^
  4750. {
  4751. Supported tag class category: vehi
  4752. }
  4753. }
  4754. }
  4755. tag reference hill shader
  4756. {
  4757. Supported tag class category: shdr
  4758. }
  4759. tag reference flag shader
  4760. {
  4761. Supported tag class category: shdr
  4762. }
  4763. tag reference ball
  4764. {
  4765. Supported tag class category: item
  4766. }
  4767. block sounds
  4768. {
  4769. Name: sounds_block
  4770. Max Chunks: 60
  4771. Chunk Size: 16
  4772. Max Chunks x Chunk Size: 960
  4773. Chunk Definition Offset: 0x5d1bdc
  4774. {
  4775. tag reference sound^
  4776. {
  4777. Supported tag class category: snd!
  4778. }
  4779. }
  4780. }
  4781. pad[56]
  4782. }
  4783. }
  4784. block player information
  4785. {
  4786. Name: player_information_block
  4787. Max Chunks: 1
  4788. Chunk Size: 244
  4789. Max Chunks x Chunk Size: 244
  4790. Chunk Definition Offset: 0x5d1cc8
  4791. {
  4792. tag reference unit
  4793. {
  4794. Supported tag class category: unit
  4795. }
  4796. pad[28]
  4797. real walking speed:world units per second
  4798. real "double speed" multiplier:[1.0,+inf]
  4799. real run forward:world units per second
  4800. real run backward:world units per second
  4801. real run sideways:world units per second
  4802. real run acceleration:world units per second squared
  4803. real sneak forward:world units per second
  4804. real sneak backward:world units per second
  4805. real sneak sideways:world units per second
  4806. real sneak acceleration:world units per second squared
  4807. real airborne acceleration:world units per second squared
  4808. real speed multiplier: multiplayer only
  4809. pad[12]
  4810. real_point_3d grenade origin
  4811. pad[12]
  4812. real stun movement penalty:[0,1]#1.0 prevents moving while stunned
  4813. real stun turning penalty:[0,1]#1.0 prevents turning while stunned
  4814. real stun jumping penalty:[0,1]#1.0 prevents jumping while stunned
  4815. real minimum stun time:seconds#all stunning damage will last for at least this long
  4816. real maximum stun time:seconds#no stunning damage will last for longer than this
  4817. pad[8]
  4818. real_bounds first person idle time:seconds
  4819. real_fraction first person skip fraction:[0,1]
  4820. pad[16]
  4821. tag reference coop respawn effect
  4822. {
  4823. Supported tag class category: effe
  4824. }
  4825. pad[44]
  4826. }
  4827. }
  4828. block first person interface
  4829. {
  4830. Name: first_person_interface_block
  4831. Max Chunks: 1
  4832. Chunk Size: 192
  4833. Max Chunks x Chunk Size: 192
  4834. Chunk Definition Offset: 0x5d1e60
  4835. {
  4836. tag reference first person hands
  4837. {
  4838. Supported tag class category: mod2
  4839. }
  4840. tag reference base bitmap
  4841. {
  4842. Supported tag class category: bitm
  4843. }
  4844. tag reference shield meter
  4845. {
  4846. Supported tag class category: metr
  4847. }
  4848. point_2d shield meter origin
  4849. tag reference body meter
  4850. {
  4851. Supported tag class category: metr
  4852. }
  4853. point_2d body meter origin
  4854. tag reference night-vision OFF->ON effect
  4855. {
  4856. Supported tag class category: effe
  4857. }
  4858. tag reference night-vision ON->OFF effect
  4859. {
  4860. Supported tag class category: effe
  4861. }
  4862. pad[88]
  4863. }
  4864. }
  4865. block falling damage
  4866. {
  4867. Name: falling_damage_block
  4868. Max Chunks: 1
  4869. Chunk Size: 152
  4870. Max Chunks x Chunk Size: 152
  4871. Chunk Definition Offset: 0x5d1f08
  4872. {
  4873. pad[8]
  4874. real_bounds harmful falling distance:world units
  4875. tag reference falling damage
  4876. {
  4877. Supported tag class category: jpt!
  4878. }
  4879. pad[8]
  4880. real maximum falling distance:world units
  4881. tag reference distance damage
  4882. {
  4883. Supported tag class category: jpt!
  4884. }
  4885. tag reference vehicle environemtn collision damage effect
  4886. {
  4887. Supported tag class category: jpt!
  4888. }
  4889. tag reference vehicle killed unit damage effect
  4890. {
  4891. Supported tag class category: jpt!
  4892. }
  4893. tag reference vehicle collision damage
  4894. {
  4895. Supported tag class category: jpt!
  4896. }
  4897. tag reference flaming death damage
  4898. {
  4899. Supported tag class category: jpt!
  4900. }
  4901. pad[28]
  4902. }
  4903. }
  4904. block materials
  4905. {
  4906. Name: materials_block
  4907. Max Chunks: 33
  4908. Chunk Size: 884
  4909. Max Chunks x Chunk Size: 29172
  4910. Chunk Definition Offset: 0x5d19c0
  4911. {
  4912. pad[100]
  4913. pad[48]
  4914. explanation vehicle terrain parameters
  4915. {
  4916. Dialog Data Offset: 0x4d2670
  4917. {
  4918. the following fields modify the way a vehicle drives over terrain of this material type.
  4919. }
  4920. }
  4921. real ground friction scale#fraction of original velocity parallel to the ground after one tick
  4922. real ground friction normal k1 scale#cosine of angle at which friction falls off
  4923. real ground friction normal k0 scale#cosine of angle at which friction is zero
  4924. real ground depth scale#depth a point mass rests in the ground
  4925. real ground damp fraction scale#fraction of original velocity perpendicular to the ground after one tick
  4926. pad[76]
  4927. pad[480]
  4928. explanation breakable surface parameters
  4929. {
  4930. Dialog Data Offset: 0x494b11
  4931. {
  4932.  
  4933. }
  4934. }
  4935. real maximum vitality
  4936. pad[8]
  4937. pad[4]
  4938. tag reference effect
  4939. {
  4940. Supported tag class category: effe
  4941. }
  4942. tag reference sound
  4943. {
  4944. Supported tag class category: snd!
  4945. }
  4946. pad[24]
  4947. block particle effects
  4948. {
  4949. Name: breakable_surface_particle_effect_block
  4950. Max Chunks: 8
  4951. Chunk Size: 128
  4952. Max Chunks x Chunk Size: 1024
  4953. Chunk Definition Offset: 0x5d18f8
  4954. {
  4955. tag reference particle type^
  4956. {
  4957. Supported tag class category: part
  4958. }
  4959. long_flags flags
  4960. {
  4961. interpolate color in hsv
  4962. ...more colors
  4963. }
  4964. real density:world units
  4965. real_bounds velocity scale#scales initial velocity
  4966. pad[4]
  4967. angle_bounds angular velocity:degrees per second
  4968. pad[8]
  4969. real_bounds radius:world units#particle radius
  4970. pad[8]
  4971. real_argb_color tint lower bound
  4972. real_argb_color tint upper bound
  4973. pad[28]
  4974. }
  4975. }
  4976. pad[60]
  4977. tag reference melee hit sound
  4978. {
  4979. Supported tag class category: snd!
  4980. }
  4981. }
  4982. }
  4983. block playlist members
  4984. {
  4985. Name: playlist_autogenerate_choice_block
  4986. Max Chunks: 20
  4987. Chunk Size: 148
  4988. Max Chunks x Chunk Size: 2960
  4989. Chunk Definition Offset: 0x5d1ae8
  4990. {
  4991. string map name
  4992. string game variant
  4993. long_integer minimum experience
  4994. long_integer maximum experience
  4995. long_integer minimum player count
  4996. long_integer maximum player count
  4997. long_integer rating
  4998. pad[64]
  4999. }
  5000. }
  5001. POORLY-DETERMINED MIN FILESIZE OF matg (including 64-byte header): 492
  5002. POORLY-DETERMINED MAX FILESIZE OF matg (including 64-byte header): 54898
  5003.  
  5004. Tag Definition Offset: 0x5b9588
  5005. Extension: sound
  5006. Unknown: 8
  5007. Class: snd!
  5008. No superclass
  5009. Version: 4
  5010. Dialog Data Offset: 0x4382b0
  5011. Definition Block:
  5012. {
  5013. Name: sound
  5014. Count: 1
  5015. Size: 164
  5016. Chunks Offset: 0x5b93d0
  5017. }
  5018. long_flags flags
  5019. {
  5020. fit to adpcm blocksize
  5021. split long sound into permutations
  5022. }
  5023. enum class
  5024. {
  5025. projectile_impact
  5026. projectile_detonation
  5027.  
  5028.  
  5029. weapon_fire
  5030. weapon_ready
  5031. weapon_reload
  5032. weapon_empty
  5033. weapon_charge
  5034. weapon_overheat
  5035. weapon_idle
  5036.  
  5037.  
  5038. object_impacts
  5039. particle_impacts
  5040. slow_particle_impacts
  5041.  
  5042.  
  5043. unit_footsteps
  5044. unit_dialog
  5045.  
  5046.  
  5047. vehicle_collision
  5048. vehicle_engine
  5049.  
  5050.  
  5051. device_door
  5052. device_force_field
  5053. device_machinery
  5054. device_nature
  5055. device_computers
  5056.  
  5057. music
  5058. ambient_nature
  5059. ambient_machinery
  5060. ambient_computers
  5061.  
  5062.  
  5063.  
  5064. first_person_damage
  5065.  
  5066.  
  5067.  
  5068.  
  5069. scripted_dialog_player
  5070. scripted_effect
  5071. scripted_dialog_other
  5072. scripted_dialog_force_unspatialized
  5073.  
  5074.  
  5075. game_event
  5076. }
  5077. enum sample rate*
  5078. {
  5079. 22kHz
  5080. 44kHz
  5081. }
  5082. real minimum distance:world units#the distance below which this sound no longer gets louder
  5083. real maximum distance:world units#the distance beyond which this sound is no longer audible
  5084. real_fraction skip fraction#fraction of requests to play this sound that will be ignored (0 means always play.)
  5085. explanation randomization
  5086. {
  5087. Dialog Data Offset: 0x4a16f8
  5088. {
  5089. these settings control random variation of volume and pitch.
  5090. }
  5091. }
  5092. real_bounds random pitch bounds#the sound's pitch will be randomly selected and will be in this range. (1.0 is the recorded pitch.)
  5093. angle inner cone angle:degrees#within the cone defined by this angle and the sound's direction, the sound plays with a gain of 1.0.
  5094. angle outer cone angle:degrees#outside the cone defined by this angle and the sound's direction, the sound plays with a gain of OUTER CONE GAIN. (0 means the sound does not attenuate with direction.)
  5095. real_fraction outer cone gain#the gain to use when the sound is directed away from the listener
  5096. real gain modifier
  5097. real maximum bend per second
  5098. pad[12]
  5099. explanation when scale is ZERO
  5100. {
  5101. Dialog Data Offset: 0x4a13b8
  5102. {
  5103. as the sound's input scale changes from zero to one, these modifiers move between the two values specified here. the sound will play using the current scale modifier multiplied by the value specified above. (0 values are ignored.)
  5104. }
  5105. }
  5106. real skip fraction modifier
  5107. real gain modifier
  5108. real pitch modifier
  5109. pad[12]
  5110. explanation when scale is ONE
  5111. {
  5112. Dialog Data Offset: 0x4a13b8
  5113. {
  5114. as the sound's input scale changes from zero to one, these modifiers move between the two values specified here. the sound will play using the current scale modifier multiplied by the value specified above. (0 values are ignored.)
  5115. }
  5116. }
  5117. real skip fraction modifier
  5118. real gain modifier
  5119. real pitch modifier
  5120. pad[12]
  5121. explanation import properties
  5122. {
  5123. Dialog Data Offset: 0x494b11
  5124. {
  5125.  
  5126. }
  5127. }
  5128. enum encoding*
  5129. {
  5130. mono
  5131. stereo
  5132. }
  5133. enum compression*
  5134. {
  5135. none
  5136. xbox adpcm
  5137. ima adpcm
  5138. ogg
  5139. }
  5140. tag reference promotion sound
  5141. {
  5142. Supported tag class category: snd!
  5143. }
  5144. short_integer promotion count#when there are this many instances of the sound, promote to the new sound.
  5145. pad[2]
  5146. pad[20]
  5147. block pitch ranges#pitch ranges allow multiple samples to represent the same sound at different pitches
  5148. {
  5149. Name: sound_pitch_range_block
  5150. Max Chunks: 8
  5151. Chunk Size: 72
  5152. Max Chunks x Chunk Size: 576
  5153. Chunk Definition Offset: 0x5b9338
  5154. {
  5155. string name*#the name of the imported pitch range directory
  5156. explanation pitch control
  5157. {
  5158. Dialog Data Offset: 0x4a19e8
  5159. {
  5160. these settings control what pitches this set of samples represents. if there is only one pitch range, all three values are ignored.
  5161. }
  5162. }
  5163. real natural pitch#the apparent pitch when these samples are played at their recorded pitch.
  5164. real_bounds bend bounds#the range of pitches that will be represented using this sample. this should always contain the natural pitch.
  5165. short_integer actual permutation count*
  5166. pad[2]
  5167. pad[12]
  5168. block permutations#permutations represent equivalent variations of this sound.
  5169. {
  5170. Name: sound_permutations_block
  5171. Max Chunks: 256
  5172. Chunk Size: 124
  5173. Max Chunks x Chunk Size: 31744
  5174. Chunk Definition Offset: 0x5b9290
  5175. {
  5176. string name*^#name of the file from which this sample was imported
  5177. real_fraction skip fraction#fraction of requests to play this permutation that are ignored (a different permutation is selected.)
  5178. real_fraction gain#fraction of recorded volume to play at.
  5179. enum compression*
  5180. {
  5181. none
  5182. xbox adpcm
  5183. ima adpcm
  5184. ogg
  5185. }
  5186. short_integer next permutation index*
  5187. pad[20]
  5188. data samples#sampled sound data
  5189. {
  5190. Definition Name: sound_samples
  5191. Interface Flags: 1
  5192. Max Bytes: 4194304
  5193. Extra Data Offset: 0x37a60
  5194. }
  5195. data mouth data
  5196. {
  5197. Definition Name: sound_mouth_data
  5198. Max Bytes: 8192
  5199. }
  5200. data subtitle data
  5201. {
  5202. Definition Name: sound_subtitle_data
  5203. Max Bytes: 512
  5204. Extra Data Offset: 0x93560
  5205. }
  5206. }
  5207. }
  5208. }
  5209. }
  5210. POORLY-DETERMINED MIN FILESIZE OF snd! (including 64-byte header): 228
  5211. POORLY-DETERMINED MAX FILESIZE OF snd! (including 64-byte header): 4235811
  5212.  
  5213. Tag Definition Offset: 0x5b9868
  5214. Extension: sound_looping
  5215. Unknown: 8
  5216. Class: lsnd
  5217. No superclass
  5218. Version: 3
  5219. Dialog Data Offset: 0x4386f0
  5220. Definition Block:
  5221. {
  5222. Name: sound_looping
  5223. Count: 1
  5224. Size: 84
  5225. Chunks Offset: 0x5b97a8
  5226. }
  5227. long_flags flags
  5228. {
  5229. deafening to AIs#when used as a background stereo track, causes nearby AIs to be unable to hear
  5230. not a loop#this is a collection of permutations strung together that should play once then stop.
  5231. stops music#all other music loops will stop when this one starts.
  5232. }
  5233. explanation when scale is ZERO
  5234. {
  5235. Dialog Data Offset: 0x4a0b20
  5236. {
  5237. as the sound's input scale changes from zero to one, these modifiers move between the two values specified here. the sound will play using the current scale modifier multiplied by the value specified below. (0 values are ignored.)
  5238. }
  5239. }
  5240. real detail sound period
  5241. pad[8]
  5242. explanation when scale is ONE
  5243. {
  5244. Dialog Data Offset: 0x4a0b20
  5245. {
  5246. as the sound's input scale changes from zero to one, these modifiers move between the two values specified here. the sound will play using the current scale modifier multiplied by the value specified below. (0 values are ignored.)
  5247. }
  5248. }
  5249. real detail sound period
  5250. pad[8]
  5251. pad[16]
  5252. tag reference continuous damage effect
  5253. {
  5254. Supported tag class category: cdmg
  5255. }
  5256. block tracks#tracks play in parallel and loop continuously for the duration of the looping sound.
  5257. {
  5258. Name: looping_sound_track_block
  5259. Max Chunks: 4
  5260. Chunk Size: 160
  5261. Max Chunks x Chunk Size: 640
  5262. Chunk Definition Offset: 0x5b9600
  5263. {
  5264. long_flags flags
  5265. {
  5266. fade in at start#the loop sound should fade in while the start sound is playing.
  5267. fade out at stop#the loop sound should fade out while the stop sound is playing.
  5268. fade in alternate#when the sound changes to the alternate version, .
  5269. }
  5270. real_fraction gain
  5271. real fade in duration:seconds
  5272. real fade out duration:seconds
  5273. pad[32]
  5274. tag reference start
  5275. {
  5276. Supported tag class category: snd!
  5277. }
  5278. tag reference loop^
  5279. {
  5280. Supported tag class category: snd!
  5281. }
  5282. tag reference end
  5283. {
  5284. Supported tag class category: snd!
  5285. }
  5286. pad[32]
  5287. tag reference alternate loop
  5288. {
  5289. Supported tag class category: snd!
  5290. }
  5291. tag reference alternate end
  5292. {
  5293. Supported tag class category: snd!
  5294. }
  5295. custom
  5296. {
  5297. Field Class: mply
  5298. }
  5299. }
  5300. }
  5301. block detail sounds#detail sounds play at random throughout the duration of the looping sound.
  5302. {
  5303. Name: looping_sound_detail_block
  5304. Max Chunks: 32
  5305. Chunk Size: 104
  5306. Max Chunks x Chunk Size: 3328
  5307. Chunk Definition Offset: 0x5b96d8
  5308. {
  5309. tag reference sound^
  5310. {
  5311. Supported tag class category: snd!
  5312. }
  5313. explanation frequency of play
  5314. {
  5315. Dialog Data Offset: 0x494b11
  5316. {
  5317.  
  5318. }
  5319. }
  5320. real_bounds random period bounds:seconds#the time between successive playings of this sound will be randomly selected from this range.
  5321. real_fraction gain
  5322. long_flags flags
  5323. {
  5324. don't play with alternate
  5325. don't play without alternate
  5326. }
  5327. pad[48]
  5328. explanation random spatialization
  5329. {
  5330. Dialog Data Offset: 0x4a0ee0
  5331. {
  5332. if the sound specified above is not stereo it will be randomly spatialized according to the following constraints. if both lower and upper bounds are zero for any of the following fields, the sound's position will be randomly selected from all possible directions or distances.
  5333. }
  5334. }
  5335. angle_bounds yaw bounds:degrees#the sound's position along the horizon will be randomly selected from this range.
  5336. angle_bounds pitch bounds:degrees#the sound's position above (positive values) or below (negative values) the horizon will be randomly selected from this range.
  5337. real_bounds distance bounds:world units#the sound's distance (from its spatialized looping sound or from the listener if the looping sound is stereo) will be randomly selected from this range.
  5338. }
  5339. }
  5340. POORLY-DETERMINED MIN FILESIZE OF lsnd (including 64-byte header): 148
  5341. POORLY-DETERMINED MAX FILESIZE OF lsnd (including 64-byte header): 5901
  5342.  
  5343. Tag Definition Offset: 0x5c64d8
  5344. Extension: item
  5345. Unknown: 9
  5346. Class: item
  5347. Superclass: obje
  5348. Version: 2
  5349. Definition Block:
  5350. {
  5351. Name: item
  5352. Count: 1
  5353. Size: 396
  5354. Chunks Offset: 0x5c63b0
  5355. }
  5356. explanation $$$ ITEM $$$
  5357. {
  5358. Dialog Data Offset: 0x494b11
  5359. {
  5360.  
  5361. }
  5362. }
  5363. long_flags flags
  5364. {
  5365. always maintains z up
  5366. destroyed by explosions
  5367. unaffected by gravity
  5368. }
  5369. explanation message-index
  5370. {
  5371. Dialog Data Offset: 0x4b77c0
  5372. {
  5373. This sets which string from tags\ui\hud\hud_item_messages.unicode_string_list to display.
  5374. }
  5375. }
  5376. short_integer message index
  5377. short_integer sort order
  5378. real scale
  5379. short_integer hud message value scale
  5380. pad[2]
  5381. pad[16]
  5382. enum A in
  5383. {
  5384. none
  5385. }
  5386. enum B in
  5387. {
  5388. none
  5389. }
  5390. enum C in
  5391. {
  5392. none
  5393. }
  5394. enum D in
  5395. {
  5396. none
  5397. }
  5398. pad[164]
  5399. tag reference material effects
  5400. {
  5401. Supported tag class category: foot
  5402. }
  5403. tag reference collision sound
  5404. {
  5405. Supported tag class category: snd!
  5406. }
  5407. pad[120]
  5408. real_bounds detonation delay:seconds
  5409. tag reference detonating effect
  5410. {
  5411. Supported tag class category: effe
  5412. }
  5413. tag reference detonation effect
  5414. {
  5415. Supported tag class category: effe
  5416. }
  5417. POORLY-DETERMINED MIN FILESIZE OF item (including 64-byte header): 460
  5418. POORLY-DETERMINED MAX FILESIZE OF item (including 64-byte header): 1480
  5419.  
  5420. Tag Definition Offset: 0x5d17d8
  5421. Extension: equipment
  5422. Unknown: 0
  5423. Class: eqip
  5424. Superclass: item
  5425. Version: 2
  5426. Definition Block:
  5427. {
  5428. Name: equipment
  5429. Count: 1
  5430. Size: 168
  5431. Chunks Offset: 0x5d1760
  5432. }
  5433. enum powerup type
  5434. {
  5435. none
  5436. double speed
  5437. over shield
  5438. active camouflage
  5439. full-spectrum vision
  5440. health
  5441. grenade
  5442. }
  5443. enum grenade type
  5444. {
  5445. human fragmentation
  5446. covenant plasma
  5447. }
  5448. real powerup time:seconds
  5449. tag reference pickup sound
  5450. {
  5451. Supported tag class category: snd!
  5452. }
  5453. pad[144]
  5454. POORLY-DETERMINED MIN FILESIZE OF eqip (including 64-byte header): 232
  5455. POORLY-DETERMINED MAX FILESIZE OF eqip (including 64-byte header): 487
  5456.  
  5457. Tag Definition Offset: 0x5d16c0
  5458. Extension: flag
  5459. Unknown: 0
  5460. Class: flag
  5461. No superclass
  5462. Version: 1
  5463. Definition Block:
  5464. {
  5465. Name: flag
  5466. Count: 1
  5467. Size: 96
  5468. Chunks Offset: 0x5d15d0
  5469. }
  5470. long_flags flags
  5471. {
  5472. }
  5473. enum trailing edge shape
  5474. {
  5475. flat
  5476. concave triangular
  5477. convex triangular
  5478. trapezoid, short top
  5479. trapezoid, short bottom
  5480. }
  5481. short_integer trailing edge shape offset:vertices#zero places the shape exactly on the trailing edge, positive numbers push it off the edge
  5482. enum attached edge shape
  5483. {
  5484. flat
  5485. concave triangular
  5486. }
  5487. pad[2]
  5488. short_integer width:vertices#flag size from attached to trailing edge
  5489. short_integer height:vertices#flag size along the direction of attachment (should be odd)
  5490. real cell width:world units#width of the cell between each pair of vertices
  5491. real cell height:world units#height of the cell between each pair of vertices
  5492. tag reference red flag shader^
  5493. {
  5494. Supported tag class category: shdr
  5495. }
  5496. tag reference physics
  5497. {
  5498. Supported tag class category: pphy
  5499. }
  5500. real wind noise:world units per second^2
  5501. pad[8]
  5502. tag reference blue flag shader^
  5503. {
  5504. Supported tag class category: shdr
  5505. }
  5506. block attachment points#attachment points determine where the flag is attached
  5507. {
  5508. Name: flag_attachment_point_block
  5509. Max Chunks: 5
  5510. Chunk Size: 52
  5511. Max Chunks x Chunk Size: 260
  5512. Chunk Definition Offset: 0x5d1518
  5513. {
  5514. short_integer height_to_next_attachment:vertices#flag vertices between this attachment point and the next
  5515. pad[2]
  5516. pad[16]
  5517. string marker name^
  5518. }
  5519. }
  5520. POORLY-DETERMINED MIN FILESIZE OF flag (including 64-byte header): 160
  5521. POORLY-DETERMINED MAX FILESIZE OF flag (including 64-byte header): 1185
  5522.  
  5523. Tag Definition Offset: 0x5d14b8
  5524. Extension: antenna
  5525. Unknown: 8
  5526. Class: ant!
  5527. No superclass
  5528. Version: 1
  5529. Definition Block:
  5530. {
  5531. Name: antenna
  5532. Count: 1
  5533. Size: 208
  5534. Chunks Offset: 0x5d1410
  5535. Dialog Data 1 Offset: 0x491260
  5536. }
  5537. string attachment marker name#the marker name where the antenna should be attached
  5538. tag reference bitmaps
  5539. {
  5540. Supported tag class category: bitm
  5541. }
  5542. tag reference physics
  5543. {
  5544. Supported tag class category: pphy
  5545. }
  5546. pad[80]
  5547. real_fraction spring strength coefficient#strength of the spring (larger values make the spring stronger)
  5548. real falloff pixels
  5549. real cutoff pixels
  5550. pad[40]
  5551. block vertices
  5552. {
  5553. Name: antenna_vertex_block
  5554. Max Chunks: 20
  5555. Chunk Size: 128
  5556. Max Chunks x Chunk Size: 2560
  5557. Chunk Definition Offset: 0x5d1360
  5558. {
  5559. real_fraction spring strength coefficient#strength of the spring (larger values make the spring stronger)
  5560. pad[24]
  5561. real_euler_angles_2d angles#direction toward next vertex
  5562. real length:world units#distance between this vertex and the next
  5563. short_integer sequence index#bitmap group sequence index for this vertex's texture
  5564. pad[2]
  5565. real_argb_color color#color at this vertex
  5566. real_argb_color LOD color#color at this vertex for the low-LOD line primitives
  5567. pad[40]
  5568. pad[12]
  5569. }
  5570. }
  5571. POORLY-DETERMINED MIN FILESIZE OF ant! (including 64-byte header): 272
  5572. POORLY-DETERMINED MAX FILESIZE OF ant! (including 64-byte header): 3342
  5573.  
  5574. Tag Definition Offset: 0x5d12f0
  5575. Extension: spheroid
  5576. Unknown: 0
  5577. Class: boom
  5578. No superclass
  5579. Version: 1
  5580. Definition Block:
  5581. {
  5582. Name: spheroid
  5583. Count: 1
  5584. Size: 4
  5585. Chunks Offset: 0x5d12a8
  5586. }
  5587. pad[4]
  5588. POORLY-DETERMINED MIN FILESIZE OF boom (including 64-byte header): 68
  5589. POORLY-DETERMINED MAX FILESIZE OF boom (including 64-byte header): 68
  5590.  
  5591. Tag Definition Offset: 0x5d1248
  5592. Extension: weather_particle_system
  5593. Unknown: 8
  5594. Class: rain
  5595. No superclass
  5596. Version: 1
  5597. Dialog Data Offset: 0x491200
  5598. Definition Block:
  5599. {
  5600. Name: weather_particle_system
  5601. Count: 1
  5602. Size: 48
  5603. Chunks Offset: 0x5d11e8
  5604. }
  5605. long_flags flags
  5606. {
  5607. }
  5608. pad[32]
  5609. block particle types
  5610. {
  5611. Name: weather_particle_type_block
  5612. Max Chunks: 8
  5613. Chunk Size: 604
  5614. Max Chunks x Chunk Size: 4832
  5615. Chunk Definition Offset: 0x5d0ef8
  5616. {
  5617. string name^
  5618. long_flags flags
  5619. {
  5620. interpolate colors in hsv
  5621. ... along long hue path
  5622. random rotation
  5623. }
  5624. real fade-in start distance:world units#Particles begin to fade into visibility beyond this distance
  5625. real fade-in end distance:world units#Particles become fully visible beyond this distance
  5626. real fade-out start distance:world units#Particles begin to fade out of visibility beyond this distance
  5627. real fade-out end distance:world units#Particles become fully invisible beyond this distance
  5628. real fade-in start height:world units#Particles begin to fade into visibility above this height
  5629. real fade-in end height:world units#Particles become fully visible above this height
  5630. real fade-out start height:world units#Particles begin to fade out of visibility above this height
  5631. real fade-out end height:world units#Particles become fully invisible above this height
  5632. pad[96]
  5633. real_bounds particle count:particles per cubic world unit
  5634. tag reference physics
  5635. {
  5636. Supported tag class category: pphy
  5637. }
  5638. pad[16]
  5639. real_bounds acceleration magnitude
  5640. real_fraction acceleration turning rate
  5641. real acceleration change rate
  5642. pad[32]
  5643. real_bounds particle radius:world units
  5644. real_bounds animation rate:frames per second
  5645. angle_bounds rotation rate:degrees per second
  5646. pad[32]
  5647. real_argb_color color lower bound
  5648. real_argb_color color upper bound
  5649. pad[64]
  5650. explanation SHADER
  5651. {
  5652. Dialog Data Offset: 0x494b11
  5653. {
  5654.  
  5655. }
  5656. }
  5657. tag reference sprite bitmap
  5658. {
  5659. Supported tag class category: bitm
  5660. }
  5661. enum render mode
  5662. {
  5663. screen facing
  5664. parallel to direction
  5665. perpendicular to direction
  5666. }
  5667. enum render direction source#Render modes that depend on an direction will use this vector.
  5668. {
  5669. from velocity
  5670. from acceleration
  5671. }
  5672. pad[40]
  5673. word_flags shader flags
  5674. {
  5675. sort bias
  5676. nonlinear tint
  5677. don't overdraw fp weapon
  5678. }
  5679. enum framebuffer blend function
  5680. {
  5681. alpha blend
  5682. multiply
  5683. double multiply
  5684. add
  5685. subtract
  5686. component min
  5687. component max
  5688. alpha-multiply add
  5689. }
  5690. enum framebuffer fade mode
  5691. {
  5692. none
  5693. fade when perpendicular
  5694. fade when parallel
  5695. }
  5696. word_flags map flags
  5697. {
  5698. unfiltered
  5699. }
  5700. pad[28]
  5701. explanation Secondary Map
  5702. {
  5703. Dialog Data Offset: 0x4cc2b4
  5704. {
  5705. Optional multitextured second map
  5706. }
  5707. }
  5708. tag reference bitmap
  5709. {
  5710. Supported tag class category: bitm
  5711. }
  5712. enum anchor
  5713. {
  5714. with primary
  5715. with screen space
  5716. zsprite
  5717. }
  5718. word_flags flags
  5719. {
  5720. unfiltered
  5721. }
  5722. enum u-animation source
  5723. {
  5724. none
  5725. A out
  5726. B out
  5727. C out
  5728. D out
  5729. }
  5730. enum u-animation function
  5731. {
  5732. one
  5733. zero
  5734. cosine
  5735. cosine (variable period)
  5736. diagonal wave
  5737. diagonal wave (variable period)
  5738. slide
  5739. slide (variable period)
  5740. noise
  5741. jitter
  5742. wander
  5743. spark
  5744. }
  5745. real u-animation period:seconds#0 defaults to 1
  5746. real u-animation phase
  5747. real u-animation scale:repeats#0 defaults to 1
  5748. enum v-animation source
  5749. {
  5750. none
  5751. A out
  5752. B out
  5753. C out
  5754. D out
  5755. }
  5756. enum v-animation function
  5757. {
  5758. one
  5759. zero
  5760. cosine
  5761. cosine (variable period)
  5762. diagonal wave
  5763. diagonal wave (variable period)
  5764. slide
  5765. slide (variable period)
  5766. noise
  5767. jitter
  5768. wander
  5769. spark
  5770. }
  5771. real v-animation period:seconds#0 defaults to 1
  5772. real v-animation phase
  5773. real v-animation scale:repeats#0 defaults to 1
  5774. enum rotation-animation source
  5775. {
  5776. none
  5777. A out
  5778. B out
  5779. C out
  5780. D out
  5781. }
  5782. enum rotation-animation function
  5783. {
  5784. one
  5785. zero
  5786. cosine
  5787. cosine (variable period)
  5788. diagonal wave
  5789. diagonal wave (variable period)
  5790. slide
  5791. slide (variable period)
  5792. noise
  5793. jitter
  5794. wander
  5795. spark
  5796. }
  5797. real rotation-animation period:seconds#0 defaults to 1
  5798. real rotation-animation phase
  5799. real rotation-animation scale:degrees#0 defaults to 360
  5800. real_point_2d rotation-animation center
  5801. pad[4]
  5802. real zsprite radius scale
  5803. pad[20]
  5804. }
  5805. }
  5806. POORLY-DETERMINED MIN FILESIZE OF rain (including 64-byte header): 112
  5807. POORLY-DETERMINED MAX FILESIZE OF rain (including 64-byte header): 5709
  5808.  
  5809. Tag Definition Offset: 0x5d0e58
  5810. Extension: glow
  5811. Unknown: 8
  5812. Class: glw!
  5813. No superclass
  5814. Version: 1
  5815. Definition Block:
  5816. {
  5817. Name: glow
  5818. Count: 1
  5819. Size: 340
  5820. Chunks Offset: 0x5d0bb8
  5821. Dialog Data 1 Offset: 0x490fa0
  5822. }
  5823. string attachment marker#the marker name that the glow should be attached to
  5824. short_integer number of particles#the number of particles that comprise the glow system
  5825. enum boundary effect#particles behavior on reaching the end of an object
  5826. {
  5827. bounce
  5828. wrap
  5829. }
  5830. enum normal particle distribution#distribution of the normal particles about the object
  5831. {
  5832. distributed randomly
  5833. distributed uniformly
  5834. }
  5835. enum trailing particle distribution#distribution of the trailing particles about the object
  5836. {
  5837. emit vertically
  5838. emit normal (up)
  5839. emit randomly
  5840. }
  5841. long_flags glow flags
  5842. {
  5843. modify particle color in range
  5844. particles move backwards
  5845. partices move in both directions
  5846. trailing particles fade over time
  5847. trailing particles shrink over time
  5848. trailing particles slow over time
  5849. }
  5850. pad[28]
  5851. pad[2]
  5852. pad[2]
  5853. pad[4]
  5854. enum attachment
  5855. {
  5856. NONE
  5857. A out
  5858. B out
  5859. C out
  5860. D out
  5861. }
  5862. pad[2]
  5863. real particle rotational velocity#radians per second
  5864. real particle rot vel mul low#multiplied by overall velocity; only used if controlled by attachment
  5865. real particle rot vel mul high#multiplied by overall velocity; only used if controlled by attachment
  5866. enum attachment
  5867. {
  5868. NONE
  5869. A out
  5870. B out
  5871. C out
  5872. D out
  5873. }
  5874. pad[2]
  5875. real effect rotational velocity#in radians per second
  5876. real effect rot vel mul low#multiplied by overall velocity; only used if controlled by attachment
  5877. real effect rot vel mul high#multiplied by overall velocity; only used if controlled by attachment
  5878. enum attachment
  5879. {
  5880. NONE
  5881. A out
  5882. B out
  5883. C out
  5884. D out
  5885. }
  5886. pad[2]
  5887. real effect translational velocity#in world units per second
  5888. real effect trans vel mul low#multiplied by overall velocity; only used if controlled by attachment
  5889. real effect trans vel mul high#multiplied by overall velocity; only used if controlled by attachment
  5890. enum attachment
  5891. {
  5892. NONE
  5893. A out
  5894. B out
  5895. C out
  5896. D out
  5897. }
  5898. pad[2]
  5899. real min distance particle to object#in world units
  5900. real max distance particle to object#in world units
  5901. real distance to object mul low#multiplied by particle distance; only used if controlled by attachment
  5902. real distance to object mul high#multiplied by particle distance; only used if controlled by attachment
  5903. pad[8]
  5904. enum attachment
  5905. {
  5906. NONE
  5907. A out
  5908. B out
  5909. C out
  5910. D out
  5911. }
  5912. pad[2]
  5913. real_bounds particle size bounds:world units#size of particles
  5914. real_bounds size attachment multiplier#multiplied by particle size; only used if controlled by attachment
  5915. enum attachment
  5916. {
  5917. NONE
  5918. A out
  5919. B out
  5920. C out
  5921. D out
  5922. }
  5923. pad[2]
  5924. real_argb_color color_bound_0#the color of all particles will vary between color bound 0 and color bound 1
  5925. real_argb_color color_bound_1#the color of all particles will vary between color bound 0 and color bound 1
  5926. real_argb_color scale color 0#used to scale the particle color; only used if controlled by attachment
  5927. real_argb_color scale color 1#used to scale the particle color; only used if controlled by attachment
  5928. real color rate of change#for glow effects that dynamically control particle color; sets rate of change
  5929. real fading percentage of glow#percentage of the glow that is fading at any given time
  5930. real particle generation freq#frequency in Hz that trailing particles are generated:Hz
  5931. real lifetime of trailing particles#seconds that a trailing particle remains in existence:s
  5932. real velocity of trailing particles:wu/s
  5933. real trailing particle minimum t
  5934. real trailing particle maximum t
  5935. pad[52]
  5936. tag reference texture
  5937. {
  5938. Supported tag class category: bitm
  5939. }
  5940. POORLY-DETERMINED MIN FILESIZE OF glw! (including 64-byte header): 404
  5941. POORLY-DETERMINED MAX FILESIZE OF glw! (including 64-byte header): 659
  5942.  
  5943. Tag Definition Offset: 0x5d0ad8
  5944. Extension: light_volume
  5945. Unknown: 8
  5946. Class: mgs2
  5947. No superclass
  5948. Version: 1
  5949. Definition Block:
  5950. {
  5951. Name: light_volume
  5952. Count: 1
  5953. Size: 332
  5954. Chunks Offset: 0x5d0970
  5955. Dialog Data 1 Offset: 0x490ec0
  5956. }
  5957. explanation light volume
  5958. {
  5959. Dialog Data Offset: 0x4cd070
  5960. {
  5961. Draws a sequence of glow bitmaps along a line. Can be used for contrail-type effects as well as volumetric lights.
  5962. }
  5963. }
  5964. string attachment marker#the marker name that the light volume should be attached to
  5965. pad[2]
  5966. word_flags flags
  5967. {
  5968. interpolate color in hsv
  5969. ...more colors
  5970. }
  5971. pad[16]
  5972. explanation brightness scale
  5973. {
  5974. Dialog Data Offset: 0x4ccfb8
  5975. {
  5976. Fades the effect in and out with distance, viewer angle, and external source.
  5977. }
  5978. }
  5979. real near fade distance:world units#distance at which light volume is full brightness
  5980. real far fade distance:world units#distance at which light volume is zero brightness
  5981. real_fraction perpendicular brightness scale:[0,1]#brightness scale when viewed at a 90-degree angle
  5982. real_fraction parallel brightness scale:[0,1]#brightness scale when viewed directly
  5983. enum brightness scale source#scales brightness based on external value
  5984. {
  5985. none
  5986. A out
  5987. B out
  5988. C out
  5989. D out
  5990. }
  5991. pad[2]
  5992. pad[20]
  5993. explanation bitmaps
  5994. {
  5995. Dialog Data Offset: 0x4ccd80
  5996. {
  5997. Bitmap tag used to draw the light volume, repeated <count> times. Default is 'tags\rasterizer_textures\glow'. Note that sprite plates are not valid for light volumes.
  5998. }
  5999. }
  6000. tag reference map#NOT A SPRITE PLATE
  6001. {
  6002. Supported tag class category: bitm
  6003. }
  6004. short_integer sequence index
  6005. short_integer count#number of bitmaps to draw (0 causes light volume not to render)
  6006. pad[72]
  6007. explanation frame animation
  6008. {
  6009. Dialog Data Offset: 0x4ccc38
  6010. {
  6011. Frames are descriptions of the light volume at a particular point in time, interpolated by an external source. For example, a bolt of energy can be made to stretch out and grow thinner as it is fired from a weapon.
  6012. }
  6013. }
  6014. enum frame animation source#interpolates between frames based on external value
  6015. {
  6016. none
  6017. A out
  6018. B out
  6019. C out
  6020. D out
  6021. }
  6022. pad[2]
  6023. pad[36]
  6024. pad[64]
  6025. block frames
  6026. {
  6027. Name: light_volume_frame_block
  6028. Max Chunks: 2
  6029. Chunk Size: 176
  6030. Max Chunks x Chunk Size: 352
  6031. Chunk Definition Offset: 0x5d0880
  6032. {
  6033. pad[16]
  6034. real offset from marker:world units
  6035. real offset exponent#0 defaults to 1; >1 compresses light near marker, <1 compresses light near far end
  6036. real length:world units#0 causes light volume not to render
  6037. pad[32]
  6038. real radius hither:world units#radius near the marker
  6039. real radius yon:world units#radius at far end of light volume
  6040. real radius exponent#0 defaults to 1; >1 values are more teardrop-shaped, <1 values are more pill-shaped
  6041. pad[32]
  6042. real_argb_color tint color hither#tint color near the marker (alpha is brightness)
  6043. real_argb_color tint color yon#tint color at far end of light volume (alpha is brightness)
  6044. real tint color exponent#0 defaults to 1; affects tint color only, not brightness
  6045. real brightness exponent#0 defaults to 1
  6046. pad[32]
  6047. }
  6048. }
  6049. pad[32]
  6050. POORLY-DETERMINED MIN FILESIZE OF mgs2 (including 64-byte header): 396
  6051. POORLY-DETERMINED MAX FILESIZE OF mgs2 (including 64-byte header): 1003
  6052.  
  6053. Tag Definition Offset: 0x5d0820
  6054. Extension: lightning
  6055. Unknown: 8
  6056. Class: elec
  6057. No superclass
  6058. Version: 1
  6059. Definition Block:
  6060. {
  6061. Name: lightning
  6062. Count: 1
  6063. Size: 264
  6064. Chunks Offset: 0x5d0728
  6065. Dialog Data 1 Offset: 0x490e00
  6066. }
  6067. explanation lightning
  6068. {
  6069. Dialog Data Offset: 0x494b11
  6070. {
  6071.  
  6072. }
  6073. }
  6074. pad[2]
  6075. short_integer count#number of overlapping lightning effects to render; 0 defaults to 1
  6076. pad[16]
  6077. real near fade distance:world units#distance at which lightning is at full brightness
  6078. real far fade distance:world units#distance at which lightning is at zero brightness
  6079. pad[16]
  6080. enum jitter scale source
  6081. {
  6082. none
  6083. A out
  6084. B out
  6085. C out
  6086. D out
  6087. }
  6088. enum thickness scale source
  6089. {
  6090. none
  6091. A out
  6092. B out
  6093. C out
  6094. D out
  6095. }
  6096. enum tint modulation source
  6097. {
  6098. none
  6099. A
  6100. B
  6101. C
  6102. D
  6103. }
  6104. enum brightness scale source
  6105. {
  6106. none
  6107. A out
  6108. B out
  6109. C out
  6110. D out
  6111. }
  6112. tag reference bitmap
  6113. {
  6114. Supported tag class category: bitm
  6115. }
  6116. pad[84]
  6117. block markers
  6118. {
  6119. Name: lightning_marker_block
  6120. Max Chunks: 16
  6121. Chunk Size: 228
  6122. Max Chunks x Chunk Size: 3648
  6123. Chunk Definition Offset: 0x5d05a0
  6124. {
  6125. string attachment marker
  6126. word_flags flags
  6127. {
  6128. not connected to next marker
  6129. }
  6130. pad[2]
  6131. short_integer octaves to next marker
  6132. pad[2]
  6133. pad[76]
  6134. real_vector_3d random position bounds:world units
  6135. real random jitter:world units
  6136. real thickness:world units
  6137. real_argb_color tint#alpha is brightness
  6138. pad[76]
  6139. }
  6140. }
  6141. block shader
  6142. {
  6143. Name: lightning_shader_block
  6144. Max Chunks: 1
  6145. Chunk Size: 180
  6146. Max Chunks x Chunk Size: 180
  6147. Chunk Definition Offset: 0x5d0660
  6148. {
  6149. pad[40]
  6150. word_flags shader flags
  6151. {
  6152. sort bias
  6153. nonlinear tint
  6154. don't overdraw fp weapon
  6155. }
  6156. enum framebuffer blend function
  6157. {
  6158. alpha blend
  6159. multiply
  6160. double multiply
  6161. add
  6162. subtract
  6163. component min
  6164. component max
  6165. alpha-multiply add
  6166. }
  6167. enum framebuffer fade mode
  6168. {
  6169. none
  6170. fade when perpendicular
  6171. fade when parallel
  6172. }
  6173. word_flags map flags
  6174. {
  6175. unfiltered
  6176. }
  6177. pad[28]
  6178. pad[16]
  6179. pad[2]
  6180. pad[2]
  6181. pad[56]
  6182. pad[28]
  6183. }
  6184. }
  6185. pad[88]
  6186. POORLY-DETERMINED MIN FILESIZE OF elec (including 64-byte header): 328
  6187. POORLY-DETERMINED MAX FILESIZE OF elec (including 64-byte header): 4411
  6188.  
  6189. Tag Definition Offset: 0x5d0520
  6190. Extension: camera_track
  6191. Unknown: 0
  6192. Class: trak
  6193. No superclass
  6194. Version: 2
  6195. Definition Block:
  6196. {
  6197. Name: camera_track
  6198. Count: 1
  6199. Size: 48
  6200. Chunks Offset: 0x5d04c0
  6201. }
  6202. long_flags flags
  6203. {
  6204. }
  6205. block control points
  6206. {
  6207. Name: camera_track_control_point_block
  6208. Max Chunks: 16
  6209. Chunk Size: 60
  6210. Max Chunks x Chunk Size: 960
  6211. Chunk Definition Offset: 0x5d0464
  6212. {
  6213. real_vector_3d position
  6214. real_quaternion orientation
  6215. pad[32]
  6216. }
  6217. }
  6218. pad[32]
  6219. POORLY-DETERMINED MIN FILESIZE OF trak (including 64-byte header): 112
  6220. POORLY-DETERMINED MAX FILESIZE OF trak (including 64-byte header): 1072
  6221.  
  6222. Tag Definition Offset: 0x5d03f8
  6223. Extension: particle_system
  6224. Unknown: 8
  6225. Class: pctl
  6226. No superclass
  6227. Version: 4
  6228. Definition Block:
  6229. {
  6230. Name: particle_system
  6231. Count: 1
  6232. Size: 104
  6233. Chunks Offset: 0x5d0350
  6234. }
  6235. pad[4]
  6236. pad[52]
  6237. explanation system behavior
  6238. {
  6239. Dialog Data Offset: 0x4cbef4
  6240. {
  6241. These settings affect the behavior of the system's origin.
  6242. }
  6243. }
  6244. tag reference point physics
  6245. {
  6246. Supported tag class category: pphy
  6247. }
  6248. enum system update physics
  6249. {
  6250. default
  6251. explosion
  6252. }
  6253. pad[2]
  6254. long_flags physics flags
  6255. {
  6256. }
  6257. block physics constants
  6258. {
  6259. Name: particle_system_physics_constants_block
  6260. Max Chunks: 16
  6261. Chunk Size: 4
  6262. Max Chunks x Chunk Size: 64
  6263. Chunk Definition Offset: 0x5cfe3c
  6264. {
  6265. real k#The meaning of this constant depends on the selected physics creation/update function.
  6266. }
  6267. }
  6268. block particle types
  6269. {
  6270. Name: particle_system_types_block
  6271. Max Chunks: 4
  6272. Chunk Size: 128
  6273. Max Chunks x Chunk Size: 512
  6274. Chunk Definition Offset: 0x5d0270
  6275. {
  6276. string name^
  6277. long_flags flags
  6278. {
  6279. type states loop
  6280. ... forward/backward
  6281. particle states loop
  6282. ... forward/backward
  6283. particles die in water
  6284. particles die in air
  6285. particles die on ground
  6286. rotational sprites animate sideways#if the complex sprite mode is rotational and this flag is set, the sideways sequence is contains an animation rather than a set of permutations.
  6287. disabled
  6288. tint by effect color
  6289. initial count scales with effect
  6290. minimum count scales with effect
  6291. creation rate scales with effect
  6292. scale scales with effect
  6293. animation rate scales with effect
  6294. rotation rate scales with effect
  6295. don't draw in first person
  6296. don't draw in third person
  6297. }
  6298. short_integer initial particle count
  6299. pad[2]
  6300. enum complex sprite render modes
  6301. {
  6302. simple
  6303. rotational
  6304. }
  6305. pad[2]
  6306. real radius:world units
  6307. pad[36]
  6308. enum particle creation physics#This controls the initial placement of particles.
  6309. {
  6310. default
  6311. explosion
  6312. jet
  6313. }
  6314. pad[2]
  6315. long_flags physics flags
  6316. {
  6317. }
  6318. block physics constants
  6319. {
  6320. Name: particle_system_physics_constants_block
  6321. Max Chunks: 16
  6322. Chunk Size: 4
  6323. Max Chunks x Chunk Size: 64
  6324. Chunk Definition Offset: 0x5cfe3c
  6325. {
  6326. real k#The meaning of this constant depends on the selected physics creation/update function.
  6327. }
  6328. }
  6329. block states
  6330. {
  6331. Name: particle_system_type_states_block
  6332. Max Chunks: 8
  6333. Chunk Size: 192
  6334. Max Chunks x Chunk Size: 1536
  6335. Chunk Definition Offset: 0x5cfec0
  6336. {
  6337. string name^
  6338. real_bounds duration bounds:seconds#Time in this state.
  6339. real_bounds transition time bounds:seconds#Time spent in transition to next state.
  6340. pad[4]
  6341. real scale multiplier#This value will be multiplied into the scale computed by the particles' state.
  6342. real animation_rate_multiplier#This value will be multiplied into the animation rate computed by the particles' state.
  6343. real rotation rate multiplier#This value will be multiplied into the rotation rate computed by the particles' state.
  6344. real_argb_color color multiplier#This value will be multiplied into the color computed by the particles' state.
  6345. real radius multiplier#This value will be multiplied into the radius computed by the type.
  6346. real minimum particle count
  6347. real particle creation rate:particles per second
  6348. pad[84]
  6349. enum particle creation physics#This controls the placement of particles created during this state.
  6350. {
  6351. default
  6352. explosion
  6353. jet
  6354. }
  6355. enum particle update physics#This controls the motion of particles during this state.
  6356. {
  6357. default
  6358. }
  6359. block physics constants
  6360. {
  6361. Name: particle_system_physics_constants_block
  6362. Max Chunks: 16
  6363. Chunk Size: 4
  6364. Max Chunks x Chunk Size: 64
  6365. Chunk Definition Offset: 0x5cfe3c
  6366. {
  6367. real k#The meaning of this constant depends on the selected physics creation/update function.
  6368. }
  6369. }
  6370. }
  6371. }
  6372. block particle states
  6373. {
  6374. Name: particle_system_type_particle_states_block
  6375. Max Chunks: 8
  6376. Chunk Size: 376
  6377. Max Chunks x Chunk Size: 3008
  6378. Chunk Definition Offset: 0x5cffb0
  6379. {
  6380. string name^
  6381. real_bounds duration bounds:seconds#Time in this state.
  6382. real_bounds transition time bounds:seconds#Time spent in transition to next state.
  6383. tag reference bitmaps
  6384. {
  6385. Supported tag class category: bitm
  6386. }
  6387. short_integer sequence index
  6388. pad[2]
  6389. pad[4]
  6390. real_bounds scale:world units per pixel#Apparent size of the particles.
  6391. real_bounds animation rate:frames per second#Rate of sprite animation.
  6392. angle_bounds rotation rate:degrees per second#Rate of texture rotation.
  6393. real_argb_color color 1#Particle will have a random color in the range determined by these two colors.
  6394. real_argb_color color 2#Particle will have a random color in the range determined by these two colors.
  6395. real radius multiplier#This value will be multiplied into the radius computed by the type.
  6396. tag reference point physics
  6397. {
  6398. Supported tag class category: pphy
  6399. }
  6400. pad[36]
  6401. pad[40]
  6402. word_flags shader flags
  6403. {
  6404. sort bias
  6405. nonlinear tint
  6406. don't overdraw fp weapon
  6407. }
  6408. enum framebuffer blend function
  6409. {
  6410. alpha blend
  6411. multiply
  6412. double multiply
  6413. add
  6414. subtract
  6415. component min
  6416. component max
  6417. alpha-multiply add
  6418. }
  6419. enum framebuffer fade mode
  6420. {
  6421. none
  6422. fade when perpendicular
  6423. fade when parallel
  6424. }
  6425. word_flags map flags
  6426. {
  6427. unfiltered
  6428. }
  6429. pad[28]
  6430. explanation Secondary Map
  6431. {
  6432. Dialog Data Offset: 0x4cc2b4
  6433. {
  6434. Optional multitextured second map
  6435. }
  6436. }
  6437. tag reference bitmap
  6438. {
  6439. Supported tag class category: bitm
  6440. }
  6441. enum anchor
  6442. {
  6443. with primary
  6444. with screen space
  6445. zsprite
  6446. }
  6447. word_flags flags
  6448. {
  6449. unfiltered
  6450. }
  6451. enum u-animation source
  6452. {
  6453. none
  6454. A out
  6455. B out
  6456. C out
  6457. D out
  6458. }
  6459. enum u-animation function
  6460. {
  6461. one
  6462. zero
  6463. cosine
  6464. cosine (variable period)
  6465. diagonal wave
  6466. diagonal wave (variable period)
  6467. slide
  6468. slide (variable period)
  6469. noise
  6470. jitter
  6471. wander
  6472. spark
  6473. }
  6474. real u-animation period:seconds#0 defaults to 1
  6475. real u-animation phase
  6476. real u-animation scale:repeats#0 defaults to 1
  6477. enum v-animation source
  6478. {
  6479. none
  6480. A out
  6481. B out
  6482. C out
  6483. D out
  6484. }
  6485. enum v-animation function
  6486. {
  6487. one
  6488. zero
  6489. cosine
  6490. cosine (variable period)
  6491. diagonal wave
  6492. diagonal wave (variable period)
  6493. slide
  6494. slide (variable period)
  6495. noise
  6496. jitter
  6497. wander
  6498. spark
  6499. }
  6500. real v-animation period:seconds#0 defaults to 1
  6501. real v-animation phase
  6502. real v-animation scale:repeats#0 defaults to 1
  6503. enum rotation-animation source
  6504. {
  6505. none
  6506. A out
  6507. B out
  6508. C out
  6509. D out
  6510. }
  6511. enum rotation-animation function
  6512. {
  6513. one
  6514. zero
  6515. cosine
  6516. cosine (variable period)
  6517. diagonal wave
  6518. diagonal wave (variable period)
  6519. slide
  6520. slide (variable period)
  6521. noise
  6522. jitter
  6523. wander
  6524. spark
  6525. }
  6526. real rotation-animation period:seconds#0 defaults to 1
  6527. real rotation-animation phase
  6528. real rotation-animation scale:degrees#0 defaults to 360
  6529. real_point_2d rotation-animation center
  6530. pad[4]
  6531. real zsprite radius scale
  6532. pad[20]
  6533. block physics constants
  6534. {
  6535. Name: particle_system_physics_constants_block
  6536. Max Chunks: 16
  6537. Chunk Size: 4
  6538. Max Chunks x Chunk Size: 64
  6539. Chunk Definition Offset: 0x5cfe3c
  6540. {
  6541. real k#The meaning of this constant depends on the selected physics creation/update function.
  6542. }
  6543. }
  6544. }
  6545. }
  6546. }
  6547. }
  6548. POORLY-DETERMINED MIN FILESIZE OF pctl (including 64-byte header): 168
  6549. POORLY-DETERMINED MAX FILESIZE OF pctl (including 64-byte header): 6500
  6550.  
  6551. Tag Definition Offset: 0x5cfdd0
  6552. Extension: preferences_network_game
  6553. Unknown: 2
  6554. Class: ngpr
  6555. No superclass
  6556. Version: 2
  6557. Definition Block:
  6558. {
  6559. Name: preferences_network_game
  6560. Count: 1
  6561. Size: 896
  6562. Chunks Offset: 0x5cfd20
  6563. }
  6564. string name
  6565. real_rgb_color primary color
  6566. real_rgb_color secondary color
  6567. tag reference pattern
  6568. {
  6569. Supported tag class category: bitm
  6570. }
  6571. short_integer bitmap index
  6572. pad[2]
  6573. tag reference decal
  6574. {
  6575. Supported tag class category: bitm
  6576. }
  6577. short_integer bitmap index
  6578. pad[2]
  6579. pad[800]
  6580. POORLY-DETERMINED MIN FILESIZE OF ngpr (including 64-byte header): 960
  6581. POORLY-DETERMINED MAX FILESIZE OF ngpr (including 64-byte header): 1470
  6582.  
  6583. Tag Definition Offset: 0x5cfcb0
  6584. Extension: projectile
  6585. Unknown: 9
  6586. Class: proj
  6587. Superclass: obje
  6588. Version: 5
  6589. Definition Block:
  6590. {
  6591. Name: projectile
  6592. Count: 1
  6593. Size: 208
  6594. Chunks Offset: 0x5cfae0
  6595. Dialog Data 1 Offset: 0x490d00
  6596. }
  6597. explanation $$$ PROJECTILE $$$
  6598. {
  6599. Dialog Data Offset: 0x494b11
  6600. {
  6601.  
  6602. }
  6603. }
  6604. long_flags flags
  6605. {
  6606. oriented along velocity
  6607. AI must use ballistic aiming
  6608. detonation max time if attached
  6609. has super combining explosion
  6610. combine initial velocity with parent velocity
  6611. random attached detonation time
  6612. minimum unattached detonation time
  6613. }
  6614. enum detonation timer starts
  6615. {
  6616. immediately
  6617. after first bounce
  6618. when at rest
  6619. }
  6620. enum impact noise
  6621. {
  6622. silent
  6623. medium
  6624. loud
  6625. shout
  6626. quiet
  6627. }
  6628. enum A in
  6629. {
  6630. none
  6631. range remaining
  6632. time remaining
  6633. tracer
  6634. }
  6635. enum B in
  6636. {
  6637. none
  6638. range remaining
  6639. time remaining
  6640. tracer
  6641. }
  6642. enum C in
  6643. {
  6644. none
  6645. range remaining
  6646. time remaining
  6647. tracer
  6648. }
  6649. enum D in
  6650. {
  6651. none
  6652. range remaining
  6653. time remaining
  6654. tracer
  6655. }
  6656. tag reference super detonation
  6657. {
  6658. Supported tag class category: effe
  6659. }
  6660. real AI perception radius:world units
  6661. real collision radius:world units
  6662. explanation detonation
  6663. {
  6664. Dialog Data Offset: 0x494b11
  6665. {
  6666.  
  6667. }
  6668. }
  6669. real arming time:seconds#won't detonate before this time elapses
  6670. real danger radius:world units
  6671. tag reference effect
  6672. {
  6673. Supported tag class category: effe
  6674. }
  6675. real_bounds timer:seconds#detonation countdown (zero is untimed)
  6676. real minimum velocity:world units per second#detonates when slowed below this velocity
  6677. real maximum range:world units#detonates after travelling this distance
  6678. explanation physics
  6679. {
  6680. Dialog Data Offset: 0x494b11
  6681. {
  6682.  
  6683. }
  6684. }
  6685. real air gravity scale#the proportion of normal gravity applied to the projectile when in air.
  6686. real_bounds air damage range:world units#the range over which damage is scaled when the projectile is in air.
  6687. real water gravity scale#the proportion of normal gravity applied to the projectile when in water.
  6688. real_bounds water damage range:world units#the range over which damage is scaled when the projectile is in water.
  6689. real initial velocity:world units per second#bullet's velocity when inflicting maximum damage
  6690. real final velocity:world units per second#bullet's velocity when inflicting minimum damage
  6691. angle guided angular velocity:degrees per second
  6692. enum detonation noise
  6693. {
  6694. silent
  6695. medium
  6696. loud
  6697. shout
  6698. quiet
  6699. }
  6700. pad[2]
  6701. tag reference detonation started
  6702. {
  6703. Supported tag class category: effe
  6704. }
  6705. tag reference flyby sound
  6706. {
  6707. Supported tag class category: snd!
  6708. }
  6709. tag reference attached detonation damage
  6710. {
  6711. Supported tag class category: jpt!
  6712. }
  6713. tag reference impact damage
  6714. {
  6715. Supported tag class category: jpt!
  6716. }
  6717. pad[12]
  6718. block material responses
  6719. {
  6720. Name: projectile_material_response_block
  6721. Max Chunks: 33
  6722. Chunk Size: 160
  6723. Max Chunks x Chunk Size: 5280
  6724. Chunk Definition Offset: 0x5cf918
  6725. {
  6726. word_flags flags
  6727. {
  6728. cannot be overpenetrated
  6729. }
  6730. explanation default result
  6731. {
  6732. Dialog Data Offset: 0x4cbd80
  6733. {
  6734. (if the potential result, below, fails to happen)
  6735. }
  6736. }
  6737. enum response
  6738. {
  6739. disappear
  6740. detonate
  6741. reflect
  6742. overpenetrate
  6743. attach
  6744. }
  6745. tag reference effect
  6746. {
  6747. Supported tag class category: effe
  6748. }
  6749. pad[16]
  6750. explanation potential result
  6751. {
  6752. Dialog Data Offset: 0x494b11
  6753. {
  6754.  
  6755. }
  6756. }
  6757. enum response
  6758. {
  6759. disappear
  6760. detonate
  6761. reflect
  6762. overpenetrate
  6763. attach
  6764. }
  6765. word_flags flags
  6766. {
  6767. only against units
  6768. }
  6769. real_fraction skip fraction:[0,1]
  6770. angle_bounds between:degrees
  6771. real_bounds and:world units per second
  6772. tag reference effect
  6773. {
  6774. Supported tag class category: effe
  6775. }
  6776. pad[16]
  6777. explanation misc
  6778. {
  6779. Dialog Data Offset: 0x494b11
  6780. {
  6781.  
  6782. }
  6783. }
  6784. enum scale effects by
  6785. {
  6786. damage
  6787. angle
  6788. }
  6789. pad[2]
  6790. angle angular noise:degrees#the angle of incidence is randomly perturbed by at most this amount to simulate irregularity.
  6791. real velocity noise:world units per second#the velocity is randomly perturbed by at most this amount to simulate irregularity.
  6792. tag reference detonation effect
  6793. {
  6794. Supported tag class category: effe
  6795. }
  6796. pad[24]
  6797. explanation penetration
  6798. {
  6799. Dialog Data Offset: 0x494b11
  6800. {
  6801.  
  6802. }
  6803. }
  6804. real initial friction#the fraction of the projectile's velocity lost on penetration
  6805. real maximum distance#the maximum distance the projectile can travel through on object of this material
  6806. explanation reflection
  6807. {
  6808. Dialog Data Offset: 0x494b11
  6809. {
  6810.  
  6811. }
  6812. }
  6813. real parallel friction#the fraction of the projectile's velocity parallel to the surface lost on impact
  6814. real perpendicular friction#the fraction of the projectile's velocity perpendicular to the surface lost on impact
  6815. }
  6816. }
  6817. POORLY-DETERMINED MIN FILESIZE OF proj (including 64-byte header): 272
  6818. POORLY-DETERMINED MAX FILESIZE OF proj (including 64-byte header): 7847
  6819.  
  6820. Tag Definition Offset: 0x5cf668
  6821. Extension: model_collision_geometry
  6822. Unknown: 9
  6823. Class: coll
  6824. No superclass
  6825. Version: 10
  6826. Dialog Data Offset: 0x490c50
  6827. Definition Block:
  6828. {
  6829. Name: model_collision_geometry
  6830. Count: 1
  6831. Size: 664
  6832. Chunks Offset: 0x5cf3d8
  6833. }
  6834. long_flags flags
  6835. {
  6836. takes shield damage for children
  6837. takes body damage for children
  6838. always shields friendly damage
  6839. passes area damage to children
  6840. parent never takes body damage for us
  6841. only damaged by explosives
  6842. only damaged while occupied
  6843. }
  6844. short_block_index indirect damage material#the material we use when shielding child objects or getting hit by area of effect damage
  6845. {
  6846. Block Name: damage_materials_block
  6847. }
  6848. pad[2]
  6849. explanation body
  6850. {
  6851. Dialog Data Offset: 0x494b11
  6852. {
  6853.  
  6854. }
  6855. }
  6856. real maximum body vitality#the default initial and maximum body vitality of this object
  6857. real body system shock#anything that kills us (body depleted) doing more than this amount of damage also destroys us
  6858. pad[24]
  6859. pad[28]
  6860. real_fraction friendly damage resistance:[0,1]#the fraction of damage caused by friendly units ignored by this object (zero means full damage)
  6861. pad[8]
  6862. pad[32]
  6863. tag reference localized damage effect
  6864. {
  6865. Supported tag class category: effe
  6866. }
  6867. real area damage effect threshold:[0,1]
  6868. tag reference area damage effect
  6869. {
  6870. Supported tag class category: effe
  6871. }
  6872. real body damaged threshold#when passing this vitality the 'body damaged' effect, below, is created
  6873. tag reference body damaged effect
  6874. {
  6875. Supported tag class category: effe
  6876. }
  6877. tag reference body depleted effect
  6878. {
  6879. Supported tag class category: effe
  6880. }
  6881. real body destroyed threshold#when passing this vitality (usually negative) the object is deleted
  6882. tag reference body destroyed effect
  6883. {
  6884. Supported tag class category: effe
  6885. }
  6886. explanation shield
  6887. {
  6888. Dialog Data Offset: 0x494b11
  6889. {
  6890.  
  6891. }
  6892. }
  6893. real maximum shield vitality#the default initial and maximum shield vitality of this object
  6894. pad[2]
  6895. enum shield material type#the material type used when projectiles impact the shield (instead of the body)
  6896. {
  6897. dirt
  6898. sand
  6899. stone
  6900. snow
  6901. wood
  6902. metal (hollow)
  6903. metal (thin)
  6904. metal (thick)
  6905. rubber
  6906. glass
  6907. force field
  6908. grunt
  6909. hunter armor
  6910. hunter skin
  6911. elite
  6912. jackal
  6913. jackal energy shield
  6914. engineer skin
  6915. engineer force field
  6916. flood combat form
  6917. flood carrier form
  6918. cyborg armor
  6919. cyborg energy shield
  6920. human armor
  6921. human skin
  6922. sentinel
  6923. monitor
  6924. plastic
  6925. water
  6926. leaves
  6927. elite energy shield
  6928. ice
  6929. hunter shield
  6930. }
  6931. pad[24]
  6932. enum shield failure function#how fast the shield begins to leak
  6933. {
  6934. linear
  6935. early
  6936. very early
  6937. late
  6938. very late
  6939. cosine
  6940. }
  6941. pad[2]
  6942. real_fraction shield failure threshold#when the shield begins to leak (0.5 would cause the shield to begin to fail after taking half damage)
  6943. real_fraction failing shield leak fraction#the maximum percent [0,1] damage a failing shield will leak to the body
  6944. pad[16]
  6945. real minimum stun damage#the minimum damage required to stun this object's shields
  6946. real stun time:seconds#the length of time the shields stay stunned (do not recharge) after taking damage
  6947. real recharge time:seconds#the length of time it would take for the shields to fully recharge after being completely depleted
  6948. pad[16]
  6949. pad[96]
  6950. real shield damaged threshold
  6951. tag reference shield damaged effect
  6952. {
  6953. Supported tag class category: effe
  6954. }
  6955. tag reference shield depleted effect
  6956. {
  6957. Supported tag class category: effe
  6958. }
  6959. tag reference shield recharging effect
  6960. {
  6961. Supported tag class category: effe
  6962. }
  6963. pad[12]
  6964. pad[112]
  6965. block materials*
  6966. {
  6967. Name: damage_materials_block
  6968. Max Chunks: 32
  6969. Chunk Size: 72
  6970. Max Chunks x Chunk Size: 2304
  6971. Chunk Definition Offset: 0x5cf098
  6972. {
  6973. string name*^
  6974. long_flags flags
  6975. {
  6976. head
  6977. }
  6978. enum material type
  6979. {
  6980. dirt
  6981. sand
  6982. stone
  6983. snow
  6984. wood
  6985. metal (hollow)
  6986. metal (thin)
  6987. metal (thick)
  6988. rubber
  6989. glass
  6990. force field
  6991. grunt
  6992. hunter armor
  6993. hunter skin
  6994. elite
  6995. jackal
  6996. jackal energy shield
  6997. engineer skin
  6998. engineer force field
  6999. flood combat form
  7000. flood carrier form
  7001. cyborg armor
  7002. cyborg energy shield
  7003. human armor
  7004. human skin
  7005. sentinel
  7006. monitor
  7007. plastic
  7008. water
  7009. leaves
  7010. elite energy shield
  7011. ice
  7012. hunter shield
  7013. }
  7014. pad[2]
  7015. real_fraction shield leak percentage#the percent [0,1] damage the shield always leaks through to the body
  7016. real shield damage multiplier
  7017. pad[12]
  7018. real body damage multiplier#multiplier to body damage against this material (1.0 is normal)
  7019. pad[8]
  7020. }
  7021. }
  7022. block regions*
  7023. {
  7024. Name: damage_regions_block
  7025. Max Chunks: 8
  7026. Chunk Size: 84
  7027. Max Chunks x Chunk Size: 672
  7028. Chunk Definition Offset: 0x5cf1b0
  7029. {
  7030. string name*^
  7031. long_flags flags
  7032. {
  7033. lives until object dies
  7034. forces object to die
  7035. dies when object dies
  7036. dies when object is damaged
  7037. disappears when shield is off
  7038. inhibits melee attack
  7039. inhibits weapon attack
  7040. inhibits walking
  7041. forces drop weapon
  7042. causes head-maimed scream
  7043. }
  7044. pad[4]
  7045. real damage threshold#if this region takes this amount of damage, it will be destroyed
  7046. pad[12]
  7047. tag reference destroyed effect
  7048. {
  7049. Supported tag class category: effe
  7050. }
  7051. block permutations
  7052. {
  7053. Name: damage_permutations_block
  7054. Max Chunks: 32
  7055. Chunk Size: 32
  7056. Max Chunks x Chunk Size: 1024
  7057. Chunk Definition Offset: 0x5cf16c
  7058. {
  7059. string name*^
  7060. }
  7061. }
  7062. }
  7063. }
  7064. block modifiers
  7065. {
  7066. Name: damage_modifiers_block
  7067. Max Chunks: 0
  7068. Chunk Size: 52
  7069. Max Chunks x Chunk Size: 0
  7070. Chunk Definition Offset: 0x5cf23c
  7071. {
  7072. pad[52]
  7073. }
  7074. }
  7075. pad[16]
  7076. explanation pathfinding box
  7077. {
  7078. Dialog Data Offset: 0x494b11
  7079. {
  7080.  
  7081. }
  7082. }
  7083. real_bounds x
  7084. real_bounds y
  7085. real_bounds z
  7086. block pathfinding spheres
  7087. {
  7088. Name: sphere
  7089. Max Chunks: 32
  7090. Chunk Size: 32
  7091. Max Chunks x Chunk Size: 1024
  7092. Chunk Definition Offset: 0x5cf360
  7093. {
  7094. short_block_index node
  7095. {
  7096. Block Name: node
  7097. }
  7098. pad[2]
  7099. pad[12]
  7100. real_point_3d center
  7101. real radius
  7102. }
  7103. }
  7104. block nodes*
  7105. {
  7106. Name: node
  7107. Max Chunks: 64
  7108. Chunk Size: 64
  7109. Max Chunks x Chunk Size: 4096
  7110. Chunk Definition Offset: 0x5cf2d0
  7111. {
  7112. string name^*
  7113. short_block_index region*
  7114. {
  7115. Block Name: damage_regions_block
  7116. }
  7117. short_block_index parent node*
  7118. {
  7119. Block Name: node
  7120. }
  7121. short_block_index next sibling node*
  7122. {
  7123. Block Name: node
  7124. }
  7125. short_block_index first child node*
  7126. {
  7127. Block Name: node
  7128. }
  7129. pad[12]
  7130. block bsps*
  7131. {
  7132. Name: bsp
  7133. Max Chunks: 32
  7134. Chunk Size: 96
  7135. Max Chunks x Chunk Size: 3072
  7136. Chunk Definition Offset: 0x615038
  7137. {
  7138. block bsp3d nodes*
  7139. {
  7140. Name: bsp3d node
  7141. Max Chunks: 131072
  7142. Chunk Size: 12
  7143. Max Chunks x Chunk Size: 1572864
  7144. Chunk Definition Offset: 0x614d20
  7145. {
  7146. long_integer plane*
  7147. long_integer back child*
  7148. long_integer front child*
  7149. }
  7150. }
  7151. block planes*
  7152. {
  7153. Name: plane
  7154. Max Chunks: 65536
  7155. Chunk Size: 16
  7156. Max Chunks x Chunk Size: 1048576
  7157. Chunk Definition Offset: 0x614d7c
  7158. {
  7159. real_plane_3d plane*
  7160. }
  7161. }
  7162. block leaves*
  7163. {
  7164. Name: leaf
  7165. Max Chunks: 65536
  7166. Chunk Size: 8
  7167. Max Chunks x Chunk Size: 524288
  7168. Chunk Definition Offset: 0x614dcc
  7169. {
  7170. word_flags flags*
  7171. {
  7172. contains double-sided surfaces
  7173. }
  7174. short_integer bsp2d reference count*
  7175. long_integer first bsp2d reference*
  7176. }
  7177. }
  7178. block bsp2d references*
  7179. {
  7180. Name: bsp2d reference
  7181. Max Chunks: 131072
  7182. Chunk Size: 8
  7183. Max Chunks x Chunk Size: 1048576
  7184. Chunk Definition Offset: 0x614e84
  7185. {
  7186. long_integer plane*
  7187. {
  7188. (used as a long_block_index)
  7189. Block Name: plane
  7190. }
  7191. long_integer bsp2d node*
  7192. {
  7193. (used as a long_block_index)
  7194. Block Name: bsp2d node
  7195. }
  7196. }
  7197. }
  7198. block bsp2d nodes*
  7199. {
  7200. Name: bsp2d node
  7201. Max Chunks: 65535
  7202. Chunk Size: 20
  7203. Max Chunks x Chunk Size: 1310700
  7204. Chunk Definition Offset: 0x614e28
  7205. {
  7206. real_plane_2d plane*
  7207. long_integer left child*
  7208. long_integer right child*
  7209. }
  7210. }
  7211. block surfaces*
  7212. {
  7213. Name: surface
  7214. Max Chunks: 131072
  7215. Chunk Size: 12
  7216. Max Chunks x Chunk Size: 1572864
  7217. Chunk Definition Offset: 0x614ef0
  7218. {
  7219. long_integer plane*
  7220. long_integer first edge*
  7221. byte_flags flags*
  7222. {
  7223. two sided
  7224. invisible
  7225. climbable
  7226. breakable
  7227. }
  7228. char_integer breakable surface*
  7229. short_integer material*
  7230. }
  7231. }
  7232. block edges*
  7233. {
  7234. Name: edge
  7235. Max Chunks: 262144
  7236. Chunk Size: 24
  7237. Max Chunks x Chunk Size: 6291456
  7238. Chunk Definition Offset: 0x614f68
  7239. {
  7240. long_integer start vertex*
  7241. long_integer end vertex*
  7242. long_integer forward edge*
  7243. long_integer reverse edge*
  7244. long_integer left surface*
  7245. long_integer right surface*
  7246. }
  7247. }
  7248. block vertices*
  7249. {
  7250. Name: vertex
  7251. Max Chunks: 131072
  7252. Chunk Size: 16
  7253. Max Chunks x Chunk Size: 2097152
  7254. Chunk Definition Offset: 0x614fe8
  7255. {
  7256. real_point_3d point*
  7257. long_integer first edge*
  7258. }
  7259. }
  7260. }
  7261. }
  7262. }
  7263. }
  7264. POORLY-DETERMINED MIN FILESIZE OF coll (including 64-byte header): 728
  7265. POORLY-DETERMINED MAX FILESIZE OF coll (including 64-byte header): 15481691
  7266.  
  7267. Tag Definition Offset: 0x5ced08
  7268. Extension: device
  7269. Unknown: 9
  7270. Class: devi
  7271. Superclass: obje
  7272. Version: 1
  7273. Dialog Data Offset: 0x490990
  7274. Definition Block:
  7275. {
  7276. Name: device
  7277. Count: 1
  7278. Size: 276
  7279. Chunks Offset: 0x5cebb0
  7280. }
  7281. explanation $$$ DEVICE $$$
  7282. {
  7283. Dialog Data Offset: 0x494b11
  7284. {
  7285.  
  7286. }
  7287. }
  7288. long_flags flags
  7289. {
  7290. position loops
  7291. position not interpolated
  7292. }
  7293. real power transition time:seconds
  7294. real power acceleration time:seconds
  7295. real position transition time:seconds
  7296. real position acceleration time:seconds
  7297. real depowered position transition time:seconds
  7298. real depowered position acceleration time:seconds
  7299. enum A in
  7300. {
  7301. none
  7302. power
  7303. change in power
  7304. position
  7305. change in position
  7306. locked
  7307. delay
  7308. }
  7309. enum B in
  7310. {
  7311. none
  7312. power
  7313. change in power
  7314. position
  7315. change in position
  7316. locked
  7317. delay
  7318. }
  7319. enum C in
  7320. {
  7321. none
  7322. power
  7323. change in power
  7324. position
  7325. change in position
  7326. locked
  7327. delay
  7328. }
  7329. enum D in
  7330. {
  7331. none
  7332. power
  7333. change in power
  7334. position
  7335. change in position
  7336. locked
  7337. delay
  7338. }
  7339. tag reference open (up)
  7340. {
  7341. Supported tag class: snd!
  7342. Supported tag class: effe
  7343. }
  7344. tag reference close (down)
  7345. {
  7346. Supported tag class: snd!
  7347. Supported tag class: effe
  7348. }
  7349. tag reference opened
  7350. {
  7351. Supported tag class: snd!
  7352. Supported tag class: effe
  7353. }
  7354. tag reference closed
  7355. {
  7356. Supported tag class: snd!
  7357. Supported tag class: effe
  7358. }
  7359. tag reference depowered
  7360. {
  7361. Supported tag class: snd!
  7362. Supported tag class: effe
  7363. }
  7364. tag reference repowered
  7365. {
  7366. Supported tag class: snd!
  7367. Supported tag class: effe
  7368. }
  7369. real delay time:seconds
  7370. pad[8]
  7371. tag reference delay effect
  7372. {
  7373. Supported tag class: snd!
  7374. Supported tag class: effe
  7375. }
  7376. real automatic activation radius:world units
  7377. pad[84]
  7378. pad[28]
  7379. POORLY-DETERMINED MIN FILESIZE OF devi (including 64-byte header): 340
  7380. POORLY-DETERMINED MAX FILESIZE OF devi (including 64-byte header): 2125
  7381.  
  7382. Tag Definition Offset: 0x5cee50
  7383. Extension: device_machine
  7384. Unknown: 9
  7385. Class: mach
  7386. Superclass: devi
  7387. Version: 1
  7388. Dialog Data Offset: 0x490b10
  7389. Definition Block:
  7390. {
  7391. Name: device_machine
  7392. Count: 1
  7393. Size: 148
  7394. Chunks Offset: 0x5ceda8
  7395. }
  7396. explanation $$$ MACHINE $$$
  7397. {
  7398. Dialog Data Offset: 0x494b11
  7399. {
  7400.  
  7401. }
  7402. }
  7403. enum type
  7404. {
  7405. door
  7406. platform
  7407. gear
  7408. }
  7409. word_flags flags
  7410. {
  7411. pathfinding obstacle
  7412. ...but not when open
  7413. elevator#lighting based on what's around, rather than what's below
  7414. }
  7415. real door open time:seconds
  7416. pad[80]
  7417. enum collision response
  7418. {
  7419. pause until crushed
  7420. reverse directions
  7421. }
  7422. short_integer elevator node
  7423. pad[52]
  7424. pad[4]
  7425. POORLY-DETERMINED MIN FILESIZE OF mach (including 64-byte header): 212
  7426. POORLY-DETERMINED MAX FILESIZE OF mach (including 64-byte header): 212
  7427.  
  7428. Tag Definition Offset: 0x5cef78
  7429. Extension: device_control
  7430. Unknown: 9
  7431. Class: ctrl
  7432. Superclass: devi
  7433. Version: 1
  7434. Definition Block:
  7435. {
  7436. Name: device_control
  7437. Count: 1
  7438. Size: 136
  7439. Chunks Offset: 0x5ceee0
  7440. }
  7441. explanation $$$ CONTROL $$$
  7442. {
  7443. Dialog Data Offset: 0x494b11
  7444. {
  7445.  
  7446. }
  7447. }
  7448. enum type
  7449. {
  7450. toggle switch
  7451. on button
  7452. off button
  7453. call button
  7454. }
  7455. enum triggers when
  7456. {
  7457. touched by player
  7458. destroyed
  7459. }
  7460. real call value:[0,1]
  7461. pad[80]
  7462. tag reference on
  7463. {
  7464. Supported tag class: snd!
  7465. Supported tag class: effe
  7466. }
  7467. tag reference off
  7468. {
  7469. Supported tag class: snd!
  7470. Supported tag class: effe
  7471. }
  7472. tag reference deny
  7473. {
  7474. Supported tag class: snd!
  7475. Supported tag class: effe
  7476. }
  7477. POORLY-DETERMINED MIN FILESIZE OF ctrl (including 64-byte header): 200
  7478. POORLY-DETERMINED MAX FILESIZE OF ctrl (including 64-byte header): 965
  7479.  
  7480. Tag Definition Offset: 0x5cf028
  7481. Extension: device_light_fixture
  7482. Unknown: 9
  7483. Class: lifi
  7484. Superclass: devi
  7485. Version: 1
  7486. Definition Block:
  7487. {
  7488. Name: device_light_fixture
  7489. Count: 1
  7490. Size: 64
  7491. Chunks Offset: 0x5cefd8
  7492. }
  7493. explanation $$$ LIGHT FIXTURE $$$
  7494. {
  7495. Dialog Data Offset: 0x494b11
  7496. {
  7497.  
  7498. }
  7499. }
  7500. pad[64]
  7501. POORLY-DETERMINED MIN FILESIZE OF lifi (including 64-byte header): 128
  7502. POORLY-DETERMINED MAX FILESIZE OF lifi (including 64-byte header): 128
  7503.  
  7504. Tag Definition Offset: 0x5ceb00
  7505. Extension: point_physics
  7506. Unknown: 8
  7507. Class: pphy
  7508. No superclass
  7509. Version: 1
  7510. Definition Block:
  7511. {
  7512. Name: point_physics
  7513. Count: 1
  7514. Size: 64
  7515. Chunks Offset: 0x5cea58
  7516. Dialog Data 1 Offset: 0x4900b0
  7517. }
  7518. long_flags flags
  7519. {
  7520. flamethrower particle collision
  7521. collides with structures
  7522. collides with water surface
  7523. uses simple wind#the wind on this point won't have high-frequency variations
  7524. uses damped wind#the wind on this point will be artificially slow
  7525. no gravity#the point is not affected by gravity
  7526. }
  7527. pad[28]
  7528. real density:g/mL
  7529. real air friction
  7530. real water friction
  7531. real surface friction#when hitting the ground or interior, percentage of velocity lost in one collision
  7532. real elasticity#0.0 is inelastic collisions (no bounce) 1.0 is perfectly elastic (reflected velocity equals incoming velocity)
  7533. pad[12]
  7534. explanation Densities (g/mL)
  7535. {
  7536. Dialog Data Offset: 0x4c9ff8
  7537. {
  7538. air 0.0011 (g/mL)
  7539. snow 0.128
  7540. cork 0.24
  7541. cedar 0.43
  7542. oak 0.866
  7543. ice 0.897
  7544. water 1.0
  7545. soil 1.1
  7546. cotton 1.491
  7547. dry earth 1.52
  7548. sand 1.7
  7549. granite 2.4
  7550. glass 2.5
  7551. iron 7.65
  7552. steel 7.77
  7553. lead 11.37
  7554. uranium 18.74
  7555. gold 19.3
  7556.  
  7557. }
  7558. }
  7559. POORLY-DETERMINED MIN FILESIZE OF pphy (including 64-byte header): 128
  7560. POORLY-DETERMINED MAX FILESIZE OF pphy (including 64-byte header): 128
  7561.  
  7562. Tag Definition Offset: 0x5ce9c8
  7563. Extension: scenario_structure_bsp
  7564. Unknown: 0
  7565. Class: sbsp
  7566. No superclass
  7567. Version: 5
  7568. Dialog Data Offset: 0x48fa20
  7569. Definition Block:
  7570. {
  7571. Name: scenario_structure_bsp
  7572. Count: 1
  7573. Size: 648
  7574. Chunks Offset: 0x5ce710
  7575. Dialog Data 2 Offset: 0x48f620
  7576. }
  7577. tag reference lightmaps
  7578. {
  7579. Supported tag class category: bitm
  7580. }
  7581. real vehicle floor:world units#height below which vehicles get pushed up by an unstoppable force
  7582. real vehicle ceiling:world units#height above which vehicles get pushed down by an unstoppable force
  7583. pad[20]
  7584. real_rgb_color default ambient color
  7585. pad[4]
  7586. real_rgb_color default distant light 0 color
  7587. real_vector_3d default distant light 0 direction
  7588. real_rgb_color default distant light 1 color
  7589. real_vector_3d default distant light 1 direction
  7590. pad[12]
  7591. real_argb_color default reflection tint
  7592. real_vector_3d default shadow vector
  7593. real_rgb_color default shadow color
  7594. pad[4]
  7595. block collision materials*
  7596. {
  7597. Name: structure_collision_materials_block
  7598. Max Chunks: 512
  7599. Chunk Size: 20
  7600. Max Chunks x Chunk Size: 10240
  7601. Chunk Definition Offset: 0x5ce598
  7602. {
  7603. tag reference shader*
  7604. {
  7605. Supported tag class category: shdr
  7606. }
  7607. pad[4]
  7608. }
  7609. }
  7610. block collision bsp*
  7611. {
  7612. Name: bsp
  7613. Max Chunks: 1
  7614. Chunk Size: 96
  7615. Max Chunks x Chunk Size: 96
  7616. Chunk Definition Offset: 0x615038
  7617. {
  7618. block bsp3d nodes*
  7619. {
  7620. Name: bsp3d node
  7621. Max Chunks: 131072
  7622. Chunk Size: 12
  7623. Max Chunks x Chunk Size: 1572864
  7624. Chunk Definition Offset: 0x614d20
  7625. {
  7626. long_integer plane*
  7627. long_integer back child*
  7628. long_integer front child*
  7629. }
  7630. }
  7631. block planes*
  7632. {
  7633. Name: plane
  7634. Max Chunks: 65536
  7635. Chunk Size: 16
  7636. Max Chunks x Chunk Size: 1048576
  7637. Chunk Definition Offset: 0x614d7c
  7638. {
  7639. real_plane_3d plane*
  7640. }
  7641. }
  7642. block leaves*
  7643. {
  7644. Name: leaf
  7645. Max Chunks: 65536
  7646. Chunk Size: 8
  7647. Max Chunks x Chunk Size: 524288
  7648. Chunk Definition Offset: 0x614dcc
  7649. {
  7650. word_flags flags*
  7651. {
  7652. contains double-sided surfaces
  7653. }
  7654. short_integer bsp2d reference count*
  7655. long_integer first bsp2d reference*
  7656. }
  7657. }
  7658. block bsp2d references*
  7659. {
  7660. Name: bsp2d reference
  7661. Max Chunks: 131072
  7662. Chunk Size: 8
  7663. Max Chunks x Chunk Size: 1048576
  7664. Chunk Definition Offset: 0x614e84
  7665. {
  7666. long_integer plane*
  7667. {
  7668. (used as a long_block_index)
  7669. Block Name: plane
  7670. }
  7671. long_integer bsp2d node*
  7672. {
  7673. (used as a long_block_index)
  7674. Block Name: bsp2d node
  7675. }
  7676. }
  7677. }
  7678. block bsp2d nodes*
  7679. {
  7680. Name: bsp2d node
  7681. Max Chunks: 65535
  7682. Chunk Size: 20
  7683. Max Chunks x Chunk Size: 1310700
  7684. Chunk Definition Offset: 0x614e28
  7685. {
  7686. real_plane_2d plane*
  7687. long_integer left child*
  7688. long_integer right child*
  7689. }
  7690. }
  7691. block surfaces*
  7692. {
  7693. Name: surface
  7694. Max Chunks: 131072
  7695. Chunk Size: 12
  7696. Max Chunks x Chunk Size: 1572864
  7697. Chunk Definition Offset: 0x614ef0
  7698. {
  7699. long_integer plane*
  7700. long_integer first edge*
  7701. byte_flags flags*
  7702. {
  7703. two sided
  7704. invisible
  7705. climbable
  7706. breakable
  7707. }
  7708. char_integer breakable surface*
  7709. short_integer material*
  7710. }
  7711. }
  7712. block edges*
  7713. {
  7714. Name: edge
  7715. Max Chunks: 262144
  7716. Chunk Size: 24
  7717. Max Chunks x Chunk Size: 6291456
  7718. Chunk Definition Offset: 0x614f68
  7719. {
  7720. long_integer start vertex*
  7721. long_integer end vertex*
  7722. long_integer forward edge*
  7723. long_integer reverse edge*
  7724. long_integer left surface*
  7725. long_integer right surface*
  7726. }
  7727. }
  7728. block vertices*
  7729. {
  7730. Name: vertex
  7731. Max Chunks: 131072
  7732. Chunk Size: 16
  7733. Max Chunks x Chunk Size: 2097152
  7734. Chunk Definition Offset: 0x614fe8
  7735. {
  7736. real_point_3d point*
  7737. long_integer first edge*
  7738. }
  7739. }
  7740. }
  7741. }
  7742. block nodes*
  7743. {
  7744. Name: structure_bsp_node_block
  7745. Max Chunks: 131072
  7746. Chunk Size: 6
  7747. Max Chunks x Chunk Size: 786432
  7748. Chunk Definition Offset: 0x5cd8b8
  7749. {
  7750. skip[6]
  7751. }
  7752. }
  7753. real_bounds world bounds x*
  7754. real_bounds world bounds y*
  7755. real_bounds world bounds z*
  7756. block leaves*
  7757. {
  7758. Name: structure_bsp_leaf_block
  7759. Max Chunks: 65536
  7760. Chunk Size: 16
  7761. Max Chunks x Chunk Size: 1048576
  7762. Chunk Definition Offset: 0x5cd9a8
  7763. {
  7764. skip[6]
  7765. pad[2]
  7766. short_integer cluster*
  7767. short_integer surface reference count*
  7768. long_block_index surface references*
  7769. {
  7770. Block Name: structure_bsp_surface_reference_block
  7771. }
  7772. }
  7773. }
  7774. block leaf surfaces*
  7775. {
  7776. Name: structure_bsp_surface_reference_block
  7777. Max Chunks: 262144
  7778. Chunk Size: 8
  7779. Max Chunks x Chunk Size: 2097152
  7780. Chunk Definition Offset: 0x5cd958
  7781. {
  7782. long_block_index surface*
  7783. {
  7784. Block Name: structure_bsp_surface_block
  7785. }
  7786. long_block_index node*
  7787. {
  7788. Block Name: structure_bsp_node_block
  7789. }
  7790. }
  7791. }
  7792. block surfaces*
  7793. {
  7794. Name: structure_bsp_surface_block
  7795. Max Chunks: 131072
  7796. Chunk Size: 6
  7797. Max Chunks x Chunk Size: 786432
  7798. Chunk Definition Offset: 0x5cd8fc
  7799. {
  7800. array_start "vertices*" repeated 3 time(s):
  7801. short_integer a
  7802. array_end
  7803. }
  7804. }
  7805. block lightmaps*
  7806. {
  7807. Name: structure_bsp_lightmap_block
  7808. Max Chunks: 128
  7809. Chunk Size: 32
  7810. Max Chunks x Chunk Size: 4096
  7811. Chunk Definition Offset: 0x5cdbb8
  7812. {
  7813. short_integer bitmap*
  7814. pad[2]
  7815. pad[16]
  7816. block materials*
  7817. {
  7818. Name: structure_bsp_material_block
  7819. Max Chunks: 2048
  7820. Chunk Size: 256
  7821. Max Chunks x Chunk Size: 524288
  7822. Chunk Definition Offset: 0x5cda30
  7823. {
  7824. tag reference shader*
  7825. {
  7826. Supported tag class category: shdr
  7827. }
  7828. short_integer shader permutation*
  7829. word_flags flags
  7830. {
  7831. coplanar*
  7832. fog plane*
  7833. }
  7834. long_block_index surfaces*
  7835. {
  7836. Block Name: structure_bsp_surface_block
  7837. }
  7838. long_integer surface count*
  7839. real_point_3d centroid*
  7840. real_rgb_color ambient color*
  7841. short_integer distant light count*
  7842. pad[2]
  7843. real_rgb_color distant light 0 color*
  7844. real_vector_3d distant light 0 direction*
  7845. real_rgb_color distant light 1 color*
  7846. real_vector_3d distant light 1 direction*
  7847. pad[12]
  7848. real_argb_color reflection tint*
  7849. real_vector_3d shadow vector*
  7850. real_rgb_color shadow color*
  7851. real_plane_3d plane*
  7852. short_integer breakable surface*
  7853. pad[2]
  7854. array_start "vertex buffers*" repeated 2 time(s):
  7855. pad[4]
  7856. long_integer count*
  7857. long_integer offset*
  7858. pad[8]
  7859. array_end
  7860. data uncompressed vertices
  7861. {
  7862. Definition Name: structure_bsp_uncompressed_vertex_data_definition
  7863. Max Bytes: 4864000
  7864. Extra Data Offset: 0x8f520
  7865. }
  7866. data compressed vertices
  7867. {
  7868. Definition Name: structure_bsp_compressed_vertex_data_definition
  7869. Interface Flags: 4
  7870. Max Bytes: 2560000
  7871. Extra Data Offset: 0x8f500
  7872. }
  7873. }
  7874. }
  7875. }
  7876. }
  7877. pad[12]
  7878. block lens flares*
  7879. {
  7880. Name: structure_bsp_lens_flare_block
  7881. Max Chunks: 256
  7882. Chunk Size: 16
  7883. Max Chunks x Chunk Size: 4096
  7884. Chunk Definition Offset: 0x5ce4b4
  7885. {
  7886. tag reference lens flare
  7887. {
  7888. Supported tag class category: lens
  7889. }
  7890. }
  7891. }
  7892. block lens flare markers*
  7893. {
  7894. Name: structure_bsp_lens_flare_marker_block
  7895. Max Chunks: 65536
  7896. Chunk Size: 16
  7897. Max Chunks x Chunk Size: 1048576
  7898. Chunk Definition Offset: 0x5ce4f8
  7899. {
  7900. real_point_3d position*
  7901. char_integer direction i-component*
  7902. char_integer direction j-component*
  7903. char_integer direction k-component*
  7904. char_integer lens flare index*
  7905. }
  7906. }
  7907. block clusters*
  7908. {
  7909. Name: structure_bsp_cluster_block
  7910. Max Chunks: 8192
  7911. Chunk Size: 104
  7912. Max Chunks x Chunk Size: 851968
  7913. Chunk Definition Offset: 0x5cdf68
  7914. {
  7915. short_integer sky*
  7916. short_integer fog*
  7917. short_block_index background sound*
  7918. {
  7919. Block Name: structure_bsp_background_sound_palette_block
  7920. }
  7921. short_block_index sound environment*
  7922. {
  7923. Block Name: structure_bsp_sound_environment_palette_block
  7924. }
  7925. short_block_index weather*
  7926. {
  7927. Block Name: structure_bsp_weather_palette_block
  7928. }
  7929. short_integer transition structure bsp
  7930. pad[4]
  7931. pad[24]
  7932. block predicted resources*
  7933. {
  7934. Name: predicted_resource_block
  7935. Max Chunks: 1024
  7936. Chunk Size: 8
  7937. Max Chunks x Chunk Size: 8192
  7938. Chunk Definition Offset: 0x605ee0
  7939. {
  7940. enum type
  7941. {
  7942. bitmap
  7943. sound
  7944. }
  7945. short_integer resource index
  7946. long_integer tag index
  7947. }
  7948. }
  7949. block subclusters*
  7950. {
  7951. Name: structure_bsp_subcluster_block
  7952. Max Chunks: 4096
  7953. Chunk Size: 36
  7954. Max Chunks x Chunk Size: 147456
  7955. Chunk Definition Offset: 0x5cdeb8
  7956. {
  7957. real_bounds world bounds x*
  7958. real_bounds world bounds y*
  7959. real_bounds world bounds z*
  7960. block surface indices*
  7961. {
  7962. Name: structure_bsp_subcluster_surface_index_block
  7963. Max Chunks: 128
  7964. Chunk Size: 4
  7965. Max Chunks x Chunk Size: 512
  7966. Chunk Definition Offset: 0x5cde74
  7967. {
  7968. long_integer index*
  7969. }
  7970. }
  7971. }
  7972. }
  7973. short_integer first lens flare marker index*
  7974. short_integer lens flare marker count*
  7975. block surface indices*
  7976. {
  7977. Name: structure_bsp_cluster_surface_index_block
  7978. Max Chunks: 32768
  7979. Chunk Size: 4
  7980. Max Chunks x Chunk Size: 131072
  7981. Chunk Definition Offset: 0x5cdf20
  7982. {
  7983. long_integer index*
  7984. }
  7985. }
  7986. block mirrors*
  7987. {
  7988. Name: structure_bsp_mirror_block
  7989. Max Chunks: 16
  7990. Chunk Size: 64
  7991. Max Chunks x Chunk Size: 1024
  7992. Chunk Definition Offset: 0x5cdc64
  7993. {
  7994. real_plane_3d plane*
  7995. pad[20]
  7996. tag reference shader*
  7997. {
  7998. Supported tag class category: shdr
  7999. }
  8000. block vertices*
  8001. {
  8002. Name: structure_bsp_mirror_vertex_block
  8003. Max Chunks: 512
  8004. Chunk Size: 12
  8005. Max Chunks x Chunk Size: 6144
  8006. Chunk Definition Offset: 0x5cdc20
  8007. {
  8008. real_point_3d point*
  8009. }
  8010. }
  8011. }
  8012. }
  8013. block portals*
  8014. {
  8015. Name: structure_bsp_cluster_portal_index_block
  8016. Max Chunks: 128
  8017. Chunk Size: 2
  8018. Max Chunks x Chunk Size: 256
  8019. Chunk Definition Offset: 0x5ce054
  8020. {
  8021. short_integer portal*
  8022. {
  8023. (used as a short_block_index)
  8024. Block Name: structure_bsp_cluster_block
  8025. }
  8026. }
  8027. }
  8028. }
  8029. }
  8030. data cluster data*
  8031. {
  8032. Definition Name: structure_bsp_cluster_data_definition
  8033. Max Bytes: 65536
  8034. Extra Data Offset: 0x8f6c0
  8035. }
  8036. block cluster portals*
  8037. {
  8038. Name: structure_bsp_cluster_portal_block
  8039. Max Chunks: 512
  8040. Chunk Size: 64
  8041. Max Chunks x Chunk Size: 32768
  8042. Chunk Definition Offset: 0x5ce0e8
  8043. {
  8044. short_integer front cluster*
  8045. {
  8046. (used as a short_block_index)
  8047. Block Name: structure_bsp_cluster_block
  8048. }
  8049. short_integer back cluster*
  8050. {
  8051. (used as a short_block_index)
  8052. Block Name: structure_bsp_cluster_block
  8053. }
  8054. long_integer plane index*
  8055. real_point_3d centroid*
  8056. real bounding radius*
  8057. long_flags flags*
  8058. {
  8059. ai can't hear through this shit
  8060. }
  8061. pad[24]
  8062. block vertices*
  8063. {
  8064. Name: structure_bsp_cluster_portal_vertex_block
  8065. Max Chunks: 128
  8066. Chunk Size: 12
  8067. Max Chunks x Chunk Size: 1536
  8068. Chunk Definition Offset: 0x5ce098
  8069. {
  8070. real_point_3d point*
  8071. }
  8072. }
  8073. }
  8074. }
  8075. pad[12]
  8076. block breakable surfaces*
  8077. {
  8078. Name: structure_bsp_breakable_surface_block
  8079. Max Chunks: 256
  8080. Chunk Size: 48
  8081. Max Chunks x Chunk Size: 12288
  8082. Chunk Definition Offset: 0x5ce44c
  8083. {
  8084. real_point_3d centroid*
  8085. real radius*
  8086. long_integer collision surface index*
  8087. pad[28]
  8088. }
  8089. }
  8090. block fog planes*
  8091. {
  8092. Name: structure_bsp_fog_plane_block
  8093. Max Chunks: 32
  8094. Chunk Size: 32
  8095. Max Chunks x Chunk Size: 1024
  8096. Chunk Definition Offset: 0x5ce350
  8097. {
  8098. short_block_index front region*
  8099. {
  8100. Block Name: structure_bsp_fog_region_block
  8101. }
  8102. pad[2]
  8103. real_plane_3d plane*
  8104. block vertices*
  8105. {
  8106. Name: structure_bsp_fog_plane_vertex_block
  8107. Max Chunks: 4096
  8108. Chunk Size: 12
  8109. Max Chunks x Chunk Size: 49152
  8110. Chunk Definition Offset: 0x5ce22c
  8111. {
  8112. real_point_3d point*
  8113. }
  8114. }
  8115. }
  8116. }
  8117. block fog regions*
  8118. {
  8119. Name: structure_bsp_fog_region_block
  8120. Max Chunks: 32
  8121. Chunk Size: 40
  8122. Max Chunks x Chunk Size: 1280
  8123. Chunk Definition Offset: 0x5ce2f4
  8124. {
  8125. pad[36]
  8126. short_block_index fog palette*
  8127. {
  8128. Block Name: structure_bsp_fog_palette_block
  8129. }
  8130. short_block_index weather palette*
  8131. {
  8132. Block Name: structure_bsp_weather_palette_block
  8133. }
  8134. }
  8135. }
  8136. block fog palette*
  8137. {
  8138. Name: structure_bsp_fog_palette_block
  8139. Max Chunks: 32
  8140. Chunk Size: 136
  8141. Max Chunks x Chunk Size: 4352
  8142. Chunk Definition Offset: 0x5ce280
  8143. {
  8144. string name^
  8145. tag reference fog
  8146. {
  8147. Supported tag class category: fog
  8148. }
  8149. pad[4]
  8150. string fog scale function
  8151. pad[52]
  8152. }
  8153. }
  8154. pad[24]
  8155. block weather palette*
  8156. {
  8157. Name: structure_bsp_weather_palette_block
  8158. Max Chunks: 32
  8159. Chunk Size: 240
  8160. Max Chunks x Chunk Size: 7680
  8161. Chunk Definition Offset: 0x5cddb8
  8162. {
  8163. string name^
  8164. tag reference particle system
  8165. {
  8166. Supported tag class category: rain
  8167. }
  8168. pad[4]
  8169. string particle system scale function
  8170. pad[44]
  8171. tag reference wind
  8172. {
  8173. Supported tag class category: wind
  8174. }
  8175. real_vector_3d wind direction
  8176. real wind magnitude
  8177. pad[4]
  8178. string wind scale function
  8179. pad[44]
  8180. }
  8181. }
  8182. block weather polyhedra*
  8183. {
  8184. Name: structure_bsp_weather_polyhedron_block
  8185. Max Chunks: 32
  8186. Chunk Size: 32
  8187. Max Chunks x Chunk Size: 1024
  8188. Chunk Definition Offset: 0x5ce1c4
  8189. {
  8190. real_point_3d bounding sphere center*
  8191. real bounding sphere radius*
  8192. pad[4]
  8193. block planes*
  8194. {
  8195. Name: structure_bsp_weather_polyhedron_plane_block
  8196. Max Chunks: 16
  8197. Chunk Size: 16
  8198. Max Chunks x Chunk Size: 256
  8199. Chunk Definition Offset: 0x5ce180
  8200. {
  8201. real_plane_3d plane*
  8202. }
  8203. }
  8204. }
  8205. }
  8206. pad[24]
  8207. block pathfinding surfaces*
  8208. {
  8209. Name: structure_bsp_pathfinding_surfaces_block
  8210. Max Chunks: 131072
  8211. Chunk Size: 1
  8212. Max Chunks x Chunk Size: 131072
  8213. Chunk Definition Offset: 0x5ce3b8
  8214. {
  8215. char_integer data*
  8216. }
  8217. }
  8218. block pathfinding edges*
  8219. {
  8220. Name: structure_bsp_pathfinding_edges_block
  8221. Max Chunks: 262144
  8222. Chunk Size: 1
  8223. Max Chunks x Chunk Size: 262144
  8224. Chunk Definition Offset: 0x5ce3fc
  8225. {
  8226. char_integer midpoint*
  8227. }
  8228. }
  8229. block background sound palette*
  8230. {
  8231. Name: structure_bsp_background_sound_palette_block
  8232. Max Chunks: 64
  8233. Chunk Size: 116
  8234. Max Chunks x Chunk Size: 7424
  8235. Chunk Definition Offset: 0x5cdcd0
  8236. {
  8237. string name^
  8238. tag reference background sound
  8239. {
  8240. Supported tag class category: lsnd
  8241. }
  8242. pad[4]
  8243. string scale function
  8244. pad[32]
  8245. }
  8246. }
  8247. block sound environment palette*
  8248. {
  8249. Name: structure_bsp_sound_environment_palette_block
  8250. Max Chunks: 64
  8251. Chunk Size: 80
  8252. Max Chunks x Chunk Size: 5120
  8253. Chunk Definition Offset: 0x5cdd44
  8254. {
  8255. string name^
  8256. tag reference sound environment
  8257. {
  8258. Supported tag class category: snde
  8259. }
  8260. pad[32]
  8261. }
  8262. }
  8263. data sound PAS data*
  8264. {
  8265. Definition Name: structure_bsp_cluster_encoded_sound_data
  8266. Max Bytes: 131072
  8267. Extra Data Offset: 0x8f6c0
  8268. }
  8269. pad[24]
  8270. block markers*
  8271. {
  8272. Name: structure_bsp_marker_block
  8273. Max Chunks: 1024
  8274. Chunk Size: 60
  8275. Max Chunks x Chunk Size: 61440
  8276. Chunk Definition Offset: 0x5ce5f8
  8277. {
  8278. string name*
  8279. real_quaternion rotation
  8280. real_point_3d position*
  8281. }
  8282. }
  8283. block detail objects*
  8284. {
  8285. Name: structure_bsp_detail_object_data_block
  8286. Max Chunks: 1
  8287. Chunk Size: 64
  8288. Max Chunks x Chunk Size: 64
  8289. Chunk Definition Offset: 0x5ce658
  8290. {
  8291. block cells
  8292. {
  8293. Name: global_detail_object_cells_block
  8294. Max Chunks: 262144
  8295. Chunk Size: 32
  8296. Max Chunks x Chunk Size: 8388608
  8297. Chunk Definition Offset: 0x5c2e88
  8298. {
  8299. short_integer *
  8300. short_integer *
  8301. short_integer *
  8302. short_integer *
  8303. long_integer *
  8304. long_integer *
  8305. long_integer *
  8306. pad[12]
  8307. }
  8308. }
  8309. block instances
  8310. {
  8311. Name: global_detail_object_block
  8312. Max Chunks: 2097152
  8313. Chunk Size: 6
  8314. Max Chunks x Chunk Size: 12582912
  8315. Chunk Definition Offset: 0x5c2f20
  8316. {
  8317. char_integer *
  8318. char_integer *
  8319. char_integer *
  8320. char_integer *
  8321. short_integer *
  8322. }
  8323. }
  8324. block counts
  8325. {
  8326. Name: global_detail_object_counts_block
  8327. Max Chunks: 8388608
  8328. Chunk Size: 2
  8329. Max Chunks x Chunk Size: 16777216
  8330. Chunk Definition Offset: 0x5c2f94
  8331. {
  8332. short_integer *
  8333. }
  8334. }
  8335. block z reference vectors
  8336. {
  8337. Name: global_z_reference_vector_block
  8338. Max Chunks: 262144
  8339. Chunk Size: 16
  8340. Max Chunks x Chunk Size: 4194304
  8341. Chunk Definition Offset: 0x5c2fd8
  8342. {
  8343. real *
  8344. real *
  8345. real *
  8346. real *
  8347. }
  8348. }
  8349. pad[16]
  8350. }
  8351. }
  8352. block runtime decals*
  8353. {
  8354. Name: structure_bsp_runtime_decal_block
  8355. Max Chunks: 6144
  8356. Chunk Size: 16
  8357. Max Chunks x Chunk Size: 98304
  8358. Chunk Definition Offset: 0x5ce6cc
  8359. {
  8360. skip[16]
  8361. }
  8362. }
  8363. pad[8]
  8364. pad[4]
  8365. block leaf map leaves
  8366. {
  8367. Name: global_map_leaf_block
  8368. Max Chunks: 65536
  8369. Chunk Size: 24
  8370. Max Chunks x Chunk Size: 1572864
  8371. Chunk Definition Offset: 0x614c24
  8372. {
  8373. block faces*
  8374. {
  8375. Name: map_leaf_face_block
  8376. Max Chunks: 256
  8377. Chunk Size: 16
  8378. Max Chunks x Chunk Size: 4096
  8379. Chunk Definition Offset: 0x614bd4
  8380. {
  8381. long_integer node index*
  8382. block vertices*
  8383. {
  8384. Name: map_leaf_face_vertex_block
  8385. Max Chunks: 64
  8386. Chunk Size: 8
  8387. Max Chunks x Chunk Size: 512
  8388. Chunk Definition Offset: 0x614b4c
  8389. {
  8390. real_point_2d vertex*
  8391. }
  8392. }
  8393. }
  8394. }
  8395. block portal indices*
  8396. {
  8397. Name: map_leaf_portal_index_block
  8398. Max Chunks: 256
  8399. Chunk Size: 4
  8400. Max Chunks x Chunk Size: 1024
  8401. Chunk Definition Offset: 0x614b90
  8402. {
  8403. long_integer portal index*
  8404. }
  8405. }
  8406. }
  8407. }
  8408. block leaf map portals
  8409. {
  8410. Name: global_leaf_portal_block
  8411. Max Chunks: 524288
  8412. Chunk Size: 24
  8413. Max Chunks x Chunk Size: 12582912
  8414. Chunk Definition Offset: 0x614cb8
  8415. {
  8416. long_integer plane index*
  8417. long_integer back leaf index*
  8418. long_integer front leaf index*
  8419. block vertices*
  8420. {
  8421. Name: leaf_portal_vertex_block
  8422. Max Chunks: 64
  8423. Chunk Size: 12
  8424. Max Chunks x Chunk Size: 768
  8425. Chunk Definition Offset: 0x614c74
  8426. {
  8427. real_point_3d point*
  8428. }
  8429. }
  8430. }
  8431. }
  8432. POORLY-DETERMINED MIN FILESIZE OF sbsp (including 64-byte header): 712
  8433. POORLY-DETERMINED MAX FILESIZE OF sbsp (including 64-byte header): 87329098
  8434.  
  8435. Tag Definition Offset: 0x5cd800
  8436. Extension: scenario
  8437. Unknown: 1
  8438. Class: scnr
  8439. No superclass
  8440. Version: 2
  8441. Dialog Data Offset: 0x48f070
  8442. Definition Block:
  8443. {
  8444. Name: scenario
  8445. Count: 1
  8446. Size: 1456
  8447. Chunks Offset: 0x5cd480
  8448. }
  8449. tag reference DON'T USE
  8450. {
  8451. Usage flags value: 2
  8452. Supported tag class category: sbsp
  8453. }
  8454. tag reference WON'T USE
  8455. {
  8456. Usage flags value: 2
  8457. Supported tag class category: sbsp
  8458. }
  8459. tag reference CAN'T USE#set me!! me!!! i do something cool!!! you'll be happy forever if there this tag reference is filled in! don't believe the lies!!! LIESSSS!!!!!!!! YESS, MY PRECIOUSSSSS, LIESSSS...
  8460. {
  8461. Supported tag class category: sky
  8462. }
  8463. block skies
  8464. {
  8465. Name: scenario_sky_reference_block
  8466. Max Chunks: 8
  8467. Chunk Size: 16
  8468. Max Chunks x Chunk Size: 128
  8469. Chunk Definition Offset: 0x5cd370
  8470. {
  8471. tag reference sky
  8472. {
  8473. Supported tag class category: sky
  8474. }
  8475. }
  8476. }
  8477. enum type
  8478. {
  8479. solo
  8480. multiplayer
  8481. main menu
  8482. }
  8483. word_flags flags
  8484. {
  8485. cortana hack#sort cortana in front of other transparent geometry
  8486. use demo UI#uses alternate UI collection for demo
  8487. }
  8488. block child scenarios
  8489. {
  8490. Name: scenario_child_scenario_block
  8491. Max Chunks: 16
  8492. Chunk Size: 32
  8493. Max Chunks x Chunk Size: 512
  8494. Chunk Definition Offset: 0x5cd314
  8495. {
  8496. tag reference child scenario
  8497. {
  8498. Supported tag class category: scnr
  8499. }
  8500. pad[16]
  8501. }
  8502. }
  8503. angle local north
  8504. pad[20]
  8505. pad[136]
  8506. block predicted resources*
  8507. {
  8508. Name: predicted_resource_block
  8509. Max Chunks: 1024
  8510. Chunk Size: 8
  8511. Max Chunks x Chunk Size: 8192
  8512. Chunk Definition Offset: 0x605ee0
  8513. {
  8514. enum type
  8515. {
  8516. bitmap
  8517. sound
  8518. }
  8519. short_integer resource index
  8520. long_integer tag index
  8521. }
  8522. }
  8523. block functions
  8524. {
  8525. Name: scenario_function_block
  8526. Max Chunks: 32
  8527. Chunk Size: 120
  8528. Max Chunks x Chunk Size: 3840
  8529. Chunk Definition Offset: 0x5cbc60
  8530. {
  8531. long_flags flags
  8532. {
  8533. scripted#the level script will set this value; the other settings here will be ignored.
  8534. invert#result of function is one minus actual result
  8535. additive
  8536. always active#function does not deactivate when at or below lower bound
  8537. }
  8538. string name^
  8539. real period:seconds#this is the period for the above function (lower values make the function oscillate quickly, higher values make it oscillate slowly)
  8540. short_block_index scale period by#multiply this function by the above period
  8541. {
  8542. Block Name: scenario_function_block
  8543. }
  8544. enum function
  8545. {
  8546. one
  8547. zero
  8548. cosine
  8549. cosine (variable period)
  8550. diagonal wave
  8551. diagonal wave (variable period)
  8552. slide
  8553. slide (variable period)
  8554. noise
  8555. jitter
  8556. wander
  8557. spark
  8558. }
  8559. short_block_index scale function by#multiply this function by the result of the above function
  8560. {
  8561. Block Name: scenario_function_block
  8562. }
  8563. enum wobble function#the curve used for the wobble
  8564. {
  8565. one
  8566. zero
  8567. cosine
  8568. cosine (variable period)
  8569. diagonal wave
  8570. diagonal wave (variable period)
  8571. slide
  8572. slide (variable period)
  8573. noise
  8574. jitter
  8575. wander
  8576. spark
  8577. }
  8578. real wobble period:seconds#the length of time it takes for the magnitude of this function to complete a wobble
  8579. real wobble magnitude:percent#the amount of random wobble in the magnitude
  8580. real_fraction square wave threshold#if non-zero, all values above the square wave threshold are snapped to 1.0, and all values below it are snapped to 0.0 to create a square wave.
  8581. short_integer step count#the number of discrete values to snap to (e.g., a step count of 5 would snap the function to 0.00,0.25,0.50,0.75 or 1.00)
  8582. enum map to
  8583. {
  8584. linear
  8585. early
  8586. very early
  8587. late
  8588. very late
  8589. cosine
  8590. }
  8591. short_integer sawtooth count#the number of times this function should repeat (e.g., a sawtooth count of 5 would give the function a value of 1.0 at each of 0.25,0.50,0.75 as well as at 1.0
  8592. pad[2]
  8593. short_block_index scale result by#multiply this function (from a weapon, vehicle, etc.) final result of all of the above math
  8594. {
  8595. Block Name: scenario_function_block
  8596. }
  8597. enum bounds mode#controls how the bounds, below, are used
  8598. {
  8599. clip
  8600. clip and normalize
  8601. scale to fit
  8602. }
  8603. fraction_bounds bounds
  8604. pad[4]
  8605. pad[2]
  8606. short_block_index turn off with#if the specified function is off, so is this function
  8607. {
  8608. Block Name: scenario_function_block
  8609. }
  8610. pad[16]
  8611. pad[16]
  8612. }
  8613. }
  8614. data editor scenario data
  8615. {
  8616. Definition Name: editor_scenario_data_definition
  8617. Max Bytes: 65536
  8618. }
  8619. block comments
  8620. {
  8621. Name: editor_comment_block
  8622. Max Chunks: 1024
  8623. Chunk Size: 48
  8624. Max Chunks x Chunk Size: 49152
  8625. Chunk Definition Offset: 0x5cd3f8
  8626. {
  8627. real_point_3d position
  8628. pad[16]
  8629. data comment
  8630. {
  8631. Definition Name: editor_comment_data_definition
  8632. Interface Flags: 2
  8633. Max Bytes: 16384
  8634. }
  8635. }
  8636. }
  8637. pad[224]
  8638. block object names*
  8639. {
  8640. Name: scenario_object_names_block
  8641. Max Chunks: 512
  8642. Chunk Size: 36
  8643. Max Chunks x Chunk Size: 18432
  8644. Chunk Definition Offset: 0x5cbda0
  8645. {
  8646. string name^
  8647. pad[4]
  8648. }
  8649. }
  8650. block scenery
  8651. {
  8652. Name: scenario_scenery_block
  8653. Max Chunks: 2000
  8654. Chunk Size: 72
  8655. Max Chunks x Chunk Size: 144000
  8656. Chunk Definition Offset: 0x5cc410
  8657. {
  8658. short_block_index type
  8659. {
  8660. Block Name: scenario_scenery_palette_block
  8661. }
  8662. short_block_index name
  8663. {
  8664. Block Name: scenario_object_names_block
  8665. }
  8666. word_flags not placed
  8667. {
  8668. automatically
  8669. on easy
  8670. on normal
  8671. on hard
  8672. }
  8673. short_integer desired permutation#if non-zero, will try to use model permutations with names that end in that number, e.g. 7 would pick "body-7" and "head-7"
  8674. real_point_3d position
  8675. real_euler_angles_3d rotation
  8676. pad[8]
  8677. pad[16]
  8678. pad[8]
  8679. pad[8]
  8680. }
  8681. }
  8682. block scenery palette
  8683. {
  8684. Name: scenario_scenery_palette_block
  8685. Max Chunks: 100
  8686. Chunk Size: 48
  8687. Max Chunks x Chunk Size: 4800
  8688. Chunk Definition Offset: 0x5cc3c0
  8689. {
  8690. tag reference name^
  8691. {
  8692. Supported tag class category: scen
  8693. }
  8694. pad[32]
  8695. }
  8696. }
  8697. block bipeds
  8698. {
  8699. Name: scenario_biped_block
  8700. Max Chunks: 128
  8701. Chunk Size: 120
  8702. Max Chunks x Chunk Size: 15360
  8703. Chunk Definition Offset: 0x5cc7a0
  8704. {
  8705. short_block_index type
  8706. {
  8707. Block Name: scenario_biped_palette_block
  8708. }
  8709. short_block_index name
  8710. {
  8711. Block Name: scenario_object_names_block
  8712. }
  8713. word_flags not placed
  8714. {
  8715. automatically
  8716. on easy
  8717. on normal
  8718. on hard
  8719. }
  8720. short_integer desired permutation#if non-zero, will try to use model permutations with names that end in that number, e.g. 7 would pick "body-7" and "head-7"
  8721. real_point_3d position
  8722. real_euler_angles_3d rotation
  8723. pad[8]
  8724. pad[16]
  8725. pad[8]
  8726. pad[8]
  8727. real body vitality:[0,1]
  8728. long_flags flags
  8729. {
  8730. dead
  8731. }
  8732. pad[8]
  8733. pad[32]
  8734. }
  8735. }
  8736. block biped palette
  8737. {
  8738. Name: scenario_biped_palette_block
  8739. Max Chunks: 100
  8740. Chunk Size: 48
  8741. Max Chunks x Chunk Size: 4800
  8742. Chunk Definition Offset: 0x5cc74c
  8743. {
  8744. tag reference name^
  8745. {
  8746. Supported tag class category: bipd
  8747. }
  8748. pad[32]
  8749. }
  8750. }
  8751. block vehicles
  8752. {
  8753. Name: scenario_vehicle_block
  8754. Max Chunks: 80
  8755. Chunk Size: 120
  8756. Max Chunks x Chunk Size: 9600
  8757. Chunk Definition Offset: 0x5cc928
  8758. {
  8759. short_block_index type
  8760. {
  8761. Block Name: scenario_vehicle_palette_block
  8762. }
  8763. short_block_index name
  8764. {
  8765. Block Name: scenario_object_names_block
  8766. }
  8767. word_flags not placed
  8768. {
  8769. automatically
  8770. on easy
  8771. on normal
  8772. on hard
  8773. }
  8774. short_integer desired permutation#if non-zero, will try to use model permutations with names that end in that number, e.g. 7 would pick "body-7" and "head-7"
  8775. real_point_3d position
  8776. real_euler_angles_3d rotation
  8777. pad[8]
  8778. pad[16]
  8779. pad[8]
  8780. pad[8]
  8781. real body vitality:[0,1]
  8782. long_flags flags
  8783. {
  8784. dead
  8785. }
  8786. pad[8]
  8787. char_integer multiplayer team index#on a multiplayer map, this determines which team the vehicle belongs to for custom vehicle sets.
  8788. pad[1]
  8789. word_flags multiplayer spawn flags
  8790. {
  8791. slayer default#vehicle will spawn when default vehicle set is used in a slayer game
  8792. ctf default#vehicle will spawn when default vehicle set is used in a ctf game
  8793. king default#vehicle will spawn when default vehicle set is used in a king game
  8794. oddball default#vehicle will spawn when default vehicle set is used in a oddball game
  8795. unused#unused
  8796. unused#unused
  8797. unused#unused
  8798. unused#unused
  8799. slayer allowed#vehicle can spawn in a slayer game
  8800. ctf allowed#vehicle can spawn in a ctf game
  8801. king allowed#vehicle can spawn in a king game
  8802. oddball allowed#vehicle can spawn in a oddball game
  8803. unused#unused
  8804. unused#unused
  8805. unused#unused
  8806. unused#unused
  8807. }
  8808. pad[28]
  8809. }
  8810. }
  8811. block vehicle palette
  8812. {
  8813. Name: scenario_vehicle_palette_block
  8814. Max Chunks: 100
  8815. Chunk Size: 48
  8816. Max Chunks x Chunk Size: 4800
  8817. Chunk Definition Offset: 0x5cc8d4
  8818. {
  8819. tag reference name^
  8820. {
  8821. Supported tag class category: vehi
  8822. }
  8823. pad[32]
  8824. }
  8825. }
  8826. block equipment
  8827. {
  8828. Name: scenario_equipment_block
  8829. Max Chunks: 256
  8830. Chunk Size: 40
  8831. Max Chunks x Chunk Size: 10240
  8832. Chunk Definition Offset: 0x5cc530
  8833. {
  8834. short_block_index type
  8835. {
  8836. Block Name: scenario_equipment_palette_block
  8837. }
  8838. short_block_index name
  8839. {
  8840. Block Name: scenario_object_names_block
  8841. }
  8842. word_flags not placed
  8843. {
  8844. automatically
  8845. on easy
  8846. on normal
  8847. on hard
  8848. }
  8849. short_integer desired permutation#if non-zero, will try to use model permutations with names that end in that number, e.g. 7 would pick "body-7" and "head-7"
  8850. real_point_3d position
  8851. real_euler_angles_3d rotation
  8852. pad[2]
  8853. word_flags misc flags
  8854. {
  8855. initially at rest (doesn't fall)
  8856. obsolete
  8857. does accelerate (moves due to explosions)
  8858. }
  8859. pad[4]
  8860. }
  8861. }
  8862. block equipment palette
  8863. {
  8864. Name: scenario_equipment_palette_block
  8865. Max Chunks: 100
  8866. Chunk Size: 48
  8867. Max Chunks x Chunk Size: 4800
  8868. Chunk Definition Offset: 0x5cc4e0
  8869. {
  8870. tag reference name^
  8871. {
  8872. Supported tag class category: eqip
  8873. }
  8874. pad[32]
  8875. }
  8876. }
  8877. block weapons
  8878. {
  8879. Name: scenario_weapon_block
  8880. Max Chunks: 128
  8881. Chunk Size: 92
  8882. Max Chunks x Chunk Size: 11776
  8883. Chunk Definition Offset: 0x5cc648
  8884. {
  8885. short_block_index type
  8886. {
  8887. Block Name: scenario_weapon_palette_block
  8888. }
  8889. short_block_index name
  8890. {
  8891. Block Name: scenario_object_names_block
  8892. }
  8893. word_flags not placed
  8894. {
  8895. automatically
  8896. on easy
  8897. on normal
  8898. on hard
  8899. }
  8900. short_integer desired permutation#if non-zero, will try to use model permutations with names that end in that number, e.g. 7 would pick "body-7" and "head-7"
  8901. real_point_3d position
  8902. real_euler_angles_3d rotation
  8903. pad[8]
  8904. pad[16]
  8905. pad[8]
  8906. pad[8]
  8907. short_integer rounds left
  8908. short_integer rounds loaded
  8909. word_flags flags
  8910. {
  8911. initially at rest (doesn't fall)
  8912. obsolete
  8913. does accelerate (moves due to explosions)
  8914. }
  8915. pad[2]
  8916. pad[12]
  8917. }
  8918. }
  8919. block weapon palette
  8920. {
  8921. Name: scenario_weapon_palette_block
  8922. Max Chunks: 100
  8923. Chunk Size: 48
  8924. Max Chunks x Chunk Size: 4800
  8925. Chunk Definition Offset: 0x5cc5f4
  8926. {
  8927. tag reference name^
  8928. {
  8929. Supported tag class category: weap
  8930. }
  8931. pad[32]
  8932. }
  8933. }
  8934. block device groups
  8935. {
  8936. Name: device_group_block
  8937. Max Chunks: 128
  8938. Chunk Size: 52
  8939. Max Chunks x Chunk Size: 6656
  8940. Chunk Definition Offset: 0x5cbe00
  8941. {
  8942. string name^
  8943. real initial value:[0,1]
  8944. long_flags flags
  8945. {
  8946. can change only once
  8947. }
  8948. pad[12]
  8949. }
  8950. }
  8951. block machines
  8952. {
  8953. Name: scenario_machine_block
  8954. Max Chunks: 400
  8955. Chunk Size: 64
  8956. Max Chunks x Chunk Size: 25600
  8957. Chunk Definition Offset: 0x5ccac0
  8958. {
  8959. short_block_index type
  8960. {
  8961. Block Name: scenario_machine_palette_block
  8962. }
  8963. short_block_index name
  8964. {
  8965. Block Name: scenario_object_names_block
  8966. }
  8967. word_flags not placed
  8968. {
  8969. automatically
  8970. on easy
  8971. on normal
  8972. on hard
  8973. }
  8974. short_integer desired permutation#if non-zero, will try to use model permutations with names that end in that number, e.g. 7 would pick "body-7" and "head-7"
  8975. real_point_3d position
  8976. real_euler_angles_3d rotation
  8977. pad[8]
  8978. short_block_index power group
  8979. {
  8980. Block Name: device_group_block
  8981. }
  8982. short_block_index position group
  8983. {
  8984. Block Name: device_group_block
  8985. }
  8986. long_flags flags
  8987. {
  8988. initially open (1.0)
  8989. initially off (0.0)
  8990. can change only once
  8991. position reversed
  8992. not usable from any side
  8993. }
  8994. long_flags flags
  8995. {
  8996. does not operate automatically
  8997. one-sided
  8998. never appears locked
  8999. opened by melee attack
  9000. }
  9001. pad[12]
  9002. }
  9003. }
  9004. block machine palette
  9005. {
  9006. Name: scenario_machine_palette_block
  9007. Max Chunks: 100
  9008. Chunk Size: 48
  9009. Max Chunks x Chunk Size: 4800
  9010. Chunk Definition Offset: 0x5cca6c
  9011. {
  9012. tag reference name^
  9013. {
  9014. Supported tag class category: mach
  9015. }
  9016. pad[32]
  9017. }
  9018. }
  9019. block controls
  9020. {
  9021. Name: scenario_control_block
  9022. Max Chunks: 100
  9023. Chunk Size: 64
  9024. Max Chunks x Chunk Size: 6400
  9025. Chunk Definition Offset: 0x5ccbf0
  9026. {
  9027. short_block_index type
  9028. {
  9029. Block Name: scenario_control_palette_block
  9030. }
  9031. short_block_index name
  9032. {
  9033. Block Name: scenario_object_names_block
  9034. }
  9035. word_flags not placed
  9036. {
  9037. automatically
  9038. on easy
  9039. on normal
  9040. on hard
  9041. }
  9042. short_integer desired permutation#if non-zero, will try to use model permutations with names that end in that number, e.g. 7 would pick "body-7" and "head-7"
  9043. real_point_3d position
  9044. real_euler_angles_3d rotation
  9045. pad[8]
  9046. short_block_index power group
  9047. {
  9048. Block Name: device_group_block
  9049. }
  9050. short_block_index position group
  9051. {
  9052. Block Name: device_group_block
  9053. }
  9054. long_flags flags
  9055. {
  9056. initially open (1.0)
  9057. initially off (0.0)
  9058. can change only once
  9059. position reversed
  9060. not usable from any side
  9061. }
  9062. long_flags flags
  9063. {
  9064. usable from both sides
  9065. }
  9066. short_integer *DON'T TOUCH THIS
  9067. custom
  9068. {
  9069. Field Class: ugh@
  9070. }
  9071. pad[2]
  9072. pad[8]
  9073. }
  9074. }
  9075. block control palette
  9076. {
  9077. Name: scenario_control_palette_block
  9078. Max Chunks: 100
  9079. Chunk Size: 48
  9080. Max Chunks x Chunk Size: 4800
  9081. Chunk Definition Offset: 0x5ccba0
  9082. {
  9083. tag reference name^
  9084. {
  9085. Supported tag class category: ctrl
  9086. }
  9087. pad[32]
  9088. }
  9089. }
  9090. block light fixtures
  9091. {
  9092. Name: scenario_light_fixture_block
  9093. Max Chunks: 500
  9094. Chunk Size: 88
  9095. Max Chunks x Chunk Size: 44000
  9096. Chunk Definition Offset: 0x5ccd38
  9097. {
  9098. short_block_index type
  9099. {
  9100. Block Name: scenario_light_fixture_palette_block
  9101. }
  9102. short_block_index name
  9103. {
  9104. Block Name: scenario_object_names_block
  9105. }
  9106. word_flags not placed
  9107. {
  9108. automatically
  9109. on easy
  9110. on normal
  9111. on hard
  9112. }
  9113. short_integer desired permutation#if non-zero, will try to use model permutations with names that end in that number, e.g. 7 would pick "body-7" and "head-7"
  9114. real_point_3d position
  9115. real_euler_angles_3d rotation
  9116. pad[8]
  9117. short_block_index power group
  9118. {
  9119. Block Name: device_group_block
  9120. }
  9121. short_block_index position group
  9122. {
  9123. Block Name: device_group_block
  9124. }
  9125. long_flags flags
  9126. {
  9127. initially open (1.0)
  9128. initially off (0.0)
  9129. can change only once
  9130. position reversed
  9131. not usable from any side
  9132. }
  9133. real_rgb_color color
  9134. real intensity
  9135. angle falloff angle:degrees
  9136. angle cutoff angle:degrees
  9137. pad[16]
  9138. }
  9139. }
  9140. block light fixtures palette
  9141. {
  9142. Name: scenario_light_fixture_palette_block
  9143. Max Chunks: 100
  9144. Chunk Size: 48
  9145. Max Chunks x Chunk Size: 4800
  9146. Chunk Definition Offset: 0x5ccce8
  9147. {
  9148. tag reference name^
  9149. {
  9150. Supported tag class category: lifi
  9151. }
  9152. pad[32]
  9153. }
  9154. }
  9155. block sound scenery
  9156. {
  9157. Name: scenario_sound_scenery_block
  9158. Max Chunks: 256
  9159. Chunk Size: 40
  9160. Max Chunks x Chunk Size: 10240
  9161. Chunk Definition Offset: 0x5cce80
  9162. {
  9163. short_block_index type
  9164. {
  9165. Block Name: scenario_sound_scenery_palette_block
  9166. }
  9167. short_block_index name
  9168. {
  9169. Block Name: scenario_object_names_block
  9170. }
  9171. word_flags not placed
  9172. {
  9173. automatically
  9174. on easy
  9175. on normal
  9176. on hard
  9177. }
  9178. short_integer desired permutation#if non-zero, will try to use model permutations with names that end in that number, e.g. 7 would pick "body-7" and "head-7"
  9179. real_point_3d position
  9180. real_euler_angles_3d rotation
  9181. pad[8]
  9182. }
  9183. }
  9184. block sound scenery palette
  9185. {
  9186. Name: scenario_sound_scenery_palette_block
  9187. Max Chunks: 100
  9188. Chunk Size: 48
  9189. Max Chunks x Chunk Size: 4800
  9190. Chunk Definition Offset: 0x5cce30
  9191. {
  9192. tag reference name^
  9193. {
  9194. Supported tag class category: ssce
  9195. }
  9196. pad[32]
  9197. }
  9198. }
  9199. pad[84]
  9200. block player starting profile
  9201. {
  9202. Name: scenario_profiles_block
  9203. Max Chunks: 256
  9204. Chunk Size: 104
  9205. Max Chunks x Chunk Size: 26624
  9206. Chunk Definition Offset: 0x5cc138
  9207. {
  9208. string name^
  9209. real_fraction starting health modifier:[0,1]
  9210. real_fraction starting shield modifier:[0,1]
  9211. tag reference primary weapon
  9212. {
  9213. Supported tag class category: weap
  9214. }
  9215. short_integer rounds loaded
  9216. short_integer rounds total
  9217. tag reference secondary weapon
  9218. {
  9219. Supported tag class category: weap
  9220. }
  9221. short_integer rounds loaded
  9222. short_integer rounds total
  9223. char_integer starting fragmentation grenade count
  9224. char_integer starting plasma grenade count
  9225. char_integer starting <unknown> grenade count
  9226. char_integer starting <unknown> grenade count
  9227. pad[20]
  9228. }
  9229. }
  9230. block player starting locations
  9231. {
  9232. Name: scenario_players_block
  9233. Max Chunks: 256
  9234. Chunk Size: 52
  9235. Max Chunks x Chunk Size: 13312
  9236. Chunk Definition Offset: 0x5cc218
  9237. {
  9238. real_point_3d position
  9239. angle facing:degrees
  9240. short_integer team index
  9241. short_integer bsp index
  9242. enum type 0
  9243. {
  9244. none
  9245. ctf
  9246. slayer
  9247. oddball
  9248. king of the hill
  9249. race
  9250. terminator
  9251. stub
  9252. ignored1
  9253. ignored2
  9254. ignored3
  9255. ignored4
  9256. all games
  9257. all except ctf
  9258. all except race & ctf
  9259. }
  9260. enum type 1
  9261. {
  9262. none
  9263. ctf
  9264. slayer
  9265. oddball
  9266. king of the hill
  9267. race
  9268. terminator
  9269. stub
  9270. ignored1
  9271. ignored2
  9272. ignored3
  9273. ignored4
  9274. all games
  9275. all except ctf
  9276. all except race & ctf
  9277. }
  9278. enum type 2
  9279. {
  9280. none
  9281. ctf
  9282. slayer
  9283. oddball
  9284. king of the hill
  9285. race
  9286. terminator
  9287. stub
  9288. ignored1
  9289. ignored2
  9290. ignored3
  9291. ignored4
  9292. all games
  9293. all except ctf
  9294. all except race & ctf
  9295. }
  9296. enum type 3
  9297. {
  9298. none
  9299. ctf
  9300. slayer
  9301. oddball
  9302. king of the hill
  9303. race
  9304. terminator
  9305. stub
  9306. ignored1
  9307. ignored2
  9308. ignored3
  9309. ignored4
  9310. all games
  9311. all except ctf
  9312. all except race & ctf
  9313. }
  9314. pad[24]
  9315. }
  9316. }
  9317. block trigger volumes
  9318. {
  9319. Name: scenario_trigger_volume_block
  9320. Max Chunks: 256
  9321. Chunk Size: 96
  9322. Max Chunks x Chunk Size: 24576
  9323. Chunk Definition Offset: 0x5cc2c0
  9324. {
  9325. skip[4]
  9326. string name^
  9327. array_start "" repeated 15 time(s):
  9328. real
  9329. array_end
  9330. }
  9331. }
  9332. block recorded animations
  9333. {
  9334. Name: recorded_animation_block
  9335. Max Chunks: 1024
  9336. Chunk Size: 64
  9337. Max Chunks x Chunk Size: 65536
  9338. Chunk Definition Offset: 0x6142a8
  9339. {
  9340. string name^
  9341. char_integer version*
  9342. char_integer raw animation data*
  9343. char_integer unit control data version*
  9344. pad[1]
  9345. short_integer length of animation*:ticks
  9346. pad[2]
  9347. pad[4]
  9348. data recorded animation event stream*
  9349. {
  9350. Definition Name: recorded_animation_event_stream_data
  9351. Max Bytes: 2097152
  9352. Extra Data Offset: 0x1b0ca0
  9353. }
  9354. }
  9355. }
  9356. block netgame flags
  9357. {
  9358. Name: scenario_netgame_flags_block
  9359. Max Chunks: 200
  9360. Chunk Size: 148
  9361. Max Chunks x Chunk Size: 29600
  9362. Chunk Definition Offset: 0x5cc0a8
  9363. {
  9364. real_point_3d position
  9365. angle facing:degress
  9366. enum type
  9367. {
  9368. ctf - flag
  9369. ctf - vehicle
  9370. oddball - ball spawn
  9371. race - track
  9372. race - vehicle
  9373. vegas - bank
  9374. teleport from
  9375. teleport to
  9376. hill - flag
  9377. }
  9378. short_integer team index
  9379. tag reference weapon group
  9380. {
  9381. Supported tag class category: itmc
  9382. }
  9383. pad[112]
  9384. }
  9385. }
  9386. block netgame equipment
  9387. {
  9388. Name: scenario_netgame_equipment_block
  9389. Max Chunks: 200
  9390. Chunk Size: 144
  9391. Max Chunks x Chunk Size: 28800
  9392. Chunk Definition Offset: 0x5cbef8
  9393. {
  9394. long_flags flags
  9395. {
  9396. levitate
  9397. }
  9398. enum type 0
  9399. {
  9400. none
  9401. ctf
  9402. slayer
  9403. oddball
  9404. king of the hill
  9405. race
  9406. terminator
  9407. stub
  9408. ignored1
  9409. ignored2
  9410. ignored3
  9411. ignored4
  9412. all games
  9413. all except ctf
  9414. all except race & ctf
  9415. }
  9416. enum type 1
  9417. {
  9418. none
  9419. ctf
  9420. slayer
  9421. oddball
  9422. king of the hill
  9423. race
  9424. terminator
  9425. stub
  9426. ignored1
  9427. ignored2
  9428. ignored3
  9429. ignored4
  9430. all games
  9431. all except ctf
  9432. all except race & ctf
  9433. }
  9434. enum type 2
  9435. {
  9436. none
  9437. ctf
  9438. slayer
  9439. oddball
  9440. king of the hill
  9441. race
  9442. terminator
  9443. stub
  9444. ignored1
  9445. ignored2
  9446. ignored3
  9447. ignored4
  9448. all games
  9449. all except ctf
  9450. all except race & ctf
  9451. }
  9452. enum type 3
  9453. {
  9454. none
  9455. ctf
  9456. slayer
  9457. oddball
  9458. king of the hill
  9459. race
  9460. terminator
  9461. stub
  9462. ignored1
  9463. ignored2
  9464. ignored3
  9465. ignored4
  9466. all games
  9467. all except ctf
  9468. all except race & ctf
  9469. }
  9470. short_integer team index
  9471. short_integer spawn time (in seconds, 0 = default)
  9472. pad[48]
  9473. real_point_3d position
  9474. angle facing:degress
  9475. tag reference item collection
  9476. {
  9477. Supported tag class category: itmc
  9478. }
  9479. pad[48]
  9480. }
  9481. }
  9482. block starting equipment
  9483. {
  9484. Name: scenario_starting_equipment_block
  9485. Max Chunks: 200
  9486. Chunk Size: 204
  9487. Max Chunks x Chunk Size: 40800
  9488. Chunk Definition Offset: 0x5cbfd0
  9489. {
  9490. long_flags flags
  9491. {
  9492. no grenades
  9493. plasma grenades
  9494. }
  9495. enum type 0
  9496. {
  9497. none
  9498. ctf
  9499. slayer
  9500. oddball
  9501. king of the hill
  9502. race
  9503. terminator
  9504. stub
  9505. ignored1
  9506. ignored2
  9507. ignored3
  9508. ignored4
  9509. all games
  9510. all except ctf
  9511. all except race & ctf
  9512. }
  9513. enum type 1
  9514. {
  9515. none
  9516. ctf
  9517. slayer
  9518. oddball
  9519. king of the hill
  9520. race
  9521. terminator
  9522. stub
  9523. ignored1
  9524. ignored2
  9525. ignored3
  9526. ignored4
  9527. all games
  9528. all except ctf
  9529. all except race & ctf
  9530. }
  9531. enum type 2
  9532. {
  9533. none
  9534. ctf
  9535. slayer
  9536. oddball
  9537. king of the hill
  9538. race
  9539. terminator
  9540. stub
  9541. ignored1
  9542. ignored2
  9543. ignored3
  9544. ignored4
  9545. all games
  9546. all except ctf
  9547. all except race & ctf
  9548. }
  9549. enum type 3
  9550. {
  9551. none
  9552. ctf
  9553. slayer
  9554. oddball
  9555. king of the hill
  9556. race
  9557. terminator
  9558. stub
  9559. ignored1
  9560. ignored2
  9561. ignored3
  9562. ignored4
  9563. all games
  9564. all except ctf
  9565. all except race & ctf
  9566. }
  9567. pad[48]
  9568. tag reference item collection 1
  9569. {
  9570. Supported tag class category: itmc
  9571. }
  9572. tag reference item collection 2
  9573. {
  9574. Supported tag class category: itmc
  9575. }
  9576. tag reference item collection 3
  9577. {
  9578. Supported tag class category: itmc
  9579. }
  9580. tag reference item collection 4
  9581. {
  9582. Supported tag class category: itmc
  9583. }
  9584. tag reference item collection 5
  9585. {
  9586. Supported tag class category: itmc
  9587. }
  9588. tag reference item collection 6
  9589. {
  9590. Supported tag class category: itmc
  9591. }
  9592. pad[48]
  9593. }
  9594. }
  9595. block bsp switch trigger volumes
  9596. {
  9597. Name: scenario_bsp_switch_trigger_volume_block
  9598. Max Chunks: 256
  9599. Chunk Size: 8
  9600. Max Chunks x Chunk Size: 2048
  9601. Chunk Definition Offset: 0x5cc334
  9602. {
  9603. short_block_index trigger volume
  9604. {
  9605. Block Name: scenario_trigger_volume_block
  9606. }
  9607. short_integer source
  9608. short_integer destination
  9609. pad[2]
  9610. }
  9611. }
  9612. block decals
  9613. {
  9614. Name: scenario_decals_block
  9615. Max Chunks: 65536
  9616. Chunk Size: 16
  9617. Max Chunks x Chunk Size: 1048576
  9618. Chunk Definition Offset: 0x5ccffc
  9619. {
  9620. short_block_index decal type^
  9621. {
  9622. Block Name: scenario_decal_palette_block
  9623. }
  9624. char_integer yaw[-127,127]*
  9625. char_integer pitch[-127,127]*
  9626. real_point_3d position*
  9627. }
  9628. }
  9629. block decal palette
  9630. {
  9631. Name: scenario_decal_palette_block
  9632. Max Chunks: 128
  9633. Chunk Size: 16
  9634. Max Chunks x Chunk Size: 2048
  9635. Chunk Definition Offset: 0x5ccfb8
  9636. {
  9637. tag reference reference^
  9638. {
  9639. Supported tag class category: deca
  9640. }
  9641. }
  9642. }
  9643. block detail object collection palette
  9644. {
  9645. Name: scenario_detail_object_collection_palette_block
  9646. Max Chunks: 32
  9647. Chunk Size: 48
  9648. Max Chunks x Chunk Size: 1536
  9649. Chunk Definition Offset: 0x5ccf0c
  9650. {
  9651. tag reference name^
  9652. {
  9653. Supported tag class category: dobc
  9654. }
  9655. pad[32]
  9656. }
  9657. }
  9658. pad[84]
  9659. block actor palette
  9660. {
  9661. Name: actor_palette_block
  9662. Max Chunks: 64
  9663. Chunk Size: 16
  9664. Max Chunks x Chunk Size: 1024
  9665. Chunk Definition Offset: 0x613374
  9666. {
  9667. tag reference reference^
  9668. {
  9669. Supported tag class category: actv
  9670. }
  9671. }
  9672. }
  9673. block encounters
  9674. {
  9675. Name: encounter_block
  9676. Max Chunks: 128
  9677. Chunk Size: 176
  9678. Max Chunks x Chunk Size: 22528
  9679. Chunk Definition Offset: 0x613ef0
  9680. {
  9681. string name^
  9682. long_flags flags
  9683. {
  9684. not initially created
  9685. respawn enabled
  9686. initially blind
  9687. initially deaf
  9688. initially braindead
  9689. 3d firing positions
  9690. manual bsp index specified
  9691. }
  9692. enum team index
  9693. {
  9694. 0 / default by unit
  9695. 1 / player
  9696. 2 / human
  9697. 3 / covenant
  9698. 4 / flood
  9699. 5 / sentinel
  9700. 6 / unused6
  9701. 7 / unused7
  9702. 8 / unused8
  9703. 9 / unused9
  9704. }
  9705. skip[2]
  9706. enum search behavior
  9707. {
  9708. normal
  9709. never
  9710. tenacious
  9711. }
  9712. short_integer manual bsp index#structure bsp index that this encounter belongs to... ignored unless 'manual bsp index' flag is checked. if this flag is not checked, the structure bsp is found automatically (may fail in areas of overlapping geometry)
  9713. real_bounds respawn delay:seconds#delay between respawning actors in this encounter
  9714. pad[76]
  9715. block squads
  9716. {
  9717. Name: squads_block
  9718. Max Chunks: 64
  9719. Chunk Size: 232
  9720. Max Chunks x Chunk Size: 14848
  9721. Chunk Definition Offset: 0x613cb0
  9722. {
  9723. string name
  9724. short_block_index actor type
  9725. {
  9726. Block Name: actor_palette_block
  9727. }
  9728. short_block_index platoon
  9729. {
  9730. Block Name: platoons_block
  9731. }
  9732. enum initial state#state that this actor starts in
  9733. {
  9734. none
  9735. sleeping
  9736. alert
  9737. moving - repeat same position
  9738. moving - loop
  9739. moving - loop back and forth
  9740. moving - loop randomly
  9741. moving - randomly
  9742. guarding
  9743. guarding at guard position
  9744. searching
  9745. fleeing
  9746. }
  9747. enum return state#state that this actor will return to when it has nothing to do
  9748. {
  9749. none
  9750. sleeping
  9751. alert
  9752. moving - repeat same position
  9753. moving - loop
  9754. moving - loop back and forth
  9755. moving - loop randomly
  9756. moving - randomly
  9757. guarding
  9758. guarding at guard position
  9759. searching
  9760. fleeing
  9761. }
  9762. long_flags flags
  9763. {
  9764. unused
  9765. never search
  9766. start timer immediately
  9767. no timer, delay forever
  9768. magic sight after timer
  9769. automatic migration
  9770. }
  9771. enum unique leader type#what kind of leader this squad has (e.g. a sarge for marines) - 'normal' is based on the size of the squad, 'random' always creates a leader, or you can specify an individual type
  9772. {
  9773. normal
  9774. none
  9775. random
  9776. sgt johnson
  9777. sgt lehto
  9778. }
  9779. pad[2]
  9780. pad[28]
  9781. pad[2]
  9782. short_block_index maneuver to squad
  9783. {
  9784. Block Name: squads_block
  9785. }
  9786. real squad delay time:seconds
  9787. long_flags attacking
  9788. {
  9789. A
  9790. B
  9791. C
  9792. D
  9793. E
  9794. F
  9795. G
  9796. H
  9797. I
  9798. J
  9799. K
  9800. L
  9801. M
  9802. N
  9803. O
  9804. P
  9805. Q
  9806. R
  9807. S
  9808. T
  9809. U
  9810. V
  9811. W
  9812. X
  9813. Y
  9814. Z
  9815. }
  9816. long_flags attacking search
  9817. {
  9818. A
  9819. B
  9820. C
  9821. D
  9822. E
  9823. F
  9824. G
  9825. H
  9826. I
  9827. J
  9828. K
  9829. L
  9830. M
  9831. N
  9832. O
  9833. P
  9834. Q
  9835. R
  9836. S
  9837. T
  9838. U
  9839. V
  9840. W
  9841. X
  9842. Y
  9843. Z
  9844. }
  9845. long_flags attacking guard
  9846. {
  9847. A
  9848. B
  9849. C
  9850. D
  9851. E
  9852. F
  9853. G
  9854. H
  9855. I
  9856. J
  9857. K
  9858. L
  9859. M
  9860. N
  9861. O
  9862. P
  9863. Q
  9864. R
  9865. S
  9866. T
  9867. U
  9868. V
  9869. W
  9870. X
  9871. Y
  9872. Z
  9873. }
  9874. long_flags defending
  9875. {
  9876. A
  9877. B
  9878. C
  9879. D
  9880. E
  9881. F
  9882. G
  9883. H
  9884. I
  9885. J
  9886. K
  9887. L
  9888. M
  9889. N
  9890. O
  9891. P
  9892. Q
  9893. R
  9894. S
  9895. T
  9896. U
  9897. V
  9898. W
  9899. X
  9900. Y
  9901. Z
  9902. }
  9903. long_flags defending search
  9904. {
  9905. A
  9906. B
  9907. C
  9908. D
  9909. E
  9910. F
  9911. G
  9912. H
  9913. I
  9914. J
  9915. K
  9916. L
  9917. M
  9918. N
  9919. O
  9920. P
  9921. Q
  9922. R
  9923. S
  9924. T
  9925. U
  9926. V
  9927. W
  9928. X
  9929. Y
  9930. Z
  9931. }
  9932. long_flags defending guard
  9933. {
  9934. A
  9935. B
  9936. C
  9937. D
  9938. E
  9939. F
  9940. G
  9941. H
  9942. I
  9943. J
  9944. K
  9945. L
  9946. M
  9947. N
  9948. O
  9949. P
  9950. Q
  9951. R
  9952. S
  9953. T
  9954. U
  9955. V
  9956. W
  9957. X
  9958. Y
  9959. Z
  9960. }
  9961. long_flags pursuing
  9962. {
  9963. A
  9964. B
  9965. C
  9966. D
  9967. E
  9968. F
  9969. G
  9970. H
  9971. I
  9972. J
  9973. K
  9974. L
  9975. M
  9976. N
  9977. O
  9978. P
  9979. Q
  9980. R
  9981. S
  9982. T
  9983. U
  9984. V
  9985. W
  9986. X
  9987. Y
  9988. Z
  9989. }
  9990. pad[4]
  9991. pad[8]
  9992. short_integer normal diff count#initial number of actors on normal difficulty
  9993. short_integer insane diff count#initial number of actors on insane difficulty (hard difficulty is midway between normal and insane)
  9994. enum major upgrade
  9995. {
  9996. normal
  9997. few
  9998. many
  9999. none
  10000. all
  10001. }
  10002. pad[2]
  10003. short_integer respawn min actors#minimum number of actors alive at once (will spawn instantly if less than this number)
  10004. short_integer respawn max actors#maximum number of actors alive at once (never spawns above this number)
  10005. short_integer respawn total#total number to respawn (zero = infinite)
  10006. pad[2]
  10007. real_bounds respawn delay:seconds#delay between respawning actors in this squad
  10008. pad[48]
  10009. block move positions
  10010. {
  10011. Name: move_positions_block
  10012. Max Chunks: 32
  10013. Chunk Size: 80
  10014. Max Chunks x Chunk Size: 2560
  10015. Chunk Definition Offset: 0x613a20
  10016. {
  10017. real_point_3d position
  10018. angle facing:degrees
  10019. real weight
  10020. real_bounds time:seconds
  10021. short_block_index animation
  10022. {
  10023. Block Name: ai_animation_reference_block
  10024. }
  10025. char_integer sequence ID#identifies this move position as belonging to a sequence, only actors whose starting locations match this sequence ID can use it (zero = no sequence)
  10026. pad[1]
  10027. pad[44]
  10028. long_integer surface index*
  10029. }
  10030. }
  10031. block starting locations
  10032. {
  10033. Name: actor_starting_locations_block
  10034. Max Chunks: 32
  10035. Chunk Size: 28
  10036. Max Chunks x Chunk Size: 896
  10037. Chunk Definition Offset: 0x613978
  10038. {
  10039. real_point_3d position
  10040. angle facing:degrees
  10041. pad[2]
  10042. char_integer sequence ID#which move position sequence we can use (zero = no specific sequences)
  10043. byte_flags flags
  10044. {
  10045. required
  10046. }
  10047. enum return state#state that this actor will return to when it has nothing to do
  10048. {
  10049. none
  10050. sleeping
  10051. alert
  10052. moving - repeat same position
  10053. moving - loop
  10054. moving - loop back and forth
  10055. moving - loop randomly
  10056. moving - randomly
  10057. guarding
  10058. guarding at guard position
  10059. searching
  10060. fleeing
  10061. }
  10062. enum initial state#state that this actor starts in
  10063. {
  10064. none
  10065. sleeping
  10066. alert
  10067. moving - repeat same position
  10068. moving - loop
  10069. moving - loop back and forth
  10070. moving - loop randomly
  10071. moving - randomly
  10072. guarding
  10073. guarding at guard position
  10074. searching
  10075. fleeing
  10076. }
  10077. short_block_index actor type
  10078. {
  10079. Block Name: actor_palette_block
  10080. }
  10081. short_block_index command list
  10082. {
  10083. Block Name: ai_command_list_block
  10084. }
  10085. }
  10086. }
  10087. pad[12]
  10088. }
  10089. }
  10090. block platoons
  10091. {
  10092. Name: platoons_block
  10093. Max Chunks: 32
  10094. Chunk Size: 172
  10095. Max Chunks x Chunk Size: 5504
  10096. Chunk Definition Offset: 0x613b78
  10097. {
  10098. string name^
  10099. long_flags flags
  10100. {
  10101. flee when maneuvering
  10102. say 'advancing' when maneuver
  10103. start in defending state
  10104. }
  10105. pad[12]
  10106. enum change attacking/defending state when
  10107. {
  10108. (never)
  10109. < 75% strength
  10110. < 50% strength
  10111. < 25% strength
  10112. anybody dead
  10113. 25% dead
  10114. 50% dead
  10115. 75% dead
  10116. all but one dead
  10117. all dead
  10118. }
  10119. short_block_index happens to
  10120. {
  10121. Block Name: platoons_block
  10122. }
  10123. pad[4]
  10124. pad[4]
  10125. enum maneuver when
  10126. {
  10127. (never)
  10128. < 75% strength
  10129. < 50% strength
  10130. < 25% strength
  10131. anybody dead
  10132. 25% dead
  10133. 50% dead
  10134. 75% dead
  10135. all but one dead
  10136. all dead
  10137. }
  10138. short_block_index happens to
  10139. {
  10140. Block Name: platoons_block
  10141. }
  10142. pad[4]
  10143. pad[4]
  10144. pad[64]
  10145. pad[36]
  10146. }
  10147. }
  10148. block firing positions
  10149. {
  10150. Name: firing_positions_block
  10151. Max Chunks: 512
  10152. Chunk Size: 24
  10153. Max Chunks x Chunk Size: 12288
  10154. Chunk Definition Offset: 0x613ac4
  10155. {
  10156. real_point_3d position
  10157. enum group index
  10158. {
  10159. A
  10160. B
  10161. C
  10162. D
  10163. E
  10164. F
  10165. G
  10166. H
  10167. I
  10168. J
  10169. K
  10170. L
  10171. M
  10172. N
  10173. O
  10174. P
  10175. Q
  10176. R
  10177. S
  10178. T
  10179. U
  10180. V
  10181. W
  10182. X
  10183. Y
  10184. Z
  10185. }
  10186. pad[10]
  10187. custom
  10188. {
  10189. Field Class: cfpf
  10190. }
  10191. }
  10192. }
  10193. block player starting locations
  10194. {
  10195. Name: scenario_players_block
  10196. Max Chunks: 256
  10197. Chunk Size: 52
  10198. Max Chunks x Chunk Size: 13312
  10199. Chunk Definition Offset: 0x5cc218
  10200. {
  10201. real_point_3d position
  10202. angle facing:degrees
  10203. short_integer team index
  10204. short_integer bsp index
  10205. enum type 0
  10206. {
  10207. none
  10208. ctf
  10209. slayer
  10210. oddball
  10211. king of the hill
  10212. race
  10213. terminator
  10214. stub
  10215. ignored1
  10216. ignored2
  10217. ignored3
  10218. ignored4
  10219. all games
  10220. all except ctf
  10221. all except race & ctf
  10222. }
  10223. enum type 1
  10224. {
  10225. none
  10226. ctf
  10227. slayer
  10228. oddball
  10229. king of the hill
  10230. race
  10231. terminator
  10232. stub
  10233. ignored1
  10234. ignored2
  10235. ignored3
  10236. ignored4
  10237. all games
  10238. all except ctf
  10239. all except race & ctf
  10240. }
  10241. enum type 2
  10242. {
  10243. none
  10244. ctf
  10245. slayer
  10246. oddball
  10247. king of the hill
  10248. race
  10249. terminator
  10250. stub
  10251. ignored1
  10252. ignored2
  10253. ignored3
  10254. ignored4
  10255. all games
  10256. all except ctf
  10257. all except race & ctf
  10258. }
  10259. enum type 3
  10260. {
  10261. none
  10262. ctf
  10263. slayer
  10264. oddball
  10265. king of the hill
  10266. race
  10267. terminator
  10268. stub
  10269. ignored1
  10270. ignored2
  10271. ignored3
  10272. ignored4
  10273. all games
  10274. all except ctf
  10275. all except race & ctf
  10276. }
  10277. pad[24]
  10278. }
  10279. }
  10280. }
  10281. }
  10282. block command lists
  10283. {
  10284. Name: ai_command_list_block
  10285. Max Chunks: 256
  10286. Chunk Size: 96
  10287. Max Chunks x Chunk Size: 24576
  10288. Chunk Definition Offset: 0x6138e0
  10289. {
  10290. string name^
  10291. long_flags flags
  10292. {
  10293. allow initiative#lets an actor decide to stop following its commands and attack an enemy
  10294. allow targeting#lets an actor shoot at enemies while following its commands
  10295. disable looking#stops an actor from turning, stopping or looking around in response to stimuli received while following its commands
  10296. disable communication#stops an actor from communicating while following its commands
  10297. disable falling damage#makes an actor not take any damage from falling while following its commands
  10298. manual bsp index#set if the command list is manually attached to a specific bsp
  10299. }
  10300. pad[8]
  10301. short_integer manual bsp index#structure bsp index that this encounter belongs to... ignored unless 'manual bsp index' flag is checked. if this flag is not checked, the structure bsp is found automatically (may fail in areas of overlapping geometry)
  10302. pad[2]
  10303. block commands
  10304. {
  10305. Name: ai_command_block
  10306. Max Chunks: 64
  10307. Chunk Size: 32
  10308. Max Chunks x Chunk Size: 2048
  10309. Chunk Definition Offset: 0x613818
  10310. {
  10311. enum atom type
  10312. {
  10313. pause
  10314. go to
  10315. go to and face
  10316. move in direction
  10317. look
  10318. animation mode
  10319. crouch
  10320. shoot
  10321. grenade
  10322. vehicle
  10323. running jump
  10324. targeted jump
  10325. script
  10326. animate
  10327. recording
  10328. action
  10329. vocalize
  10330. targeting
  10331. initiative
  10332. wait
  10333. loop
  10334. die
  10335. move immediate
  10336. look random
  10337. look player
  10338. look object
  10339. set radius
  10340. teleport
  10341. }
  10342. short_integer atom modifier
  10343. real parameter1
  10344. real parameter2
  10345. short_block_index point 1
  10346. {
  10347. Block Name: ai_command_point_block
  10348. }
  10349. short_block_index point 2
  10350. {
  10351. Block Name: ai_command_point_block
  10352. }
  10353. short_block_index animation
  10354. {
  10355. Block Name: ai_animation_reference_block
  10356. }
  10357. short_block_index script
  10358. {
  10359. Block Name: ai_script_reference_block
  10360. }
  10361. short_block_index recording
  10362. {
  10363. Block Name: ai_recording_reference_block
  10364. }
  10365. short_block_index command
  10366. {
  10367. Block Name: ai_command_block
  10368. }
  10369. short_block_index object name
  10370. {
  10371. Block Name: scenario_object_names_block
  10372. }
  10373. pad[6]
  10374. }
  10375. }
  10376. block points
  10377. {
  10378. Name: ai_command_point_block
  10379. Max Chunks: 64
  10380. Chunk Size: 20
  10381. Max Chunks x Chunk Size: 1280
  10382. Chunk Definition Offset: 0x6136bc
  10383. {
  10384. real_point_3d position
  10385. pad[8]
  10386. }
  10387. }
  10388. pad[24]
  10389. }
  10390. }
  10391. block ai animation references
  10392. {
  10393. Name: ai_animation_reference_block
  10394. Max Chunks: 128
  10395. Chunk Size: 60
  10396. Max Chunks x Chunk Size: 7680
  10397. Chunk Definition Offset: 0x613718
  10398. {
  10399. string animation name^
  10400. tag reference animation graph#leave this blank to use the unit's normal animation graph
  10401. {
  10402. Supported tag class category: antr
  10403. }
  10404. pad[12]
  10405. }
  10406. }
  10407. block ai script references
  10408. {
  10409. Name: ai_script_reference_block
  10410. Max Chunks: 128
  10411. Chunk Size: 40
  10412. Max Chunks x Chunk Size: 5120
  10413. Chunk Definition Offset: 0x613774
  10414. {
  10415. string script name^
  10416. pad[8]
  10417. }
  10418. }
  10419. block ai recording references
  10420. {
  10421. Name: ai_recording_reference_block
  10422. Max Chunks: 128
  10423. Chunk Size: 40
  10424. Max Chunks x Chunk Size: 5120
  10425. Chunk Definition Offset: 0x6137c4
  10426. {
  10427. string recording name^
  10428. pad[8]
  10429. }
  10430. }
  10431. block ai conversations
  10432. {
  10433. Name: ai_conversation_block
  10434. Max Chunks: 128
  10435. Chunk Size: 116
  10436. Max Chunks x Chunk Size: 14848
  10437. Chunk Definition Offset: 0x6141f0
  10438. {
  10439. string name^
  10440. word_flags flags
  10441. {
  10442. stop if death#this conversation will be aborted if any participant dies
  10443. stop if damaged#an actor will abort this conversation if they are damaged
  10444. stop if visible enemy#an actor will abort this conversation if they see an enemy
  10445. stop if alerted to enemy#an actor will abort this conversation if they suspect an enemy
  10446. player must be visible#this conversation cannot take place unless the participants can _see_ a nearby player
  10447. stop other actions#participants stop doing whatever they were doing in order to perform this conversation
  10448. keep trying to play#if this conversation fails initially, it will keep testing to see when it can play
  10449. player must be looking#this conversation will not start until the player is looking at one of the participants
  10450. }
  10451. pad[2]
  10452. real trigger distance:world units#distance the player must enter before the conversation can trigger
  10453. real run-to-player dist:world units#if the 'involves player' flag is set, when triggered the conversation's participant(s) will run to within this distance of the player
  10454. pad[36]
  10455. block participants
  10456. {
  10457. Name: ai_conversation_participant_block
  10458. Max Chunks: 8
  10459. Chunk Size: 84
  10460. Max Chunks x Chunk Size: 672
  10461. Chunk Definition Offset: 0x614058
  10462. {
  10463. pad[2]
  10464. word_flags flags
  10465. {
  10466. optional#the conversation can continue even if nobody for this participant was found
  10467. has alternate#if nobody for this participant can be found, we use a participant marked as 'is alternate' instead, e.g. someone from over the radio
  10468. is alternate#this participant is only used if some participant in this conversation was marked as 'has alternate' could not be found
  10469. }
  10470. enum selection type
  10471. {
  10472. friendly actor
  10473. disembodied
  10474. in player's vehicle
  10475. not in a vehicle
  10476. prefer sergeant
  10477. any actor
  10478. radio unit
  10479. radio sergeant
  10480. }
  10481. enum actor type
  10482. {
  10483. elite
  10484. jackal
  10485. grunt
  10486. hunter
  10487. engineer
  10488. assassin
  10489. player
  10490. marine
  10491. crew
  10492. combat form
  10493. infection form
  10494. carrier form
  10495. monitor
  10496. sentinel
  10497. none
  10498. mounted weapon
  10499. }
  10500. short_block_index use this object#if a unit with this name exists, we try to pick them to start the conversation
  10501. {
  10502. Block Name: scenario_object_names_block
  10503. }
  10504. short_block_index set new name#once we pick a unit, we name it this
  10505. {
  10506. Block Name: scenario_object_names_block
  10507. }
  10508. pad[12]
  10509. pad[12]
  10510. string encounter name
  10511. pad[4]
  10512. pad[12]
  10513. }
  10514. }
  10515. block lines
  10516. {
  10517. Name: ai_conversation_line_block
  10518. Max Chunks: 32
  10519. Chunk Size: 124
  10520. Max Chunks x Chunk Size: 3968
  10521. Chunk Definition Offset: 0x614118
  10522. {
  10523. word_flags flags
  10524. {
  10525. addressee look at speaker
  10526. everyone look at speaker
  10527. everyone look at addressee
  10528. wait after until told to advance
  10529. wait until speaker nearby
  10530. wait until everyone nearby
  10531. }
  10532. short_block_index participant
  10533. {
  10534. Block Name: ai_conversation_participant_block
  10535. }
  10536. enum addressee
  10537. {
  10538. none
  10539. player
  10540. participant
  10541. }
  10542. short_block_index addressee participant#this field is only used if the addressee type is 'participant'
  10543. {
  10544. Block Name: ai_conversation_participant_block
  10545. }
  10546. pad[4]
  10547. real line delay time
  10548. pad[12]
  10549. tag reference variant 1
  10550. {
  10551. Supported tag class category: snd!
  10552. }
  10553. tag reference variant 2
  10554. {
  10555. Supported tag class category: snd!
  10556. }
  10557. tag reference variant 3
  10558. {
  10559. Supported tag class category: snd!
  10560. }
  10561. tag reference variant 4
  10562. {
  10563. Supported tag class category: snd!
  10564. }
  10565. tag reference variant 5
  10566. {
  10567. Supported tag class category: snd!
  10568. }
  10569. tag reference variant 6
  10570. {
  10571. Supported tag class category: snd!
  10572. }
  10573. }
  10574. }
  10575. pad[12]
  10576. }
  10577. }
  10578. data script syntax data
  10579. {
  10580. Definition Name: hs_syntax_data_definition
  10581. Max Bytes: 380076
  10582. Extra Data Offset: 0x1af950
  10583. }
  10584. data script string data
  10585. {
  10586. Definition Name: hs_string_data_definition
  10587. Max Bytes: 262144
  10588. }
  10589. block scripts*
  10590. {
  10591. Name: hs_scripts_block
  10592. Max Chunks: 512
  10593. Chunk Size: 92
  10594. Max Chunks x Chunk Size: 47104
  10595. Chunk Definition Offset: 0x613060
  10596. {
  10597. string name*
  10598. enum script type*
  10599. {
  10600. startup
  10601. dormant
  10602. continuous
  10603. static
  10604. stub
  10605. }
  10606. enum return type*
  10607. {
  10608. unparsed
  10609. special form
  10610. function name
  10611. passthrough
  10612. void
  10613. boolean
  10614. real
  10615. short
  10616. long
  10617. string
  10618. script
  10619. trigger_volume
  10620. cutscene_flag
  10621. cutscene_camera_point
  10622. cutscene_title
  10623. cutscene_recording
  10624. device_group
  10625. ai
  10626. ai_command_list
  10627. starting_profile
  10628. conversation
  10629. navpoint
  10630. hud_message
  10631. object_list
  10632. sound
  10633. effect
  10634. damage
  10635. looping_sound
  10636. animation_graph
  10637. actor_variant
  10638. damage_effect
  10639. object_definition
  10640. game_difficulty
  10641. team
  10642. ai_default_state
  10643. actor_type
  10644. hud_corner
  10645. object
  10646. unit
  10647. vehicle
  10648. weapon
  10649. device
  10650. scenery
  10651. object_name
  10652. unit_name
  10653. vehicle_name
  10654. weapon_name
  10655. device_name
  10656. scenery_name
  10657. }
  10658. long_integer root expression index*
  10659. pad[52]
  10660. }
  10661. }
  10662. block globals*
  10663. {
  10664. Name: hs_globals_block
  10665. Max Chunks: 128
  10666. Chunk Size: 92
  10667. Max Chunks x Chunk Size: 11776
  10668. Chunk Definition Offset: 0x6130d8
  10669. {
  10670. string name*
  10671. enum type*
  10672. {
  10673. unparsed
  10674. special form
  10675. function name
  10676. passthrough
  10677. void
  10678. boolean
  10679. real
  10680. short
  10681. long
  10682. string
  10683. script
  10684. trigger_volume
  10685. cutscene_flag
  10686. cutscene_camera_point
  10687. cutscene_title
  10688. cutscene_recording
  10689. device_group
  10690. ai
  10691. ai_command_list
  10692. starting_profile
  10693. conversation
  10694. navpoint
  10695. hud_message
  10696. object_list
  10697. sound
  10698. effect
  10699. damage
  10700. looping_sound
  10701. animation_graph
  10702. actor_variant
  10703. damage_effect
  10704. object_definition
  10705. game_difficulty
  10706. team
  10707. ai_default_state
  10708. actor_type
  10709. hud_corner
  10710. object
  10711. unit
  10712. vehicle
  10713. weapon
  10714. device
  10715. scenery
  10716. object_name
  10717. unit_name
  10718. vehicle_name
  10719. weapon_name
  10720. device_name
  10721. scenery_name
  10722. }
  10723. pad[2]
  10724. pad[4]
  10725. long_integer initialization expression index*
  10726. pad[48]
  10727. }
  10728. }
  10729. block references*
  10730. {
  10731. Name: hs_references_block
  10732. Max Chunks: 256
  10733. Chunk Size: 40
  10734. Max Chunks x Chunk Size: 10240
  10735. Chunk Definition Offset: 0x613164
  10736. {
  10737. pad[24]
  10738. tag reference reference*^
  10739. {
  10740. Supports all tag classes
  10741. }
  10742. }
  10743. }
  10744. block source files*
  10745. {
  10746. Name: hs_source_files_block
  10747. Max Chunks: 8
  10748. Chunk Size: 52
  10749. Max Chunks x Chunk Size: 416
  10750. Chunk Definition Offset: 0x6131c4
  10751. {
  10752. string name*
  10753. data source
  10754. {
  10755. Definition Name: hs_source_data_definition
  10756. Max Bytes: 262144
  10757. }
  10758. }
  10759. }
  10760. pad[24]
  10761. block cutscene flags
  10762. {
  10763. Name: scenario_cutscene_flag_block
  10764. Max Chunks: 512
  10765. Chunk Size: 92
  10766. Max Chunks x Chunk Size: 47104
  10767. Chunk Definition Offset: 0x5cd068
  10768. {
  10769. pad[4]
  10770. string name^
  10771. real_point_3d position
  10772. real_euler_angles_2d facing
  10773. pad[36]
  10774. }
  10775. }
  10776. block cutscene camera points
  10777. {
  10778. Name: scenario_cutscene_camera_point_block
  10779. Max Chunks: 512
  10780. Chunk Size: 104
  10781. Max Chunks x Chunk Size: 53248
  10782. Chunk Definition Offset: 0x5cd0e0
  10783. {
  10784. pad[4]
  10785. string name^
  10786. pad[4]
  10787. real_point_3d position
  10788. real_euler_angles_3d orientation
  10789. angle field of view
  10790. pad[36]
  10791. }
  10792. }
  10793. block cutscene titles
  10794. {
  10795. Name: scenario_cutscene_title_block
  10796. Max Chunks: 64
  10797. Chunk Size: 96
  10798. Max Chunks x Chunk Size: 6144
  10799. Chunk Definition Offset: 0x5cd1c0
  10800. {
  10801. pad[4]
  10802. string name^
  10803. pad[4]
  10804. rectangle_2d text bounds (on screen)
  10805. short_integer string index
  10806. pad[2]
  10807. enum justification
  10808. {
  10809. left
  10810. right
  10811. center
  10812. }
  10813. pad[2]
  10814. pad[4]
  10815. argb_color text color
  10816. argb_color shadow color
  10817. real fade in time [seconds]
  10818. real up time [seconds]
  10819. real fade out time [seconds]
  10820. pad[16]
  10821. }
  10822. }
  10823. pad[108]
  10824. tag reference custom object names
  10825. {
  10826. Supported tag class category: ustr
  10827. }
  10828. tag reference ingame help text
  10829. {
  10830. Supported tag class category: ustr
  10831. }
  10832. tag reference hud messages
  10833. {
  10834. Supported tag class category: hmt
  10835. }
  10836. block structure bsps
  10837. {
  10838. Name: scenario_structure_bsps_block
  10839. Max Chunks: 16
  10840. Chunk Size: 32
  10841. Max Chunks x Chunk Size: 512
  10842. Chunk Definition Offset: 0x5cd2b8
  10843. {
  10844. pad[16]
  10845. tag reference structure bsp^
  10846. {
  10847. Usage flags value: 2
  10848. Supported tag class category: sbsp
  10849. }
  10850. }
  10851. }
  10852. POORLY-DETERMINED MIN FILESIZE OF scnr (including 64-byte header): 1520
  10853. POORLY-DETERMINED MAX FILESIZE OF scnr (including 64-byte header): 5100501
  10854.  
  10855. Tag Definition Offset: 0x5c9b68
  10856. Extension: shader
  10857. Unknown: 8
  10858. Class: shdr
  10859. No superclass
  10860. Version: 1
  10861. Dialog Data Offset: 0x48e5a0
  10862. Definition Block:
  10863. {
  10864. Name: shader
  10865. Count: 1
  10866. Size: 40
  10867. Chunks Offset: 0x5c9aa8
  10868. }
  10869. explanation radiosity properties
  10870. {
  10871. Dialog Data Offset: 0x494b11
  10872. {
  10873.  
  10874. }
  10875. }
  10876. word_flags flags
  10877. {
  10878. simple parameterization#lightmap texture parametrization should correspond to diffuse texture parametrization
  10879. ignore normals#light independent of normals (trees)
  10880. transparent lit
  10881. }
  10882. enum detail level#affects the density of tesselation (high means slow).
  10883. {
  10884. high
  10885. medium
  10886. low
  10887. turd
  10888. }
  10889. real power#power of emitted light from 0 to infinity
  10890. real_rgb_color color of emitted light
  10891. real_rgb_color tint color#light passing through this surface (if it's transparent) will be tinted this color.
  10892. explanation physics properties
  10893. {
  10894. Dialog Data Offset: 0x494b11
  10895. {
  10896.  
  10897. }
  10898. }
  10899. word_flags flags
  10900. {
  10901. }
  10902. enum material type
  10903. {
  10904. dirt
  10905. sand
  10906. stone
  10907. snow
  10908. wood
  10909. metal (hollow)
  10910. metal (thin)
  10911. metal (thick)
  10912. rubber
  10913. glass
  10914. force field
  10915. grunt
  10916. hunter armor
  10917. hunter skin
  10918. elite
  10919. jackal
  10920. jackal energy shield
  10921. engineer skin
  10922. engineer force field
  10923. flood combat form
  10924. flood carrier form
  10925. cyborg armor
  10926. cyborg energy shield
  10927. human armor
  10928. human skin
  10929. sentinel
  10930. monitor
  10931. plastic
  10932. water
  10933. leaves
  10934. elite energy shield
  10935. ice
  10936. hunter shield
  10937. }
  10938. pad[2]
  10939. pad[2]
  10940. POORLY-DETERMINED MIN FILESIZE OF shdr (including 64-byte header): 104
  10941. POORLY-DETERMINED MAX FILESIZE OF shdr (including 64-byte header): 104
  10942.  
  10943. Tag Definition Offset: 0x5ca0e0
  10944. Extension: shader_environment
  10945. Unknown: 8
  10946. Class: senv
  10947. Superclass: shdr
  10948. Version: 2
  10949. Definition Block:
  10950. {
  10951. Name: shader_environment
  10952. Count: 1
  10953. Size: 796
  10954. Chunks Offset: 0x5c9c60
  10955. }
  10956. explanation environment shader
  10957. {
  10958. Dialog Data Offset: 0x4c6ab8
  10959. {
  10960. Setting <true atmospheric fog> enables per-pixel atmospheric fog (for models) but disables point/spot lights, planar fog, and the ability to control the atmospheric fog density for this shader.
  10961. }
  10962. }
  10963. word_flags flags
  10964. {
  10965. alpha-tested
  10966. bump map is specular mask
  10967. true atmospheric fog
  10968. }
  10969. explanation environment shader type
  10970. {
  10971. Dialog Data Offset: 0x4c6870
  10972. {
  10973. Controls how diffuse maps are combined:
  10974.  
  10975. NORMAL:
  10976. Secondary detail map alpha controls blend between primary and secondary detail map. Specular mask is alpha of blended primary and secondary detail map alpha multiplied by alpha of micro detail map.
  10977.  
  10978. BLENDED:
  10979. Base map alpha controls blend between primary and secondary detail map. Specular mask is alpha of blended primary and secondary detail map alpha multiplied by alpha of micro detail map.
  10980.  
  10981. BLENDED BASE SPECULAR:
  10982. Same as BLENDED, except specular mask is alpha is base map times alpha of micro detail map.
  10983. }
  10984. }
  10985. enum type
  10986. {
  10987. normal
  10988. blended
  10989. blended base specular
  10990. }
  10991. explanation lens flares
  10992. {
  10993. Dialog Data Offset: 0x494b11
  10994. {
  10995.  
  10996. }
  10997. }
  10998. real lens flare spacing:world units#0 places a single lens flare
  10999. tag reference lens flare
  11000. {
  11001. Supported tag class category: lens
  11002. }
  11003. pad[44]
  11004. explanation diffuse properties
  11005. {
  11006. Dialog Data Offset: 0x494b11
  11007. {
  11008.  
  11009. }
  11010. }
  11011. word_flags flags
  11012. {
  11013. rescale detail maps
  11014. rescale bump map
  11015. }
  11016. pad[2]
  11017. pad[24]
  11018. tag reference base map
  11019. {
  11020. Supported tag class category: bitm
  11021. }
  11022. pad[24]
  11023. enum detail map function#affects primary and secondary detail maps
  11024. {
  11025. double/biased multiply
  11026. multiply
  11027. double/biased add
  11028. }
  11029. pad[2]
  11030. real primary detail map scale#0 defaults to 1
  11031. tag reference primary detail map
  11032. {
  11033. Supported tag class category: bitm
  11034. }
  11035. real secondary detail map scale#0 defaults to 1
  11036. tag reference secondary detail map
  11037. {
  11038. Supported tag class category: bitm
  11039. }
  11040. pad[24]
  11041. enum micro detail map function
  11042. {
  11043. double/biased multiply
  11044. multiply
  11045. double/biased add
  11046. }
  11047. pad[2]
  11048. real micro detail map scale#0 defaults to 1
  11049. tag reference micro detail map
  11050. {
  11051. Supported tag class category: bitm
  11052. }
  11053. real_rgb_color material color#modulates incoming diffuse light, including lightmaps, but excluding self-illumination and specular effects
  11054. pad[12]
  11055. explanation bump properties
  11056. {
  11057. Dialog Data Offset: 0x4c6620
  11058. {
  11059. Perforated (alpha-tested) shaders use alpha in bump map.
  11060. }
  11061. }
  11062. real bump map scale
  11063. tag reference bump map
  11064. {
  11065. Supported tag class category: bitm
  11066. }
  11067. pad[8]
  11068. pad[16]
  11069. explanation texture scrolling animation
  11070. {
  11071. Dialog Data Offset: 0x4c65c4
  11072. {
  11073. Scrolls all 2D maps simultaneously.
  11074. }
  11075. }
  11076. enum u-animation function
  11077. {
  11078. one
  11079. zero
  11080. cosine
  11081. cosine (variable period)
  11082. diagonal wave
  11083. diagonal wave (variable period)
  11084. slide
  11085. slide (variable period)
  11086. noise
  11087. jitter
  11088. wander
  11089. spark
  11090. }
  11091. pad[2]
  11092. real u-animation period:seconds
  11093. real u-animation scale:base map repeats
  11094. enum v-animation function
  11095. {
  11096. one
  11097. zero
  11098. cosine
  11099. cosine (variable period)
  11100. diagonal wave
  11101. diagonal wave (variable period)
  11102. slide
  11103. slide (variable period)
  11104. noise
  11105. jitter
  11106. wander
  11107. spark
  11108. }
  11109. pad[2]
  11110. real v-animation period:seconds
  11111. real v-animation scale:base map repeats
  11112. pad[24]
  11113. explanation self-illumination properties
  11114. {
  11115. Dialog Data Offset: 0x4c60e0
  11116. {
  11117. There are three self-illumination effects which are added together. Each effect has an <on color>, used when the shader is active, and an <off color>, used when the shader is not active. The self-illumination map is used as follows:
  11118. * RED: primary mask
  11119. * GREEN: secondary mask
  11120. * BLUE: plasma mask
  11121. * ALPHA: plasma animation reference
  11122.  
  11123. Each effect also has an animation <function>, <period> and <phase>, used when the shader is active. The primary and secondary effects simply modulate the <on color> by the animation value to produce an animation color, and then blend between the animation color and the <off color> based on the shader's activation level, and finally modulate by the mask.
  11124.  
  11125. The plasma shader compares the animation value with the alpha channel of the map (the plasma animation reference) and produces a high value when they are similar and a dark value when they are different. This value modulates the <plasma on color> to produce a plasma animation color, and the rest proceeds just like the primary and secondary effects.
  11126. }
  11127. }
  11128. word_flags flags
  11129. {
  11130. unfiltered
  11131. }
  11132. pad[2]
  11133. pad[24]
  11134. real_rgb_color primary on color
  11135. real_rgb_color primary off color
  11136. enum primary animation function
  11137. {
  11138. one
  11139. zero
  11140. cosine
  11141. cosine (variable period)
  11142. diagonal wave
  11143. diagonal wave (variable period)
  11144. slide
  11145. slide (variable period)
  11146. noise
  11147. jitter
  11148. wander
  11149. spark
  11150. }
  11151. pad[2]
  11152. real primary animation period:seconds#0 defaults to 1
  11153. real primary animation phase:seconds
  11154. pad[24]
  11155. real_rgb_color secondary on color
  11156. real_rgb_color secondary off color
  11157. enum secondary animation function
  11158. {
  11159. one
  11160. zero
  11161. cosine
  11162. cosine (variable period)
  11163. diagonal wave
  11164. diagonal wave (variable period)
  11165. slide
  11166. slide (variable period)
  11167. noise
  11168. jitter
  11169. wander
  11170. spark
  11171. }
  11172. pad[2]
  11173. real secondary animation period:seconds#0 defaults to 1
  11174. real secondary animation phase:seconds
  11175. pad[24]
  11176. real_rgb_color plasma on color
  11177. real_rgb_color plasma off color
  11178. enum plasma animation function
  11179. {
  11180. one
  11181. zero
  11182. cosine
  11183. cosine (variable period)
  11184. diagonal wave
  11185. diagonal wave (variable period)
  11186. slide
  11187. slide (variable period)
  11188. noise
  11189. jitter
  11190. wander
  11191. spark
  11192. }
  11193. pad[2]
  11194. real plasma animation period:seconds#0 defaults to 1
  11195. real plasma animation phase:seconds
  11196. pad[24]
  11197. real map scale#0 defaults to 1
  11198. tag reference map
  11199. {
  11200. Supported tag class category: bitm
  11201. }
  11202. pad[24]
  11203. explanation specular properties
  11204. {
  11205. Dialog Data Offset: 0x4c5e40
  11206. {
  11207. Controls dynamic specular highlights. The highlight is modulated by <brightness> as well as a blend between <perpendicular color> and <parallel color>.
  11208.  
  11209. Set <brightness> to zero to disable.
  11210. }
  11211. }
  11212. word_flags flags
  11213. {
  11214. overbright
  11215. extra-shiny
  11216. lightmap is specular
  11217. }
  11218. pad[2]
  11219. pad[16]
  11220. real_fraction brightness:[0,1]#0 is no specular hilights
  11221. pad[20]
  11222. real_rgb_color perpendicular color#hilight color when viewed perpendicularly
  11223. real_rgb_color parallel color#hilight color when viewed at a glancing angle
  11224. pad[16]
  11225. explanation reflection properties
  11226. {
  11227. Dialog Data Offset: 0x4c5a98
  11228. {
  11229. Controls environment cube map reflections. The color of the cube map is "tinted" by a blend between <perpendicular color> and <parallel color> from the SPECULAR PROPERTIES above, and then modulated by a blend between <perpendicular brightness> and <parallel brightness>.
  11230.  
  11231. BUMPED CUBE MAP:
  11232. This type of reflection uses the shader's bump map (if it exists) to affect the reflection, as well as the perpendicular and parallel brightness (i.e. the "fresnel" effect).
  11233.  
  11234. FLAT CUBE MAP:
  11235. This is the fastest type of reflection. The bump map is used to attenuate the fresnel effect, but the reflection image itself is not bumped.
  11236.  
  11237. Clear <reflection cube map> or set both <perpendicular brightness> and <parallel brightness> to zero to disable.
  11238. }
  11239. }
  11240. word_flags flags
  11241. {
  11242. dynamic mirror
  11243. }
  11244. enum type
  11245. {
  11246. bumped cube-map
  11247. flat cube-map
  11248. bumped radiosity
  11249. }
  11250. real_fraction lightmap brightness scale:[0,1]#reflection brightness when lightmap brightness is 1
  11251. pad[28]
  11252. real_fraction perpendicular brightness:[0,1]#brightness when viewed perpendicularly
  11253. real_fraction parallel brightness:[0,1]#brightness when viewed at a glancing angle
  11254. pad[16]
  11255. pad[8]
  11256. pad[16]
  11257. tag reference reflection cube map
  11258. {
  11259. Supported tag class category: bitm
  11260. }
  11261. pad[16]
  11262. POORLY-DETERMINED MIN FILESIZE OF senv (including 64-byte header): 860
  11263. POORLY-DETERMINED MAX FILESIZE OF senv (including 64-byte header): 2900
  11264.  
  11265. Tag Definition Offset: 0x5ca4d8
  11266. Extension: shader_model
  11267. Unknown: 8
  11268. Class: soso
  11269. Superclass: shdr
  11270. Version: 2
  11271. Definition Block:
  11272. {
  11273. Name: shader_model
  11274. Count: 1
  11275. Size: 400
  11276. Chunks Offset: 0x5ca1b8
  11277. }
  11278. explanation model shader
  11279. {
  11280. Dialog Data Offset: 0x4c5780
  11281. {
  11282. Setting <true atmospheric fog> enables per-pixel atmospheric fog but disables point/spot lights, planar fog, and the ability to control the atmospheric fog density for this shader.
  11283. }
  11284. }
  11285. word_flags flags
  11286. {
  11287. detail after reflection
  11288. two-sided
  11289. not alpha-tested
  11290. alpha-blended decal
  11291. true atmospheric fog
  11292. disable two-sided culling
  11293. }
  11294. pad[2]
  11295. pad[12]
  11296. real_fraction translucency#amount of light that can illuminate the shader from behind
  11297. pad[16]
  11298. explanation change color
  11299. {
  11300. Dialog Data Offset: 0x4c56b0
  11301. {
  11302. Change color is used to recolor the diffuse map, it affects pixels based on the BLUE channel of the multipurpose map.
  11303. }
  11304. }
  11305. enum change color source
  11306. {
  11307. none
  11308. A
  11309. B
  11310. C
  11311. D
  11312. }
  11313. pad[2]
  11314. pad[28]
  11315. explanation self-illumination
  11316. {
  11317. Dialog Data Offset: 0x4c55b0
  11318. {
  11319. Self-illumination adds diffuse light to pixels based on the GREEN channel of the multipurpose map. The external self-illumination color referenced by <color source> is modulated by the self-illumination animation.
  11320. }
  11321. }
  11322. word_flags flags
  11323. {
  11324. no random phase
  11325. }
  11326. pad[2]
  11327. enum color source
  11328. {
  11329. none
  11330. A
  11331. B
  11332. C
  11333. D
  11334. }
  11335. enum animation function
  11336. {
  11337. one
  11338. zero
  11339. cosine
  11340. cosine (variable period)
  11341. diagonal wave
  11342. diagonal wave (variable period)
  11343. slide
  11344. slide (variable period)
  11345. noise
  11346. jitter
  11347. wander
  11348. spark
  11349. }
  11350. real animation period:seconds
  11351. real_rgb_color animation color lower bound
  11352. real_rgb_color animation color upper bound
  11353. pad[12]
  11354. explanation maps
  11355. {
  11356. Dialog Data Offset: 0x4c52a8
  11357. {
  11358. Base map alpha is used for alpha-testing.
  11359.  
  11360. Multipurpose map is used for the following:
  11361. * RED: specular reflection mask (modulates reflections)
  11362. * GREEN: self-illumination mask (adds to diffuse light)
  11363. * BLUE: primary change color mask (recolors diffuse map)
  11364. * ALPHA: auxiliary mask
  11365.  
  11366. Note that when DXT1 compressed color-key textures are used for the multipurpose map (as they should be normally), the alpha channel is 1-bit and any non-zero alpha pixels must have zero-color, therefore the secondary change color mask cannot affect pixels already affected by any of the other channels.
  11367.  
  11368. Detail map affects diffuse map, and optionally affects reflection if <detail after reflection> flag is set.
  11369. }
  11370. }
  11371. real map u-scale#0 defaults to 1; scales all 2D maps simultaneously
  11372. real map v-scale#0 defaults to 1; scales all 2D maps simultaneously
  11373. tag reference base map
  11374. {
  11375. Supported tag class category: bitm
  11376. }
  11377. pad[8]
  11378. tag reference multipurpose map
  11379. {
  11380. Supported tag class category: bitm
  11381. }
  11382. pad[8]
  11383. enum detail function#controls how detail map is applied to diffuse map
  11384. {
  11385. double/biased multiply
  11386. multiply
  11387. double/biased add
  11388. }
  11389. enum detail mask#controls how detail map is masked
  11390. {
  11391. none
  11392. reflection mask inverse
  11393. reflection mask
  11394. self-illumination mask inverse
  11395. self-illumination mask
  11396. change-color mask inverse
  11397. change-color mask
  11398. multipurpose map alpha inverse
  11399. multipurpose map alpha
  11400. }
  11401. real detail map scale#0 defaults to 1
  11402. tag reference detail map
  11403. {
  11404. Supported tag class category: bitm
  11405. }
  11406. real detail map v-scale#0 defaults to 1 (applied on top of detail map scale above)
  11407. pad[12]
  11408. explanation texture scrolling animation
  11409. {
  11410. Dialog Data Offset: 0x4c65c4
  11411. {
  11412. Scrolls all 2D maps simultaneously.
  11413. }
  11414. }
  11415. enum u-animation source
  11416. {
  11417. none
  11418. A out
  11419. B out
  11420. C out
  11421. D out
  11422. }
  11423. enum u-animation function
  11424. {
  11425. one
  11426. zero
  11427. cosine
  11428. cosine (variable period)
  11429. diagonal wave
  11430. diagonal wave (variable period)
  11431. slide
  11432. slide (variable period)
  11433. noise
  11434. jitter
  11435. wander
  11436. spark
  11437. }
  11438. real u-animation period:seconds#0 defaults to 1
  11439. real u-animation phase
  11440. real u-animation scale:repeats#0 defaults to 1
  11441. enum v-animation source
  11442. {
  11443. none
  11444. A out
  11445. B out
  11446. C out
  11447. D out
  11448. }
  11449. enum v-animation function
  11450. {
  11451. one
  11452. zero
  11453. cosine
  11454. cosine (variable period)
  11455. diagonal wave
  11456. diagonal wave (variable period)
  11457. slide
  11458. slide (variable period)
  11459. noise
  11460. jitter
  11461. wander
  11462. spark
  11463. }
  11464. real v-animation period:seconds#0 defaults to 1
  11465. real v-animation phase
  11466. real v-animation scale:repeats#0 defaults to 1
  11467. enum rotation-animation source
  11468. {
  11469. none
  11470. A out
  11471. B out
  11472. C out
  11473. D out
  11474. }
  11475. enum rotation-animation function
  11476. {
  11477. one
  11478. zero
  11479. cosine
  11480. cosine (variable period)
  11481. diagonal wave
  11482. diagonal wave (variable period)
  11483. slide
  11484. slide (variable period)
  11485. noise
  11486. jitter
  11487. wander
  11488. spark
  11489. }
  11490. real rotation-animation period:seconds#0 defaults to 1
  11491. real rotation-animation phase
  11492. real rotation-animation scale:degrees#0 defaults to 360
  11493. real_point_2d rotation-animation center
  11494. pad[8]
  11495. explanation reflection properties
  11496. {
  11497. Dialog Data Offset: 0x494b11
  11498. {
  11499.  
  11500. }
  11501. }
  11502. real reflection falloff distance:world units#distance at which the reflection begins to fade out
  11503. real reflection cutoff distance:world units#distance at which the reflection fades out entirely (0 means no cutoff)
  11504. real_fraction perpendicular brightness:[0,1]#reflection brightness when viewed perpendicularly
  11505. real_rgb_color perpendicular tint color#reflection tint color when viewed perpendicularly
  11506. real_fraction parallel brightness:[0,1]#reflection brightness when viewed at a glancing angle
  11507. real_rgb_color parallel tint color#reflection tint color when viewed at a glancing angle
  11508. tag reference reflection cube map
  11509. {
  11510. Supported tag class category: bitm
  11511. }
  11512. pad[16]
  11513. pad[4]
  11514. pad[16]
  11515. pad[32]
  11516. POORLY-DETERMINED MIN FILESIZE OF soso (including 64-byte header): 464
  11517. POORLY-DETERMINED MAX FILESIZE OF soso (including 64-byte header): 1484
  11518.  
  11519. Tag Definition Offset: 0x5cac38
  11520. Extension: shader_transparent_generic
  11521. Unknown: 8
  11522. Class: sotr
  11523. Superclass: shdr
  11524. Version: 1
  11525. Definition Block:
  11526. {
  11527. Name: shader_transparent_generic
  11528. Count: 1
  11529. Size: 68
  11530. Chunks Offset: 0x5cab58
  11531. }
  11532. explanation generic transparent shader
  11533. {
  11534. Dialog Data Offset: 0x494b11
  11535. {
  11536.  
  11537. }
  11538. }
  11539. char_integer numeric counter limit:[0,255]
  11540. byte_flags flags
  11541. {
  11542. alpha-tested
  11543. decal
  11544. two-sided
  11545. first map is in screenspace
  11546. draw before water
  11547. ignore effect
  11548. scale first map with distance
  11549. numeric
  11550. }
  11551. enum first map type
  11552. {
  11553. 2D map
  11554. reflection cube map
  11555. object-centered cube map
  11556. viewer-centered cube map
  11557. }
  11558. enum framebuffer blend function
  11559. {
  11560. alpha blend
  11561. multiply
  11562. double multiply
  11563. add
  11564. subtract
  11565. component min
  11566. component max
  11567. alpha-multiply add
  11568. }
  11569. enum framebuffer fade mode
  11570. {
  11571. none
  11572. fade when perpendicular
  11573. fade when parallel
  11574. }
  11575. enum framebuffer fade source#fade is multiplied by this external value
  11576. {
  11577. none
  11578. A out
  11579. B out
  11580. C out
  11581. D out
  11582. }
  11583. pad[2]
  11584. explanation lens flares
  11585. {
  11586. Dialog Data Offset: 0x494b11
  11587. {
  11588.  
  11589. }
  11590. }
  11591. real lens flare spacing:world units#0 places a single lens flare
  11592. tag reference lens flare
  11593. {
  11594. Supported tag class category: lens
  11595. }
  11596. block extra layers
  11597. {
  11598. Name: shader_transparent_layer_block
  11599. Max Chunks: 4
  11600. Chunk Size: 16
  11601. Max Chunks x Chunk Size: 64
  11602. Chunk Definition Offset: 0x5ca57c
  11603. {
  11604. tag reference shader
  11605. {
  11606. Supported tag class category: shdr
  11607. }
  11608. }
  11609. }
  11610. block maps
  11611. {
  11612. Name: shader_transparent_generic_map_block
  11613. Max Chunks: 4
  11614. Chunk Size: 100
  11615. Max Chunks x Chunk Size: 400
  11616. Chunk Definition Offset: 0x5ca5d8
  11617. {
  11618. word_flags flags
  11619. {
  11620. unfiltered
  11621. u-clamped
  11622. v-clamped
  11623. }
  11624. pad[2]
  11625. real map u-scale#0 defaults to 1
  11626. real map v-scale#0 defaults to 1
  11627. real map u-offset
  11628. real map v-offset
  11629. real map rotation:degrees
  11630. real_fraction mipmap bias:[0,1]
  11631. tag reference map
  11632. {
  11633. Supported tag class category: bitm
  11634. }
  11635. explanation 2D texture animation
  11636. {
  11637. Dialog Data Offset: 0x494b11
  11638. {
  11639.  
  11640. }
  11641. }
  11642. enum u-animation source
  11643. {
  11644. none
  11645. A out
  11646. B out
  11647. C out
  11648. D out
  11649. }
  11650. enum u-animation function
  11651. {
  11652. one
  11653. zero
  11654. cosine
  11655. cosine (variable period)
  11656. diagonal wave
  11657. diagonal wave (variable period)
  11658. slide
  11659. slide (variable period)
  11660. noise
  11661. jitter
  11662. wander
  11663. spark
  11664. }
  11665. real u-animation period:seconds#0 defaults to 1
  11666. real u-animation phase
  11667. real u-animation scale:repeats#0 defaults to 1
  11668. enum v-animation source
  11669. {
  11670. none
  11671. A out
  11672. B out
  11673. C out
  11674. D out
  11675. }
  11676. enum v-animation function
  11677. {
  11678. one
  11679. zero
  11680. cosine
  11681. cosine (variable period)
  11682. diagonal wave
  11683. diagonal wave (variable period)
  11684. slide
  11685. slide (variable period)
  11686. noise
  11687. jitter
  11688. wander
  11689. spark
  11690. }
  11691. real v-animation period:seconds#0 defaults to 1
  11692. real v-animation phase
  11693. real v-animation scale:repeats#0 defaults to 1
  11694. enum rotation-animation source
  11695. {
  11696. none
  11697. A out
  11698. B out
  11699. C out
  11700. D out
  11701. }
  11702. enum rotation-animation function
  11703. {
  11704. one
  11705. zero
  11706. cosine
  11707. cosine (variable period)
  11708. diagonal wave
  11709. diagonal wave (variable period)
  11710. slide
  11711. slide (variable period)
  11712. noise
  11713. jitter
  11714. wander
  11715. spark
  11716. }
  11717. real rotation-animation period:seconds#0 defaults to 1
  11718. real rotation-animation phase
  11719. real rotation-animation scale:degrees#0 defaults to 360
  11720. real_point_2d rotation-animation center
  11721. }
  11722. }
  11723. block stages
  11724. {
  11725. Name: shader_transparent_generic_stage_block
  11726. Max Chunks: 7
  11727. Chunk Size: 112
  11728. Max Chunks x Chunk Size: 784
  11729. Chunk Definition Offset: 0x5ca908
  11730. {
  11731. word_flags flags
  11732. {
  11733. color mux
  11734. alpha mux
  11735. A-out controls color0 animation
  11736. }
  11737. pad[2]
  11738. explanation constants and animation
  11739. {
  11740. Dialog Data Offset: 0x4c46c8
  11741. {
  11742. Constant color 0 is animated in exactly the same way as the self-illumination color of the model shader, except that it has an alpha component in addition to the RGB components. Constant color 1 is just a constant.
  11743. }
  11744. }
  11745. enum color0 source
  11746. {
  11747. none
  11748. A
  11749. B
  11750. C
  11751. D
  11752. }
  11753. enum color0 animation function
  11754. {
  11755. one
  11756. zero
  11757. cosine
  11758. cosine (variable period)
  11759. diagonal wave
  11760. diagonal wave (variable period)
  11761. slide
  11762. slide (variable period)
  11763. noise
  11764. jitter
  11765. wander
  11766. spark
  11767. }
  11768. real color0 animation period:seconds#0 defaults to 1
  11769. real_argb_color color0 animation lower bound
  11770. real_argb_color color0 animation upper bound
  11771. real_argb_color color1
  11772. explanation color inputs
  11773. {
  11774. Dialog Data Offset: 0x494b11
  11775. {
  11776.  
  11777. }
  11778. }
  11779. enum input A
  11780. {
  11781. zero
  11782. one
  11783. one half
  11784. negative one
  11785. negative one half
  11786. map color 0
  11787. map color 1
  11788. map color 2
  11789. map color 3
  11790. vertex color 0 / diffuse light
  11791. vertex color 1 / fade(perpendicular)
  11792. scratch color 0
  11793. scratch color 1
  11794. constant color 0
  11795. constant color 1
  11796. map alpha 0
  11797. map alpha 1
  11798. map alpha 2
  11799. map alpha 3
  11800. vertex alpha 0 / fade(none)
  11801. vertex alpha 1 / fade(perpendicular)
  11802. scratch alpha 0
  11803. scratch alpha 1
  11804. constant alpha 0
  11805. constant alpha 1
  11806. }
  11807. enum input A mapping
  11808. {
  11809. clamp(x)
  11810. 1 - clamp(x)
  11811. 2*clamp(x) - 1
  11812. 1 - 2*clamp(x)
  11813. clamp(x) - 1/2
  11814. 1/2 - clamp(x)
  11815. x
  11816. -x
  11817. }
  11818. enum input B
  11819. {
  11820. zero
  11821. one
  11822. one half
  11823. negative one
  11824. negative one half
  11825. map color 0
  11826. map color 1
  11827. map color 2
  11828. map color 3
  11829. vertex color 0 / diffuse light
  11830. vertex color 1 / fade(perpendicular)
  11831. scratch color 0
  11832. scratch color 1
  11833. constant color 0
  11834. constant color 1
  11835. map alpha 0
  11836. map alpha 1
  11837. map alpha 2
  11838. map alpha 3
  11839. vertex alpha 0 / fade(none)
  11840. vertex alpha 1 / fade(perpendicular)
  11841. scratch alpha 0
  11842. scratch alpha 1
  11843. constant alpha 0
  11844. constant alpha 1
  11845. }
  11846. enum input B mapping
  11847. {
  11848. clamp(x)
  11849. 1 - clamp(x)
  11850. 2*clamp(x) - 1
  11851. 1 - 2*clamp(x)
  11852. clamp(x) - 1/2
  11853. 1/2 - clamp(x)
  11854. x
  11855. -x
  11856. }
  11857. enum input C
  11858. {
  11859. zero
  11860. one
  11861. one half
  11862. negative one
  11863. negative one half
  11864. map color 0
  11865. map color 1
  11866. map color 2
  11867. map color 3
  11868. vertex color 0 / diffuse light
  11869. vertex color 1 / fade(perpendicular)
  11870. scratch color 0
  11871. scratch color 1
  11872. constant color 0
  11873. constant color 1
  11874. map alpha 0
  11875. map alpha 1
  11876. map alpha 2
  11877. map alpha 3
  11878. vertex alpha 0 / fade(none)
  11879. vertex alpha 1 / fade(perpendicular)
  11880. scratch alpha 0
  11881. scratch alpha 1
  11882. constant alpha 0
  11883. constant alpha 1
  11884. }
  11885. enum input C mapping
  11886. {
  11887. clamp(x)
  11888. 1 - clamp(x)
  11889. 2*clamp(x) - 1
  11890. 1 - 2*clamp(x)
  11891. clamp(x) - 1/2
  11892. 1/2 - clamp(x)
  11893. x
  11894. -x
  11895. }
  11896. enum input D
  11897. {
  11898. zero
  11899. one
  11900. one half
  11901. negative one
  11902. negative one half
  11903. map color 0
  11904. map color 1
  11905. map color 2
  11906. map color 3
  11907. vertex color 0 / diffuse light
  11908. vertex color 1 / fade(perpendicular)
  11909. scratch color 0
  11910. scratch color 1
  11911. constant color 0
  11912. constant color 1
  11913. map alpha 0
  11914. map alpha 1
  11915. map alpha 2
  11916. map alpha 3
  11917. vertex alpha 0 / fade(none)
  11918. vertex alpha 1 / fade(perpendicular)
  11919. scratch alpha 0
  11920. scratch alpha 1
  11921. constant alpha 0
  11922. constant alpha 1
  11923. }
  11924. enum input D mapping
  11925. {
  11926. clamp(x)
  11927. 1 - clamp(x)
  11928. 2*clamp(x) - 1
  11929. 1 - 2*clamp(x)
  11930. clamp(x) - 1/2
  11931. 1/2 - clamp(x)
  11932. x
  11933. -x
  11934. }
  11935. explanation color outputs
  11936. {
  11937. Dialog Data Offset: 0x494b11
  11938. {
  11939.  
  11940. }
  11941. }
  11942. enum output AB
  11943. {
  11944. discard
  11945. scratch color 0 / final color
  11946. scratch color 1
  11947. vertex color 0
  11948. vertex color 1
  11949. map color 0
  11950. map color 1
  11951. map color 2
  11952. map color 3
  11953. }
  11954. enum output AB function
  11955. {
  11956. multiply
  11957. dot product
  11958. }
  11959. enum output CD
  11960. {
  11961. discard
  11962. scratch color 0 / final color
  11963. scratch color 1
  11964. vertex color 0
  11965. vertex color 1
  11966. map color 0
  11967. map color 1
  11968. map color 2
  11969. map color 3
  11970. }
  11971. enum output CD function
  11972. {
  11973. multiply
  11974. dot product
  11975. }
  11976. enum output AB CD mux/sum
  11977. {
  11978. discard
  11979. scratch color 0 / final color
  11980. scratch color 1
  11981. vertex color 0
  11982. vertex color 1
  11983. map color 0
  11984. map color 1
  11985. map color 2
  11986. map color 3
  11987. }
  11988. enum output mapping
  11989. {
  11990. identity
  11991. scale by 1/2
  11992. scale by 2
  11993. scale by 4
  11994. bias by -1/2
  11995. expand normal
  11996. }
  11997. explanation alpha inputs
  11998. {
  11999. Dialog Data Offset: 0x494b11
  12000. {
  12001.  
  12002. }
  12003. }
  12004. enum input A
  12005. {
  12006. zero
  12007. one
  12008. one half
  12009. negative one
  12010. negative one half
  12011. map alpha 0
  12012. map alpha 1
  12013. map alpha 2
  12014. map alpha 3
  12015. vertex alpha 0 / fade(none)
  12016. vertex alpha 1 / fade(perpendicular)
  12017. scratch alpha 0
  12018. scratch alpha 1
  12019. constant alpha 0
  12020. constant alpha 1
  12021. map blue 0
  12022. map blue 1
  12023. map blue 2
  12024. map blue 3
  12025. vertex blue 0 / blue light
  12026. vertex blue 1 / fade(parallel)
  12027. scratch blue 0
  12028. scratch blue 1
  12029. constant blue 0
  12030. constant blue 1
  12031. }
  12032. enum input A mapping
  12033. {
  12034. clamp(x)
  12035. 1 - clamp(x)
  12036. 2*clamp(x) - 1
  12037. 1 - 2*clamp(x)
  12038. clamp(x) - 1/2
  12039. 1/2 - clamp(x)
  12040. x
  12041. -x
  12042. }
  12043. enum input B
  12044. {
  12045. zero
  12046. one
  12047. one half
  12048. negative one
  12049. negative one half
  12050. map alpha 0
  12051. map alpha 1
  12052. map alpha 2
  12053. map alpha 3
  12054. vertex alpha 0 / fade(none)
  12055. vertex alpha 1 / fade(perpendicular)
  12056. scratch alpha 0
  12057. scratch alpha 1
  12058. constant alpha 0
  12059. constant alpha 1
  12060. map blue 0
  12061. map blue 1
  12062. map blue 2
  12063. map blue 3
  12064. vertex blue 0 / blue light
  12065. vertex blue 1 / fade(parallel)
  12066. scratch blue 0
  12067. scratch blue 1
  12068. constant blue 0
  12069. constant blue 1
  12070. }
  12071. enum input B mapping
  12072. {
  12073. clamp(x)
  12074. 1 - clamp(x)
  12075. 2*clamp(x) - 1
  12076. 1 - 2*clamp(x)
  12077. clamp(x) - 1/2
  12078. 1/2 - clamp(x)
  12079. x
  12080. -x
  12081. }
  12082. enum input C
  12083. {
  12084. zero
  12085. one
  12086. one half
  12087. negative one
  12088. negative one half
  12089. map alpha 0
  12090. map alpha 1
  12091. map alpha 2
  12092. map alpha 3
  12093. vertex alpha 0 / fade(none)
  12094. vertex alpha 1 / fade(perpendicular)
  12095. scratch alpha 0
  12096. scratch alpha 1
  12097. constant alpha 0
  12098. constant alpha 1
  12099. map blue 0
  12100. map blue 1
  12101. map blue 2
  12102. map blue 3
  12103. vertex blue 0 / blue light
  12104. vertex blue 1 / fade(parallel)
  12105. scratch blue 0
  12106. scratch blue 1
  12107. constant blue 0
  12108. constant blue 1
  12109. }
  12110. enum input C mapping
  12111. {
  12112. clamp(x)
  12113. 1 - clamp(x)
  12114. 2*clamp(x) - 1
  12115. 1 - 2*clamp(x)
  12116. clamp(x) - 1/2
  12117. 1/2 - clamp(x)
  12118. x
  12119. -x
  12120. }
  12121. enum input D
  12122. {
  12123. zero
  12124. one
  12125. one half
  12126. negative one
  12127. negative one half
  12128. map alpha 0
  12129. map alpha 1
  12130. map alpha 2
  12131. map alpha 3
  12132. vertex alpha 0 / fade(none)
  12133. vertex alpha 1 / fade(perpendicular)
  12134. scratch alpha 0
  12135. scratch alpha 1
  12136. constant alpha 0
  12137. constant alpha 1
  12138. map blue 0
  12139. map blue 1
  12140. map blue 2
  12141. map blue 3
  12142. vertex blue 0 / blue light
  12143. vertex blue 1 / fade(parallel)
  12144. scratch blue 0
  12145. scratch blue 1
  12146. constant blue 0
  12147. constant blue 1
  12148. }
  12149. enum input D mapping
  12150. {
  12151. clamp(x)
  12152. 1 - clamp(x)
  12153. 2*clamp(x) - 1
  12154. 1 - 2*clamp(x)
  12155. clamp(x) - 1/2
  12156. 1/2 - clamp(x)
  12157. x
  12158. -x
  12159. }
  12160. explanation alpha outputs
  12161. {
  12162. Dialog Data Offset: 0x494b11
  12163. {
  12164.  
  12165. }
  12166. }
  12167. enum output AB
  12168. {
  12169. discard
  12170. scratch alpha 0 / final alpha
  12171. scratch alpha 1
  12172. vertex alpha 0 / fog
  12173. vertex alpha 1
  12174. map alpha 0
  12175. map alpha 1
  12176. map alpha 2
  12177. map alpha 3
  12178. }
  12179. enum output CD
  12180. {
  12181. discard
  12182. scratch alpha 0 / final alpha
  12183. scratch alpha 1
  12184. vertex alpha 0 / fog
  12185. vertex alpha 1
  12186. map alpha 0
  12187. map alpha 1
  12188. map alpha 2
  12189. map alpha 3
  12190. }
  12191. enum output AB CD mux/sum
  12192. {
  12193. discard
  12194. scratch alpha 0 / final alpha
  12195. scratch alpha 1
  12196. vertex alpha 0 / fog
  12197. vertex alpha 1
  12198. map alpha 0
  12199. map alpha 1
  12200. map alpha 2
  12201. map alpha 3
  12202. }
  12203. enum output mapping
  12204. {
  12205. identity
  12206. scale by 1/2
  12207. scale by 2
  12208. scale by 4
  12209. bias by -1/2
  12210. expand normal
  12211. }
  12212. }
  12213. }
  12214. POORLY-DETERMINED MIN FILESIZE OF sotr (including 64-byte header): 132
  12215. POORLY-DETERMINED MAX FILESIZE OF sotr (including 64-byte header): 2145
  12216.  
  12217. Tag Definition Offset: 0x5cafe8
  12218. Extension: shader_transparent_chicago
  12219. Unknown: 8
  12220. Class: schi
  12221. Superclass: shdr
  12222. Version: 1
  12223. Definition Block:
  12224. {
  12225. Name: shader_transparent_chicago
  12226. Count: 1
  12227. Size: 68
  12228. Chunks Offset: 0x5caef8
  12229. }
  12230. explanation chicago shader
  12231. {
  12232. Dialog Data Offset: 0x494b11
  12233. {
  12234.  
  12235. }
  12236. }
  12237. char_integer numeric counter limit:[0,255]
  12238. byte_flags flags
  12239. {
  12240. alpha-tested
  12241. decal
  12242. two-sided
  12243. first map is in screenspace
  12244. draw before water
  12245. ignore effect
  12246. scale first map with distance
  12247. numeric
  12248. }
  12249. enum first map type
  12250. {
  12251. 2D map
  12252. first map is reflection cube map
  12253. first map is object-centered cube map
  12254. first map is viewer-centered cube map
  12255. }
  12256. enum framebuffer blend function
  12257. {
  12258. alpha blend
  12259. multiply
  12260. double multiply
  12261. add
  12262. subtract
  12263. component min
  12264. component max
  12265. alpha-multiply add
  12266. }
  12267. enum framebuffer fade mode
  12268. {
  12269. none
  12270. fade when perpendicular
  12271. fade when parallel
  12272. }
  12273. enum framebuffer fade source#fade is multiplied by this external value
  12274. {
  12275. none
  12276. A out
  12277. B out
  12278. C out
  12279. D out
  12280. }
  12281. pad[2]
  12282. explanation lens flares
  12283. {
  12284. Dialog Data Offset: 0x494b11
  12285. {
  12286.  
  12287. }
  12288. }
  12289. real lens flare spacing:world units#0 places a single lens flare
  12290. tag reference lens flare
  12291. {
  12292. Supported tag class category: lens
  12293. }
  12294. block extra layers
  12295. {
  12296. Name: shader_transparent_layer_block
  12297. Max Chunks: 4
  12298. Chunk Size: 16
  12299. Max Chunks x Chunk Size: 64
  12300. Chunk Definition Offset: 0x5ca57c
  12301. {
  12302. tag reference shader
  12303. {
  12304. Supported tag class category: shdr
  12305. }
  12306. }
  12307. }
  12308. block maps
  12309. {
  12310. Name: shader_transparent_chicago_map_block
  12311. Max Chunks: 4
  12312. Chunk Size: 220
  12313. Max Chunks x Chunk Size: 880
  12314. Chunk Definition Offset: 0x5cacf8
  12315. {
  12316. word_flags flags
  12317. {
  12318. unfiltered
  12319. alpha replicate
  12320. u-clamped
  12321. v-clamped
  12322. }
  12323. pad[2]
  12324. pad[40]
  12325. enum color function#ignored for last map
  12326. {
  12327. current
  12328. next map
  12329. multiply
  12330. double-multiply
  12331. add
  12332. add-signed current
  12333. add-signed next map
  12334. subtract current
  12335. subtract next map
  12336. blend current alpha
  12337. blend current alpha-inverse
  12338. blend next map alpha
  12339. blend next map alpha-inverse
  12340. }
  12341. enum alpha function#ignored for last map
  12342. {
  12343. current
  12344. next map
  12345. multiply
  12346. double-multiply
  12347. add
  12348. add-signed current
  12349. add-signed next map
  12350. subtract current
  12351. subtract next map
  12352. blend current alpha
  12353. blend current alpha-inverse
  12354. blend next map alpha
  12355. blend next map alpha-inverse
  12356. }
  12357. pad[36]
  12358. real map u-scale#0 defaults to 1
  12359. real map v-scale#0 defaults to 1
  12360. real map u-offset
  12361. real map v-offset
  12362. real map rotation:degrees
  12363. real_fraction mipmap bias:[0,1]
  12364. tag reference map^
  12365. {
  12366. Supported tag class category: bitm
  12367. }
  12368. pad[40]
  12369. explanation 2D texture animation
  12370. {
  12371. Dialog Data Offset: 0x494b11
  12372. {
  12373.  
  12374. }
  12375. }
  12376. enum u-animation source
  12377. {
  12378. none
  12379. A out
  12380. B out
  12381. C out
  12382. D out
  12383. }
  12384. enum u-animation function
  12385. {
  12386. one
  12387. zero
  12388. cosine
  12389. cosine (variable period)
  12390. diagonal wave
  12391. diagonal wave (variable period)
  12392. slide
  12393. slide (variable period)
  12394. noise
  12395. jitter
  12396. wander
  12397. spark
  12398. }
  12399. real u-animation period:seconds#0 defaults to 1
  12400. real u-animation phase
  12401. real u-animation scale:repeats#0 defaults to 1
  12402. enum v-animation source
  12403. {
  12404. none
  12405. A out
  12406. B out
  12407. C out
  12408. D out
  12409. }
  12410. enum v-animation function
  12411. {
  12412. one
  12413. zero
  12414. cosine
  12415. cosine (variable period)
  12416. diagonal wave
  12417. diagonal wave (variable period)
  12418. slide
  12419. slide (variable period)
  12420. noise
  12421. jitter
  12422. wander
  12423. spark
  12424. }
  12425. real v-animation period:seconds#0 defaults to 1
  12426. real v-animation phase
  12427. real v-animation scale:repeats#0 defaults to 1
  12428. enum rotation-animation source
  12429. {
  12430. none
  12431. A out
  12432. B out
  12433. C out
  12434. D out
  12435. }
  12436. enum rotation-animation function
  12437. {
  12438. one
  12439. zero
  12440. cosine
  12441. cosine (variable period)
  12442. diagonal wave
  12443. diagonal wave (variable period)
  12444. slide
  12445. slide (variable period)
  12446. noise
  12447. jitter
  12448. wander
  12449. spark
  12450. }
  12451. real rotation-animation period:seconds#0 defaults to 1
  12452. real rotation-animation phase
  12453. real rotation-animation scale:degrees#0 defaults to 360
  12454. real_point_2d rotation-animation center
  12455. }
  12456. }
  12457. long_flags extra flags
  12458. {
  12459. don't fade active-camouflage
  12460. numeric countdown timer
  12461. }
  12462. pad[8]
  12463. POORLY-DETERMINED MIN FILESIZE OF schi (including 64-byte header): 132
  12464. POORLY-DETERMINED MAX FILESIZE OF schi (including 64-byte header): 1841
  12465.  
  12466. Tag Definition Offset: 0x5cb140
  12467. Extension: shader_transparent_chicago_extended
  12468. Unknown: 8
  12469. Class: scex
  12470. Superclass: shdr
  12471. Version: 1
  12472. Definition Block:
  12473. {
  12474. Name: shader_transparent_chicago_extended
  12475. Count: 1
  12476. Size: 80
  12477. Chunks Offset: 0x5cb048
  12478. }
  12479. explanation chicago shader extended
  12480. {
  12481. Dialog Data Offset: 0x494b11
  12482. {
  12483.  
  12484. }
  12485. }
  12486. char_integer numeric counter limit:[0,255]
  12487. byte_flags flags
  12488. {
  12489. alpha-tested
  12490. decal
  12491. two-sided
  12492. first map is in screenspace
  12493. draw before water
  12494. ignore effect
  12495. scale first map with distance
  12496. numeric
  12497. }
  12498. enum first map type
  12499. {
  12500. 2D map
  12501. first map is reflection cube map
  12502. first map is object-centered cube map
  12503. first map is viewer-centered cube map
  12504. }
  12505. enum framebuffer blend function
  12506. {
  12507. alpha blend
  12508. multiply
  12509. double multiply
  12510. add
  12511. subtract
  12512. component min
  12513. component max
  12514. alpha-multiply add
  12515. }
  12516. enum framebuffer fade mode
  12517. {
  12518. none
  12519. fade when perpendicular
  12520. fade when parallel
  12521. }
  12522. enum framebuffer fade source#fade is multiplied by this external value
  12523. {
  12524. none
  12525. A out
  12526. B out
  12527. C out
  12528. D out
  12529. }
  12530. pad[2]
  12531. explanation lens flares
  12532. {
  12533. Dialog Data Offset: 0x494b11
  12534. {
  12535.  
  12536. }
  12537. }
  12538. real lens flare spacing:world units#0 places a single lens flare
  12539. tag reference lens flare
  12540. {
  12541. Supported tag class category: lens
  12542. }
  12543. block extra layers
  12544. {
  12545. Name: shader_transparent_layer_block
  12546. Max Chunks: 4
  12547. Chunk Size: 16
  12548. Max Chunks x Chunk Size: 64
  12549. Chunk Definition Offset: 0x5ca57c
  12550. {
  12551. tag reference shader
  12552. {
  12553. Supported tag class category: shdr
  12554. }
  12555. }
  12556. }
  12557. block 4 stage maps
  12558. {
  12559. Name: shader_transparent_chicago_map_block
  12560. Max Chunks: 4
  12561. Chunk Size: 220
  12562. Max Chunks x Chunk Size: 880
  12563. Chunk Definition Offset: 0x5cacf8
  12564. {
  12565. word_flags flags
  12566. {
  12567. unfiltered
  12568. alpha replicate
  12569. u-clamped
  12570. v-clamped
  12571. }
  12572. pad[2]
  12573. pad[40]
  12574. enum color function#ignored for last map
  12575. {
  12576. current
  12577. next map
  12578. multiply
  12579. double-multiply
  12580. add
  12581. add-signed current
  12582. add-signed next map
  12583. subtract current
  12584. subtract next map
  12585. blend current alpha
  12586. blend current alpha-inverse
  12587. blend next map alpha
  12588. blend next map alpha-inverse
  12589. }
  12590. enum alpha function#ignored for last map
  12591. {
  12592. current
  12593. next map
  12594. multiply
  12595. double-multiply
  12596. add
  12597. add-signed current
  12598. add-signed next map
  12599. subtract current
  12600. subtract next map
  12601. blend current alpha
  12602. blend current alpha-inverse
  12603. blend next map alpha
  12604. blend next map alpha-inverse
  12605. }
  12606. pad[36]
  12607. real map u-scale#0 defaults to 1
  12608. real map v-scale#0 defaults to 1
  12609. real map u-offset
  12610. real map v-offset
  12611. real map rotation:degrees
  12612. real_fraction mipmap bias:[0,1]
  12613. tag reference map^
  12614. {
  12615. Supported tag class category: bitm
  12616. }
  12617. pad[40]
  12618. explanation 2D texture animation
  12619. {
  12620. Dialog Data Offset: 0x494b11
  12621. {
  12622.  
  12623. }
  12624. }
  12625. enum u-animation source
  12626. {
  12627. none
  12628. A out
  12629. B out
  12630. C out
  12631. D out
  12632. }
  12633. enum u-animation function
  12634. {
  12635. one
  12636. zero
  12637. cosine
  12638. cosine (variable period)
  12639. diagonal wave
  12640. diagonal wave (variable period)
  12641. slide
  12642. slide (variable period)
  12643. noise
  12644. jitter
  12645. wander
  12646. spark
  12647. }
  12648. real u-animation period:seconds#0 defaults to 1
  12649. real u-animation phase
  12650. real u-animation scale:repeats#0 defaults to 1
  12651. enum v-animation source
  12652. {
  12653. none
  12654. A out
  12655. B out
  12656. C out
  12657. D out
  12658. }
  12659. enum v-animation function
  12660. {
  12661. one
  12662. zero
  12663. cosine
  12664. cosine (variable period)
  12665. diagonal wave
  12666. diagonal wave (variable period)
  12667. slide
  12668. slide (variable period)
  12669. noise
  12670. jitter
  12671. wander
  12672. spark
  12673. }
  12674. real v-animation period:seconds#0 defaults to 1
  12675. real v-animation phase
  12676. real v-animation scale:repeats#0 defaults to 1
  12677. enum rotation-animation source
  12678. {
  12679. none
  12680. A out
  12681. B out
  12682. C out
  12683. D out
  12684. }
  12685. enum rotation-animation function
  12686. {
  12687. one
  12688. zero
  12689. cosine
  12690. cosine (variable period)
  12691. diagonal wave
  12692. diagonal wave (variable period)
  12693. slide
  12694. slide (variable period)
  12695. noise
  12696. jitter
  12697. wander
  12698. spark
  12699. }
  12700. real rotation-animation period:seconds#0 defaults to 1
  12701. real rotation-animation phase
  12702. real rotation-animation scale:degrees#0 defaults to 360
  12703. real_point_2d rotation-animation center
  12704. }
  12705. }
  12706. block 2 stage maps
  12707. {
  12708. Name: shader_transparent_chicago_map_block
  12709. Max Chunks: 4
  12710. Chunk Size: 220
  12711. Max Chunks x Chunk Size: 880
  12712. Chunk Definition Offset: 0x5cacf8
  12713. {
  12714. word_flags flags
  12715. {
  12716. unfiltered
  12717. alpha replicate
  12718. u-clamped
  12719. v-clamped
  12720. }
  12721. pad[2]
  12722. pad[40]
  12723. enum color function#ignored for last map
  12724. {
  12725. current
  12726. next map
  12727. multiply
  12728. double-multiply
  12729. add
  12730. add-signed current
  12731. add-signed next map
  12732. subtract current
  12733. subtract next map
  12734. blend current alpha
  12735. blend current alpha-inverse
  12736. blend next map alpha
  12737. blend next map alpha-inverse
  12738. }
  12739. enum alpha function#ignored for last map
  12740. {
  12741. current
  12742. next map
  12743. multiply
  12744. double-multiply
  12745. add
  12746. add-signed current
  12747. add-signed next map
  12748. subtract current
  12749. subtract next map
  12750. blend current alpha
  12751. blend current alpha-inverse
  12752. blend next map alpha
  12753. blend next map alpha-inverse
  12754. }
  12755. pad[36]
  12756. real map u-scale#0 defaults to 1
  12757. real map v-scale#0 defaults to 1
  12758. real map u-offset
  12759. real map v-offset
  12760. real map rotation:degrees
  12761. real_fraction mipmap bias:[0,1]
  12762. tag reference map^
  12763. {
  12764. Supported tag class category: bitm
  12765. }
  12766. pad[40]
  12767. explanation 2D texture animation
  12768. {
  12769. Dialog Data Offset: 0x494b11
  12770. {
  12771.  
  12772. }
  12773. }
  12774. enum u-animation source
  12775. {
  12776. none
  12777. A out
  12778. B out
  12779. C out
  12780. D out
  12781. }
  12782. enum u-animation function
  12783. {
  12784. one
  12785. zero
  12786. cosine
  12787. cosine (variable period)
  12788. diagonal wave
  12789. diagonal wave (variable period)
  12790. slide
  12791. slide (variable period)
  12792. noise
  12793. jitter
  12794. wander
  12795. spark
  12796. }
  12797. real u-animation period:seconds#0 defaults to 1
  12798. real u-animation phase
  12799. real u-animation scale:repeats#0 defaults to 1
  12800. enum v-animation source
  12801. {
  12802. none
  12803. A out
  12804. B out
  12805. C out
  12806. D out
  12807. }
  12808. enum v-animation function
  12809. {
  12810. one
  12811. zero
  12812. cosine
  12813. cosine (variable period)
  12814. diagonal wave
  12815. diagonal wave (variable period)
  12816. slide
  12817. slide (variable period)
  12818. noise
  12819. jitter
  12820. wander
  12821. spark
  12822. }
  12823. real v-animation period:seconds#0 defaults to 1
  12824. real v-animation phase
  12825. real v-animation scale:repeats#0 defaults to 1
  12826. enum rotation-animation source
  12827. {
  12828. none
  12829. A out
  12830. B out
  12831. C out
  12832. D out
  12833. }
  12834. enum rotation-animation function
  12835. {
  12836. one
  12837. zero
  12838. cosine
  12839. cosine (variable period)
  12840. diagonal wave
  12841. diagonal wave (variable period)
  12842. slide
  12843. slide (variable period)
  12844. noise
  12845. jitter
  12846. wander
  12847. spark
  12848. }
  12849. real rotation-animation period:seconds#0 defaults to 1
  12850. real rotation-animation phase
  12851. real rotation-animation scale:degrees#0 defaults to 360
  12852. real_point_2d rotation-animation center
  12853. }
  12854. }
  12855. long_flags extra flags
  12856. {
  12857. don't fade active-camouflage
  12858. numeric countdown timer
  12859. }
  12860. pad[8]
  12861. POORLY-DETERMINED MIN FILESIZE OF scex (including 64-byte header): 144
  12862. POORLY-DETERMINED MAX FILESIZE OF scex (including 64-byte header): 2988
  12863.  
  12864. Tag Definition Offset: 0x5cb3c0
  12865. Extension: shader_transparent_water
  12866. Unknown: 8
  12867. Class: swat
  12868. Superclass: shdr
  12869. Version: 2
  12870. Definition Block:
  12871. {
  12872. Name: shader_transparent_water
  12873. Count: 1
  12874. Size: 280
  12875. Chunks Offset: 0x5cb268
  12876. }
  12877. explanation water shader
  12878. {
  12879. Dialog Data Offset: 0x4c3e30
  12880. {
  12881. Base map color modulates the background, while base map alpha modulates reflection brightness. Both of these effects can be independently enables and disabled. Note that if the <base map alpha modulates reflection> flag is not set, then the perpendicular/parallel brightness has no effect (but the perpendicular/parallel tint color DOES has an effect).
  12882. }
  12883. }
  12884. word_flags flags
  12885. {
  12886. base map alpha modulates reflection
  12887. base map color modulates background
  12888. atmospheric fog
  12889. draw before fog
  12890. }
  12891. pad[2]
  12892. pad[32]
  12893. tag reference base map#controls reflection brightness and background tint
  12894. {
  12895. Supported tag class category: bitm
  12896. }
  12897. pad[16]
  12898. real_fraction view perpendicular brightness:[0,1]
  12899. real_rgb_color view perpendicular tint color
  12900. real_fraction view parallel brightness:[0,1]#0 defaults to 1
  12901. real_rgb_color view parallel tint color
  12902. pad[16]
  12903. tag reference reflection map:[0,1]
  12904. {
  12905. Supported tag class category: bitm
  12906. }
  12907. pad[16]
  12908. angle ripple animation angle:[0,360]
  12909. real ripple animation velocity
  12910. real ripple scale#0 defaults to 1
  12911. tag reference ripple maps
  12912. {
  12913. Supported tag class category: bitm
  12914. }
  12915. short_integer ripple mipmap levels#0 defaults to 1
  12916. pad[2]
  12917. real_fraction ripple mipmap fade factor:[0,1]#flatness of last mipmap
  12918. real ripple mipmap detail bias
  12919. pad[64]
  12920. block ripples
  12921. {
  12922. Name: shader_transparent_water_ripple_block
  12923. Max Chunks: 4
  12924. Chunk Size: 76
  12925. Max Chunks x Chunk Size: 304
  12926. Chunk Definition Offset: 0x5cb1a0
  12927. {
  12928. pad[2]
  12929. pad[2]
  12930. real_fraction contribution factor:[0,1]#0 defaults to 1
  12931. pad[32]
  12932. angle animation angle:[0,360]
  12933. real animation velocity
  12934. real_vector_2d map offset
  12935. short_integer map repeats#0 defaults to 1
  12936. short_integer map index#index into ripple maps
  12937. pad[16]
  12938. }
  12939. }
  12940. pad[16]
  12941. POORLY-DETERMINED MIN FILESIZE OF swat (including 64-byte header): 344
  12942. POORLY-DETERMINED MAX FILESIZE OF swat (including 64-byte header): 1413
  12943.  
  12944. Tag Definition Offset: 0x5cb620
  12945. Extension: shader_transparent_glass
  12946. Unknown: 8
  12947. Class: sgla
  12948. Superclass: shdr
  12949. Version: 1
  12950. Definition Block:
  12951. {
  12952. Name: shader_transparent_glass
  12953. Count: 1
  12954. Size: 440
  12955. Chunks Offset: 0x5cb450
  12956. }
  12957. explanation glass shader
  12958. {
  12959. Dialog Data Offset: 0x494b11
  12960. {
  12961.  
  12962. }
  12963. }
  12964. word_flags flags
  12965. {
  12966. alpha-tested
  12967. decal
  12968. two-sided
  12969. bump map is specular mask
  12970. }
  12971. pad[2]
  12972. explanation background tint properties
  12973. {
  12974. Dialog Data Offset: 0x4c3bc8
  12975. {
  12976. Background pixels are multiplied by the tint map and constant tint color.
  12977. }
  12978. }
  12979. pad[40]
  12980. real_rgb_color background tint color
  12981. real background tint map scale#0 defaults to 1
  12982. tag reference background tint map
  12983. {
  12984. Supported tag class category: bitm
  12985. }
  12986. pad[20]
  12987. explanation reflection properties
  12988. {
  12989. Dialog Data Offset: 0x4c3a88
  12990. {
  12991. Reflection maps are multiplied by fresnel terms (glancing angles cause reflections to disappear) and then added to the background. The primary reflection map is textured normally, while the secondary reflection map is magnified.
  12992. }
  12993. }
  12994. pad[2]
  12995. enum reflection type
  12996. {
  12997. bumped cube-map
  12998. flat cube-map
  12999. dynamic mirror
  13000. }
  13001. real_fraction perpendicular brightness:[0,1]
  13002. real_rgb_color perpendicular tint color
  13003. real_fraction parallel brightness:[0,1]
  13004. real_rgb_color parallel tint color
  13005. tag reference reflection map
  13006. {
  13007. Supported tag class category: bitm
  13008. }
  13009. real bump map scale
  13010. tag reference bump map
  13011. {
  13012. Supported tag class category: bitm
  13013. }
  13014. pad[128]
  13015. explanation diffuse properties
  13016. {
  13017. Dialog Data Offset: 0x4c3848
  13018. {
  13019. Diffuse lights are accumulated in monochrome and then alpha-blended with diffuse map and diffuse detail map. The color is determined by double-multiplying both maps and multiplying with the accumulated light, the result being alpha-blended into the framebuffer. The opacity is determined by multiplying both map's alpha channels. Since this effect is alpha-blended, it covers up tinting and reflection on pixels with high opacity.
  13020. }
  13021. }
  13022. pad[4]
  13023. real diffuse map scale#0 defaults to 1
  13024. tag reference diffuse map
  13025. {
  13026. Supported tag class category: bitm
  13027. }
  13028. real diffuse detail map scale#0 defaults to 1
  13029. tag reference diffuse detail map
  13030. {
  13031. Supported tag class category: bitm
  13032. }
  13033. pad[28]
  13034. explanation specular properties
  13035. {
  13036. Dialog Data Offset: 0x4c3610
  13037. {
  13038. Specular lights are accumulated in monochrome and then alpha-blended with diffuse map and diffuse detail map. The color is determined by double-multiplying both maps and multiplying with the accumulated light, the result being alpha-blended into the framebuffer. The opacity is determined by multiplying both map's alpha channels. Since this effect is alpha-blended, it covers up tinting, reflection and diffuse texture on pixels with high opacity.
  13039. }
  13040. }
  13041. pad[4]
  13042. real specular map scale#0 defaults to 1
  13043. tag reference specular map
  13044. {
  13045. Supported tag class category: bitm
  13046. }
  13047. real specular detail map scale#0 defaults to 1
  13048. tag reference specular detail map
  13049. {
  13050. Supported tag class category: bitm
  13051. }
  13052. pad[28]
  13053. POORLY-DETERMINED MIN FILESIZE OF sgla (including 64-byte header): 504
  13054. POORLY-DETERMINED MAX FILESIZE OF sgla (including 64-byte header): 2289
  13055.  
  13056. Tag Definition Offset: 0x5cb7f0
  13057. Extension: shader_transparent_meter
  13058. Unknown: 8
  13059. Class: smet
  13060. Superclass: shdr
  13061. Version: 1
  13062. Definition Block:
  13063. {
  13064. Name: shader_transparent_meter
  13065. Count: 1
  13066. Size: 220
  13067. Chunks Offset: 0x5cb6a0
  13068. }
  13069. explanation meter shader
  13070. {
  13071. Dialog Data Offset: 0x494b11
  13072. {
  13073.  
  13074. }
  13075. }
  13076. word_flags flags
  13077. {
  13078. decal
  13079. two-sided
  13080. flash color is negative
  13081. tint mode-2
  13082. unfiltered
  13083. }
  13084. pad[2]
  13085. pad[32]
  13086. tag reference map
  13087. {
  13088. Supported tag class category: bitm
  13089. }
  13090. pad[32]
  13091. explanation colors
  13092. {
  13093. Dialog Data Offset: 0x494b11
  13094. {
  13095.  
  13096. }
  13097. }
  13098. real_rgb_color gradient min color
  13099. real_rgb_color gradient max color
  13100. real_rgb_color background color
  13101. real_rgb_color flash color
  13102. real_rgb_color tint color#modulates framebuffer color unless map alpha is zero
  13103. real_fraction meter transparency:[0,1]#used only when 'tint mode-2' is set
  13104. real_fraction background transparency:[0,1]#used only when 'tint mode-2' is set
  13105. pad[24]
  13106. explanation external function sources
  13107. {
  13108. Dialog Data Offset: 0x494b11
  13109. {
  13110.  
  13111. }
  13112. }
  13113. enum meter brightness source#overall meter brightness (default is 1)
  13114. {
  13115. none
  13116. A out
  13117. B out
  13118. C out
  13119. D out
  13120. }
  13121. enum flash brightness source#brightness of flash (default is 1)
  13122. {
  13123. none
  13124. A out
  13125. B out
  13126. C out
  13127. D out
  13128. }
  13129. enum value source#position of flash leading edge (default is 1)
  13130. {
  13131. none
  13132. A out
  13133. B out
  13134. C out
  13135. D out
  13136. }
  13137. enum gradient source#high color leading edge (default is 1)
  13138. {
  13139. none
  13140. A out
  13141. B out
  13142. C out
  13143. D out
  13144. }
  13145. enum flash-extension source#position of flash extension leading edge (default is 1)
  13146. {
  13147. none
  13148. A out
  13149. B out
  13150. C out
  13151. D out
  13152. }
  13153. pad[2]
  13154. pad[32]
  13155. POORLY-DETERMINED MIN FILESIZE OF smet (including 64-byte header): 284
  13156. POORLY-DETERMINED MAX FILESIZE OF smet (including 64-byte header): 539
  13157.  
  13158. Tag Definition Offset: 0x5cba60
  13159. Extension: shader_transparent_plasma
  13160. Unknown: 8
  13161. Class: spla
  13162. Superclass: shdr
  13163. Version: 1
  13164. Definition Block:
  13165. {
  13166. Name: shader_transparent_plasma
  13167. Count: 1
  13168. Size: 292
  13169. Chunks Offset: 0x5cb850
  13170. }
  13171. explanation plasma shader
  13172. {
  13173. Dialog Data Offset: 0x494b11
  13174. {
  13175.  
  13176. }
  13177. }
  13178. pad[2]
  13179. pad[2]
  13180. explanation intensity
  13181. {
  13182. Dialog Data Offset: 0x4c328c
  13183. {
  13184. Controls how bright the plasma is.
  13185. }
  13186. }
  13187. enum intensity source
  13188. {
  13189. none
  13190. A out
  13191. B out
  13192. C out
  13193. D out
  13194. }
  13195. pad[2]
  13196. real intensity exponent#0 defaults to 1
  13197. explanation offset
  13198. {
  13199. Dialog Data Offset: 0x4c3208
  13200. {
  13201. Controls how far the plasma energy extends from the model geometry.
  13202. }
  13203. }
  13204. enum offset source
  13205. {
  13206. none
  13207. A out
  13208. B out
  13209. C out
  13210. D out
  13211. }
  13212. pad[2]
  13213. real offset amount:world units
  13214. real offset exponent#0 defaults to 1
  13215. pad[32]
  13216. explanation color
  13217. {
  13218. Dialog Data Offset: 0x4c3184
  13219. {
  13220. Controls the tint color and Fresnel brightness effects.
  13221. }
  13222. }
  13223. real_fraction perpendicular brightness:[0,1]
  13224. real_rgb_color perpendicular tint color
  13225. real_fraction parallel brightness:[0,1]
  13226. real_rgb_color parallel tint color
  13227. enum tint color source#modulates perpendicular and parallel colors above
  13228. {
  13229. none
  13230. A
  13231. B
  13232. C
  13233. D
  13234. }
  13235. pad[2]
  13236. pad[32]
  13237. pad[2]
  13238. pad[2]
  13239. pad[16]
  13240. explanation primary noise map
  13241. {
  13242. Dialog Data Offset: 0x494b11
  13243. {
  13244.  
  13245. }
  13246. }
  13247. pad[4]
  13248. pad[4]
  13249. real primary animation period:seconds
  13250. real_vector_3d primary animation direction
  13251. real primary noise map scale
  13252. tag reference primary noise map
  13253. {
  13254. Supported tag class category: bitm
  13255. }
  13256. pad[32]
  13257. explanation secondary noise map
  13258. {
  13259. Dialog Data Offset: 0x494b11
  13260. {
  13261.  
  13262. }
  13263. }
  13264. pad[4]
  13265. real secondary animation period:seconds
  13266. real_vector_3d secondary animation direction
  13267. real secondary noise map scale
  13268. tag reference secondary noise map
  13269. {
  13270. Supported tag class category: bitm
  13271. }
  13272. pad[32]
  13273. POORLY-DETERMINED MIN FILESIZE OF spla (including 64-byte header): 356
  13274. POORLY-DETERMINED MAX FILESIZE OF spla (including 64-byte header): 866
  13275.  
  13276. Tag Definition Offset: 0x5c9318
  13277. Extension: actor
  13278. Unknown: 9
  13279. Class: actr
  13280. No superclass
  13281. Version: 2
  13282. Dialog Data Offset: 0x48d740
  13283. Definition Block:
  13284. {
  13285. Name: actor
  13286. Count: 1
  13287. Size: 1272
  13288. Chunks Offset: 0x5c8c70
  13289. }
  13290. long_flags flags
  13291. {
  13292. can see in darkness
  13293. sneak uncovering target
  13294. sneak uncovering pursuit position
  13295. unused
  13296. shoot at target's last location
  13297. try to stay still when crouched
  13298. crouch when not in combat
  13299. crouch when guarding
  13300. unused
  13301. must crouch to shoot
  13302. panic when surprised
  13303. always charge at enemies
  13304. gets in vehicles with player
  13305. start firing before aligned
  13306. standing must move forward
  13307. crouching must move forward
  13308. defensive crouch while charging
  13309. use stalking behavior
  13310. stalking freeze if exposed
  13311. always berserk in attacking mode
  13312. berserking uses panicked movement
  13313. flying
  13314. panicked by unopposable enemy
  13315. crouch when hiding from unopposable
  13316. always charge in 'attacking' mode
  13317. dive off ledges
  13318. swarm
  13319. suicidal melee attack
  13320. cannot move while crouching
  13321. fixed crouch facing
  13322. crouch when in line of fire
  13323. avoid friends' line of fire
  13324. }
  13325. long_flags more flags
  13326. {
  13327. avoid all enemy attack vectors
  13328. must stand to fire
  13329. must stop to fire
  13330. disallow vehicle combat
  13331. pathfinding ignores danger
  13332. panic in groups
  13333. no corpse shooting
  13334. }
  13335. pad[12]
  13336. enum type
  13337. {
  13338. elite
  13339. jackal
  13340. grunt
  13341. hunter
  13342. engineer
  13343. assassin
  13344. player
  13345. marine
  13346. crew
  13347. combat form
  13348. infection form
  13349. carrier form
  13350. monitor
  13351. sentinel
  13352. none
  13353. mounted weapon
  13354. }
  13355. pad[2]
  13356. explanation perception
  13357. {
  13358. Dialog Data Offset: 0x494b11
  13359. {
  13360.  
  13361. }
  13362. }
  13363. real max vision distance:world units#maximum range of sight
  13364. angle central vision angle:degrees#horizontal angle within which we see targets out to our maximum range
  13365. angle max vision angle:degrees#maximum horizontal angle within which we see targets at range
  13366. pad[4]
  13367. angle peripheral vision angle:degrees#maximum horizontal angle within which we can see targets out of the corner of our eye
  13368. real peripheral distance:world units#maximum range at which we can see targets our of the corner of our eye
  13369. pad[4]
  13370. real_vector_3d standing gun offset#offset of gun from feet when standing (x=forward, y=left, z=up)
  13371. real_vector_3d crouching gun offset#offset of gun from feet when crouch (x=forward, y=left, z=up)
  13372. real hearing distance:world units#maximum range at which sounds can be heard
  13373. real notice projectile chance:[0,1]#random chance of noticing a dangerous enemy projectile (e.g. grenade)
  13374. real notice vehicle chance:[0,1]#random chance of noticing a dangerous vehicle
  13375. pad[8]
  13376. real combat perception time:seconds#time required to acknowledge a visible enemy when we are already in combat or searching for them
  13377. real guard perception time:seconds#time required to acknowledge a visible enemy when we have been alerted
  13378. real non-combat perception time:seconds#time required to acknowledge a visible enemy when we are not alerted
  13379. pad[12]
  13380. pad[8]
  13381. explanation movement
  13382. {
  13383. Dialog Data Offset: 0x494b11
  13384. {
  13385.  
  13386. }
  13387. }
  13388. real dive into cover chance:[0,1]#chance of running a dive animation when moving into cover
  13389. real emerge from cover chance:[0,1]#chance of running an emerge animation when uncovering a target
  13390. real dive from grenade chance:[0,1]#chance of running a dive animation when moving away from a grenade
  13391. real pathfinding radius:world units
  13392. real glass ignorance chance:[0,1]#chance of not noticing that breakable surfaces have been destroyed
  13393. real stationary movement dist:world units#movement distance which is considered 'stationary' for considering whether we crouch
  13394. real free-flying sidestep:world units#distance which we allow sidestepping for flying units
  13395. angle begin moving angle:degrees#we must be facing this close to our target before we start applying the throttle (default: 180 degrees)
  13396. pad[4]
  13397. explanation looking
  13398. {
  13399. Dialog Data Offset: 0x494b11
  13400. {
  13401.  
  13402. }
  13403. }
  13404. real_euler_angles_2d maximum aiming deviation:degrees#how far we can turn our weapon
  13405. real_euler_angles_2d maximum looking deviation:degrees#how far we can turn our head
  13406. angle noncombat look delta L:degrees#how far we can turn our head left away from our aiming vector when not in combat
  13407. angle noncombat look delta R:degrees#how far we can turn our head right away from our aiming vector when not in combat
  13408. angle combat look delta L:degrees#how far we can turn our head left away from our aiming vector when in combat
  13409. angle combat look delta R:degrees#how far we can turn our head right away from our aiming vector when in combat
  13410. real_euler_angles_2d idle aiming range:degrees#range in which we select random directions to aim in
  13411. real_euler_angles_2d idle looking range:degrees#range in which we select random directions to look at
  13412. real_bounds event look time modifier#multiplier for how long we look at interesting events (zero = unchanged)
  13413. real_bounds noncombat idle facing:seconds#rate at which we change facing when looking around randomly when not in combat
  13414. real_bounds noncombat idle aiming:seconds#rate at which we change aiming directions when looking around randomly when not in combat
  13415. real_bounds noncombat idle looking:seconds#rate at which we change look around randomly when not in combat
  13416. real_bounds guard idle facing:seconds#rate at which we change facing when looking around randomly when guarding
  13417. real_bounds guard idle aiming:seconds#rate at which we change aiming directions when looking around randomly when guarding
  13418. real_bounds guard idle looking:seconds#rate at which we change look around randomly when guarding
  13419. real_bounds combat idle facing:seconds#rate at which we change facing when looking around randomly when searching or in combat
  13420. real_bounds combat idle aiming:seconds#rate at which we change aiming directions when looking around randomly when searching or in combat
  13421. real_bounds combat idle looking:seconds#rate at which we change look around randomly when searching or in combat
  13422. pad[8]
  13423. pad[16]
  13424. tag reference DO NOT USE: weapon
  13425. {
  13426. Supported tag class category: weap
  13427. }
  13428. pad[268]
  13429. tag reference DO NOT USE: projectile
  13430. {
  13431. Supported tag class category: proj
  13432. }
  13433. explanation unopposable
  13434. {
  13435. Dialog Data Offset: 0x494b11
  13436. {
  13437.  
  13438. }
  13439. }
  13440. enum unreachable danger trigger#danger level of an unreachable enemy which will trigger a retreat if it continues over time
  13441. {
  13442. never
  13443. visible
  13444. shooting
  13445. shooting near us
  13446. damaging us
  13447. unused
  13448. unused
  13449. unused
  13450. unused
  13451. unused
  13452. }
  13453. enum vehicle danger trigger#danger level of a vehicle-based enemy which will trigger a retreat if it continues over time
  13454. {
  13455. never
  13456. visible
  13457. shooting
  13458. shooting near us
  13459. damaging us
  13460. unused
  13461. unused
  13462. unused
  13463. unused
  13464. unused
  13465. }
  13466. enum player danger trigger#danger level of an enemy player which will trigger a retreat if it continues over time
  13467. {
  13468. never
  13469. visible
  13470. shooting
  13471. shooting near us
  13472. damaging us
  13473. unused
  13474. unused
  13475. unused
  13476. unused
  13477. unused
  13478. }
  13479. pad[2]
  13480. real_bounds danger trigger time:seconds#how long it takes for an unopposable enemy that has the above danger level to trigger a retreat
  13481. short_integer friends killed trigger#if this many of our friends are killed by an unopposable enemy, we trigger a retreat (zero = never use this as a retreat condition)
  13482. short_integer friends retreating trigger#if this many of our friends are retreating from an unopposable enemy, we retreat as well (zero = never use this as a retreat condition)
  13483. pad[12]
  13484. real_bounds retreat time:seconds#how long we retreat from an unopposable enemy for
  13485. pad[8]
  13486. explanation panic
  13487. {
  13488. Dialog Data Offset: 0x494b11
  13489. {
  13490.  
  13491. }
  13492. }
  13493. real_bounds cowering time:seconds#how long we hide in cover after being panicked
  13494. real friend killed panic chance:[0,1]#chance of panicking when we see a friend killed near us and the enemy is looking at us too
  13495. enum leader type#if we see a friend of this type killed we have a chance of panicking
  13496. {
  13497. elite
  13498. jackal
  13499. grunt
  13500. hunter
  13501. engineer
  13502. assassin
  13503. player
  13504. marine
  13505. crew
  13506. combat form
  13507. infection form
  13508. carrier form
  13509. monitor
  13510. sentinel
  13511. none
  13512. mounted weapon
  13513. }
  13514. pad[2]
  13515. real leader killed panic chance:[0,1]#chance of panicking when we see a leader killed
  13516. real panic damage threshold:[0,1]#panic if we take this much body damage in a short period of time
  13517. real surprise distance:world units#the distance at which newly acknowledged props or weapon impacts are considered 'close' for surprise purposes
  13518. pad[28]
  13519. explanation defensive
  13520. {
  13521. Dialog Data Offset: 0x4c1520
  13522. {
  13523. danger values: being aimed at: 0.7
  13524. an enemy shooting in our general direction: 1.2
  13525. an enemy shooting directly at us: 1.6
  13526. an enemy damaging us: 2.0
  13527. }
  13528. }
  13529. real_bounds hide behind cover time:seconds#how long we stay behind cover after seeking cover
  13530. real hide target-not-visible time:seconds#if this is non-zero then we will only seek cover if our target has not been visible recently
  13531. real hide shield fraction:[0,1]#elites and jackals only seek cover if their shield falls below this value
  13532. real attack shield fraction:[0,1]#elites and jackals only come out from cover to attack if they have this much shields
  13533. real pursue shield fraction:[0,1]#elites and jackals only come out from cover to pursue if they have this much shields
  13534. pad[16]
  13535. enum defensive crouch type
  13536. {
  13537. never
  13538. danger
  13539. low shields
  13540. hide behind shield
  13541. any target
  13542. flood shamble
  13543. }
  13544. pad[2]
  13545. real attacking crouch threshold#when in attacking mode, if our crouch type is based on shields, we crouch when our shields are below this number; if our crouch type is based on danger, we crouch when our danger is above this number
  13546. real defending crouch threshold#when in defending mode, if our crouch type is based on shields, we crouch when our shields are below this number; if our crouch type is based on danger, we crouch when our danger is above this number
  13547. real min stand time:seconds#minimum time to remain standing (zero = default)
  13548. real min crouch time:seconds#minimum time to remain crouching (zero = default)
  13549. real defending hide time modifier#how much longer we hide behind cover for when in the defending state (zero = unchanged)
  13550. real attacking evasion threshold#when in attacking mode, we consider seeking cover or evading when our danger gets this high
  13551. real defending evasion threshold#when in defending mode, we consider seeking cover or evading when our danger gets this high
  13552. real evasion seek-cover chance:[0,1]#chance of seeking cover (otherwise we just evade)
  13553. real evasion delay time:seconds#minimum time period between evasion moves
  13554. real max seek-cover distance:world units#maximum distance we will consider going to find cover (zero = default)
  13555. real cover damage threshold:[0,1]#how much damage we must take before we are allowed to seek cover (zero = always allowed to)
  13556. real stalking discovery time:seconds#if our target sees us for this long while we are stalking them, our cover is blown and we do something else (zero = never stop stalking)
  13557. real stalking max distance:world units#distance outside of which we don't bother stalking
  13558. angle stationary facing angle:angle#angle outside of which we must abandon a stationary facing direction and suffer any penalties
  13559. real change-facing stand time:seconds#how long we must stand up for after changing our fixed stationary facing
  13560. pad[4]
  13561. explanation pursuit
  13562. {
  13563. Dialog Data Offset: 0x494b11
  13564. {
  13565.  
  13566. }
  13567. }
  13568. real_bounds uncover delay time:seconds#time to look at target's position after it becomes visible
  13569. real_bounds target search time:seconds#time we search at target's position
  13570. real_bounds pursuit-position time:seconds#time we search at a pursuit position
  13571. short_integer num positions (coord):[0,n]#number of pursuit positions to check when in coordinated group search mode
  13572. short_integer num positions (normal):[0,n]#number of pursuit positions to check when in normal search mode
  13573. pad[32]
  13574. explanation berserk
  13575. {
  13576. Dialog Data Offset: 0x494b11
  13577. {
  13578.  
  13579. }
  13580. }
  13581. real melee attack delay:seconds#how long we must wait between attempting melee attacks
  13582. real melee fudge factor:world units#fudge factor that offsets how far in front of the target we start our attack (negative = we try to time our attack so that we go _through_ the target). this should be close to zero, but might be bigger for suiciding units
  13583. real melee charge time:seconds#how long we can stay in the charging state trying to reach our target before we give up
  13584. real_bounds melee leap range:world units#we can launch leaping melee attacks at targets within these ranges (zero = can't leap)
  13585. real melee leap velocity:world units per tick#how fast we spring at targets when launching a leaping melee attack
  13586. real melee leap chance:[0,1]#chance of launching a leaping melee attack at a ground-based target (we always leap at flying targets)
  13587. real melee leap ballistic:[0,1]#fraction that controls how ballistic our leaping melee trajectory is
  13588. real berserk damage amount:[0,1]#amount of body damage in a short time that makes us berserk
  13589. real berserk damage threshold:[0,1]#how low our body health must get before we will consider berserking
  13590. real berserk proximity:world units#if we ever get this close to a target, we berserk
  13591. real suicide sensing dist:world units#when we are this close to a target, we check to see if they're getting away and if so blow up
  13592. real berserk grenade chance:[0,1]#chance of berserking when we have a dangerous projectile stuck to us
  13593. pad[12]
  13594. explanation firing positions
  13595. {
  13596. Dialog Data Offset: 0x494b11
  13597. {
  13598.  
  13599. }
  13600. }
  13601. real_bounds guard position time:seconds#time after which we decide to change guard positions (zero = never)
  13602. real_bounds combat position time:seconds#time after which we change combat firing positions
  13603. real old position avoid dist:world units#distance we try and stay from our last discarded firing position
  13604. real friend avoid dist:world units#distance we try and stay from any friends
  13605. pad[40]
  13606. explanation communication
  13607. {
  13608. Dialog Data Offset: 0x494b11
  13609. {
  13610.  
  13611. }
  13612. }
  13613. real_bounds noncombat idle speech time:seconds#time between idle vocalizations when we are not in combat
  13614. real_bounds combat idle speech time:seconds#time between idle vocalizations when we are in combat or searching
  13615. pad[48]
  13616. pad[128]
  13617. tag reference DO NOT USE: major upgrade
  13618. {
  13619. Supported tag class category: actr
  13620. }
  13621. pad[48]
  13622. POORLY-DETERMINED MIN FILESIZE OF actr (including 64-byte header): 1336
  13623. POORLY-DETERMINED MAX FILESIZE OF actr (including 64-byte header): 2101
  13624.  
  13625. Tag Definition Offset: 0x5c9978
  13626. Extension: actor_variant
  13627. Unknown: 9
  13628. Class: actv
  13629. No superclass
  13630. Version: 1
  13631. Dialog Data Offset: 0x48d710
  13632. Definition Block:
  13633. {
  13634. Name: actor_variant
  13635. Count: 1
  13636. Size: 568
  13637. Chunks Offset: 0x5c9478
  13638. }
  13639. long_flags flags
  13640. {
  13641. can shoot while flying
  13642. interpolate color in HSV
  13643. has unlimited grenades
  13644. moveswitch stay w/ friends
  13645. active camouflage
  13646. super active camouflage
  13647. cannot use ranged weapons
  13648. prefer passenger seat
  13649. }
  13650. tag reference actor definition
  13651. {
  13652. Supported tag class category: actr
  13653. }
  13654. tag reference unit
  13655. {
  13656. Supported tag class category: unit
  13657. }
  13658. tag reference major variant
  13659. {
  13660. Supported tag class category: actv
  13661. }
  13662. pad[24]
  13663. explanation movement switching
  13664. {
  13665. Dialog Data Offset: 0x4bff80
  13666. {
  13667. note: only the flood combat forms will ever try to switch movement types voluntarily during combat
  13668. }
  13669. }
  13670. enum movement type#when we have a choice of movement types, which type we will use
  13671. {
  13672. always run
  13673. always crouch
  13674. switch types
  13675. }
  13676. pad[2]
  13677. real initial crouch chance:[0,1]#actors that start their movement try to maintain this fraction of crouched actors
  13678. real_bounds crouch time:seconds#when switching movement types, how long we will stay crouched for before running
  13679. real_bounds run time:seconds#when switching movement types, how long we will run for before slowing to a crouch
  13680. explanation ranged combat
  13681. {
  13682. Dialog Data Offset: 0x494b11
  13683. {
  13684.  
  13685. }
  13686. }
  13687. tag reference weapon
  13688. {
  13689. Supported tag class category: weap
  13690. }
  13691. real maximum firing distance:world units#we can only fire our weapon at targets within this distance
  13692. real rate of fire#how many times per second we pull the trigger (zero = continuously held down)
  13693. angle projectile error:degrees#error added to every projectile we fire
  13694. real_bounds first burst delay time:seconds
  13695. real new-target firing pattern time:seconds
  13696. real surprise delay time:seconds
  13697. real surprise fire-wildly time:seconds
  13698. real death fire-wildly chance:[0,1]
  13699. real death fire-wildly time:seconds
  13700. real_bounds desired combat range:world units
  13701. real_vector_3d custom stand gun offset#custom standing gun offset for overriding the default in the base actor
  13702. real_vector_3d custom crouch gun offset#custom crouching gun offset for overriding the default in the base actor
  13703. real target tracking:[0,1]#how well our bursts track moving targets. 0.0= fire at the position they were standing when we started the burst. 1.0= fire at current position
  13704. real target leading:[0,1]#how much we lead moving targets. 0.0= no prediction. 1.0= predict completely.
  13705. real weapon damage modifier#what fraction of its normal damage our weapon inflicts (zero = no modifier)
  13706. real damage per second#only used if weapon damage modifier is zero... how much damage we should deliver to the target per second while firing a burst at them (zero = use weapon default)
  13707. explanation burst geometry
  13708. {
  13709. Dialog Data Offset: 0x4bf5f8
  13710. {
  13711. at the start of every burst we pick a random point near the target to fire at, on either the left or the right side.
  13712. the burst origin angle controls whether this error is exactly horizontal or might have some vertical component.
  13713.  
  13714. over the course of the burst we move our projectiles back in the opposite direction towards the target. this return motion is also controlled by an angle that specifies how close to the horizontal it is.
  13715.  
  13716. for example if the burst origin angle and the burst return angle were both zero, and the return length was the same as the burst length, every burst would start the same amount away from the target (on either the left or right) and move back to exactly over the target at the end of the burst.
  13717. }
  13718. }
  13719. real burst origin radius:world units#how far away from the target the starting point is
  13720. angle burst origin angle:degrees#the range from the horizontal that our starting error can be
  13721. real_bounds burst return length:world units#how far the burst point moves back towards the target (could be negative)
  13722. angle burst return angle:degrees#the range from the horizontal that the return direction can be
  13723. real_bounds burst duration:seconds#how long each burst we fire is
  13724. real_bounds burst separation:seconds#how long we wait between bursts
  13725. angle burst angular velocity:degrees per second#the maximum rate at which we can sweep our fire (zero = unlimited)
  13726. pad[4]
  13727. real special damage modifier:[0,1]#damage modifier for special weapon fire (applied in addition to the normal damage modifier. zero = no change)
  13728. angle special projectile error:degrees#projectile error angle for special weapon fire (applied in addition to the normal error)
  13729. explanation firing patterns
  13730. {
  13731. Dialog Data Offset: 0x4bf0b8
  13732. {
  13733. a firing pattern lets you modify the properties of an actor's burst geometry. actors choose which firing pattern to use based on their current state:
  13734. 'new-target' when the target just appeared
  13735. 'moving' when the actor is moving
  13736. 'berserk' if the actor is berserk
  13737. if none of these apply, no firing pattern is used.
  13738.  
  13739. the default values in the burst geometry are multiplied by any non-zero modifiers in the firing pattern.
  13740. }
  13741. }
  13742. real new-target burst duration#burst duration multiplier for newly appeared targets (zero = unchanged)
  13743. real new-target burst separation#burst separation multiplier for newly appeared targets (zero = unchanged)
  13744. real new-target rate of fire#rate-of-fire multiplier for newly appeared targets (zero = unchanged)
  13745. real new-target projectile error#error multiplier for newly appeared targets (zero = unchanged)
  13746. pad[8]
  13747. real moving burst duration#burst duration multiplier when the actor is moving (zero = unchanged)
  13748. real moving burst separation#burst separation multiplier when the actor is moving (zero = unchanged)
  13749. real moving rate of fire#rate-of-fire multiplier when the actor is moving (zero = unchanged)
  13750. real moving projectile error#error multiplier when the actor is moving (zero = unchanged)
  13751. pad[8]
  13752. real berserk burst duration#burst duration multiplier when the actor is berserk (zero = unchanged)
  13753. real berserk burst separation#burst separation multiplier when the actor is berserk (zero = unchanged)
  13754. real berserk rate of fire#rate-of-fire multiplier when the actor is berserk (zero = unchanged)
  13755. real berserk projectile error#error multiplier when the actor is berserk (zero = unchanged)
  13756. pad[8]
  13757. explanation special-case firing properties
  13758. {
  13759. Dialog Data Offset: 0x494b11
  13760. {
  13761.  
  13762. }
  13763. }
  13764. real super-ballistic range#we try to aim our shots super-ballistically if target is outside this range (zero = never)
  13765. real bombardment range#we offset our burst targets randomly by this range when firing at non-visible enemies (zero = never)
  13766. real modified vision range#any custom vision range that this actor variant has (zero = normal)
  13767. enum special-fire mode#the type of special weapon fire that we can use
  13768. {
  13769. none
  13770. overcharge
  13771. secondary trigger
  13772. }
  13773. enum special-fire situation#when we will decide to use our special weapon fire mode
  13774. {
  13775. never
  13776. enemy visible
  13777. enemy out of sight
  13778. strafing
  13779. }
  13780. real special-fire chance:[0,1]#how likely we are to use our special weapon fire mode
  13781. real special-fire delay:seconds#how long we must wait between uses of our special weapon fire mode
  13782. explanation berserking and melee
  13783. {
  13784. Dialog Data Offset: 0x494b11
  13785. {
  13786.  
  13787. }
  13788. }
  13789. real melee range:world units#how close an enemy target must get before triggering a melee charge
  13790. real melee abort range:world units#if our target gets this far away from us, we stop trying to melee them
  13791. real_bounds berserk firing ranges:world units#if we are outside maximum range, we advance towards target, stopping when we reach minimum range
  13792. real berserk melee range:world units#while berserking, how close an enemy target must get before triggering a melee charge
  13793. real berserk melee abort range:world units#while berserking, if our target gets this far away from us, we stop trying to melee them
  13794. pad[8]
  13795. explanation grenades
  13796. {
  13797. Dialog Data Offset: 0x494b11
  13798. {
  13799.  
  13800. }
  13801. }
  13802. enum grenade type#type of grenades that we throw
  13803. {
  13804. human fragmentation
  13805. covenant plasma
  13806. }
  13807. enum trajectory type#how we throw our grenades
  13808. {
  13809. toss
  13810. lob
  13811. bounce
  13812. }
  13813. enum grenade stimulus#what causes us to consider throwing a grenade
  13814. {
  13815. never
  13816. visible target
  13817. seek cover
  13818. }
  13819. short_integer minimum enemy count#how many enemies must be within the radius of the grenade before we will consider throwing there
  13820. real enemy radius:world units#we consider enemies within this radius when determining where to throw
  13821. pad[4]
  13822. real grenade velocity:world units per second#how fast we can throw our grenades
  13823. real_bounds grenade ranges:world units#ranges within which we will consider throwing a grenade
  13824. real collateral damage radius:world units#we won't throw if there are friendlies around our target within this range
  13825. real_fraction grenade chance:[0,1]#how likely we are to throw a grenade
  13826. real grenade check time:seconds#for continuous stimuli (e.g. visible target), how often we check to see if we want to throw a grenade
  13827. real encounter grenade timeout:seconds#we cannot throw grenades if someone else in our encounter threw one this recently
  13828. pad[20]
  13829. explanation items
  13830. {
  13831. Dialog Data Offset: 0x494b11
  13832. {
  13833.  
  13834. }
  13835. }
  13836. tag reference equipment#equipment item to drop when we die
  13837. {
  13838. Supported tag class category: eqip
  13839. }
  13840. short_integer_bounds grenade count#number of grenades that we start with
  13841. real dont drop grenades chance:[0,1]#how likely we are not to drop any grenades when we die, even if we still have some
  13842. real_bounds drop weapon loaded#amount of ammo loaded into the weapon that we drop (in fractions of a clip, e.g. 0.3 to 0.5)
  13843. short_integer_bounds drop weapon ammo#total number of rounds in the weapon that we drop (ignored for energy weapons)
  13844. pad[12]
  13845. pad[16]
  13846. explanation unit
  13847. {
  13848. Dialog Data Offset: 0x494b11
  13849. {
  13850.  
  13851. }
  13852. }
  13853. real body vitality#maximum body vitality of our unit
  13854. real shield vitality#maximum shield vitality of our unit
  13855. real shield sapping radius:world units#how far away we can drain the player's shields
  13856. short_integer forced shader permutation#if nonzero, overrides the unit's shader permutation
  13857. pad[2]
  13858. pad[16]
  13859. pad[12]
  13860. block change colors
  13861. {
  13862. Name: actor_variant_change_colors_block
  13863. Max Chunks: 4
  13864. Chunk Size: 32
  13865. Max Chunks x Chunk Size: 128
  13866. Chunk Definition Offset: 0x5c941c
  13867. {
  13868. real_rgb_color color lower bound
  13869. real_rgb_color color upper bound
  13870. pad[8]
  13871. }
  13872. }
  13873. POORLY-DETERMINED MIN FILESIZE OF actv (including 64-byte header): 632
  13874. POORLY-DETERMINED MAX FILESIZE OF actv (including 64-byte header): 2035
  13875.  
  13876. Tag Definition Offset: 0x5c8a88
  13877. Extension: sky
  13878. Unknown: 8
  13879. Class: sky
  13880. No superclass
  13881. Version: 1
  13882. Definition Block:
  13883. {
  13884. Name: sky
  13885. Count: 1
  13886. Size: 208
  13887. Chunks Offset: 0x5c8948
  13888. Dialog Data 1 Offset: 0x48d6c0
  13889. }
  13890. tag reference model
  13891. {
  13892. Supported tag class category: mod2
  13893. }
  13894. tag reference animation_graph
  13895. {
  13896. Supported tag class category: antr
  13897. }
  13898. pad[24]
  13899. real_rgb_color indoor ambient radiosity color#the indoor ambient light color
  13900. real indoor ambient radiosity power#the indoor ambient light power from 0 to infinity
  13901. real_rgb_color outdoor ambient radiosity color#the outdoor ambient light color
  13902. real outdoor ambient radiosity power#the outdoor ambient light power from 0 to infinity
  13903. real_rgb_color outdoor fog color
  13904. pad[8]
  13905. real_fraction outdoor fog maximum density:[0,1]#density at opaque distance - 0 defaults to 1
  13906. real outdoor fog start distance:world units#below this distance there is no fog
  13907. real outdoor fog opaque distance:world units#beyond this distance surfaces are completely fogged
  13908. real_rgb_color indoor fog color
  13909. pad[8]
  13910. real_fraction indoor fog maximum density:[0,1]#density at opaque distance - 0 defaults to 1
  13911. real indoor fog start distance:world units#below this distance there is no fog
  13912. real indoor fog opaque distance:world units#beyond this distance surfaces are completely fogged
  13913. tag reference indoor fog screen#used for FOG SCREEN only; not used for planar fog
  13914. {
  13915. Supported tag class category: fog
  13916. }
  13917. pad[4]
  13918. block shader functions
  13919. {
  13920. Name: sky_shader_function_block
  13921. Max Chunks: 8
  13922. Chunk Size: 36
  13923. Max Chunks x Chunk Size: 288
  13924. Chunk Definition Offset: 0x5c8780
  13925. {
  13926. pad[4]
  13927. string global function name^#the global function that controls this shader value
  13928. }
  13929. }
  13930. block animations
  13931. {
  13932. Name: sky_animation_block
  13933. Max Chunks: 8
  13934. Chunk Size: 36
  13935. Max Chunks x Chunk Size: 288
  13936. Chunk Definition Offset: 0x5c87d0
  13937. {
  13938. short_integer animation index#the index of the animation in the animation graph
  13939. pad[2]
  13940. real period:seconds
  13941. pad[28]
  13942. }
  13943. }
  13944. block lights
  13945. {
  13946. Name: sky_light_block
  13947. Max Chunks: 8
  13948. Chunk Size: 116
  13949. Max Chunks x Chunk Size: 928
  13950. Chunk Definition Offset: 0x5c8858
  13951. {
  13952. explanation LENS FLARE
  13953. {
  13954. Dialog Data Offset: 0x494b11
  13955. {
  13956.  
  13957. }
  13958. }
  13959. tag reference lens flare
  13960. {
  13961. Supported tag class category: lens
  13962. }
  13963. string lens flare marker name#the lens flare for this light will be attached to the specified marker in the model
  13964. pad[28]
  13965. explanation RADIOSITY
  13966. {
  13967. Dialog Data Offset: 0x4bded0
  13968. {
  13969. these parameters control how the light illuminates the world.
  13970. }
  13971. }
  13972. long_flags flags
  13973. {
  13974. affects exteriors
  13975. affects interiors
  13976. }
  13977. real_rgb_color color#light color
  13978. real power#light power from 0 to infinity
  13979. real test distance#the length of the ray for shadow testing.
  13980. pad[4]
  13981. real_euler_angles_2d direction#direction toward the light source in the sky.
  13982. angle diameter#angular diameter of the light source in the sky.
  13983. }
  13984. }
  13985. POORLY-DETERMINED MIN FILESIZE OF sky (including 64-byte header): 272
  13986. POORLY-DETERMINED MAX FILESIZE OF sky (including 64-byte header): 2796
  13987.  
  13988. Tag Definition Offset: 0x5c8720
  13989. Extension: wind
  13990. Unknown: 9
  13991. Class: wind
  13992. No superclass
  13993. Version: 1
  13994. Definition Block:
  13995. {
  13996. Name: wind
  13997. Count: 1
  13998. Size: 64
  13999. Chunks Offset: 0x5c86a0
  14000. }
  14001. real_bounds velocity:world units#the wind magnitude in the weather region scales the wind between these bounds
  14002. real_euler_angles_2d variation area#the wind direction varies inside a box defined by these angles on either side of the direction from the weather region.
  14003. real local variation weight
  14004. real local variation rate
  14005. real damping
  14006. pad[36]
  14007. POORLY-DETERMINED MIN FILESIZE OF wind (including 64-byte header): 128
  14008. POORLY-DETERMINED MAX FILESIZE OF wind (including 64-byte header): 128
  14009.  
  14010. Tag Definition Offset: 0x5bb888
  14011. Extension: sound_environment
  14012. Unknown: 8
  14013. Class: snde
  14014. No superclass
  14015. Version: 1
  14016. Definition Block:
  14017. {
  14018. Name: sound_environment
  14019. Count: 1
  14020. Size: 72
  14021. Chunks Offset: 0x5bb790
  14022. Dialog Data 1 Offset: 0x464a10
  14023. }
  14024. pad[4]
  14025. short_integer priority#when multiple listeners are in different sound environments in split screen, the combined environment will be the one with the highest priority.
  14026. pad[2]
  14027. real_fraction room intensity#intensity of the room effect
  14028. real_fraction room intensity hf#intensity of the room effect above the reference high frequency
  14029. real room rolloff (0 to 10)#how quickly the room effect rolls off, from 0.0 to 10.0
  14030. real decay time (.1 to 20):seconds
  14031. real decay hf ratio (.1 to 2)
  14032. real_fraction reflections intensity
  14033. real reflections delay (0 to .3):seconds
  14034. real_fraction reverb intensity
  14035. real reverb delay (0 to .1):seconds
  14036. real diffusion
  14037. real density
  14038. real hf reference(20 to 20,000):Hz#for hf values, what frequency defines hf, from 20 to 20,000
  14039. pad[16]
  14040. POORLY-DETERMINED MIN FILESIZE OF snde (including 64-byte header): 136
  14041. POORLY-DETERMINED MAX FILESIZE OF snde (including 64-byte header): 136
  14042.  
  14043. Tag Definition Offset: 0x5c8640
  14044. Extension: lens_flare
  14045. Unknown: 8
  14046. Class: lens
  14047. No superclass
  14048. Version: 2
  14049. Dialog Data Offset: 0x48d360
  14050. Definition Block:
  14051. {
  14052. Name: lens_flare
  14053. Count: 1
  14054. Size: 240
  14055. Chunks Offset: 0x5c84d0
  14056. }
  14057. explanation lens flare
  14058. {
  14059. Dialog Data Offset: 0x494b11
  14060. {
  14061.  
  14062. }
  14063. }
  14064. angle falloff angle:degrees
  14065. angle cutoff angle:degrees
  14066. pad[8]
  14067. explanation occlusion
  14068. {
  14069. Dialog Data Offset: 0x4bcae8
  14070. {
  14071. Occlusion factor affects overall lens flare brightness and can also affect scale. Occlusion never affects rotation.
  14072. }
  14073. }
  14074. real occlusion radius:world units#radius of the square used to test occlusion
  14075. enum occlusion offset direction
  14076. {
  14077. toward viewer
  14078. marker forward
  14079. none
  14080. }
  14081. pad[2]
  14082. real near fade distance:world units#distance at which the lens flare brightness is maximum
  14083. real far fade distance:world units#distance at which the lens flare brightness is minimum; set to zero to disable distance fading
  14084. explanation bitmaps
  14085. {
  14086. Dialog Data Offset: 0x494b11
  14087. {
  14088.  
  14089. }
  14090. }
  14091. tag reference bitmap#used by reflections
  14092. {
  14093. Supported tag class category: bitm
  14094. }
  14095. word_flags flags
  14096. {
  14097. sun
  14098. }
  14099. pad[2]
  14100. pad[76]
  14101. explanation corona rotation
  14102. {
  14103. Dialog Data Offset: 0x4bc920
  14104. {
  14105. Controls how corona rotation is affected by viewer and light angles.
  14106. }
  14107. }
  14108. enum rotation function
  14109. {
  14110. none
  14111. rotation A
  14112. rotation B
  14113. rotation-translation
  14114. translation
  14115. }
  14116. pad[2]
  14117. angle rotation function scale:degrees
  14118. pad[24]
  14119. explanation corona radius scale
  14120. {
  14121. Dialog Data Offset: 0x494b11
  14122. {
  14123.  
  14124. }
  14125. }
  14126. real horizontal scale#amount to stretch the corona along the horizontal axis; 0 defaults to 1
  14127. real vertical scale#amount to stretch the corona along the vertical axis; 0 defaults to 1
  14128. pad[28]
  14129. block reflections
  14130. {
  14131. Name: lens_flare_reflection_block
  14132. Max Chunks: 32
  14133. Chunk Size: 128
  14134. Max Chunks x Chunk Size: 4096
  14135. Chunk Definition Offset: 0x5c8330
  14136. {
  14137. word_flags flags
  14138. {
  14139. align rotation with screen center
  14140. radius NOT scaled by distance
  14141. radius scaled by occlusion factor
  14142. occluded by solid objects
  14143. }
  14144. pad[2]
  14145. short_integer bitmap index
  14146. pad[2]
  14147. pad[20]
  14148. real position:along flare axis#0 is on top of light, 1 is opposite light, 0.5 is the center of the screen, etc.
  14149. real rotation offset:degrees
  14150. pad[4]
  14151. real_bounds radius:world units#interpolated by light scale
  14152. enum radius scaled by
  14153. {
  14154. none
  14155. rotation
  14156. rotation and strafing
  14157. distance from center
  14158. }
  14159. pad[2]
  14160. fraction_bounds brightness:[0,1]#interpolated by light scale
  14161. enum brightness scaled by
  14162. {
  14163. none
  14164. rotation
  14165. rotation and strafing
  14166. distance from center
  14167. }
  14168. pad[2]
  14169. explanation tint color
  14170. {
  14171. Dialog Data Offset: 0x4bce20
  14172. {
  14173. Tinting and modulating are not the same; 'tinting' a reflection will color the darker regions but leave the white highlights, while 'modulating' will color everything uniformly (as in most games). The tint alpha controls how much the reflection is tinted as opposed to modulated (0 is modulated, 1 is tinted). If all components are zero, the reflection is fully tinted by the light color.
  14174. }
  14175. }
  14176. real_argb_color tint color#if a=r=g=b=0 use light color instead; alpha blends between modulation and tinting
  14177. explanation animation
  14178. {
  14179. Dialog Data Offset: 0x4bccd0
  14180. {
  14181. Causes lens flare reflection to flicker, pulse, or whatever. Animated color modulates tint color, above, while animated alpha modulates brightness. Animation is ignored if tint color is BLACK or the animation function is ONE or ZERO.
  14182. }
  14183. }
  14184. real_argb_color color lower bound#if a=r=g=b=0, default to a=r=g=b=1
  14185. real_argb_color color upper bound#if a=r=g=b=0, default to a=r=g=b=1
  14186. word_flags flags
  14187. {
  14188. interpolate color in hsv
  14189. ...more colors
  14190. }
  14191. enum animation function
  14192. {
  14193. one
  14194. zero
  14195. cosine
  14196. cosine (variable period)
  14197. diagonal wave
  14198. diagonal wave (variable period)
  14199. slide
  14200. slide (variable period)
  14201. noise
  14202. jitter
  14203. wander
  14204. spark
  14205. }
  14206. real animation period:seconds#0 defaults to 1
  14207. real animation phase:seconds
  14208. pad[4]
  14209. }
  14210. }
  14211. pad[32]
  14212. POORLY-DETERMINED MIN FILESIZE OF lens (including 64-byte header): 304
  14213. POORLY-DETERMINED MAX FILESIZE OF lens (including 64-byte header): 4655
  14214.  
  14215. Tag Definition Offset: 0x5c7fc0
  14216. Extension: fog
  14217. Unknown: 8
  14218. Class: fog
  14219. No superclass
  14220. Version: 1
  14221. Definition Block:
  14222. {
  14223. Name: fog
  14224. Count: 1
  14225. Size: 396
  14226. Chunks Offset: 0x5c7d98
  14227. Dialog Data 1 Offset: 0x48d2b0
  14228. }
  14229. explanation FLAGS
  14230. {
  14231. Dialog Data Offset: 0x4bc630
  14232. {
  14233. Setting <atmosphere dominant> prevents polygon popping when the atmospheric fog maximum density (in the sky tag) is 1 and the atmospheric fog opaque distance is less than the diameter of the map. However, this flag will cause artifacts when the camera goes below the fog plane - so it should only be used when the fog plane is close to the ground.
  14234. }
  14235. }
  14236. long_flags flags
  14237. {
  14238. is water
  14239. atmosphere dominant
  14240. fog screen only
  14241. }
  14242. pad[4]
  14243. pad[76]
  14244. explanation DENSITY
  14245. {
  14246. Dialog Data Offset: 0x494b11
  14247. {
  14248.  
  14249. }
  14250. }
  14251. pad[4]
  14252. real_fraction maximum density:[0,1]#planar fog density is clamped to this value
  14253. pad[4]
  14254. real opaque distance:world units#the fog becomes opaque at this distance from the viewer
  14255. pad[4]
  14256. real opaque depth:world units#the fog becomes opaque at this distance from its surface
  14257. pad[8]
  14258. real distance to water plane:world units#the fog becomes water at this distance from its surface
  14259. explanation COLOR
  14260. {
  14261. Dialog Data Offset: 0x494b11
  14262. {
  14263.  
  14264. }
  14265. }
  14266. real_rgb_color color
  14267. explanation SCREEN LAYERS
  14268. {
  14269. Dialog Data Offset: 0x494b11
  14270. {
  14271.  
  14272. }
  14273. }
  14274. word_flags flags
  14275. {
  14276. no environment multipass
  14277. no model multipass
  14278. no texture-based falloff
  14279. }
  14280. short_integer layer count:[0,4]#0 layers disables the effect
  14281. real_bounds distance gradient:world units
  14282. fraction_bounds density gradient:[0,1]
  14283. real start distance from fog plane:world units#do NOT set this to the same value as maximum_depth
  14284. pad[4]
  14285. rgb_color color#0 defaults to planar fog color
  14286. real_fraction rotation multiplier:[0,1]
  14287. real_fraction strafing multiplier:[0,1]
  14288. real_fraction zoom multiplier:[0,1]
  14289. pad[8]
  14290. real map scale#0 defaults to 1
  14291. tag reference map
  14292. {
  14293. Supported tag class category: bitm
  14294. }
  14295. explanation SCREEN LAYER ANIMATION
  14296. {
  14297. Dialog Data Offset: 0x494b11
  14298. {
  14299.  
  14300. }
  14301. }
  14302. real animation period:seconds
  14303. pad[4]
  14304. real_bounds wind velocity:world units per second
  14305. real_bounds wind period:seconds#0 defaults to 1
  14306. real_fraction wind acceleration weight:[0,1]
  14307. real_fraction wind perpendicular weight:[0,1]
  14308. pad[8]
  14309. explanation SOUND
  14310. {
  14311. Dialog Data Offset: 0x494b11
  14312. {
  14313.  
  14314. }
  14315. }
  14316. tag reference background sound
  14317. {
  14318. Supported tag class category: lsnd
  14319. }
  14320. tag reference sound environment
  14321. {
  14322. Supported tag class category: snde
  14323. }
  14324. pad[120]
  14325. POORLY-DETERMINED MIN FILESIZE OF fog (including 64-byte header): 460
  14326. POORLY-DETERMINED MAX FILESIZE OF fog (including 64-byte header): 1225
  14327.  
  14328. Tag Definition Offset: 0x5c7cf8
  14329. Extension: placeholder
  14330. Unknown: 0
  14331. Class: plac
  14332. Superclass: obje
  14333. Version: 2
  14334. Definition Block:
  14335. {
  14336. Name: placeholder
  14337. Count: 1
  14338. Size: 128
  14339. Chunks Offset: 0x5c7cb0
  14340. }
  14341. pad[128]
  14342. POORLY-DETERMINED MIN FILESIZE OF plac (including 64-byte header): 192
  14343. POORLY-DETERMINED MAX FILESIZE OF plac (including 64-byte header): 192
  14344.  
  14345. Tag Definition Offset: 0x5c7c50
  14346. Extension: meter
  14347. Unknown: 8
  14348. Class: metr
  14349. No superclass
  14350. Version: 1
  14351. Dialog Data Offset: 0x48cfd0
  14352. Definition Block:
  14353. {
  14354. Name: meter
  14355. Count: 1
  14356. Size: 172
  14357. Chunks Offset: 0x5c7b48
  14358. }
  14359. long_flags flags
  14360. {
  14361. }
  14362. tag reference stencil bitmaps#two bitmaps specifying the mask and the meter levels
  14363. {
  14364. Usage flags value: 2
  14365. Supported tag class category: bitm
  14366. }
  14367. tag reference source bitmap#optional bitmap to draw into the unmasked regions of the meter (modulated by the colors below)
  14368. {
  14369. Supported tag class category: bitm
  14370. }
  14371. short_integer stencil sequence index
  14372. short_integer source sequence index
  14373. pad[16]
  14374. pad[4]
  14375. enum interpolate colors...
  14376. {
  14377. linearly
  14378. faster near empty
  14379. faster near full
  14380. through random noise
  14381. }
  14382. enum anchor colors...
  14383. {
  14384. at both ends
  14385. at empty
  14386. at full
  14387. }
  14388. pad[8]
  14389. real_argb_color empty color
  14390. real_argb_color full color
  14391. pad[20]
  14392. real unmask distance:meter units#fade from fully masked to fully unmasked this distance beyond full (and below empty)
  14393. real mask distance:meter units#fade from fully unmasked to fully masked this distance below full (and beyond empty)
  14394. pad[20]
  14395. data encoded stencil
  14396. {
  14397. Definition Name: meter_stencil_data_definition
  14398. Max Bytes: 65536
  14399. Extra Data Offset: 0x8cd80
  14400. }
  14401. POORLY-DETERMINED MIN FILESIZE OF metr (including 64-byte header): 236
  14402. POORLY-DETERMINED MAX FILESIZE OF metr (including 64-byte header): 66282
  14403.  
  14404. Tag Definition Offset: 0x5c7a80
  14405. Extension: decal
  14406. Unknown: 9
  14407. Class: deca
  14408. No superclass
  14409. Version: 1
  14410. Definition Block:
  14411. {
  14412. Name: decal
  14413. Count: 1
  14414. Size: 268
  14415. Chunks Offset: 0x5c78b8
  14416. Dialog Data 1 Offset: 0x48ca50
  14417. }
  14418. explanation decal
  14419. {
  14420. Dialog Data Offset: 0x4bb690
  14421. {
  14422. A 'compound decal' is a chain of decals which are instantiated simultaneously. Compound decals are created by choosing a <next_decal_in_chain> below. NOTE: Do not attempt to create a circularly linked decal chain, i.e. A->B->C->A! Also, do not reference a decal from an effect if it is not the 'head' of the chain; for example an effect should not instantiate decal B if the chain was A->B->C. Compound decals can have seperate bitmaps, seperate framebuffer blend functions, and can be drawn in seperate layers. In addition, each decal in the chain can either inherit its parent's <radius>, rotation, <color>, <fade>, and <sequence> - or it can randomly choose its own. This behavior is controlled by the 'geometry_inherited_by_next_decal_in_chain' flag, below.
  14423.  
  14424. The decal <type> (or layer) determines the drawing order of the decal with respect to the rest of the environment. Decals in the primary layer are drawn after the environment diffuse texture, hence they affect the already-lit texture of the surface. Decals in the secondary layer are drawn immediately after decals in the primary layer, so they 'cover up' the primary decals. Decals in the 'light' layer are drawn before the environment diffuse texture, hence they affect the accumulated diffuse light and only indirectly affect the lit texture.
  14425. }
  14426. }
  14427. word_flags flags
  14428. {
  14429. geometry inherited by next decal in chain
  14430. interpolate color in hsv
  14431. ...more colors
  14432. no random rotation
  14433. water effect
  14434. SAPIEN- snap to axis
  14435. SAPIEN- incremental counter
  14436. animation loop
  14437. preserve aspect
  14438. }
  14439. enum type#controls how the decal wraps onto surface geometry
  14440. {
  14441. scratch
  14442. splatter
  14443. burn
  14444. painted sign
  14445. }
  14446. enum layer
  14447. {
  14448. primary
  14449. secondary
  14450. light
  14451. alpha-tested
  14452. water
  14453. }
  14454. pad[2]
  14455. tag reference next decal in chain
  14456. {
  14457. Supported tag class category: deca
  14458. }
  14459. explanation radius and color
  14460. {
  14461. Dialog Data Offset: 0x494b11
  14462. {
  14463.  
  14464. }
  14465. }
  14466. real_bounds radius:world units#0 defaults to 0.125
  14467. pad[12]
  14468. fraction_bounds intensity:[0,1]#1 is fully visible, 0 is invisible
  14469. real_rgb_color color lower bounds
  14470. real_rgb_color color upper bounds
  14471. pad[12]
  14472. explanation animation
  14473. {
  14474. Dialog Data Offset: 0x494b11
  14475. {
  14476.  
  14477. }
  14478. }
  14479. short_integer animation loop frame
  14480. short_integer animation speed:[1,120] ticks per frame
  14481. pad[28]
  14482. real_bounds lifetime:seconds
  14483. real_bounds decay time:seconds
  14484. pad[12]
  14485. explanation shader
  14486. {
  14487. Dialog Data Offset: 0x494b11
  14488. {
  14489.  
  14490. }
  14491. }
  14492. pad[40]
  14493. pad[2]
  14494. pad[2]
  14495. enum framebuffer blend function
  14496. {
  14497. alpha blend
  14498. multiply
  14499. double multiply
  14500. add
  14501. subtract
  14502. component min
  14503. component max
  14504. alpha-multiply add
  14505. }
  14506. pad[2]
  14507. pad[20]
  14508. tag reference map
  14509. {
  14510. Supported tag class category: bitm
  14511. }
  14512. pad[20]
  14513. explanation sprite info
  14514. {
  14515. Dialog Data Offset: 0x494b11
  14516. {
  14517.  
  14518. }
  14519. }
  14520. real maximum sprite extent:pixels*
  14521. pad[4]
  14522. pad[8]
  14523. POORLY-DETERMINED MIN FILESIZE OF deca (including 64-byte header): 332
  14524. POORLY-DETERMINED MAX FILESIZE OF deca (including 64-byte header): 842
  14525.  
  14526. Tag Definition Offset: 0x5c1e00
  14527. Extension: damage_effect
  14528. Unknown: 8
  14529. Class: jpt!
  14530. No superclass
  14531. Version: 6
  14532. Dialog Data Offset: 0x48ace0
  14533. Definition Block:
  14534. {
  14535. Name: damage_effect
  14536. Count: 1
  14537. Size: 672
  14538. Chunks Offset: 0x5c1830
  14539. }
  14540. real_bounds radius:world units
  14541. real_fraction cutoff scale:[0,1]
  14542. long_flags flags
  14543. {
  14544. don't scale damage by distance
  14545. }
  14546. pad[20]
  14547. explanation screen flash
  14548. {
  14549. Dialog Data Offset: 0x4b2d08
  14550. {
  14551. There are seven screen flash types:
  14552.  
  14553. NONE: DST'= DST
  14554. LIGHTEN: DST'= DST(1 - A) + C
  14555. DARKEN: DST'= DST(1 - A) - C
  14556. MAX: DST'= MAX[DST(1 - C), (C - A)(1-DST)]
  14557. MIN: DST'= MIN[DST(1 - C), (C + A)(1-DST)]
  14558. TINT: DST'= DST(1 - C) + (A*PIN[2C - 1, 0, 1] + A)(1-DST)
  14559. INVERT: DST'= DST(1 - C) + A)
  14560.  
  14561. In the above equations C and A represent the color and alpha of the screen flash, DST represents the color in the framebuffer before the screen flash is applied, and DST' represents the color after the screen flash is applied.
  14562. }
  14563. }
  14564. enum type
  14565. {
  14566. none
  14567. lighten
  14568. darken
  14569. max
  14570. min
  14571. invert
  14572. tint
  14573. }
  14574. enum priority
  14575. {
  14576. low
  14577. medium
  14578. high
  14579. }
  14580. pad[12]
  14581. real duration:seconds
  14582. enum fade function
  14583. {
  14584. linear
  14585. early
  14586. very early
  14587. late
  14588. very late
  14589. cosine
  14590. }
  14591. pad[2]
  14592. pad[8]
  14593. real_fraction maximum intensity:[0,1]
  14594. pad[4]
  14595. real_argb_color color
  14596. explanation low frequency vibrate
  14597. {
  14598. Dialog Data Offset: 0x494b11
  14599. {
  14600.  
  14601. }
  14602. }
  14603. real_fraction frequency:[0,1]
  14604. real duration:seconds
  14605. enum fade function
  14606. {
  14607. linear
  14608. early
  14609. very early
  14610. late
  14611. very late
  14612. cosine
  14613. }
  14614. pad[2]
  14615. pad[8]
  14616. explanation high frequency vibrate
  14617. {
  14618. Dialog Data Offset: 0x494b11
  14619. {
  14620.  
  14621. }
  14622. }
  14623. real_fraction frequency:[0,1]
  14624. real duration:seconds
  14625. enum fade function
  14626. {
  14627. linear
  14628. early
  14629. very early
  14630. late
  14631. very late
  14632. cosine
  14633. }
  14634. pad[2]
  14635. pad[8]
  14636. pad[4]
  14637. pad[16]
  14638. explanation temporary camera impulse
  14639. {
  14640. Dialog Data Offset: 0x494b11
  14641. {
  14642.  
  14643. }
  14644. }
  14645. real duration:seconds
  14646. enum fade function
  14647. {
  14648. linear
  14649. early
  14650. very early
  14651. late
  14652. very late
  14653. cosine
  14654. }
  14655. pad[2]
  14656. angle rotation:degrees
  14657. real pushback:world units
  14658. real_bounds jitter:world units
  14659. pad[4]
  14660. pad[4]
  14661. explanation permanent camera impulse
  14662. {
  14663. Dialog Data Offset: 0x494b11
  14664. {
  14665.  
  14666. }
  14667. }
  14668. angle angle:degrees
  14669. pad[4]
  14670. pad[12]
  14671. explanation camera shaking
  14672. {
  14673. Dialog Data Offset: 0x494b11
  14674. {
  14675.  
  14676. }
  14677. }
  14678. real duration:seconds#the effect will last for this duration.
  14679. enum falloff function#a function to envelope the effect's magnitude over time
  14680. {
  14681. linear
  14682. early
  14683. very early
  14684. late
  14685. very late
  14686. cosine
  14687. }
  14688. pad[2]
  14689. real random translation:world units#random translation in all directions
  14690. angle random rotation:degrees#random rotation in all directions
  14691. pad[12]
  14692. enum wobble function#a function to perturb the effect's behavior over time
  14693. {
  14694. one
  14695. zero
  14696. cosine
  14697. cosine (variable period)
  14698. diagonal wave
  14699. diagonal wave (variable period)
  14700. slide
  14701. slide (variable period)
  14702. noise
  14703. jitter
  14704. wander
  14705. spark
  14706. }
  14707. pad[2]
  14708. real wobble function period:seconds
  14709. real_fraction wobble weight#a value of 0.0 signifies that the wobble function has no effect; a value of 1.0 signifies that the effect will not be felt when the wobble function's value is zero.
  14710. pad[4]
  14711. pad[20]
  14712. pad[8]
  14713. explanation sound
  14714. {
  14715. Dialog Data Offset: 0x494b11
  14716. {
  14717.  
  14718. }
  14719. }
  14720. tag reference sound
  14721. {
  14722. Supported tag class category: snd!
  14723. }
  14724. pad[112]
  14725. explanation breaking effect
  14726. {
  14727. Dialog Data Offset: 0x4b2958
  14728. {
  14729. Controls particle velocities when a damage effect shatters a materal.
  14730. }
  14731. }
  14732. real forward velocity:world units per second
  14733. real forward radius:world units
  14734. real forward exponent
  14735. pad[12]
  14736. real outward velocity:world units per second
  14737. real outward radius:world units
  14738. real outward exponent
  14739. pad[12]
  14740. explanation damage
  14741. {
  14742. Dialog Data Offset: 0x494b11
  14743. {
  14744.  
  14745. }
  14746. }
  14747. enum side effect
  14748. {
  14749. none
  14750. harmless
  14751. lethal to the unsuspecting
  14752. emp
  14753. }
  14754. enum category
  14755. {
  14756. none
  14757. falling
  14758. bullet
  14759. grenade
  14760. high explosive
  14761. sniper
  14762. melee
  14763. flame
  14764. mounted weapon
  14765. vehicle
  14766. plasma
  14767. needle
  14768. shotgun
  14769. }
  14770. long_flags flags
  14771. {
  14772. does not hurt owner
  14773. can cause headshots
  14774. pings resistant units
  14775. does not hurt friends
  14776. does not ping units
  14777. detonates explosives
  14778. only hurts shields
  14779. causes flaming death
  14780. damage indicators always point down
  14781. skips shields
  14782. only hurts one infection form
  14783. can cause multiplayer headshots
  14784. infection form pop
  14785. }
  14786. real AOE core radius:world units#if this is area of effect damage
  14787. real damage lower bound
  14788. real_bounds damage upper bound
  14789. real vehicle passthrough penalty:[0,1]#zero damages passengers in vehicles, one does not
  14790. real active camouflage damage:[0,1]#how much more visible this damage makes a player who is active camouflaged
  14791. real stun:[0,1]#amount of stun added to damaged unit
  14792. real maximum stun:[0,1]#damaged unit's stun will never exceed this amount
  14793. real stun time:seconds#duration of stun due to this damage
  14794. pad[4]
  14795. real instantaneous acceleration:[0,+inf]
  14796. pad[4]
  14797. pad[4]
  14798. explanation damage modifiers
  14799. {
  14800. Dialog Data Offset: 0x494b11
  14801. {
  14802.  
  14803. }
  14804. }
  14805. real dirt:[0,+inf]
  14806. real sand:[0,+inf]
  14807. real stone:[0,+inf]
  14808. real snow:[0,+inf]
  14809. real wood:[0,+inf]
  14810. real metal (hollow):[0,+inf]
  14811. real metal (thin):[0,+inf]
  14812. real metal (thick):[0,+inf]
  14813. real rubber:[0,+inf]
  14814. real glass:[0,+inf]
  14815. real force field:[0,+inf]
  14816. real grunt:[0,+inf]
  14817. real hunter armor:[0,+inf]
  14818. real hunter skin:[0,+inf]
  14819. real elite:[0,+inf]
  14820. real jackal:[0,+inf]
  14821. real jackal energy shield:[0,+inf]
  14822. real engineer:[0,+inf]
  14823. real engineer force field:[0,+inf]
  14824. real flood combat form:[0,+inf]
  14825. real flood carrier form:[0,+inf]
  14826. real cyborg:[0,+inf]
  14827. real cyborg energy shield:[0,+inf]
  14828. real armored human:[0,+inf]
  14829. real human:[0,+inf]
  14830. real sentinel:[0,+inf]
  14831. real monitor:[0,+inf]
  14832. real plastic:[0,+inf]
  14833. real water:[0,+inf]
  14834. real leaves:[0,+inf]
  14835. real elite energy shield:[0,+inf]
  14836. real ice:[0,+inf]
  14837. real hunter shield:[0,+inf]
  14838. pad[28]
  14839. POORLY-DETERMINED MIN FILESIZE OF jpt! (including 64-byte header): 736
  14840. POORLY-DETERMINED MAX FILESIZE OF jpt! (including 64-byte header): 991
  14841.  
  14842. Tag Definition Offset: 0x5c7158
  14843. Extension: dialogue
  14844. Unknown: 8
  14845. Class: udlg
  14846. No superclass
  14847. Version: 1
  14848. Definition Block:
  14849. {
  14850. Name: dialogue
  14851. Count: 1
  14852. Size: 4112
  14853. Chunks Offset: 0x5c6688
  14854. }
  14855. skip[2]
  14856. pad[2]
  14857. pad[12]
  14858. explanation idle
  14859. {
  14860. Dialog Data Offset: 0x4bb2d8
  14861. {
  14862. vocalizations generated at intervals when nothing else is happening.
  14863. }
  14864. }
  14865. tag reference idle noncombat#played randomly and intermittently whenever we aren't in combat
  14866. {
  14867. Supported tag class category: snd!
  14868. }
  14869. tag reference idle combat#played randomly and intermittently whenever we're in combat
  14870. {
  14871. Supported tag class category: snd!
  14872. }
  14873. tag reference idle flee#played continuously while we are fleeing
  14874. {
  14875. Supported tag class category: snd!
  14876. }
  14877. pad[16]
  14878. pad[16]
  14879. pad[16]
  14880. explanation involuntary
  14881. {
  14882. Dialog Data Offset: 0x4bb198
  14883. {
  14884. vocalizations generated automatically when damaged; interrupt everything except scripted dialogue.
  14885. }
  14886. }
  14887. tag reference pain body minor#took body damage
  14888. {
  14889. Supported tag class category: snd!
  14890. }
  14891. tag reference pain body major#took a significant amount of body damage
  14892. {
  14893. Supported tag class category: snd!
  14894. }
  14895. tag reference pain shield#took shield damage
  14896. {
  14897. Supported tag class category: snd!
  14898. }
  14899. tag reference pain falling#took damage from falling
  14900. {
  14901. Supported tag class category: snd!
  14902. }
  14903. tag reference scream fear#screaming in fear (falling to your death, explosive stuck to you)
  14904. {
  14905. Supported tag class category: snd!
  14906. }
  14907. tag reference scream pain#screaming in pain (being flamed)
  14908. {
  14909. Supported tag class category: snd!
  14910. }
  14911. tag reference maimed limb#limb body part (arm or leg) was destroyed
  14912. {
  14913. Supported tag class category: snd!
  14914. }
  14915. tag reference maimed head#head body part was destroyed
  14916. {
  14917. Supported tag class category: snd!
  14918. }
  14919. tag reference death quiet#died from minor damage, or was unprepared
  14920. {
  14921. Supported tag class category: snd!
  14922. }
  14923. tag reference death violent#died from violent trauma
  14924. {
  14925. Supported tag class category: snd!
  14926. }
  14927. tag reference death falling#died from falling
  14928. {
  14929. Supported tag class category: snd!
  14930. }
  14931. tag reference death agonizing#died in a horribly painful fashion (burnt to death)
  14932. {
  14933. Supported tag class category: snd!
  14934. }
  14935. tag reference death instant#died instantly
  14936. {
  14937. Supported tag class category: snd!
  14938. }
  14939. tag reference death flying#died and was blown up into the air
  14940. {
  14941. Supported tag class category: snd!
  14942. }
  14943. pad[16]
  14944. explanation hurting people
  14945. {
  14946. Dialog Data Offset: 0x494b11
  14947. {
  14948.  
  14949. }
  14950. }
  14951. tag reference damaged friend#hurt a friendly AI
  14952. {
  14953. Supported tag class category: snd!
  14954. }
  14955. tag reference damaged friend player#hurt a friendly player
  14956. {
  14957. Supported tag class category: snd!
  14958. }
  14959. tag reference damaged enemy#hurt an enemy
  14960. {
  14961. Supported tag class category: snd!
  14962. }
  14963. tag reference damaged enemy cm#hurt an enemy: comment to friend
  14964. {
  14965. Supported tag class category: snd!
  14966. }
  14967. pad[16]
  14968. pad[16]
  14969. pad[16]
  14970. pad[16]
  14971. explanation being hurt
  14972. {
  14973. Dialog Data Offset: 0x494b11
  14974. {
  14975.  
  14976. }
  14977. }
  14978. tag reference hurt friend#hurt by a friendly AI
  14979. {
  14980. Supported tag class category: snd!
  14981. }
  14982. tag reference hurt friend re#hurt by a friendly AI: response from that friend
  14983. {
  14984. Supported tag class category: snd!
  14985. }
  14986. tag reference hurt friend player#hurt by a friendly player
  14987. {
  14988. Supported tag class category: snd!
  14989. }
  14990. tag reference hurt enemy#hurt by an enemy
  14991. {
  14992. Supported tag class category: snd!
  14993. }
  14994. tag reference hurt enemy re#hurt by an enemy: response from the enemy that hurt us ('you like that?')
  14995. {
  14996. Supported tag class category: snd!
  14997. }
  14998. tag reference hurt enemy cm#hurt by an enemy: comment from a friend of ours
  14999. {
  15000. Supported tag class category: snd!
  15001. }
  15002. tag reference hurt enemy bullet#hurt by an enemy with bullets
  15003. {
  15004. Supported tag class category: snd!
  15005. }
  15006. tag reference hurt enemy needler#hurt by an enemy with needles
  15007. {
  15008. Supported tag class category: snd!
  15009. }
  15010. tag reference hurt enemy plasma#hurt by an enemy with a plasma bolt
  15011. {
  15012. Supported tag class category: snd!
  15013. }
  15014. tag reference hurt enemy sniper#hurt by an enemy with a sniper weapon
  15015. {
  15016. Supported tag class category: snd!
  15017. }
  15018. tag reference hurt enemy grenade#a grenade is stuck to us
  15019. {
  15020. Supported tag class category: snd!
  15021. }
  15022. tag reference hurt enemy explosion#hurt by an enemy with an explosive weapon
  15023. {
  15024. Supported tag class category: snd!
  15025. }
  15026. tag reference hurt enemy melee#hurt by an enemy with a melee weapon
  15027. {
  15028. Supported tag class category: snd!
  15029. }
  15030. tag reference hurt enemy flame#hurt by an enemy with flamethrower
  15031. {
  15032. Supported tag class category: snd!
  15033. }
  15034. tag reference hurt enemy shotgun#hurt by an enemy with a shotgun
  15035. {
  15036. Supported tag class category: snd!
  15037. }
  15038. tag reference hurt enemy vehicle#hurt by an enemy with a vehicle
  15039. {
  15040. Supported tag class category: snd!
  15041. }
  15042. tag reference hurt enemy mountedweapon#hurt by an enemy with a fixed weapon
  15043. {
  15044. Supported tag class category: snd!
  15045. }
  15046. pad[16]
  15047. pad[16]
  15048. pad[16]
  15049. explanation killing people
  15050. {
  15051. Dialog Data Offset: 0x494b11
  15052. {
  15053.  
  15054. }
  15055. }
  15056. tag reference killed friend#killed a friendly AI
  15057. {
  15058. Supported tag class category: snd!
  15059. }
  15060. tag reference killed friend cm#killed a friendly AI: comment from a friend
  15061. {
  15062. Supported tag class category: snd!
  15063. }
  15064. tag reference killed friend player#killed a friendly player
  15065. {
  15066. Supported tag class category: snd!
  15067. }
  15068. tag reference killed friend player cm#killed a friendly player: comment from a friend
  15069. {
  15070. Supported tag class category: snd!
  15071. }
  15072. tag reference killed enemy#killed an enemy
  15073. {
  15074. Supported tag class category: snd!
  15075. }
  15076. tag reference killed enemy cm#killed an enemy: comment from a friend
  15077. {
  15078. Supported tag class category: snd!
  15079. }
  15080. tag reference killed enemy player#killed an enemy player
  15081. {
  15082. Supported tag class category: snd!
  15083. }
  15084. tag reference killed enemy player cm#killed an enemy player: comment from a friend
  15085. {
  15086. Supported tag class category: snd!
  15087. }
  15088. tag reference killed enemy covenant#killed an enemy covenant
  15089. {
  15090. Supported tag class category: snd!
  15091. }
  15092. tag reference killed enemy covenant cm#killed an enemy covenant: comment from a friend
  15093. {
  15094. Supported tag class category: snd!
  15095. }
  15096. tag reference killed enemy floodcombat#killed an enemy flood combat form
  15097. {
  15098. Supported tag class category: snd!
  15099. }
  15100. tag reference killed enemy floodcombat cm#killed an enemy flood combat form: comment from a friend
  15101. {
  15102. Supported tag class category: snd!
  15103. }
  15104. tag reference killed enemy floodcarrier#killed an enemy flood carrier form
  15105. {
  15106. Supported tag class category: snd!
  15107. }
  15108. tag reference killed enemy floodcarrier cm#killed an enemy flood carrier form: comment from a friend
  15109. {
  15110. Supported tag class category: snd!
  15111. }
  15112. tag reference killed enemy sentinel#killed an enemy sentinel
  15113. {
  15114. Supported tag class category: snd!
  15115. }
  15116. tag reference killed enemy sentinel cm#killed an enemy sentinel: comment from a friend
  15117. {
  15118. Supported tag class category: snd!
  15119. }
  15120. tag reference killed enemy bullet#killed an enemy with bullets
  15121. {
  15122. Supported tag class category: snd!
  15123. }
  15124. tag reference killed enemy needler#killed an enemy with needles
  15125. {
  15126. Supported tag class category: snd!
  15127. }
  15128. tag reference killed enemy plasma#killed an enemy with a plasma bolt
  15129. {
  15130. Supported tag class category: snd!
  15131. }
  15132. tag reference killed enemy sniper#killed an enemy with a sniper weapon
  15133. {
  15134. Supported tag class category: snd!
  15135. }
  15136. tag reference killed enemy grenade#killed an enemy with a grenade
  15137. {
  15138. Supported tag class category: snd!
  15139. }
  15140. tag reference killed enemy explosion#killed an enemy with an explosive weapon
  15141. {
  15142. Supported tag class category: snd!
  15143. }
  15144. tag reference killed enemy melee#killed an enemy with a melee weapon
  15145. {
  15146. Supported tag class category: snd!
  15147. }
  15148. tag reference killed enemy flame#killed an enemy with flamethrower
  15149. {
  15150. Supported tag class category: snd!
  15151. }
  15152. tag reference killed enemy shotgun#killed an enemy with a shotgun
  15153. {
  15154. Supported tag class category: snd!
  15155. }
  15156. tag reference killed enemy vehicle#killed an enemy by hitting them with a vehicle
  15157. {
  15158. Supported tag class category: snd!
  15159. }
  15160. tag reference killed enemy mountedweapon#killed an enemy with a fixed weapon
  15161. {
  15162. Supported tag class category: snd!
  15163. }
  15164. tag reference killing spree#we are on a killing spree
  15165. {
  15166. Supported tag class category: snd!
  15167. }
  15168. pad[16]
  15169. pad[16]
  15170. pad[16]
  15171. explanation player kill responses
  15172. {
  15173. Dialog Data Offset: 0x4ba3b4
  15174. {
  15175. responses to a friendly player killing an enemy nearby
  15176. }
  15177. }
  15178. tag reference player kill cm#response to the player killing an enemy
  15179. {
  15180. Supported tag class category: snd!
  15181. }
  15182. tag reference player kill bullet cm#response to the player killing an enemy with bullets
  15183. {
  15184. Supported tag class category: snd!
  15185. }
  15186. tag reference player kill needler cm#response to the player killing an enemy with needles
  15187. {
  15188. Supported tag class category: snd!
  15189. }
  15190. tag reference player kill plasma cm#response to the player killing an enemy with a plasma bolt
  15191. {
  15192. Supported tag class category: snd!
  15193. }
  15194. tag reference player kill sniper cm#response to the player killing an enemy with a sniper weapon
  15195. {
  15196. Supported tag class category: snd!
  15197. }
  15198. tag reference anyone kill grenade cm#response to _anyone_ killing an enemy with a grenade
  15199. {
  15200. Supported tag class category: snd!
  15201. }
  15202. tag reference player kill explosion cm#response to the player killing an enemy with an explosive weapon
  15203. {
  15204. Supported tag class category: snd!
  15205. }
  15206. tag reference player kill melee cm#response to the player killing an enemy with a melee weapon
  15207. {
  15208. Supported tag class category: snd!
  15209. }
  15210. tag reference player kill flame cm#response to the player killing an enemy with flamethrower
  15211. {
  15212. Supported tag class category: snd!
  15213. }
  15214. tag reference player kill shotgun cm#response to the player killing an enemy with a shotgun
  15215. {
  15216. Supported tag class category: snd!
  15217. }
  15218. tag reference player kill vehicle cm#response to the player killing an enemy by hitting them with a vehicle
  15219. {
  15220. Supported tag class category: snd!
  15221. }
  15222. tag reference player kill mountedweapon cm#response to the player killing an enemy with a fixed weapon
  15223. {
  15224. Supported tag class category: snd!
  15225. }
  15226. tag reference player killling spree cm#response to the player going on a killing spree
  15227. {
  15228. Supported tag class category: snd!
  15229. }
  15230. pad[16]
  15231. pad[16]
  15232. pad[16]
  15233. explanation friends dying
  15234. {
  15235. Dialog Data Offset: 0x494b11
  15236. {
  15237.  
  15238. }
  15239. }
  15240. tag reference friend died#a friendly AI died
  15241. {
  15242. Supported tag class category: snd!
  15243. }
  15244. tag reference friend player died#a friendly player died
  15245. {
  15246. Supported tag class category: snd!
  15247. }
  15248. tag reference friend killed by friend#a friend died from friendly fire
  15249. {
  15250. Supported tag class category: snd!
  15251. }
  15252. tag reference friend killed by friendly player# friend died from player's friendly fire
  15253. {
  15254. Supported tag class category: snd!
  15255. }
  15256. tag reference friend killed by enemy#a friend died from enemy fire
  15257. {
  15258. Supported tag class category: snd!
  15259. }
  15260. tag reference friend killed by enemy player# friend died from an enemy player
  15261. {
  15262. Supported tag class category: snd!
  15263. }
  15264. tag reference friend killed by covenant#a friend died from covenant fire
  15265. {
  15266. Supported tag class category: snd!
  15267. }
  15268. tag reference friend killed by flood#a friend died from the flood
  15269. {
  15270. Supported tag class category: snd!
  15271. }
  15272. tag reference friend killed by sentinel#a friend died from sentinel fire
  15273. {
  15274. Supported tag class category: snd!
  15275. }
  15276. tag reference friend betrayed#a friend was deliberately killed by an ally that we don't trust (e.g. player killed a marine)
  15277. {
  15278. Supported tag class category: snd!
  15279. }
  15280. pad[16]
  15281. pad[16]
  15282. explanation shouting
  15283. {
  15284. Dialog Data Offset: 0x4b9ca8
  15285. {
  15286. vocalizations that can be played even if a friend is talking
  15287. }
  15288. }
  15289. tag reference new combat alone#see an enemy and we have not previously been in combat
  15290. {
  15291. Supported tag class category: snd!
  15292. }
  15293. tag reference new enemy recent combat#see a new enemy and we have recently been in combat
  15294. {
  15295. Supported tag class category: snd!
  15296. }
  15297. tag reference old enemy sighted#see an enemy that we are currently looking for
  15298. {
  15299. Supported tag class category: snd!
  15300. }
  15301. tag reference unexpected enemy#unexpectedly encounters enemy (behind or to the side)
  15302. {
  15303. Supported tag class category: snd!
  15304. }
  15305. tag reference dead friend found#unexpectedly finds a dead body of a friend
  15306. {
  15307. Supported tag class category: snd!
  15308. }
  15309. tag reference alliance broken#we decide that a former ally is now a traitor
  15310. {
  15311. Supported tag class category: snd!
  15312. }
  15313. tag reference alliance reformed#we forgive a traitor and make him our friend again
  15314. {
  15315. Supported tag class category: snd!
  15316. }
  15317. tag reference grenade throwing#throwing a grenade
  15318. {
  15319. Supported tag class category: snd!
  15320. }
  15321. tag reference grenade sighted#see an enemy grenade
  15322. {
  15323. Supported tag class category: snd!
  15324. }
  15325. tag reference grenade startle#alerted by a grenade bouncing near us
  15326. {
  15327. Supported tag class category: snd!
  15328. }
  15329. tag reference grenade danger enemy#in danger from an enemy grenade
  15330. {
  15331. Supported tag class category: snd!
  15332. }
  15333. tag reference grenade danger self#in danger from your own grenade
  15334. {
  15335. Supported tag class category: snd!
  15336. }
  15337. tag reference grenade danger friend#in danger from a friendly grenade (not our own)
  15338. {
  15339. Supported tag class category: snd!
  15340. }
  15341. pad[16]
  15342. pad[16]
  15343. explanation group communication
  15344. {
  15345. Dialog Data Offset: 0x4b9948
  15346. {
  15347. vocalizations that require friends
  15348. }
  15349. }
  15350. tag reference new combat group re#reply to a nearby friend who alerted us to an enemy
  15351. {
  15352. Supported tag class category: snd!
  15353. }
  15354. tag reference new combat nearby re#reply to a distant friend who alerted us to an enemy
  15355. {
  15356. Supported tag class category: snd!
  15357. }
  15358. tag reference alert friend#alert a friend who is in a noncombat state
  15359. {
  15360. Supported tag class category: snd!
  15361. }
  15362. tag reference alert friend re#alerted by a friend when in a noncombat state
  15363. {
  15364. Supported tag class category: snd!
  15365. }
  15366. tag reference alert lost contact#alert friends that target was not at expected location
  15367. {
  15368. Supported tag class category: snd!
  15369. }
  15370. tag reference alert lost contact re#alert friends that target was not at expected location: response
  15371. {
  15372. Supported tag class category: snd!
  15373. }
  15374. tag reference blocked#friend is blocking us from moving or firing
  15375. {
  15376. Supported tag class category: snd!
  15377. }
  15378. tag reference blocked re#friend is blocking us from moving or firing: response
  15379. {
  15380. Supported tag class category: snd!
  15381. }
  15382. tag reference search start#starting to search
  15383. {
  15384. Supported tag class category: snd!
  15385. }
  15386. tag reference search query#asking searchers whether they have found anything
  15387. {
  15388. Supported tag class category: snd!
  15389. }
  15390. tag reference search query re#asking searchers whether they have found anything: response
  15391. {
  15392. Supported tag class category: snd!
  15393. }
  15394. tag reference search report#searcher reporting that an area is clear
  15395. {
  15396. Supported tag class category: snd!
  15397. }
  15398. tag reference search abandon#searcher giving up on search
  15399. {
  15400. Supported tag class category: snd!
  15401. }
  15402. tag reference search group abandon#search coordinator giving up on search
  15403. {
  15404. Supported tag class category: snd!
  15405. }
  15406. tag reference group uncover#starting to uncover target with friend
  15407. {
  15408. Supported tag class category: snd!
  15409. }
  15410. tag reference group uncover re#starting to uncover target: response
  15411. {
  15412. Supported tag class category: snd!
  15413. }
  15414. tag reference advance#our platoon starts to attack or advance
  15415. {
  15416. Supported tag class category: snd!
  15417. }
  15418. tag reference advance re#our platoon starts to attack or advance: response
  15419. {
  15420. Supported tag class category: snd!
  15421. }
  15422. tag reference retreat#our platoon starts to defend or retreat
  15423. {
  15424. Supported tag class category: snd!
  15425. }
  15426. tag reference retreat re#our platoon starts to defend or retreat: response
  15427. {
  15428. Supported tag class category: snd!
  15429. }
  15430. tag reference cover#telling friends to seek cover
  15431. {
  15432. Supported tag class category: snd!
  15433. }
  15434. pad[16]
  15435. pad[16]
  15436. pad[16]
  15437. pad[16]
  15438. explanation actions
  15439. {
  15440. Dialog Data Offset: 0x4b9420
  15441. {
  15442. vocalizations that don't require friends
  15443. }
  15444. }
  15445. tag reference sighted friend player#sighted a new friendly player
  15446. {
  15447. Supported tag class category: snd!
  15448. }
  15449. tag reference shooting#shooting at an enemy
  15450. {
  15451. Supported tag class category: snd!
  15452. }
  15453. tag reference shooting vehicle#shooting from a vehicle at an enemy
  15454. {
  15455. Supported tag class category: snd!
  15456. }
  15457. tag reference shooting berserk#shooting at an enemy while berserk
  15458. {
  15459. Supported tag class category: snd!
  15460. }
  15461. tag reference shooting group#shooting at a group of enemies
  15462. {
  15463. Supported tag class category: snd!
  15464. }
  15465. tag reference shooting traitor#shooting at a traitorous player
  15466. {
  15467. Supported tag class category: snd!
  15468. }
  15469. tag reference taunt#taunting the enemy
  15470. {
  15471. Supported tag class category: snd!
  15472. }
  15473. tag reference taunt re#taunted by an enemy: response
  15474. {
  15475. Supported tag class category: snd!
  15476. }
  15477. tag reference flee#fleeing in panic
  15478. {
  15479. Supported tag class category: snd!
  15480. }
  15481. tag reference flee re#fleeing in panic: response
  15482. {
  15483. Supported tag class category: snd!
  15484. }
  15485. tag reference flee leader died#fleeing in panic because our leaders are all dead
  15486. {
  15487. Supported tag class category: snd!
  15488. }
  15489. tag reference attempted flee#unable to flee because a leader is nearby
  15490. {
  15491. Supported tag class category: snd!
  15492. }
  15493. tag reference attempted flee re#unable to flee because a leader is nearby - response
  15494. {
  15495. Supported tag class category: snd!
  15496. }
  15497. tag reference lost contact#target was not at expected location
  15498. {
  15499. Supported tag class category: snd!
  15500. }
  15501. tag reference hiding finished#stops hiding and pursues target
  15502. {
  15503. Supported tag class category: snd!
  15504. }
  15505. tag reference vehicle entry#enters vehicle
  15506. {
  15507. Supported tag class category: snd!
  15508. }
  15509. tag reference vehicle exit#exits vehicle
  15510. {
  15511. Supported tag class category: snd!
  15512. }
  15513. tag reference vehicle woohoo#excited while in vehicle (big air, etc)
  15514. {
  15515. Supported tag class category: snd!
  15516. }
  15517. tag reference vehicle scared#scared while in vehicle (imminent crash)
  15518. {
  15519. Supported tag class category: snd!
  15520. }
  15521. tag reference vehicle collision#riding in a vehicle and the driver collides with something
  15522. {
  15523. Supported tag class category: snd!
  15524. }
  15525. tag reference partially sighted#saw something suspicious but not sure it was an enemy
  15526. {
  15527. Supported tag class category: snd!
  15528. }
  15529. tag reference nothing there#decided that a suspicious sighting was nothing after all
  15530. {
  15531. Supported tag class category: snd!
  15532. }
  15533. tag reference pleading#pleading for the player to spare our pitiable lives
  15534. {
  15535. Supported tag class category: snd!
  15536. }
  15537. pad[16]
  15538. pad[16]
  15539. pad[16]
  15540. pad[16]
  15541. pad[16]
  15542. pad[16]
  15543. explanation exclamations
  15544. {
  15545. Dialog Data Offset: 0x4b8f44
  15546. {
  15547. vocalizations that interrupt our talking
  15548. }
  15549. }
  15550. tag reference surprise#surprised by an enemy, noise, body or weapon impact
  15551. {
  15552. Supported tag class category: snd!
  15553. }
  15554. tag reference berserk#went berserk
  15555. {
  15556. Supported tag class category: snd!
  15557. }
  15558. tag reference melee attack#attacked an enemy in melee
  15559. {
  15560. Supported tag class category: snd!
  15561. }
  15562. tag reference dive#dove away from danger or into cover
  15563. {
  15564. Supported tag class category: snd!
  15565. }
  15566. tag reference uncover exclamation#leapt out of corner to uncover a suspected target
  15567. {
  15568. Supported tag class category: snd!
  15569. }
  15570. tag reference leap attack#begin a leap attack
  15571. {
  15572. Supported tag class category: snd!
  15573. }
  15574. tag reference resurrection#arise and return to life
  15575. {
  15576. Supported tag class category: snd!
  15577. }
  15578. pad[16]
  15579. pad[16]
  15580. pad[16]
  15581. pad[16]
  15582. explanation post-combat actions
  15583. {
  15584. Dialog Data Offset: 0x4b8dc0
  15585. {
  15586. vocalizations that immediately follow combat
  15587. }
  15588. }
  15589. tag reference celebration#all enemies defeated
  15590. {
  15591. Supported tag class category: snd!
  15592. }
  15593. tag reference check body enemy#post-combat checking an enemy's dead body
  15594. {
  15595. Supported tag class category: snd!
  15596. }
  15597. tag reference check body friend#post-combat checking a friend's dead body
  15598. {
  15599. Supported tag class category: snd!
  15600. }
  15601. tag reference shooting dead enemy#post-combat shooting an enemy's dead body
  15602. {
  15603. Supported tag class category: snd!
  15604. }
  15605. tag reference shooting dead enemy player#post-combat shooting an enemy player's dead body
  15606. {
  15607. Supported tag class category: snd!
  15608. }
  15609. pad[16]
  15610. pad[16]
  15611. pad[16]
  15612. pad[16]
  15613. explanation post-combat chatter
  15614. {
  15615. Dialog Data Offset: 0x4b8dc0
  15616. {
  15617. vocalizations that immediately follow combat
  15618. }
  15619. }
  15620. tag reference alone#post-combat all friends killed
  15621. {
  15622. Supported tag class category: snd!
  15623. }
  15624. tag reference unscathed#post-combat we were not hurt
  15625. {
  15626. Supported tag class category: snd!
  15627. }
  15628. tag reference seriously wounded#post-combat we were badly hurt
  15629. {
  15630. Supported tag class category: snd!
  15631. }
  15632. tag reference seriously wounded re#post-combat replying to a friend who was badly hurt
  15633. {
  15634. Supported tag class category: snd!
  15635. }
  15636. tag reference massacre#post-combat our friends took heavy casualties
  15637. {
  15638. Supported tag class category: snd!
  15639. }
  15640. tag reference massacre re#post-combat reply: our friends took heavy casualties
  15641. {
  15642. Supported tag class category: snd!
  15643. }
  15644. tag reference rout#post-combat our friends kicked alien ass
  15645. {
  15646. Supported tag class category: snd!
  15647. }
  15648. tag reference rout re#post-combat reply: our friends kicked alien ass
  15649. {
  15650. Supported tag class category: snd!
  15651. }
  15652. pad[16]
  15653. pad[16]
  15654. pad[16]
  15655. pad[16]
  15656. pad[752]
  15657. POORLY-DETERMINED MIN FILESIZE OF udlg (including 64-byte header): 4176
  15658. POORLY-DETERMINED MAX FILESIZE OF udlg (including 64-byte header): 46506
  15659.  
  15660. Tag Definition Offset: 0x5c6618
  15661. Extension: item_collection
  15662. Unknown: 9
  15663. Class: itmc
  15664. No superclass
  15665. Version: 0
  15666. Definition Block:
  15667. {
  15668. Name: item_collection
  15669. Count: 1
  15670. Size: 92
  15671. Chunks Offset: 0x5c65ac
  15672. }
  15673. block item permutations
  15674. {
  15675. Name: item_permutation
  15676. Max Chunks: 32
  15677. Chunk Size: 84
  15678. Max Chunks x Chunk Size: 2688
  15679. Chunk Definition Offset: 0x5c6544
  15680. {
  15681. pad[32]
  15682. real weight#relatively how likely this item will be chosen
  15683. tag reference item^#which item to
  15684. {
  15685. Supported tag class category: item
  15686. }
  15687. pad[32]
  15688. }
  15689. }
  15690. short_integer spawn time (in seconds, 0 = default)
  15691. pad[2]
  15692. pad[76]
  15693. POORLY-DETERMINED MIN FILESIZE OF itmc (including 64-byte header): 156
  15694. POORLY-DETERMINED MAX FILESIZE OF itmc (including 64-byte header): 3099
  15695.  
  15696. Tag Definition Offset: 0x5c5ce0
  15697. Extension: weapon_hud_interface
  15698. Unknown: 8
  15699. Class: wphi
  15700. No superclass
  15701. Version: 2
  15702. Dialog Data Offset: 0x48c5e0
  15703. Definition Block:
  15704. {
  15705. Name: weapon_hud_interface
  15706. Count: 1
  15707. Size: 380
  15708. Chunks Offset: 0x5c5b28
  15709. }
  15710. tag reference child hud
  15711. {
  15712. Supported tag class category: wphi
  15713. }
  15714. explanation Flash cutoffs
  15715. {
  15716. Dialog Data Offset: 0x494b11
  15717. {
  15718.  
  15719. }
  15720. }
  15721. word_flags flags
  15722. {
  15723. use parent hud flashing parameters
  15724. }
  15725. pad[2]
  15726. short_integer total ammo cutoff
  15727. short_integer loaded ammo cutoff
  15728. short_integer heat cutoff
  15729. short_integer age cutoff
  15730. pad[32]
  15731. explanation Weapon hud screen alignment
  15732. {
  15733. Dialog Data Offset: 0x494b11
  15734. {
  15735.  
  15736. }
  15737. }
  15738. enum anchor
  15739. {
  15740. top left
  15741. top right
  15742. bottom left
  15743. bottom right
  15744. center
  15745. }
  15746. pad[2]
  15747. pad[32]
  15748. block static elements
  15749. {
  15750. Name: weapon_hud_static_block
  15751. Max Chunks: 16
  15752. Chunk Size: 180
  15753. Max Chunks x Chunk Size: 2880
  15754. Chunk Definition Offset: 0x5c53f8
  15755. {
  15756. enum state attached to
  15757. {
  15758. total ammo
  15759. loaded ammo
  15760. heat
  15761. age
  15762. secondary weapon total ammo
  15763. secondary weapon loaded ammo
  15764. distance to target
  15765. elevation to target
  15766. }
  15767. pad[2]
  15768. enum can use on map type
  15769. {
  15770. any
  15771. solo
  15772. multiplayer
  15773. }
  15774. pad[2]
  15775. pad[28]
  15776. point_2d anchor offset
  15777. real width scale
  15778. real height scale
  15779. word_flags scaling flags
  15780. {
  15781. don't scale offset
  15782. don't scale size
  15783. use high res scale
  15784. }
  15785. pad[2]
  15786. pad[20]
  15787. tag reference interface bitmap
  15788. {
  15789. Supported tag class category: bitm
  15790. }
  15791. argb_color default color
  15792. argb_color flashing color
  15793. real flash period
  15794. real flash delay
  15795. {
  15796. Hidden documentation: time between flashes
  15797. }
  15798. short_integer number of flashes
  15799. word_flags flash flags
  15800. {
  15801. reverse default/flashing colors
  15802. }
  15803. real flash length
  15804. {
  15805. Hidden documentation: time of each flash
  15806. }
  15807. argb_color disabled color
  15808. pad[4]
  15809. short_integer sequence index
  15810. pad[2]
  15811. block multitex overlay
  15812. {
  15813. Name: global_hud_multitexture_overlay_definition
  15814. Max Chunks: 30
  15815. Chunk Size: 480
  15816. Max Chunks x Chunk Size: 14400
  15817. Chunk Definition Offset: 0x5c3940
  15818. {
  15819. pad[2]
  15820. short_integer type
  15821. enum framebuffer blend func
  15822. {
  15823. alpha blend
  15824. multiply
  15825. double multiply
  15826. add
  15827. subtract
  15828. component min
  15829. component max
  15830. alpha-multiply add
  15831. }
  15832. pad[2]
  15833. pad[32]
  15834. explanation anchors
  15835. {
  15836. Dialog Data Offset: 0x4b5c38
  15837. {
  15838. where you want the origin of the texture.
  15839. *"texture" uses the texture coordinates supplied
  15840. *"screen" uses the origin of the screen as the origin of the texture
  15841. }
  15842. }
  15843. enum primary anchor
  15844. {
  15845. texture
  15846. screen
  15847. }
  15848. enum secondary anchor
  15849. {
  15850. texture
  15851. screen
  15852. }
  15853. enum tertiary anchor
  15854. {
  15855. texture
  15856. screen
  15857. }
  15858. explanation blending function
  15859. {
  15860. Dialog Data Offset: 0x4b5bcc
  15861. {
  15862. how to blend the textures together
  15863. }
  15864. }
  15865. enum 0 to 1 blend func
  15866. {
  15867. add
  15868. subtract
  15869. multiply
  15870. multiply2x
  15871. dot
  15872. }
  15873. enum 1 to 2 blend func
  15874. {
  15875. add
  15876. subtract
  15877. multiply
  15878. multiply2x
  15879. dot
  15880. }
  15881. pad[2]
  15882. explanation map scales
  15883. {
  15884. Dialog Data Offset: 0x4b5b78
  15885. {
  15886. how much to scale the textures
  15887. }
  15888. }
  15889. real_point_2d primary scale
  15890. real_point_2d secondary scale
  15891. real_point_2d tertiary scale
  15892. explanation map offsets
  15893. {
  15894. Dialog Data Offset: 0x4b5b0c
  15895. {
  15896. how much to offset the origin of the texture
  15897. }
  15898. }
  15899. real_point_2d primary offset
  15900. real_point_2d secondary offset
  15901. real_point_2d tertiary offset
  15902. explanation map
  15903. {
  15904. Dialog Data Offset: 0x4b5ac0
  15905. {
  15906. which maps to use
  15907. }
  15908. }
  15909. tag reference primary
  15910. {
  15911. Supported tag class category: bitm
  15912. }
  15913. tag reference secondary
  15914. {
  15915. Supported tag class category: bitm
  15916. }
  15917. tag reference tertiary
  15918. {
  15919. Supported tag class category: bitm
  15920. }
  15921. enum primary wrap mode
  15922. {
  15923. clamp
  15924. wrap
  15925. }
  15926. enum secondary wrap mode
  15927. {
  15928. clamp
  15929. wrap
  15930. }
  15931. enum tertiary wrap mode
  15932. {
  15933. clamp
  15934. wrap
  15935. }
  15936. pad[2]
  15937. pad[184]
  15938. block effectors
  15939. {
  15940. Name: global_hud_multitexture_overlay_effector_definition
  15941. Max Chunks: 30
  15942. Chunk Size: 220
  15943. Max Chunks x Chunk Size: 6600
  15944. Chunk Definition Offset: 0x5c3820
  15945. {
  15946. pad[64]
  15947. explanation source/destination
  15948. {
  15949. Dialog Data Offset: 0x4b5f40
  15950. {
  15951. These describe the relationship that causes the effect.
  15952. * destination type is the type of variable you want to be effected
  15953. * destination tells which texture map (or geometry offset) to apply it to
  15954. * source says which value to look at when computing the effect
  15955. }
  15956. }
  15957. enum destination type
  15958. {
  15959. tint [0,1]
  15960. horizontal offset
  15961. vertical offset
  15962. fade [0,1]
  15963. }
  15964. enum destination
  15965. {
  15966. geometry offset
  15967. primary map
  15968. secondary map
  15969. tertiary map
  15970. }
  15971. enum source
  15972. {
  15973. player pitch
  15974. player pitch tangent
  15975. player yaw
  15976. weapon ammo (total)
  15977. weapon ammo (loaded)
  15978. weapon heat
  15979. explicit (uses low bound)
  15980. weapon zoom level
  15981. }
  15982. pad[2]
  15983. explanation in/out bounds
  15984. {
  15985. Dialog Data Offset: 0x4b5e88
  15986. {
  15987. When the source is at the lower inbound, the destination ends up the lower outbound and vice-versa applies for the upper values.
  15988. }
  15989. }
  15990. real_bounds in bounds:source units
  15991. real_bounds out bounds:pixels
  15992. pad[64]
  15993. explanation tint color bounds
  15994. {
  15995. Dialog Data Offset: 0x4b5df8
  15996. {
  15997. If destination is tint, these values are used instead of the out bounds.
  15998. }
  15999. }
  16000. real_rgb_color tint color lower bound
  16001. real_rgb_color tint color upper bound
  16002. explanation periodic functions
  16003. {
  16004. Dialog Data Offset: 0x4b5d68
  16005. {
  16006. If you use a periodic function as the source, this lets you tweak it.
  16007. }
  16008. }
  16009. enum periodic function
  16010. {
  16011. one
  16012. zero
  16013. cosine
  16014. cosine (variable period)
  16015. diagonal wave
  16016. diagonal wave (variable period)
  16017. slide
  16018. slide (variable period)
  16019. noise
  16020. jitter
  16021. wander
  16022. spark
  16023. }
  16024. pad[2]
  16025. real function period:seconds
  16026. real function phase:seconds
  16027. pad[32]
  16028. }
  16029. }
  16030. pad[128]
  16031. }
  16032. }
  16033. pad[4]
  16034. pad[40]
  16035. }
  16036. }
  16037. block meter elements
  16038. {
  16039. Name: weapon_hud_meter_block
  16040. Max Chunks: 16
  16041. Chunk Size: 180
  16042. Max Chunks x Chunk Size: 2880
  16043. Chunk Definition Offset: 0x5c5568
  16044. {
  16045. enum state attached to
  16046. {
  16047. total ammo
  16048. loaded ammo
  16049. heat
  16050. age
  16051. secondary weapon total ammo
  16052. secondary weapon loaded ammo
  16053. distance to target
  16054. elevation to target
  16055. }
  16056. pad[2]
  16057. enum can use on map type
  16058. {
  16059. any
  16060. solo
  16061. multiplayer
  16062. }
  16063. pad[2]
  16064. pad[28]
  16065. point_2d anchor offset
  16066. real width scale
  16067. real height scale
  16068. word_flags scaling flags
  16069. {
  16070. don't scale offset
  16071. don't scale size
  16072. use high res scale
  16073. }
  16074. pad[2]
  16075. pad[20]
  16076. tag reference meter bitmap
  16077. {
  16078. Supported tag class category: bitm
  16079. }
  16080. rgb_color color at meter minimum
  16081. rgb_color color at meter maximum
  16082. rgb_color flash color
  16083. argb_color empty color
  16084. byte_flags flags
  16085. {
  16086. use min/max for state changes
  16087. interpolate between min/max flash colors as state changes
  16088. interpolate color along hsv space
  16089. ...more colors for hsv interpolation
  16090. invert interpolation
  16091. }
  16092. char_integer minumum meter value
  16093. short_integer sequence index
  16094. char_integer alpha multiplier
  16095. char_integer alpha bias
  16096. short_integer value scale#used for non-integral values, i.e. health and shields
  16097. real opacity
  16098. real translucency
  16099. argb_color disabled color
  16100. pad[16]
  16101. pad[40]
  16102. }
  16103. }
  16104. block number elements
  16105. {
  16106. Name: weapon_hud_number_block
  16107. Max Chunks: 16
  16108. Chunk Size: 160
  16109. Max Chunks x Chunk Size: 2560
  16110. Chunk Definition Offset: 0x5c56e8
  16111. {
  16112. enum state attached to
  16113. {
  16114. total ammo
  16115. loaded ammo
  16116. heat
  16117. age
  16118. secondary weapon total ammo
  16119. secondary weapon loaded ammo
  16120. distance to target
  16121. elevation to target
  16122. }
  16123. pad[2]
  16124. enum can use on map type
  16125. {
  16126. any
  16127. solo
  16128. multiplayer
  16129. }
  16130. pad[2]
  16131. pad[28]
  16132. point_2d anchor offset
  16133. real width scale
  16134. real height scale
  16135. word_flags scaling flags
  16136. {
  16137. don't scale offset
  16138. don't scale size
  16139. use high res scale
  16140. }
  16141. pad[2]
  16142. pad[20]
  16143. argb_color default color
  16144. argb_color flashing color
  16145. real flash period
  16146. real flash delay
  16147. {
  16148. Hidden documentation: time between flashes
  16149. }
  16150. short_integer number of flashes
  16151. word_flags flash flags
  16152. {
  16153. reverse default/flashing colors
  16154. }
  16155. real flash length
  16156. {
  16157. Hidden documentation: time of each flash
  16158. }
  16159. argb_color disabled color
  16160. pad[4]
  16161. char_integer maximum number of digits
  16162. byte_flags flags
  16163. {
  16164. show leading zeros
  16165. only show when zoomed
  16166. draw a trailing m
  16167. }
  16168. char_integer number of fractional digits
  16169. pad[1]
  16170. pad[12]
  16171. word_flags weapon specific flags
  16172. {
  16173. divide number by clip size
  16174. }
  16175. pad[2]
  16176. pad[36]
  16177. }
  16178. }
  16179. explanation Crosshairs
  16180. {
  16181. Dialog Data Offset: 0x4b6ca8
  16182. {
  16183. Crosshairs always go in the center of the screen.
  16184. Crosshairs can be attached to one of four different states:
  16185.  
  16186. * Aim: Default crosshair. Frame 0 is the default state, frame 1 is the auto-aim state (frame rate ignored)
  16187. * Zoom: Zoom overlay. Each zoom level has a corresponding frame (frame rate ignored)
  16188. * Charge: Charging overlay. If you wish to display an animation for charging, put it here.
  16189. * Flash: Similar to charging, but for low ammo/batter/heat states
  16190. * Reload/Overheat: Similar to charging, but for reloading/overheating
  16191.  
  16192. }
  16193. }
  16194. block crosshairs
  16195. {
  16196. Name: weapon_hud_crosshair_block
  16197. Max Chunks: 19
  16198. Chunk Size: 104
  16199. Max Chunks x Chunk Size: 1976
  16200. Chunk Definition Offset: 0x5c5a28
  16201. {
  16202. enum crosshair type
  16203. {
  16204. aim
  16205. zoom
  16206. charge
  16207. should reload
  16208. flash heat
  16209. flash total ammo
  16210. flash battery
  16211. reload/overheat
  16212. flash when firing and no ammo
  16213. flash when throwing and no grenade
  16214. low ammo and none left to reload
  16215. should reload secondary trigger
  16216. flash secondary total ammo
  16217. flash secondary reload
  16218. flash when firing secondary trigger with no ammo
  16219. low secondary ammo and none left to reload
  16220. primary trigger ready
  16221. secondary trigger ready
  16222. flash when firing with depleted battery
  16223. }
  16224. pad[2]
  16225. enum can use on map type
  16226. {
  16227. any
  16228. solo
  16229. multiplayer
  16230. }
  16231. pad[2]
  16232. pad[28]
  16233. tag reference Crosshair bitmap
  16234. {
  16235. Supported tag class category: bitm
  16236. }
  16237. block Crosshair overlays
  16238. {
  16239. Name: weapon_hud_crosshair_item_block
  16240. Max Chunks: 16
  16241. Chunk Size: 108
  16242. Max Chunks x Chunk Size: 1728
  16243. Chunk Definition Offset: 0x5c5908
  16244. {
  16245. point_2d anchor offset
  16246. real width scale
  16247. real height scale
  16248. word_flags scaling flags
  16249. {
  16250. don't scale offset
  16251. don't scale size
  16252. use high res scale
  16253. }
  16254. pad[2]
  16255. pad[20]
  16256. argb_color default color
  16257. argb_color flashing color
  16258. real flash period
  16259. real flash delay
  16260. {
  16261. Hidden documentation: time between flashes
  16262. }
  16263. short_integer number of flashes
  16264. word_flags flash flags
  16265. {
  16266. reverse default/flashing colors
  16267. }
  16268. real flash length
  16269. {
  16270. Hidden documentation: time of each flash
  16271. }
  16272. argb_color disabled color
  16273. pad[4]
  16274. short_integer frame rate
  16275. short_integer sequence index
  16276. long_flags flags
  16277. {
  16278. flashes when active
  16279. not a sprite
  16280. show only when zoomed
  16281. show sniper data
  16282. hide area outside reticle
  16283. one zoom level
  16284. don't show when zoomed
  16285. }
  16286. pad[32]
  16287. }
  16288. }
  16289. pad[40]
  16290. }
  16291. }
  16292. block overlay elements
  16293. {
  16294. Name: weapon_hud_overlays_block
  16295. Max Chunks: 16
  16296. Chunk Size: 104
  16297. Max Chunks x Chunk Size: 1664
  16298. Chunk Definition Offset: 0x5c5870
  16299. {
  16300. enum state attached to
  16301. {
  16302. total ammo
  16303. loaded ammo
  16304. heat
  16305. age
  16306. secondary weapon total ammo
  16307. secondary weapon loaded ammo
  16308. distance to target
  16309. elevation to target
  16310. }
  16311. pad[2]
  16312. enum can use on map type
  16313. {
  16314. any
  16315. solo
  16316. multiplayer
  16317. }
  16318. pad[2]
  16319. pad[28]
  16320. tag reference Overlay bitmap
  16321. {
  16322. Supported tag class category: bitm
  16323. }
  16324. block Overlays
  16325. {
  16326. Name: weapon_hud_overlay_block
  16327. Max Chunks: 16
  16328. Chunk Size: 136
  16329. Max Chunks x Chunk Size: 2176
  16330. Chunk Definition Offset: 0x5c52b8
  16331. {
  16332. point_2d anchor offset
  16333. real width scale
  16334. real height scale
  16335. word_flags scaling flags
  16336. {
  16337. don't scale offset
  16338. don't scale size
  16339. use high res scale
  16340. }
  16341. pad[2]
  16342. pad[20]
  16343. argb_color default color
  16344. argb_color flashing color
  16345. real flash period
  16346. real flash delay
  16347. {
  16348. Hidden documentation: time between flashes
  16349. }
  16350. short_integer number of flashes
  16351. word_flags flash flags
  16352. {
  16353. reverse default/flashing colors
  16354. }
  16355. real flash length
  16356. {
  16357. Hidden documentation: time of each flash
  16358. }
  16359. argb_color disabled color
  16360. pad[4]
  16361. short_integer frame rate
  16362. pad[2]
  16363. short_integer sequence index
  16364. word_flags type
  16365. {
  16366. show on flashing
  16367. show on empty
  16368. show on reload/overheating
  16369. show on default
  16370. show always
  16371. }
  16372. long_flags flags
  16373. {
  16374. flashes when active
  16375. }
  16376. pad[16]
  16377. pad[40]
  16378. }
  16379. }
  16380. pad[40]
  16381. }
  16382. }
  16383. pad[4]
  16384. pad[12]
  16385. block screen effect
  16386. {
  16387. Name: global_hud_screen_effect_definition
  16388. Max Chunks: 1
  16389. Chunk Size: 184
  16390. Max Chunks x Chunk Size: 184
  16391. Chunk Definition Offset: 0x5c3610
  16392. {
  16393. pad[4]
  16394. explanation mask
  16395. {
  16396. Dialog Data Offset: 0x4b6308
  16397. {
  16398. Mask bitmap overlay. Use either a 2D bitmap or an interface bitmap.
  16399. }
  16400. }
  16401. word_flags flags
  16402. {
  16403. only when zoomed
  16404. }
  16405. pad[2]
  16406. pad[16]
  16407. tag reference mask (fullscreen)
  16408. {
  16409. Supported tag class category: bitm
  16410. }
  16411. tag reference mask (splitscreen)
  16412. {
  16413. Supported tag class category: bitm
  16414. }
  16415. pad[8]
  16416. explanation convolution
  16417. {
  16418. Dialog Data Offset: 0x4b62a8
  16419. {
  16420. Warp effect like in 'Pitch-Black', sort of.
  16421. }
  16422. }
  16423. word_flags flags
  16424. {
  16425. only when zoomed
  16426. }
  16427. pad[2]
  16428. angle_bounds FOV in bounds:degrees
  16429. real_bounds radius out bounds:pixels
  16430. pad[24]
  16431. explanation night-vision
  16432. {
  16433. Dialog Data Offset: 0x4b6220
  16434. {
  16435. Real-time gamma correction to make dark objects appear brighter.
  16436. }
  16437. }
  16438. word_flags flags
  16439. {
  16440. only when zoomed
  16441. connect to flashlight
  16442. masked
  16443. }
  16444. short_integer script source:[0,3]
  16445. real_fraction intensity:[0,1]
  16446. pad[24]
  16447. explanation desaturation
  16448. {
  16449. Dialog Data Offset: 0x4b61c0
  16450. {
  16451. Real-time monochromatic color filter.
  16452. }
  16453. }
  16454. word_flags flags
  16455. {
  16456. only when zoomed
  16457. connect to flashlight
  16458. additive
  16459. masked
  16460. }
  16461. short_integer script source:[0,3]
  16462. real_fraction intensity:[0,1]
  16463. real_rgb_color tint
  16464. pad[24]
  16465. }
  16466. }
  16467. pad[132]
  16468. explanation Messaging information
  16469. {
  16470. Dialog Data Offset: 0x494b11
  16471. {
  16472.  
  16473. }
  16474. }
  16475. short_integer sequence index#sequence index into the global hud icon bitmap
  16476. short_integer width offset#extra spacing beyond bitmap width for text alignment
  16477. point_2d offset from reference corner
  16478. argb_color override icon color
  16479. char_integer frame rate [0,30]
  16480. byte_flags flags
  16481. {
  16482. use text from string_list instead
  16483. override default color
  16484. width offset is absolute icon width
  16485. }
  16486. short_integer text index
  16487. pad[48]
  16488. POORLY-DETERMINED MIN FILESIZE OF wphi (including 64-byte header): 444
  16489. POORLY-DETERMINED MAX FILESIZE OF wphi (including 64-byte header): 40042
  16490.  
  16491. Tag Definition Offset: 0x5c6328
  16492. Extension: grenade_hud_interface
  16493. Unknown: 8
  16494. Class: grhi
  16495. No superclass
  16496. Version: 1
  16497. Dialog Data Offset: 0x48c8c0
  16498. Definition Block:
  16499. {
  16500. Name: grenade_hud_interface
  16501. Count: 1
  16502. Size: 504
  16503. Chunks Offset: 0x5c5f00
  16504. }
  16505. custom
  16506. {
  16507. Field Class: ghis
  16508. }
  16509. explanation Grenade hud screen alignment
  16510. {
  16511. Dialog Data Offset: 0x494b11
  16512. {
  16513.  
  16514. }
  16515. }
  16516. enum anchor
  16517. {
  16518. top left
  16519. top right
  16520. bottom left
  16521. bottom right
  16522. center
  16523. }
  16524. pad[2]
  16525. pad[32]
  16526. explanation Grenade hud background
  16527. {
  16528. Dialog Data Offset: 0x494b11
  16529. {
  16530.  
  16531. }
  16532. }
  16533. point_2d anchor offset
  16534. real width scale
  16535. real height scale
  16536. word_flags scaling flags
  16537. {
  16538. don't scale offset
  16539. don't scale size
  16540. use high res scale
  16541. }
  16542. pad[2]
  16543. pad[20]
  16544. tag reference interface bitmap
  16545. {
  16546. Supported tag class category: bitm
  16547. }
  16548. argb_color default color
  16549. argb_color flashing color
  16550. real flash period
  16551. real flash delay
  16552. {
  16553. Hidden documentation: time between flashes
  16554. }
  16555. short_integer number of flashes
  16556. word_flags flash flags
  16557. {
  16558. reverse default/flashing colors
  16559. }
  16560. real flash length
  16561. {
  16562. Hidden documentation: time of each flash
  16563. }
  16564. argb_color disabled color
  16565. pad[4]
  16566. short_integer sequence index
  16567. pad[2]
  16568. block multitex overlay
  16569. {
  16570. Name: global_hud_multitexture_overlay_definition
  16571. Max Chunks: 30
  16572. Chunk Size: 480
  16573. Max Chunks x Chunk Size: 14400
  16574. Chunk Definition Offset: 0x5c3940
  16575. {
  16576. pad[2]
  16577. short_integer type
  16578. enum framebuffer blend func
  16579. {
  16580. alpha blend
  16581. multiply
  16582. double multiply
  16583. add
  16584. subtract
  16585. component min
  16586. component max
  16587. alpha-multiply add
  16588. }
  16589. pad[2]
  16590. pad[32]
  16591. explanation anchors
  16592. {
  16593. Dialog Data Offset: 0x4b5c38
  16594. {
  16595. where you want the origin of the texture.
  16596. *"texture" uses the texture coordinates supplied
  16597. *"screen" uses the origin of the screen as the origin of the texture
  16598. }
  16599. }
  16600. enum primary anchor
  16601. {
  16602. texture
  16603. screen
  16604. }
  16605. enum secondary anchor
  16606. {
  16607. texture
  16608. screen
  16609. }
  16610. enum tertiary anchor
  16611. {
  16612. texture
  16613. screen
  16614. }
  16615. explanation blending function
  16616. {
  16617. Dialog Data Offset: 0x4b5bcc
  16618. {
  16619. how to blend the textures together
  16620. }
  16621. }
  16622. enum 0 to 1 blend func
  16623. {
  16624. add
  16625. subtract
  16626. multiply
  16627. multiply2x
  16628. dot
  16629. }
  16630. enum 1 to 2 blend func
  16631. {
  16632. add
  16633. subtract
  16634. multiply
  16635. multiply2x
  16636. dot
  16637. }
  16638. pad[2]
  16639. explanation map scales
  16640. {
  16641. Dialog Data Offset: 0x4b5b78
  16642. {
  16643. how much to scale the textures
  16644. }
  16645. }
  16646. real_point_2d primary scale
  16647. real_point_2d secondary scale
  16648. real_point_2d tertiary scale
  16649. explanation map offsets
  16650. {
  16651. Dialog Data Offset: 0x4b5b0c
  16652. {
  16653. how much to offset the origin of the texture
  16654. }
  16655. }
  16656. real_point_2d primary offset
  16657. real_point_2d secondary offset
  16658. real_point_2d tertiary offset
  16659. explanation map
  16660. {
  16661. Dialog Data Offset: 0x4b5ac0
  16662. {
  16663. which maps to use
  16664. }
  16665. }
  16666. tag reference primary
  16667. {
  16668. Supported tag class category: bitm
  16669. }
  16670. tag reference secondary
  16671. {
  16672. Supported tag class category: bitm
  16673. }
  16674. tag reference tertiary
  16675. {
  16676. Supported tag class category: bitm
  16677. }
  16678. enum primary wrap mode
  16679. {
  16680. clamp
  16681. wrap
  16682. }
  16683. enum secondary wrap mode
  16684. {
  16685. clamp
  16686. wrap
  16687. }
  16688. enum tertiary wrap mode
  16689. {
  16690. clamp
  16691. wrap
  16692. }
  16693. pad[2]
  16694. pad[184]
  16695. block effectors
  16696. {
  16697. Name: global_hud_multitexture_overlay_effector_definition
  16698. Max Chunks: 30
  16699. Chunk Size: 220
  16700. Max Chunks x Chunk Size: 6600
  16701. Chunk Definition Offset: 0x5c3820
  16702. {
  16703. pad[64]
  16704. explanation source/destination
  16705. {
  16706. Dialog Data Offset: 0x4b5f40
  16707. {
  16708. These describe the relationship that causes the effect.
  16709. * destination type is the type of variable you want to be effected
  16710. * destination tells which texture map (or geometry offset) to apply it to
  16711. * source says which value to look at when computing the effect
  16712. }
  16713. }
  16714. enum destination type
  16715. {
  16716. tint [0,1]
  16717. horizontal offset
  16718. vertical offset
  16719. fade [0,1]
  16720. }
  16721. enum destination
  16722. {
  16723. geometry offset
  16724. primary map
  16725. secondary map
  16726. tertiary map
  16727. }
  16728. enum source
  16729. {
  16730. player pitch
  16731. player pitch tangent
  16732. player yaw
  16733. weapon ammo (total)
  16734. weapon ammo (loaded)
  16735. weapon heat
  16736. explicit (uses low bound)
  16737. weapon zoom level
  16738. }
  16739. pad[2]
  16740. explanation in/out bounds
  16741. {
  16742. Dialog Data Offset: 0x4b5e88
  16743. {
  16744. When the source is at the lower inbound, the destination ends up the lower outbound and vice-versa applies for the upper values.
  16745. }
  16746. }
  16747. real_bounds in bounds:source units
  16748. real_bounds out bounds:pixels
  16749. pad[64]
  16750. explanation tint color bounds
  16751. {
  16752. Dialog Data Offset: 0x4b5df8
  16753. {
  16754. If destination is tint, these values are used instead of the out bounds.
  16755. }
  16756. }
  16757. real_rgb_color tint color lower bound
  16758. real_rgb_color tint color upper bound
  16759. explanation periodic functions
  16760. {
  16761. Dialog Data Offset: 0x4b5d68
  16762. {
  16763. If you use a periodic function as the source, this lets you tweak it.
  16764. }
  16765. }
  16766. enum periodic function
  16767. {
  16768. one
  16769. zero
  16770. cosine
  16771. cosine (variable period)
  16772. diagonal wave
  16773. diagonal wave (variable period)
  16774. slide
  16775. slide (variable period)
  16776. noise
  16777. jitter
  16778. wander
  16779. spark
  16780. }
  16781. pad[2]
  16782. real function period:seconds
  16783. real function phase:seconds
  16784. pad[32]
  16785. }
  16786. }
  16787. pad[128]
  16788. }
  16789. }
  16790. pad[4]
  16791. explanation Total grenades background
  16792. {
  16793. Dialog Data Offset: 0x494b11
  16794. {
  16795.  
  16796. }
  16797. }
  16798. point_2d anchor offset
  16799. real width scale
  16800. real height scale
  16801. word_flags scaling flags
  16802. {
  16803. don't scale offset
  16804. don't scale size
  16805. use high res scale
  16806. }
  16807. pad[2]
  16808. pad[20]
  16809. tag reference interface bitmap
  16810. {
  16811. Supported tag class category: bitm
  16812. }
  16813. argb_color default color
  16814. argb_color flashing color
  16815. real flash period
  16816. real flash delay
  16817. {
  16818. Hidden documentation: time between flashes
  16819. }
  16820. short_integer number of flashes
  16821. word_flags flash flags
  16822. {
  16823. reverse default/flashing colors
  16824. }
  16825. real flash length
  16826. {
  16827. Hidden documentation: time of each flash
  16828. }
  16829. argb_color disabled color
  16830. pad[4]
  16831. short_integer sequence index
  16832. pad[2]
  16833. block multitex overlay
  16834. {
  16835. Name: global_hud_multitexture_overlay_definition
  16836. Max Chunks: 30
  16837. Chunk Size: 480
  16838. Max Chunks x Chunk Size: 14400
  16839. Chunk Definition Offset: 0x5c3940
  16840. {
  16841. pad[2]
  16842. short_integer type
  16843. enum framebuffer blend func
  16844. {
  16845. alpha blend
  16846. multiply
  16847. double multiply
  16848. add
  16849. subtract
  16850. component min
  16851. component max
  16852. alpha-multiply add
  16853. }
  16854. pad[2]
  16855. pad[32]
  16856. explanation anchors
  16857. {
  16858. Dialog Data Offset: 0x4b5c38
  16859. {
  16860. where you want the origin of the texture.
  16861. *"texture" uses the texture coordinates supplied
  16862. *"screen" uses the origin of the screen as the origin of the texture
  16863. }
  16864. }
  16865. enum primary anchor
  16866. {
  16867. texture
  16868. screen
  16869. }
  16870. enum secondary anchor
  16871. {
  16872. texture
  16873. screen
  16874. }
  16875. enum tertiary anchor
  16876. {
  16877. texture
  16878. screen
  16879. }
  16880. explanation blending function
  16881. {
  16882. Dialog Data Offset: 0x4b5bcc
  16883. {
  16884. how to blend the textures together
  16885. }
  16886. }
  16887. enum 0 to 1 blend func
  16888. {
  16889. add
  16890. subtract
  16891. multiply
  16892. multiply2x
  16893. dot
  16894. }
  16895. enum 1 to 2 blend func
  16896. {
  16897. add
  16898. subtract
  16899. multiply
  16900. multiply2x
  16901. dot
  16902. }
  16903. pad[2]
  16904. explanation map scales
  16905. {
  16906. Dialog Data Offset: 0x4b5b78
  16907. {
  16908. how much to scale the textures
  16909. }
  16910. }
  16911. real_point_2d primary scale
  16912. real_point_2d secondary scale
  16913. real_point_2d tertiary scale
  16914. explanation map offsets
  16915. {
  16916. Dialog Data Offset: 0x4b5b0c
  16917. {
  16918. how much to offset the origin of the texture
  16919. }
  16920. }
  16921. real_point_2d primary offset
  16922. real_point_2d secondary offset
  16923. real_point_2d tertiary offset
  16924. explanation map
  16925. {
  16926. Dialog Data Offset: 0x4b5ac0
  16927. {
  16928. which maps to use
  16929. }
  16930. }
  16931. tag reference primary
  16932. {
  16933. Supported tag class category: bitm
  16934. }
  16935. tag reference secondary
  16936. {
  16937. Supported tag class category: bitm
  16938. }
  16939. tag reference tertiary
  16940. {
  16941. Supported tag class category: bitm
  16942. }
  16943. enum primary wrap mode
  16944. {
  16945. clamp
  16946. wrap
  16947. }
  16948. enum secondary wrap mode
  16949. {
  16950. clamp
  16951. wrap
  16952. }
  16953. enum tertiary wrap mode
  16954. {
  16955. clamp
  16956. wrap
  16957. }
  16958. pad[2]
  16959. pad[184]
  16960. block effectors
  16961. {
  16962. Name: global_hud_multitexture_overlay_effector_definition
  16963. Max Chunks: 30
  16964. Chunk Size: 220
  16965. Max Chunks x Chunk Size: 6600
  16966. Chunk Definition Offset: 0x5c3820
  16967. {
  16968. pad[64]
  16969. explanation source/destination
  16970. {
  16971. Dialog Data Offset: 0x4b5f40
  16972. {
  16973. These describe the relationship that causes the effect.
  16974. * destination type is the type of variable you want to be effected
  16975. * destination tells which texture map (or geometry offset) to apply it to
  16976. * source says which value to look at when computing the effect
  16977. }
  16978. }
  16979. enum destination type
  16980. {
  16981. tint [0,1]
  16982. horizontal offset
  16983. vertical offset
  16984. fade [0,1]
  16985. }
  16986. enum destination
  16987. {
  16988. geometry offset
  16989. primary map
  16990. secondary map
  16991. tertiary map
  16992. }
  16993. enum source
  16994. {
  16995. player pitch
  16996. player pitch tangent
  16997. player yaw
  16998. weapon ammo (total)
  16999. weapon ammo (loaded)
  17000. weapon heat
  17001. explicit (uses low bound)
  17002. weapon zoom level
  17003. }
  17004. pad[2]
  17005. explanation in/out bounds
  17006. {
  17007. Dialog Data Offset: 0x4b5e88
  17008. {
  17009. When the source is at the lower inbound, the destination ends up the lower outbound and vice-versa applies for the upper values.
  17010. }
  17011. }
  17012. real_bounds in bounds:source units
  17013. real_bounds out bounds:pixels
  17014. pad[64]
  17015. explanation tint color bounds
  17016. {
  17017. Dialog Data Offset: 0x4b5df8
  17018. {
  17019. If destination is tint, these values are used instead of the out bounds.
  17020. }
  17021. }
  17022. real_rgb_color tint color lower bound
  17023. real_rgb_color tint color upper bound
  17024. explanation periodic functions
  17025. {
  17026. Dialog Data Offset: 0x4b5d68
  17027. {
  17028. If you use a periodic function as the source, this lets you tweak it.
  17029. }
  17030. }
  17031. enum periodic function
  17032. {
  17033. one
  17034. zero
  17035. cosine
  17036. cosine (variable period)
  17037. diagonal wave
  17038. diagonal wave (variable period)
  17039. slide
  17040. slide (variable period)
  17041. noise
  17042. jitter
  17043. wander
  17044. spark
  17045. }
  17046. pad[2]
  17047. real function period:seconds
  17048. real function phase:seconds
  17049. pad[32]
  17050. }
  17051. }
  17052. pad[128]
  17053. }
  17054. }
  17055. pad[4]
  17056. explanation Total grenades numbers
  17057. {
  17058. Dialog Data Offset: 0x494b11
  17059. {
  17060.  
  17061. }
  17062. }
  17063. point_2d anchor offset
  17064. real width scale
  17065. real height scale
  17066. word_flags scaling flags
  17067. {
  17068. don't scale offset
  17069. don't scale size
  17070. use high res scale
  17071. }
  17072. pad[2]
  17073. pad[20]
  17074. argb_color default color
  17075. argb_color flashing color
  17076. real flash period
  17077. real flash delay
  17078. {
  17079. Hidden documentation: time between flashes
  17080. }
  17081. short_integer number of flashes
  17082. word_flags flash flags
  17083. {
  17084. reverse default/flashing colors
  17085. }
  17086. real flash length
  17087. {
  17088. Hidden documentation: time of each flash
  17089. }
  17090. argb_color disabled color
  17091. pad[4]
  17092. char_integer maximum number of digits
  17093. byte_flags flags
  17094. {
  17095. show leading zeros
  17096. only show when zoomed
  17097. draw a trailing m
  17098. }
  17099. char_integer number of fractional digits
  17100. pad[1]
  17101. pad[12]
  17102. short_integer flash cutoff
  17103. pad[2]
  17104. explanation Total grenades overlays
  17105. {
  17106. Dialog Data Offset: 0x494b11
  17107. {
  17108.  
  17109. }
  17110. }
  17111. tag reference Overlay bitmap
  17112. {
  17113. Supported tag class category: bitm
  17114. }
  17115. block Overlays
  17116. {
  17117. Name: grenade_hud_overlay_block
  17118. Max Chunks: 16
  17119. Chunk Size: 136
  17120. Max Chunks x Chunk Size: 2176
  17121. Chunk Definition Offset: 0x5c5d40
  17122. {
  17123. point_2d anchor offset
  17124. real width scale
  17125. real height scale
  17126. word_flags scaling flags
  17127. {
  17128. don't scale offset
  17129. don't scale size
  17130. use high res scale
  17131. }
  17132. pad[2]
  17133. pad[20]
  17134. argb_color default color
  17135. argb_color flashing color
  17136. real flash period
  17137. real flash delay
  17138. {
  17139. Hidden documentation: time between flashes
  17140. }
  17141. short_integer number of flashes
  17142. word_flags flash flags
  17143. {
  17144. reverse default/flashing colors
  17145. }
  17146. real flash length
  17147. {
  17148. Hidden documentation: time of each flash
  17149. }
  17150. argb_color disabled color
  17151. pad[4]
  17152. real frame rate
  17153. short_integer sequence index
  17154. word_flags type
  17155. {
  17156. show on flashing
  17157. show on empty
  17158. show on default
  17159. show always
  17160. }
  17161. long_flags flags
  17162. {
  17163. flashes when active
  17164. }
  17165. pad[16]
  17166. pad[40]
  17167. }
  17168. }
  17169. block Warning sounds
  17170. {
  17171. Name: grenade_hud_sound_block
  17172. Max Chunks: 12
  17173. Chunk Size: 56
  17174. Max Chunks x Chunk Size: 672
  17175. Chunk Definition Offset: 0x5c5e94
  17176. {
  17177. tag reference sound^
  17178. {
  17179. Supported tag class: snd!
  17180. Supported tag class: lsnd
  17181. }
  17182. long_flags latched to
  17183. {
  17184. low grenade count
  17185. no grenades left
  17186. throw on no grenades
  17187. }
  17188. real scale
  17189. pad[32]
  17190. }
  17191. }
  17192. pad[68]
  17193. explanation Messaging information
  17194. {
  17195. Dialog Data Offset: 0x494b11
  17196. {
  17197.  
  17198. }
  17199. }
  17200. short_integer sequence index#sequence index into the global hud icon bitmap
  17201. short_integer width offset#extra spacing beyond bitmap width for text alignment
  17202. point_2d offset from reference corner
  17203. argb_color override icon color
  17204. char_integer frame rate [0,30]
  17205. byte_flags flags
  17206. {
  17207. use text from string_list instead
  17208. override default color
  17209. width offset is absolute icon width
  17210. }
  17211. short_integer text index
  17212. pad[48]
  17213. POORLY-DETERMINED MIN FILESIZE OF grhi (including 64-byte header): 568
  17214. POORLY-DETERMINED MAX FILESIZE OF grhi (including 64-byte header): 47966
  17215.  
  17216. Tag Definition Offset: 0x5c5118
  17217. Extension: unit_hud_interface
  17218. Unknown: 8
  17219. Class: unhi
  17220. No superclass
  17221. Version: 1
  17222. Dialog Data Offset: 0x48c400
  17223. Definition Block:
  17224. {
  17225. Name: unit_hud_interface
  17226. Count: 1
  17227. Size: 1388
  17228. Chunks Offset: 0x5c4840
  17229. }
  17230. custom
  17231. {
  17232. Field Class: uhis
  17233. }
  17234. explanation Weapon hud screen alignment
  17235. {
  17236. Dialog Data Offset: 0x494b11
  17237. {
  17238.  
  17239. }
  17240. }
  17241. enum anchor
  17242. {
  17243. top left
  17244. top right
  17245. bottom left
  17246. bottom right
  17247. center
  17248. }
  17249. pad[2]
  17250. pad[32]
  17251. explanation Unit hud background
  17252. {
  17253. Dialog Data Offset: 0x494b11
  17254. {
  17255.  
  17256. }
  17257. }
  17258. point_2d anchor offset
  17259. real width scale
  17260. real height scale
  17261. word_flags scaling flags
  17262. {
  17263. don't scale offset
  17264. don't scale size
  17265. use high res scale
  17266. }
  17267. pad[2]
  17268. pad[20]
  17269. tag reference interface bitmap
  17270. {
  17271. Supported tag class category: bitm
  17272. }
  17273. argb_color default color
  17274. argb_color flashing color
  17275. real flash period
  17276. real flash delay
  17277. {
  17278. Hidden documentation: time between flashes
  17279. }
  17280. short_integer number of flashes
  17281. word_flags flash flags
  17282. {
  17283. reverse default/flashing colors
  17284. }
  17285. real flash length
  17286. {
  17287. Hidden documentation: time of each flash
  17288. }
  17289. argb_color disabled color
  17290. pad[4]
  17291. short_integer sequence index
  17292. pad[2]
  17293. block multitex overlay
  17294. {
  17295. Name: global_hud_multitexture_overlay_definition
  17296. Max Chunks: 30
  17297. Chunk Size: 480
  17298. Max Chunks x Chunk Size: 14400
  17299. Chunk Definition Offset: 0x5c3940
  17300. {
  17301. pad[2]
  17302. short_integer type
  17303. enum framebuffer blend func
  17304. {
  17305. alpha blend
  17306. multiply
  17307. double multiply
  17308. add
  17309. subtract
  17310. component min
  17311. component max
  17312. alpha-multiply add
  17313. }
  17314. pad[2]
  17315. pad[32]
  17316. explanation anchors
  17317. {
  17318. Dialog Data Offset: 0x4b5c38
  17319. {
  17320. where you want the origin of the texture.
  17321. *"texture" uses the texture coordinates supplied
  17322. *"screen" uses the origin of the screen as the origin of the texture
  17323. }
  17324. }
  17325. enum primary anchor
  17326. {
  17327. texture
  17328. screen
  17329. }
  17330. enum secondary anchor
  17331. {
  17332. texture
  17333. screen
  17334. }
  17335. enum tertiary anchor
  17336. {
  17337. texture
  17338. screen
  17339. }
  17340. explanation blending function
  17341. {
  17342. Dialog Data Offset: 0x4b5bcc
  17343. {
  17344. how to blend the textures together
  17345. }
  17346. }
  17347. enum 0 to 1 blend func
  17348. {
  17349. add
  17350. subtract
  17351. multiply
  17352. multiply2x
  17353. dot
  17354. }
  17355. enum 1 to 2 blend func
  17356. {
  17357. add
  17358. subtract
  17359. multiply
  17360. multiply2x
  17361. dot
  17362. }
  17363. pad[2]
  17364. explanation map scales
  17365. {
  17366. Dialog Data Offset: 0x4b5b78
  17367. {
  17368. how much to scale the textures
  17369. }
  17370. }
  17371. real_point_2d primary scale
  17372. real_point_2d secondary scale
  17373. real_point_2d tertiary scale
  17374. explanation map offsets
  17375. {
  17376. Dialog Data Offset: 0x4b5b0c
  17377. {
  17378. how much to offset the origin of the texture
  17379. }
  17380. }
  17381. real_point_2d primary offset
  17382. real_point_2d secondary offset
  17383. real_point_2d tertiary offset
  17384. explanation map
  17385. {
  17386. Dialog Data Offset: 0x4b5ac0
  17387. {
  17388. which maps to use
  17389. }
  17390. }
  17391. tag reference primary
  17392. {
  17393. Supported tag class category: bitm
  17394. }
  17395. tag reference secondary
  17396. {
  17397. Supported tag class category: bitm
  17398. }
  17399. tag reference tertiary
  17400. {
  17401. Supported tag class category: bitm
  17402. }
  17403. enum primary wrap mode
  17404. {
  17405. clamp
  17406. wrap
  17407. }
  17408. enum secondary wrap mode
  17409. {
  17410. clamp
  17411. wrap
  17412. }
  17413. enum tertiary wrap mode
  17414. {
  17415. clamp
  17416. wrap
  17417. }
  17418. pad[2]
  17419. pad[184]
  17420. block effectors
  17421. {
  17422. Name: global_hud_multitexture_overlay_effector_definition
  17423. Max Chunks: 30
  17424. Chunk Size: 220
  17425. Max Chunks x Chunk Size: 6600
  17426. Chunk Definition Offset: 0x5c3820
  17427. {
  17428. pad[64]
  17429. explanation source/destination
  17430. {
  17431. Dialog Data Offset: 0x4b5f40
  17432. {
  17433. These describe the relationship that causes the effect.
  17434. * destination type is the type of variable you want to be effected
  17435. * destination tells which texture map (or geometry offset) to apply it to
  17436. * source says which value to look at when computing the effect
  17437. }
  17438. }
  17439. enum destination type
  17440. {
  17441. tint [0,1]
  17442. horizontal offset
  17443. vertical offset
  17444. fade [0,1]
  17445. }
  17446. enum destination
  17447. {
  17448. geometry offset
  17449. primary map
  17450. secondary map
  17451. tertiary map
  17452. }
  17453. enum source
  17454. {
  17455. player pitch
  17456. player pitch tangent
  17457. player yaw
  17458. weapon ammo (total)
  17459. weapon ammo (loaded)
  17460. weapon heat
  17461. explicit (uses low bound)
  17462. weapon zoom level
  17463. }
  17464. pad[2]
  17465. explanation in/out bounds
  17466. {
  17467. Dialog Data Offset: 0x4b5e88
  17468. {
  17469. When the source is at the lower inbound, the destination ends up the lower outbound and vice-versa applies for the upper values.
  17470. }
  17471. }
  17472. real_bounds in bounds:source units
  17473. real_bounds out bounds:pixels
  17474. pad[64]
  17475. explanation tint color bounds
  17476. {
  17477. Dialog Data Offset: 0x4b5df8
  17478. {
  17479. If destination is tint, these values are used instead of the out bounds.
  17480. }
  17481. }
  17482. real_rgb_color tint color lower bound
  17483. real_rgb_color tint color upper bound
  17484. explanation periodic functions
  17485. {
  17486. Dialog Data Offset: 0x4b5d68
  17487. {
  17488. If you use a periodic function as the source, this lets you tweak it.
  17489. }
  17490. }
  17491. enum periodic function
  17492. {
  17493. one
  17494. zero
  17495. cosine
  17496. cosine (variable period)
  17497. diagonal wave
  17498. diagonal wave (variable period)
  17499. slide
  17500. slide (variable period)
  17501. noise
  17502. jitter
  17503. wander
  17504. spark
  17505. }
  17506. pad[2]
  17507. real function period:seconds
  17508. real function phase:seconds
  17509. pad[32]
  17510. }
  17511. }
  17512. pad[128]
  17513. }
  17514. }
  17515. pad[4]
  17516. explanation Shield panel background
  17517. {
  17518. Dialog Data Offset: 0x494b11
  17519. {
  17520.  
  17521. }
  17522. }
  17523. point_2d anchor offset
  17524. real width scale
  17525. real height scale
  17526. word_flags scaling flags
  17527. {
  17528. don't scale offset
  17529. don't scale size
  17530. use high res scale
  17531. }
  17532. pad[2]
  17533. pad[20]
  17534. tag reference interface bitmap
  17535. {
  17536. Supported tag class category: bitm
  17537. }
  17538. argb_color default color
  17539. argb_color flashing color
  17540. real flash period
  17541. real flash delay
  17542. {
  17543. Hidden documentation: time between flashes
  17544. }
  17545. short_integer number of flashes
  17546. word_flags flash flags
  17547. {
  17548. reverse default/flashing colors
  17549. }
  17550. real flash length
  17551. {
  17552. Hidden documentation: time of each flash
  17553. }
  17554. argb_color disabled color
  17555. pad[4]
  17556. short_integer sequence index
  17557. pad[2]
  17558. block multitex overlay
  17559. {
  17560. Name: global_hud_multitexture_overlay_definition
  17561. Max Chunks: 30
  17562. Chunk Size: 480
  17563. Max Chunks x Chunk Size: 14400
  17564. Chunk Definition Offset: 0x5c3940
  17565. {
  17566. pad[2]
  17567. short_integer type
  17568. enum framebuffer blend func
  17569. {
  17570. alpha blend
  17571. multiply
  17572. double multiply
  17573. add
  17574. subtract
  17575. component min
  17576. component max
  17577. alpha-multiply add
  17578. }
  17579. pad[2]
  17580. pad[32]
  17581. explanation anchors
  17582. {
  17583. Dialog Data Offset: 0x4b5c38
  17584. {
  17585. where you want the origin of the texture.
  17586. *"texture" uses the texture coordinates supplied
  17587. *"screen" uses the origin of the screen as the origin of the texture
  17588. }
  17589. }
  17590. enum primary anchor
  17591. {
  17592. texture
  17593. screen
  17594. }
  17595. enum secondary anchor
  17596. {
  17597. texture
  17598. screen
  17599. }
  17600. enum tertiary anchor
  17601. {
  17602. texture
  17603. screen
  17604. }
  17605. explanation blending function
  17606. {
  17607. Dialog Data Offset: 0x4b5bcc
  17608. {
  17609. how to blend the textures together
  17610. }
  17611. }
  17612. enum 0 to 1 blend func
  17613. {
  17614. add
  17615. subtract
  17616. multiply
  17617. multiply2x
  17618. dot
  17619. }
  17620. enum 1 to 2 blend func
  17621. {
  17622. add
  17623. subtract
  17624. multiply
  17625. multiply2x
  17626. dot
  17627. }
  17628. pad[2]
  17629. explanation map scales
  17630. {
  17631. Dialog Data Offset: 0x4b5b78
  17632. {
  17633. how much to scale the textures
  17634. }
  17635. }
  17636. real_point_2d primary scale
  17637. real_point_2d secondary scale
  17638. real_point_2d tertiary scale
  17639. explanation map offsets
  17640. {
  17641. Dialog Data Offset: 0x4b5b0c
  17642. {
  17643. how much to offset the origin of the texture
  17644. }
  17645. }
  17646. real_point_2d primary offset
  17647. real_point_2d secondary offset
  17648. real_point_2d tertiary offset
  17649. explanation map
  17650. {
  17651. Dialog Data Offset: 0x4b5ac0
  17652. {
  17653. which maps to use
  17654. }
  17655. }
  17656. tag reference primary
  17657. {
  17658. Supported tag class category: bitm
  17659. }
  17660. tag reference secondary
  17661. {
  17662. Supported tag class category: bitm
  17663. }
  17664. tag reference tertiary
  17665. {
  17666. Supported tag class category: bitm
  17667. }
  17668. enum primary wrap mode
  17669. {
  17670. clamp
  17671. wrap
  17672. }
  17673. enum secondary wrap mode
  17674. {
  17675. clamp
  17676. wrap
  17677. }
  17678. enum tertiary wrap mode
  17679. {
  17680. clamp
  17681. wrap
  17682. }
  17683. pad[2]
  17684. pad[184]
  17685. block effectors
  17686. {
  17687. Name: global_hud_multitexture_overlay_effector_definition
  17688. Max Chunks: 30
  17689. Chunk Size: 220
  17690. Max Chunks x Chunk Size: 6600
  17691. Chunk Definition Offset: 0x5c3820
  17692. {
  17693. pad[64]
  17694. explanation source/destination
  17695. {
  17696. Dialog Data Offset: 0x4b5f40
  17697. {
  17698. These describe the relationship that causes the effect.
  17699. * destination type is the type of variable you want to be effected
  17700. * destination tells which texture map (or geometry offset) to apply it to
  17701. * source says which value to look at when computing the effect
  17702. }
  17703. }
  17704. enum destination type
  17705. {
  17706. tint [0,1]
  17707. horizontal offset
  17708. vertical offset
  17709. fade [0,1]
  17710. }
  17711. enum destination
  17712. {
  17713. geometry offset
  17714. primary map
  17715. secondary map
  17716. tertiary map
  17717. }
  17718. enum source
  17719. {
  17720. player pitch
  17721. player pitch tangent
  17722. player yaw
  17723. weapon ammo (total)
  17724. weapon ammo (loaded)
  17725. weapon heat
  17726. explicit (uses low bound)
  17727. weapon zoom level
  17728. }
  17729. pad[2]
  17730. explanation in/out bounds
  17731. {
  17732. Dialog Data Offset: 0x4b5e88
  17733. {
  17734. When the source is at the lower inbound, the destination ends up the lower outbound and vice-versa applies for the upper values.
  17735. }
  17736. }
  17737. real_bounds in bounds:source units
  17738. real_bounds out bounds:pixels
  17739. pad[64]
  17740. explanation tint color bounds
  17741. {
  17742. Dialog Data Offset: 0x4b5df8
  17743. {
  17744. If destination is tint, these values are used instead of the out bounds.
  17745. }
  17746. }
  17747. real_rgb_color tint color lower bound
  17748. real_rgb_color tint color upper bound
  17749. explanation periodic functions
  17750. {
  17751. Dialog Data Offset: 0x4b5d68
  17752. {
  17753. If you use a periodic function as the source, this lets you tweak it.
  17754. }
  17755. }
  17756. enum periodic function
  17757. {
  17758. one
  17759. zero
  17760. cosine
  17761. cosine (variable period)
  17762. diagonal wave
  17763. diagonal wave (variable period)
  17764. slide
  17765. slide (variable period)
  17766. noise
  17767. jitter
  17768. wander
  17769. spark
  17770. }
  17771. pad[2]
  17772. real function period:seconds
  17773. real function phase:seconds
  17774. pad[32]
  17775. }
  17776. }
  17777. pad[128]
  17778. }
  17779. }
  17780. pad[4]
  17781. explanation Shield panel meter
  17782. {
  17783. Dialog Data Offset: 0x494b11
  17784. {
  17785.  
  17786. }
  17787. }
  17788. point_2d anchor offset
  17789. real width scale
  17790. real height scale
  17791. word_flags scaling flags
  17792. {
  17793. don't scale offset
  17794. don't scale size
  17795. use high res scale
  17796. }
  17797. pad[2]
  17798. pad[20]
  17799. tag reference meter bitmap
  17800. {
  17801. Supported tag class category: bitm
  17802. }
  17803. rgb_color color at meter minimum
  17804. rgb_color color at meter maximum
  17805. rgb_color flash color
  17806. argb_color empty color
  17807. byte_flags flags
  17808. {
  17809. use min/max for state changes
  17810. interpolate between min/max flash colors as state changes
  17811. interpolate color along hsv space
  17812. ...more colors for hsv interpolation
  17813. invert interpolation
  17814. }
  17815. char_integer minumum meter value
  17816. short_integer sequence index
  17817. char_integer alpha multiplier
  17818. char_integer alpha bias
  17819. short_integer value scale#used for non-integral values, i.e. health and shields
  17820. real opacity
  17821. real translucency
  17822. argb_color disabled color
  17823. pad[16]
  17824. rgb_color overcharge minimum color
  17825. rgb_color overcharge maximum color
  17826. rgb_color overcharge flash color
  17827. rgb_color overcharge empty color
  17828. pad[16]
  17829. explanation Health panel background
  17830. {
  17831. Dialog Data Offset: 0x494b11
  17832. {
  17833.  
  17834. }
  17835. }
  17836. point_2d anchor offset
  17837. real width scale
  17838. real height scale
  17839. word_flags scaling flags
  17840. {
  17841. don't scale offset
  17842. don't scale size
  17843. use high res scale
  17844. }
  17845. pad[2]
  17846. pad[20]
  17847. tag reference interface bitmap
  17848. {
  17849. Supported tag class category: bitm
  17850. }
  17851. argb_color default color
  17852. argb_color flashing color
  17853. real flash period
  17854. real flash delay
  17855. {
  17856. Hidden documentation: time between flashes
  17857. }
  17858. short_integer number of flashes
  17859. word_flags flash flags
  17860. {
  17861. reverse default/flashing colors
  17862. }
  17863. real flash length
  17864. {
  17865. Hidden documentation: time of each flash
  17866. }
  17867. argb_color disabled color
  17868. pad[4]
  17869. short_integer sequence index
  17870. pad[2]
  17871. block multitex overlay
  17872. {
  17873. Name: global_hud_multitexture_overlay_definition
  17874. Max Chunks: 30
  17875. Chunk Size: 480
  17876. Max Chunks x Chunk Size: 14400
  17877. Chunk Definition Offset: 0x5c3940
  17878. {
  17879. pad[2]
  17880. short_integer type
  17881. enum framebuffer blend func
  17882. {
  17883. alpha blend
  17884. multiply
  17885. double multiply
  17886. add
  17887. subtract
  17888. component min
  17889. component max
  17890. alpha-multiply add
  17891. }
  17892. pad[2]
  17893. pad[32]
  17894. explanation anchors
  17895. {
  17896. Dialog Data Offset: 0x4b5c38
  17897. {
  17898. where you want the origin of the texture.
  17899. *"texture" uses the texture coordinates supplied
  17900. *"screen" uses the origin of the screen as the origin of the texture
  17901. }
  17902. }
  17903. enum primary anchor
  17904. {
  17905. texture
  17906. screen
  17907. }
  17908. enum secondary anchor
  17909. {
  17910. texture
  17911. screen
  17912. }
  17913. enum tertiary anchor
  17914. {
  17915. texture
  17916. screen
  17917. }
  17918. explanation blending function
  17919. {
  17920. Dialog Data Offset: 0x4b5bcc
  17921. {
  17922. how to blend the textures together
  17923. }
  17924. }
  17925. enum 0 to 1 blend func
  17926. {
  17927. add
  17928. subtract
  17929. multiply
  17930. multiply2x
  17931. dot
  17932. }
  17933. enum 1 to 2 blend func
  17934. {
  17935. add
  17936. subtract
  17937. multiply
  17938. multiply2x
  17939. dot
  17940. }
  17941. pad[2]
  17942. explanation map scales
  17943. {
  17944. Dialog Data Offset: 0x4b5b78
  17945. {
  17946. how much to scale the textures
  17947. }
  17948. }
  17949. real_point_2d primary scale
  17950. real_point_2d secondary scale
  17951. real_point_2d tertiary scale
  17952. explanation map offsets
  17953. {
  17954. Dialog Data Offset: 0x4b5b0c
  17955. {
  17956. how much to offset the origin of the texture
  17957. }
  17958. }
  17959. real_point_2d primary offset
  17960. real_point_2d secondary offset
  17961. real_point_2d tertiary offset
  17962. explanation map
  17963. {
  17964. Dialog Data Offset: 0x4b5ac0
  17965. {
  17966. which maps to use
  17967. }
  17968. }
  17969. tag reference primary
  17970. {
  17971. Supported tag class category: bitm
  17972. }
  17973. tag reference secondary
  17974. {
  17975. Supported tag class category: bitm
  17976. }
  17977. tag reference tertiary
  17978. {
  17979. Supported tag class category: bitm
  17980. }
  17981. enum primary wrap mode
  17982. {
  17983. clamp
  17984. wrap
  17985. }
  17986. enum secondary wrap mode
  17987. {
  17988. clamp
  17989. wrap
  17990. }
  17991. enum tertiary wrap mode
  17992. {
  17993. clamp
  17994. wrap
  17995. }
  17996. pad[2]
  17997. pad[184]
  17998. block effectors
  17999. {
  18000. Name: global_hud_multitexture_overlay_effector_definition
  18001. Max Chunks: 30
  18002. Chunk Size: 220
  18003. Max Chunks x Chunk Size: 6600
  18004. Chunk Definition Offset: 0x5c3820
  18005. {
  18006. pad[64]
  18007. explanation source/destination
  18008. {
  18009. Dialog Data Offset: 0x4b5f40
  18010. {
  18011. These describe the relationship that causes the effect.
  18012. * destination type is the type of variable you want to be effected
  18013. * destination tells which texture map (or geometry offset) to apply it to
  18014. * source says which value to look at when computing the effect
  18015. }
  18016. }
  18017. enum destination type
  18018. {
  18019. tint [0,1]
  18020. horizontal offset
  18021. vertical offset
  18022. fade [0,1]
  18023. }
  18024. enum destination
  18025. {
  18026. geometry offset
  18027. primary map
  18028. secondary map
  18029. tertiary map
  18030. }
  18031. enum source
  18032. {
  18033. player pitch
  18034. player pitch tangent
  18035. player yaw
  18036. weapon ammo (total)
  18037. weapon ammo (loaded)
  18038. weapon heat
  18039. explicit (uses low bound)
  18040. weapon zoom level
  18041. }
  18042. pad[2]
  18043. explanation in/out bounds
  18044. {
  18045. Dialog Data Offset: 0x4b5e88
  18046. {
  18047. When the source is at the lower inbound, the destination ends up the lower outbound and vice-versa applies for the upper values.
  18048. }
  18049. }
  18050. real_bounds in bounds:source units
  18051. real_bounds out bounds:pixels
  18052. pad[64]
  18053. explanation tint color bounds
  18054. {
  18055. Dialog Data Offset: 0x4b5df8
  18056. {
  18057. If destination is tint, these values are used instead of the out bounds.
  18058. }
  18059. }
  18060. real_rgb_color tint color lower bound
  18061. real_rgb_color tint color upper bound
  18062. explanation periodic functions
  18063. {
  18064. Dialog Data Offset: 0x4b5d68
  18065. {
  18066. If you use a periodic function as the source, this lets you tweak it.
  18067. }
  18068. }
  18069. enum periodic function
  18070. {
  18071. one
  18072. zero
  18073. cosine
  18074. cosine (variable period)
  18075. diagonal wave
  18076. diagonal wave (variable period)
  18077. slide
  18078. slide (variable period)
  18079. noise
  18080. jitter
  18081. wander
  18082. spark
  18083. }
  18084. pad[2]
  18085. real function period:seconds
  18086. real function phase:seconds
  18087. pad[32]
  18088. }
  18089. }
  18090. pad[128]
  18091. }
  18092. }
  18093. pad[4]
  18094. explanation Health panel meter
  18095. {
  18096. Dialog Data Offset: 0x494b11
  18097. {
  18098.  
  18099. }
  18100. }
  18101. point_2d anchor offset
  18102. real width scale
  18103. real height scale
  18104. word_flags scaling flags
  18105. {
  18106. don't scale offset
  18107. don't scale size
  18108. use high res scale
  18109. }
  18110. pad[2]
  18111. pad[20]
  18112. tag reference meter bitmap
  18113. {
  18114. Supported tag class category: bitm
  18115. }
  18116. rgb_color color at meter minimum
  18117. rgb_color color at meter maximum
  18118. rgb_color flash color
  18119. argb_color empty color
  18120. byte_flags flags
  18121. {
  18122. use min/max for state changes
  18123. interpolate between min/max flash colors as state changes
  18124. interpolate color along hsv space
  18125. ...more colors for hsv interpolation
  18126. invert interpolation
  18127. }
  18128. char_integer minumum meter value
  18129. short_integer sequence index
  18130. char_integer alpha multiplier
  18131. char_integer alpha bias
  18132. short_integer value scale#used for non-integral values, i.e. health and shields
  18133. real opacity
  18134. real translucency
  18135. argb_color disabled color
  18136. pad[16]
  18137. rgb_color medium health left color
  18138. real max color health fraction cutoff
  18139. real min color health fraction cutoff
  18140. pad[20]
  18141. explanation Motion sensor background
  18142. {
  18143. Dialog Data Offset: 0x494b11
  18144. {
  18145.  
  18146. }
  18147. }
  18148. point_2d anchor offset
  18149. real width scale
  18150. real height scale
  18151. word_flags scaling flags
  18152. {
  18153. don't scale offset
  18154. don't scale size
  18155. use high res scale
  18156. }
  18157. pad[2]
  18158. pad[20]
  18159. tag reference interface bitmap
  18160. {
  18161. Supported tag class category: bitm
  18162. }
  18163. argb_color default color
  18164. argb_color flashing color
  18165. real flash period
  18166. real flash delay
  18167. {
  18168. Hidden documentation: time between flashes
  18169. }
  18170. short_integer number of flashes
  18171. word_flags flash flags
  18172. {
  18173. reverse default/flashing colors
  18174. }
  18175. real flash length
  18176. {
  18177. Hidden documentation: time of each flash
  18178. }
  18179. argb_color disabled color
  18180. pad[4]
  18181. short_integer sequence index
  18182. pad[2]
  18183. block multitex overlay
  18184. {
  18185. Name: global_hud_multitexture_overlay_definition
  18186. Max Chunks: 30
  18187. Chunk Size: 480
  18188. Max Chunks x Chunk Size: 14400
  18189. Chunk Definition Offset: 0x5c3940
  18190. {
  18191. pad[2]
  18192. short_integer type
  18193. enum framebuffer blend func
  18194. {
  18195. alpha blend
  18196. multiply
  18197. double multiply
  18198. add
  18199. subtract
  18200. component min
  18201. component max
  18202. alpha-multiply add
  18203. }
  18204. pad[2]
  18205. pad[32]
  18206. explanation anchors
  18207. {
  18208. Dialog Data Offset: 0x4b5c38
  18209. {
  18210. where you want the origin of the texture.
  18211. *"texture" uses the texture coordinates supplied
  18212. *"screen" uses the origin of the screen as the origin of the texture
  18213. }
  18214. }
  18215. enum primary anchor
  18216. {
  18217. texture
  18218. screen
  18219. }
  18220. enum secondary anchor
  18221. {
  18222. texture
  18223. screen
  18224. }
  18225. enum tertiary anchor
  18226. {
  18227. texture
  18228. screen
  18229. }
  18230. explanation blending function
  18231. {
  18232. Dialog Data Offset: 0x4b5bcc
  18233. {
  18234. how to blend the textures together
  18235. }
  18236. }
  18237. enum 0 to 1 blend func
  18238. {
  18239. add
  18240. subtract
  18241. multiply
  18242. multiply2x
  18243. dot
  18244. }
  18245. enum 1 to 2 blend func
  18246. {
  18247. add
  18248. subtract
  18249. multiply
  18250. multiply2x
  18251. dot
  18252. }
  18253. pad[2]
  18254. explanation map scales
  18255. {
  18256. Dialog Data Offset: 0x4b5b78
  18257. {
  18258. how much to scale the textures
  18259. }
  18260. }
  18261. real_point_2d primary scale
  18262. real_point_2d secondary scale
  18263. real_point_2d tertiary scale
  18264. explanation map offsets
  18265. {
  18266. Dialog Data Offset: 0x4b5b0c
  18267. {
  18268. how much to offset the origin of the texture
  18269. }
  18270. }
  18271. real_point_2d primary offset
  18272. real_point_2d secondary offset
  18273. real_point_2d tertiary offset
  18274. explanation map
  18275. {
  18276. Dialog Data Offset: 0x4b5ac0
  18277. {
  18278. which maps to use
  18279. }
  18280. }
  18281. tag reference primary
  18282. {
  18283. Supported tag class category: bitm
  18284. }
  18285. tag reference secondary
  18286. {
  18287. Supported tag class category: bitm
  18288. }
  18289. tag reference tertiary
  18290. {
  18291. Supported tag class category: bitm
  18292. }
  18293. enum primary wrap mode
  18294. {
  18295. clamp
  18296. wrap
  18297. }
  18298. enum secondary wrap mode
  18299. {
  18300. clamp
  18301. wrap
  18302. }
  18303. enum tertiary wrap mode
  18304. {
  18305. clamp
  18306. wrap
  18307. }
  18308. pad[2]
  18309. pad[184]
  18310. block effectors
  18311. {
  18312. Name: global_hud_multitexture_overlay_effector_definition
  18313. Max Chunks: 30
  18314. Chunk Size: 220
  18315. Max Chunks x Chunk Size: 6600
  18316. Chunk Definition Offset: 0x5c3820
  18317. {
  18318. pad[64]
  18319. explanation source/destination
  18320. {
  18321. Dialog Data Offset: 0x4b5f40
  18322. {
  18323. These describe the relationship that causes the effect.
  18324. * destination type is the type of variable you want to be effected
  18325. * destination tells which texture map (or geometry offset) to apply it to
  18326. * source says which value to look at when computing the effect
  18327. }
  18328. }
  18329. enum destination type
  18330. {
  18331. tint [0,1]
  18332. horizontal offset
  18333. vertical offset
  18334. fade [0,1]
  18335. }
  18336. enum destination
  18337. {
  18338. geometry offset
  18339. primary map
  18340. secondary map
  18341. tertiary map
  18342. }
  18343. enum source
  18344. {
  18345. player pitch
  18346. player pitch tangent
  18347. player yaw
  18348. weapon ammo (total)
  18349. weapon ammo (loaded)
  18350. weapon heat
  18351. explicit (uses low bound)
  18352. weapon zoom level
  18353. }
  18354. pad[2]
  18355. explanation in/out bounds
  18356. {
  18357. Dialog Data Offset: 0x4b5e88
  18358. {
  18359. When the source is at the lower inbound, the destination ends up the lower outbound and vice-versa applies for the upper values.
  18360. }
  18361. }
  18362. real_bounds in bounds:source units
  18363. real_bounds out bounds:pixels
  18364. pad[64]
  18365. explanation tint color bounds
  18366. {
  18367. Dialog Data Offset: 0x4b5df8
  18368. {
  18369. If destination is tint, these values are used instead of the out bounds.
  18370. }
  18371. }
  18372. real_rgb_color tint color lower bound
  18373. real_rgb_color tint color upper bound
  18374. explanation periodic functions
  18375. {
  18376. Dialog Data Offset: 0x4b5d68
  18377. {
  18378. If you use a periodic function as the source, this lets you tweak it.
  18379. }
  18380. }
  18381. enum periodic function
  18382. {
  18383. one
  18384. zero
  18385. cosine
  18386. cosine (variable period)
  18387. diagonal wave
  18388. diagonal wave (variable period)
  18389. slide
  18390. slide (variable period)
  18391. noise
  18392. jitter
  18393. wander
  18394. spark
  18395. }
  18396. pad[2]
  18397. real function period:seconds
  18398. real function phase:seconds
  18399. pad[32]
  18400. }
  18401. }
  18402. pad[128]
  18403. }
  18404. }
  18405. pad[4]
  18406. explanation Motion sensor foreground
  18407. {
  18408. Dialog Data Offset: 0x494b11
  18409. {
  18410.  
  18411. }
  18412. }
  18413. point_2d anchor offset
  18414. real width scale
  18415. real height scale
  18416. word_flags scaling flags
  18417. {
  18418. don't scale offset
  18419. don't scale size
  18420. use high res scale
  18421. }
  18422. pad[2]
  18423. pad[20]
  18424. tag reference interface bitmap
  18425. {
  18426. Supported tag class category: bitm
  18427. }
  18428. argb_color default color
  18429. argb_color flashing color
  18430. real flash period
  18431. real flash delay
  18432. {
  18433. Hidden documentation: time between flashes
  18434. }
  18435. short_integer number of flashes
  18436. word_flags flash flags
  18437. {
  18438. reverse default/flashing colors
  18439. }
  18440. real flash length
  18441. {
  18442. Hidden documentation: time of each flash
  18443. }
  18444. argb_color disabled color
  18445. pad[4]
  18446. short_integer sequence index
  18447. pad[2]
  18448. block multitex overlay
  18449. {
  18450. Name: global_hud_multitexture_overlay_definition
  18451. Max Chunks: 30
  18452. Chunk Size: 480
  18453. Max Chunks x Chunk Size: 14400
  18454. Chunk Definition Offset: 0x5c3940
  18455. {
  18456. pad[2]
  18457. short_integer type
  18458. enum framebuffer blend func
  18459. {
  18460. alpha blend
  18461. multiply
  18462. double multiply
  18463. add
  18464. subtract
  18465. component min
  18466. component max
  18467. alpha-multiply add
  18468. }
  18469. pad[2]
  18470. pad[32]
  18471. explanation anchors
  18472. {
  18473. Dialog Data Offset: 0x4b5c38
  18474. {
  18475. where you want the origin of the texture.
  18476. *"texture" uses the texture coordinates supplied
  18477. *"screen" uses the origin of the screen as the origin of the texture
  18478. }
  18479. }
  18480. enum primary anchor
  18481. {
  18482. texture
  18483. screen
  18484. }
  18485. enum secondary anchor
  18486. {
  18487. texture
  18488. screen
  18489. }
  18490. enum tertiary anchor
  18491. {
  18492. texture
  18493. screen
  18494. }
  18495. explanation blending function
  18496. {
  18497. Dialog Data Offset: 0x4b5bcc
  18498. {
  18499. how to blend the textures together
  18500. }
  18501. }
  18502. enum 0 to 1 blend func
  18503. {
  18504. add
  18505. subtract
  18506. multiply
  18507. multiply2x
  18508. dot
  18509. }
  18510. enum 1 to 2 blend func
  18511. {
  18512. add
  18513. subtract
  18514. multiply
  18515. multiply2x
  18516. dot
  18517. }
  18518. pad[2]
  18519. explanation map scales
  18520. {
  18521. Dialog Data Offset: 0x4b5b78
  18522. {
  18523. how much to scale the textures
  18524. }
  18525. }
  18526. real_point_2d primary scale
  18527. real_point_2d secondary scale
  18528. real_point_2d tertiary scale
  18529. explanation map offsets
  18530. {
  18531. Dialog Data Offset: 0x4b5b0c
  18532. {
  18533. how much to offset the origin of the texture
  18534. }
  18535. }
  18536. real_point_2d primary offset
  18537. real_point_2d secondary offset
  18538. real_point_2d tertiary offset
  18539. explanation map
  18540. {
  18541. Dialog Data Offset: 0x4b5ac0
  18542. {
  18543. which maps to use
  18544. }
  18545. }
  18546. tag reference primary
  18547. {
  18548. Supported tag class category: bitm
  18549. }
  18550. tag reference secondary
  18551. {
  18552. Supported tag class category: bitm
  18553. }
  18554. tag reference tertiary
  18555. {
  18556. Supported tag class category: bitm
  18557. }
  18558. enum primary wrap mode
  18559. {
  18560. clamp
  18561. wrap
  18562. }
  18563. enum secondary wrap mode
  18564. {
  18565. clamp
  18566. wrap
  18567. }
  18568. enum tertiary wrap mode
  18569. {
  18570. clamp
  18571. wrap
  18572. }
  18573. pad[2]
  18574. pad[184]
  18575. block effectors
  18576. {
  18577. Name: global_hud_multitexture_overlay_effector_definition
  18578. Max Chunks: 30
  18579. Chunk Size: 220
  18580. Max Chunks x Chunk Size: 6600
  18581. Chunk Definition Offset: 0x5c3820
  18582. {
  18583. pad[64]
  18584. explanation source/destination
  18585. {
  18586. Dialog Data Offset: 0x4b5f40
  18587. {
  18588. These describe the relationship that causes the effect.
  18589. * destination type is the type of variable you want to be effected
  18590. * destination tells which texture map (or geometry offset) to apply it to
  18591. * source says which value to look at when computing the effect
  18592. }
  18593. }
  18594. enum destination type
  18595. {
  18596. tint [0,1]
  18597. horizontal offset
  18598. vertical offset
  18599. fade [0,1]
  18600. }
  18601. enum destination
  18602. {
  18603. geometry offset
  18604. primary map
  18605. secondary map
  18606. tertiary map
  18607. }
  18608. enum source
  18609. {
  18610. player pitch
  18611. player pitch tangent
  18612. player yaw
  18613. weapon ammo (total)
  18614. weapon ammo (loaded)
  18615. weapon heat
  18616. explicit (uses low bound)
  18617. weapon zoom level
  18618. }
  18619. pad[2]
  18620. explanation in/out bounds
  18621. {
  18622. Dialog Data Offset: 0x4b5e88
  18623. {
  18624. When the source is at the lower inbound, the destination ends up the lower outbound and vice-versa applies for the upper values.
  18625. }
  18626. }
  18627. real_bounds in bounds:source units
  18628. real_bounds out bounds:pixels
  18629. pad[64]
  18630. explanation tint color bounds
  18631. {
  18632. Dialog Data Offset: 0x4b5df8
  18633. {
  18634. If destination is tint, these values are used instead of the out bounds.
  18635. }
  18636. }
  18637. real_rgb_color tint color lower bound
  18638. real_rgb_color tint color upper bound
  18639. explanation periodic functions
  18640. {
  18641. Dialog Data Offset: 0x4b5d68
  18642. {
  18643. If you use a periodic function as the source, this lets you tweak it.
  18644. }
  18645. }
  18646. enum periodic function
  18647. {
  18648. one
  18649. zero
  18650. cosine
  18651. cosine (variable period)
  18652. diagonal wave
  18653. diagonal wave (variable period)
  18654. slide
  18655. slide (variable period)
  18656. noise
  18657. jitter
  18658. wander
  18659. spark
  18660. }
  18661. pad[2]
  18662. real function period:seconds
  18663. real function phase:seconds
  18664. pad[32]
  18665. }
  18666. }
  18667. pad[128]
  18668. }
  18669. }
  18670. pad[4]
  18671. pad[32]
  18672. explanation Motion sensor center
  18673. {
  18674. Dialog Data Offset: 0x4b66cc
  18675. {
  18676. The blips use this as a reference point
  18677. }
  18678. }
  18679. point_2d anchor offset
  18680. real width scale
  18681. real height scale
  18682. word_flags scaling flags
  18683. {
  18684. don't scale offset
  18685. don't scale size
  18686. use high res scale
  18687. }
  18688. pad[2]
  18689. pad[20]
  18690. explanation Auxilary overlays
  18691. {
  18692. Dialog Data Offset: 0x494b11
  18693. {
  18694.  
  18695. }
  18696. }
  18697. enum anchor
  18698. {
  18699. top left
  18700. top right
  18701. bottom left
  18702. bottom right
  18703. center
  18704. }
  18705. pad[2]
  18706. pad[32]
  18707. block overlays
  18708. {
  18709. Name: unit_hud_auxilary_overlay_block
  18710. Max Chunks: 16
  18711. Chunk Size: 132
  18712. Max Chunks x Chunk Size: 2112
  18713. Chunk Definition Offset: 0x5c4460
  18714. {
  18715. point_2d anchor offset
  18716. real width scale
  18717. real height scale
  18718. word_flags scaling flags
  18719. {
  18720. don't scale offset
  18721. don't scale size
  18722. use high res scale
  18723. }
  18724. pad[2]
  18725. pad[20]
  18726. tag reference interface bitmap
  18727. {
  18728. Supported tag class category: bitm
  18729. }
  18730. argb_color default color
  18731. argb_color flashing color
  18732. real flash period
  18733. real flash delay
  18734. {
  18735. Hidden documentation: time between flashes
  18736. }
  18737. short_integer number of flashes
  18738. word_flags flash flags
  18739. {
  18740. reverse default/flashing colors
  18741. }
  18742. real flash length
  18743. {
  18744. Hidden documentation: time of each flash
  18745. }
  18746. argb_color disabled color
  18747. pad[4]
  18748. short_integer sequence index
  18749. pad[2]
  18750. block multitex overlay
  18751. {
  18752. Name: global_hud_multitexture_overlay_definition
  18753. Max Chunks: 30
  18754. Chunk Size: 480
  18755. Max Chunks x Chunk Size: 14400
  18756. Chunk Definition Offset: 0x5c3940
  18757. {
  18758. pad[2]
  18759. short_integer type
  18760. enum framebuffer blend func
  18761. {
  18762. alpha blend
  18763. multiply
  18764. double multiply
  18765. add
  18766. subtract
  18767. component min
  18768. component max
  18769. alpha-multiply add
  18770. }
  18771. pad[2]
  18772. pad[32]
  18773. explanation anchors
  18774. {
  18775. Dialog Data Offset: 0x4b5c38
  18776. {
  18777. where you want the origin of the texture.
  18778. *"texture" uses the texture coordinates supplied
  18779. *"screen" uses the origin of the screen as the origin of the texture
  18780. }
  18781. }
  18782. enum primary anchor
  18783. {
  18784. texture
  18785. screen
  18786. }
  18787. enum secondary anchor
  18788. {
  18789. texture
  18790. screen
  18791. }
  18792. enum tertiary anchor
  18793. {
  18794. texture
  18795. screen
  18796. }
  18797. explanation blending function
  18798. {
  18799. Dialog Data Offset: 0x4b5bcc
  18800. {
  18801. how to blend the textures together
  18802. }
  18803. }
  18804. enum 0 to 1 blend func
  18805. {
  18806. add
  18807. subtract
  18808. multiply
  18809. multiply2x
  18810. dot
  18811. }
  18812. enum 1 to 2 blend func
  18813. {
  18814. add
  18815. subtract
  18816. multiply
  18817. multiply2x
  18818. dot
  18819. }
  18820. pad[2]
  18821. explanation map scales
  18822. {
  18823. Dialog Data Offset: 0x4b5b78
  18824. {
  18825. how much to scale the textures
  18826. }
  18827. }
  18828. real_point_2d primary scale
  18829. real_point_2d secondary scale
  18830. real_point_2d tertiary scale
  18831. explanation map offsets
  18832. {
  18833. Dialog Data Offset: 0x4b5b0c
  18834. {
  18835. how much to offset the origin of the texture
  18836. }
  18837. }
  18838. real_point_2d primary offset
  18839. real_point_2d secondary offset
  18840. real_point_2d tertiary offset
  18841. explanation map
  18842. {
  18843. Dialog Data Offset: 0x4b5ac0
  18844. {
  18845. which maps to use
  18846. }
  18847. }
  18848. tag reference primary
  18849. {
  18850. Supported tag class category: bitm
  18851. }
  18852. tag reference secondary
  18853. {
  18854. Supported tag class category: bitm
  18855. }
  18856. tag reference tertiary
  18857. {
  18858. Supported tag class category: bitm
  18859. }
  18860. enum primary wrap mode
  18861. {
  18862. clamp
  18863. wrap
  18864. }
  18865. enum secondary wrap mode
  18866. {
  18867. clamp
  18868. wrap
  18869. }
  18870. enum tertiary wrap mode
  18871. {
  18872. clamp
  18873. wrap
  18874. }
  18875. pad[2]
  18876. pad[184]
  18877. block effectors
  18878. {
  18879. Name: global_hud_multitexture_overlay_effector_definition
  18880. Max Chunks: 30
  18881. Chunk Size: 220
  18882. Max Chunks x Chunk Size: 6600
  18883. Chunk Definition Offset: 0x5c3820
  18884. {
  18885. pad[64]
  18886. explanation source/destination
  18887. {
  18888. Dialog Data Offset: 0x4b5f40
  18889. {
  18890. These describe the relationship that causes the effect.
  18891. * destination type is the type of variable you want to be effected
  18892. * destination tells which texture map (or geometry offset) to apply it to
  18893. * source says which value to look at when computing the effect
  18894. }
  18895. }
  18896. enum destination type
  18897. {
  18898. tint [0,1]
  18899. horizontal offset
  18900. vertical offset
  18901. fade [0,1]
  18902. }
  18903. enum destination
  18904. {
  18905. geometry offset
  18906. primary map
  18907. secondary map
  18908. tertiary map
  18909. }
  18910. enum source
  18911. {
  18912. player pitch
  18913. player pitch tangent
  18914. player yaw
  18915. weapon ammo (total)
  18916. weapon ammo (loaded)
  18917. weapon heat
  18918. explicit (uses low bound)
  18919. weapon zoom level
  18920. }
  18921. pad[2]
  18922. explanation in/out bounds
  18923. {
  18924. Dialog Data Offset: 0x4b5e88
  18925. {
  18926. When the source is at the lower inbound, the destination ends up the lower outbound and vice-versa applies for the upper values.
  18927. }
  18928. }
  18929. real_bounds in bounds:source units
  18930. real_bounds out bounds:pixels
  18931. pad[64]
  18932. explanation tint color bounds
  18933. {
  18934. Dialog Data Offset: 0x4b5df8
  18935. {
  18936. If destination is tint, these values are used instead of the out bounds.
  18937. }
  18938. }
  18939. real_rgb_color tint color lower bound
  18940. real_rgb_color tint color upper bound
  18941. explanation periodic functions
  18942. {
  18943. Dialog Data Offset: 0x4b5d68
  18944. {
  18945. If you use a periodic function as the source, this lets you tweak it.
  18946. }
  18947. }
  18948. enum periodic function
  18949. {
  18950. one
  18951. zero
  18952. cosine
  18953. cosine (variable period)
  18954. diagonal wave
  18955. diagonal wave (variable period)
  18956. slide
  18957. slide (variable period)
  18958. noise
  18959. jitter
  18960. wander
  18961. spark
  18962. }
  18963. pad[2]
  18964. real function period:seconds
  18965. real function phase:seconds
  18966. pad[32]
  18967. }
  18968. }
  18969. pad[128]
  18970. }
  18971. }
  18972. pad[4]
  18973. enum type
  18974. {
  18975. team icon
  18976. }
  18977. word_flags flags
  18978. {
  18979. use team color
  18980. }
  18981. pad[24]
  18982. }
  18983. }
  18984. pad[16]
  18985. explanation Hud warning sounds
  18986. {
  18987. Dialog Data Offset: 0x494b11
  18988. {
  18989.  
  18990. }
  18991. }
  18992. block sounds
  18993. {
  18994. Name: unit_hud_sound_block
  18995. Max Chunks: 12
  18996. Chunk Size: 56
  18997. Max Chunks x Chunk Size: 672
  18998. Chunk Definition Offset: 0x5c43dc
  18999. {
  19000. tag reference sound^
  19001. {
  19002. Supported tag class: snd!
  19003. Supported tag class: lsnd
  19004. }
  19005. long_flags latched to
  19006. {
  19007. shield recharging
  19008. shield damaged
  19009. shield low
  19010. shield empty
  19011. health low
  19012. health empty
  19013. health minor damage
  19014. health major damage
  19015. }
  19016. real scale
  19017. pad[32]
  19018. }
  19019. }
  19020. explanation Auxilary hud meters
  19021. {
  19022. Dialog Data Offset: 0x494b11
  19023. {
  19024.  
  19025. }
  19026. }
  19027. block meters
  19028. {
  19029. Name: unit_hud_auxilary_panel_block
  19030. Max Chunks: 16
  19031. Chunk Size: 324
  19032. Max Chunks x Chunk Size: 5184
  19033. Chunk Definition Offset: 0x5c45b0
  19034. {
  19035. enum type
  19036. {
  19037. integrated light
  19038. }
  19039. pad[2]
  19040. pad[16]
  19041. explanation BACKGROUND
  19042. {
  19043. Dialog Data Offset: 0x494b11
  19044. {
  19045.  
  19046. }
  19047. }
  19048. point_2d anchor offset
  19049. real width scale
  19050. real height scale
  19051. word_flags scaling flags
  19052. {
  19053. don't scale offset
  19054. don't scale size
  19055. use high res scale
  19056. }
  19057. pad[2]
  19058. pad[20]
  19059. tag reference interface bitmap
  19060. {
  19061. Supported tag class category: bitm
  19062. }
  19063. argb_color default color
  19064. argb_color flashing color
  19065. real flash period
  19066. real flash delay
  19067. {
  19068. Hidden documentation: time between flashes
  19069. }
  19070. short_integer number of flashes
  19071. word_flags flash flags
  19072. {
  19073. reverse default/flashing colors
  19074. }
  19075. real flash length
  19076. {
  19077. Hidden documentation: time of each flash
  19078. }
  19079. argb_color disabled color
  19080. pad[4]
  19081. short_integer sequence index
  19082. pad[2]
  19083. block multitex overlay
  19084. {
  19085. Name: global_hud_multitexture_overlay_definition
  19086. Max Chunks: 30
  19087. Chunk Size: 480
  19088. Max Chunks x Chunk Size: 14400
  19089. Chunk Definition Offset: 0x5c3940
  19090. {
  19091. pad[2]
  19092. short_integer type
  19093. enum framebuffer blend func
  19094. {
  19095. alpha blend
  19096. multiply
  19097. double multiply
  19098. add
  19099. subtract
  19100. component min
  19101. component max
  19102. alpha-multiply add
  19103. }
  19104. pad[2]
  19105. pad[32]
  19106. explanation anchors
  19107. {
  19108. Dialog Data Offset: 0x4b5c38
  19109. {
  19110. where you want the origin of the texture.
  19111. *"texture" uses the texture coordinates supplied
  19112. *"screen" uses the origin of the screen as the origin of the texture
  19113. }
  19114. }
  19115. enum primary anchor
  19116. {
  19117. texture
  19118. screen
  19119. }
  19120. enum secondary anchor
  19121. {
  19122. texture
  19123. screen
  19124. }
  19125. enum tertiary anchor
  19126. {
  19127. texture
  19128. screen
  19129. }
  19130. explanation blending function
  19131. {
  19132. Dialog Data Offset: 0x4b5bcc
  19133. {
  19134. how to blend the textures together
  19135. }
  19136. }
  19137. enum 0 to 1 blend func
  19138. {
  19139. add
  19140. subtract
  19141. multiply
  19142. multiply2x
  19143. dot
  19144. }
  19145. enum 1 to 2 blend func
  19146. {
  19147. add
  19148. subtract
  19149. multiply
  19150. multiply2x
  19151. dot
  19152. }
  19153. pad[2]
  19154. explanation map scales
  19155. {
  19156. Dialog Data Offset: 0x4b5b78
  19157. {
  19158. how much to scale the textures
  19159. }
  19160. }
  19161. real_point_2d primary scale
  19162. real_point_2d secondary scale
  19163. real_point_2d tertiary scale
  19164. explanation map offsets
  19165. {
  19166. Dialog Data Offset: 0x4b5b0c
  19167. {
  19168. how much to offset the origin of the texture
  19169. }
  19170. }
  19171. real_point_2d primary offset
  19172. real_point_2d secondary offset
  19173. real_point_2d tertiary offset
  19174. explanation map
  19175. {
  19176. Dialog Data Offset: 0x4b5ac0
  19177. {
  19178. which maps to use
  19179. }
  19180. }
  19181. tag reference primary
  19182. {
  19183. Supported tag class category: bitm
  19184. }
  19185. tag reference secondary
  19186. {
  19187. Supported tag class category: bitm
  19188. }
  19189. tag reference tertiary
  19190. {
  19191. Supported tag class category: bitm
  19192. }
  19193. enum primary wrap mode
  19194. {
  19195. clamp
  19196. wrap
  19197. }
  19198. enum secondary wrap mode
  19199. {
  19200. clamp
  19201. wrap
  19202. }
  19203. enum tertiary wrap mode
  19204. {
  19205. clamp
  19206. wrap
  19207. }
  19208. pad[2]
  19209. pad[184]
  19210. block effectors
  19211. {
  19212. Name: global_hud_multitexture_overlay_effector_definition
  19213. Max Chunks: 30
  19214. Chunk Size: 220
  19215. Max Chunks x Chunk Size: 6600
  19216. Chunk Definition Offset: 0x5c3820
  19217. {
  19218. pad[64]
  19219. explanation source/destination
  19220. {
  19221. Dialog Data Offset: 0x4b5f40
  19222. {
  19223. These describe the relationship that causes the effect.
  19224. * destination type is the type of variable you want to be effected
  19225. * destination tells which texture map (or geometry offset) to apply it to
  19226. * source says which value to look at when computing the effect
  19227. }
  19228. }
  19229. enum destination type
  19230. {
  19231. tint [0,1]
  19232. horizontal offset
  19233. vertical offset
  19234. fade [0,1]
  19235. }
  19236. enum destination
  19237. {
  19238. geometry offset
  19239. primary map
  19240. secondary map
  19241. tertiary map
  19242. }
  19243. enum source
  19244. {
  19245. player pitch
  19246. player pitch tangent
  19247. player yaw
  19248. weapon ammo (total)
  19249. weapon ammo (loaded)
  19250. weapon heat
  19251. explicit (uses low bound)
  19252. weapon zoom level
  19253. }
  19254. pad[2]
  19255. explanation in/out bounds
  19256. {
  19257. Dialog Data Offset: 0x4b5e88
  19258. {
  19259. When the source is at the lower inbound, the destination ends up the lower outbound and vice-versa applies for the upper values.
  19260. }
  19261. }
  19262. real_bounds in bounds:source units
  19263. real_bounds out bounds:pixels
  19264. pad[64]
  19265. explanation tint color bounds
  19266. {
  19267. Dialog Data Offset: 0x4b5df8
  19268. {
  19269. If destination is tint, these values are used instead of the out bounds.
  19270. }
  19271. }
  19272. real_rgb_color tint color lower bound
  19273. real_rgb_color tint color upper bound
  19274. explanation periodic functions
  19275. {
  19276. Dialog Data Offset: 0x4b5d68
  19277. {
  19278. If you use a periodic function as the source, this lets you tweak it.
  19279. }
  19280. }
  19281. enum periodic function
  19282. {
  19283. one
  19284. zero
  19285. cosine
  19286. cosine (variable period)
  19287. diagonal wave
  19288. diagonal wave (variable period)
  19289. slide
  19290. slide (variable period)
  19291. noise
  19292. jitter
  19293. wander
  19294. spark
  19295. }
  19296. pad[2]
  19297. real function period:seconds
  19298. real function phase:seconds
  19299. pad[32]
  19300. }
  19301. }
  19302. pad[128]
  19303. }
  19304. }
  19305. pad[4]
  19306. explanation METER
  19307. {
  19308. Dialog Data Offset: 0x494b11
  19309. {
  19310.  
  19311. }
  19312. }
  19313. point_2d anchor offset
  19314. real width scale
  19315. real height scale
  19316. word_flags scaling flags
  19317. {
  19318. don't scale offset
  19319. don't scale size
  19320. use high res scale
  19321. }
  19322. pad[2]
  19323. pad[20]
  19324. tag reference meter bitmap
  19325. {
  19326. Supported tag class category: bitm
  19327. }
  19328. rgb_color color at meter minimum
  19329. rgb_color color at meter maximum
  19330. rgb_color flash color
  19331. argb_color empty color
  19332. byte_flags flags
  19333. {
  19334. use min/max for state changes
  19335. interpolate between min/max flash colors as state changes
  19336. interpolate color along hsv space
  19337. ...more colors for hsv interpolation
  19338. invert interpolation
  19339. }
  19340. char_integer minumum meter value
  19341. short_integer sequence index
  19342. char_integer alpha multiplier
  19343. char_integer alpha bias
  19344. short_integer value scale#used for non-integral values, i.e. health and shields
  19345. real opacity
  19346. real translucency
  19347. argb_color disabled color
  19348. pad[16]
  19349. real minimum fraction cutoff
  19350. long_flags flags
  19351. {
  19352. show only when active
  19353. flash once if activated while disabled
  19354. }
  19355. pad[24]
  19356. pad[64]
  19357. }
  19358. }
  19359. explanation Vehicle hud
  19360. {
  19361. Dialog Data Offset: 0x494b11
  19362. {
  19363.  
  19364. }
  19365. }
  19366. pad[356]
  19367. pad[48]
  19368. POORLY-DETERMINED MIN FILESIZE OF unhi (including 64-byte header): 1452
  19369. POORLY-DETERMINED MAX FILESIZE OF unhi (including 64-byte header): 164580
  19370.  
  19371. Tag Definition Offset: 0x5c3c00
  19372. Extension: hud_number
  19373. Unknown: 8
  19374. Class: hud#
  19375. No superclass
  19376. Version: 1
  19377. Definition Block:
  19378. {
  19379. Name: hud_number
  19380. Count: 1
  19381. Size: 100
  19382. Chunks Offset: 0x5c3b58
  19383. }
  19384. tag reference digits bitmap
  19385. {
  19386. Supported tag class category: bitm
  19387. }
  19388. char_integer bitmap digit width
  19389. char_integer screen digit width
  19390. char_integer x offset
  19391. char_integer y offset
  19392. char_integer decimal point width
  19393. char_integer colon width
  19394. pad[2]
  19395. pad[76]
  19396. POORLY-DETERMINED MIN FILESIZE OF hud# (including 64-byte header): 164
  19397. POORLY-DETERMINED MAX FILESIZE OF hud# (including 64-byte header): 419
  19398.  
  19399. Tag Definition Offset: 0x5c42e0
  19400. Extension: hud_globals
  19401. Unknown: 8
  19402. Class: hudg
  19403. No superclass
  19404. Version: 1
  19405. Dialog Data Offset: 0x48c380
  19406. Definition Block:
  19407. {
  19408. Name: hud_globals
  19409. Count: 1
  19410. Size: 1104
  19411. Chunks Offset: 0x5c3dc8
  19412. }
  19413. explanation Messaging parameters
  19414. {
  19415. Dialog Data Offset: 0x494b11
  19416. {
  19417.  
  19418. }
  19419. }
  19420. enum anchor
  19421. {
  19422. top left
  19423. top right
  19424. bottom left
  19425. bottom right
  19426. center
  19427. }
  19428. pad[2]
  19429. pad[32]
  19430. point_2d anchor offset
  19431. real width scale
  19432. real height scale
  19433. word_flags scaling flags
  19434. {
  19435. don't scale offset
  19436. don't scale size
  19437. use high res scale
  19438. }
  19439. pad[2]
  19440. pad[20]
  19441. tag reference single player font
  19442. {
  19443. Supported tag class category: font
  19444. }
  19445. tag reference multi player font
  19446. {
  19447. Supported tag class category: font
  19448. }
  19449. real up time
  19450. real fade time
  19451. real_argb_color icon color
  19452. real_argb_color text color
  19453. real text spacing
  19454. tag reference item message text
  19455. {
  19456. Supported tag class category: ustr
  19457. }
  19458. tag reference icon bitmap
  19459. {
  19460. Supported tag class category: bitm
  19461. }
  19462. tag reference alternate icon text
  19463. {
  19464. Supported tag class category: ustr
  19465. }
  19466. block button icons
  19467. {
  19468. Name: hud_button_icon_block
  19469. Max Chunks: 18
  19470. Chunk Size: 16
  19471. Max Chunks x Chunk Size: 288
  19472. Chunk Definition Offset: 0x5c3c60
  19473. {
  19474. short_integer sequence index#sequence index into the global hud icon bitmap
  19475. short_integer width offset#extra spacing beyond bitmap width for text alignment
  19476. point_2d offset from reference corner
  19477. argb_color override icon color
  19478. char_integer frame rate [0,30]
  19479. byte_flags flags
  19480. {
  19481. use text from string_list instead
  19482. override default color
  19483. width offset is absolute icon width
  19484. }
  19485. short_integer text index
  19486. }
  19487. }
  19488. explanation HUD HELP TEXT COLOR
  19489. {
  19490. Dialog Data Offset: 0x494b11
  19491. {
  19492.  
  19493. }
  19494. }
  19495. argb_color default color
  19496. argb_color flashing color
  19497. real flash period
  19498. real flash delay
  19499. {
  19500. Hidden documentation: time between flashes
  19501. }
  19502. short_integer number of flashes
  19503. word_flags flash flags
  19504. {
  19505. reverse default/flashing colors
  19506. }
  19507. real flash length
  19508. {
  19509. Hidden documentation: time of each flash
  19510. }
  19511. argb_color disabled color
  19512. pad[4]
  19513. explanation Other hud messaging data
  19514. {
  19515. Dialog Data Offset: 0x494b11
  19516. {
  19517.  
  19518. }
  19519. }
  19520. tag reference hud messages
  19521. {
  19522. Supported tag class category: hmt
  19523. }
  19524. explanation Objective colors
  19525. {
  19526. Dialog Data Offset: 0x494b11
  19527. {
  19528.  
  19529. }
  19530. }
  19531. argb_color default color
  19532. argb_color flashing color
  19533. real flash period
  19534. real flash delay
  19535. {
  19536. Hidden documentation: time between flashes
  19537. }
  19538. short_integer number of flashes
  19539. word_flags flash flags
  19540. {
  19541. reverse default/flashing colors
  19542. }
  19543. real flash length
  19544. {
  19545. Hidden documentation: time of each flash
  19546. }
  19547. argb_color disabled color
  19548. short_integer uptime ticks
  19549. short_integer fade ticks
  19550. explanation Waypoint parameters
  19551. {
  19552. Dialog Data Offset: 0x4b5528
  19553. {
  19554. The offset values are how much the waypoint rectangle border is offset from the safe camera bounds
  19555. }
  19556. }
  19557. real top offset
  19558. real bottom offset
  19559. real left offset
  19560. real right offset
  19561. pad[32]
  19562. tag reference arrow bitmap
  19563. {
  19564. Supported tag class category: bitm
  19565. }
  19566. block waypoint arrows
  19567. {
  19568. Name: hud_waypoint_arrow_block
  19569. Max Chunks: 16
  19570. Chunk Size: 104
  19571. Max Chunks x Chunk Size: 1664
  19572. Chunk Definition Offset: 0x5c3cf0
  19573. {
  19574. string name^
  19575. pad[8]
  19576. rgb_color color
  19577. real opacity
  19578. real translucency
  19579. short_integer on screen sequence index
  19580. short_integer off screen sequence index
  19581. short_integer occluded sequence index
  19582. pad[2]
  19583. pad[16]
  19584. long_flags flags
  19585. {
  19586. don't rotate when pointing offscreen
  19587. }
  19588. pad[24]
  19589. }
  19590. }
  19591. pad[80]
  19592. explanation Multiplayer parameters
  19593. {
  19594. Dialog Data Offset: 0x494b11
  19595. {
  19596.  
  19597. }
  19598. }
  19599. real hud scale in multiplayer
  19600. pad[256]
  19601. explanation Hud globals
  19602. {
  19603. Dialog Data Offset: 0x494b11
  19604. {
  19605.  
  19606. }
  19607. }
  19608. tag reference default weapon hud
  19609. {
  19610. Supported tag class category: wphi
  19611. }
  19612. real motion sensor range
  19613. real motion sensor velocity sensitivity#how fast something moves to show up on the motion sensor
  19614. real motion sensor scale [DON'T TOUCH EVER]*
  19615. rectangle_2d default chapter title bounds
  19616. pad[44]
  19617. explanation Hud damage indicators
  19618. {
  19619. Dialog Data Offset: 0x494b11
  19620. {
  19621.  
  19622. }
  19623. }
  19624. short_integer top offset
  19625. short_integer bottom offset
  19626. short_integer left offset
  19627. short_integer right offset
  19628. pad[32]
  19629. tag reference indicator bitmap
  19630. {
  19631. Supported tag class category: bitm
  19632. }
  19633. short_integer sequence index
  19634. short_integer multiplayer sequence index
  19635. argb_color color
  19636. pad[16]
  19637. explanation Hud timer definitions
  19638. {
  19639. Dialog Data Offset: 0x494b11
  19640. {
  19641.  
  19642. }
  19643. }
  19644. explanation Not much time left flash color
  19645. {
  19646. Dialog Data Offset: 0x494b11
  19647. {
  19648.  
  19649. }
  19650. }
  19651. argb_color default color
  19652. argb_color flashing color
  19653. real flash period
  19654. real flash delay
  19655. {
  19656. Hidden documentation: time between flashes
  19657. }
  19658. short_integer number of flashes
  19659. word_flags flash flags
  19660. {
  19661. reverse default/flashing colors
  19662. }
  19663. real flash length
  19664. {
  19665. Hidden documentation: time of each flash
  19666. }
  19667. argb_color disabled color
  19668. pad[4]
  19669. explanation Time out flash color
  19670. {
  19671. Dialog Data Offset: 0x494b11
  19672. {
  19673.  
  19674. }
  19675. }
  19676. argb_color default color
  19677. argb_color flashing color
  19678. real flash period
  19679. real flash delay
  19680. {
  19681. Hidden documentation: time between flashes
  19682. }
  19683. short_integer number of flashes
  19684. word_flags flash flags
  19685. {
  19686. reverse default/flashing colors
  19687. }
  19688. real flash length
  19689. {
  19690. Hidden documentation: time of each flash
  19691. }
  19692. argb_color disabled color
  19693. pad[4]
  19694. pad[40]
  19695. tag reference carnage report bitmap
  19696. {
  19697. Supported tag class category: bitm
  19698. }
  19699. explanation Hud crap that wouldn't fit anywhere else
  19700. {
  19701. Dialog Data Offset: 0x494b11
  19702. {
  19703.  
  19704. }
  19705. }
  19706. short_integer loading begin text
  19707. short_integer loading end text
  19708. short_integer checkpoint begin text
  19709. short_integer checkpoint end text
  19710. tag reference checkpoint sound
  19711. {
  19712. Supported tag class category: snd!
  19713. }
  19714. pad[96]
  19715. POORLY-DETERMINED MIN FILESIZE OF hudg (including 64-byte header): 1168
  19716. POORLY-DETERMINED MAX FILESIZE OF hudg (including 64-byte header): 5925
  19717.  
  19718. Tag Definition Offset: 0x5c34b8
  19719. Extension: virtual_keyboard
  19720. Unknown: 0
  19721. Class: vcky
  19722. No superclass
  19723. Version: 2
  19724. Definition Block:
  19725. {
  19726. Name: virtual_keyboard
  19727. Count: 1
  19728. Size: 60
  19729. Chunks Offset: 0x5c344c
  19730. Dialog Data 1 Offset: 0x48b660
  19731. }
  19732. tag reference display font
  19733. {
  19734. Supported tag class category: font
  19735. }
  19736. tag reference background bitmap
  19737. {
  19738. Supported tag class category: bitm
  19739. }
  19740. tag reference special key labels string list
  19741. {
  19742. Supported tag class category: ustr
  19743. }
  19744. block virtual keys
  19745. {
  19746. Name: virtual_key_block
  19747. Max Chunks: 44
  19748. Chunk Size: 80
  19749. Max Chunks x Chunk Size: 3520
  19750. Chunk Definition Offset: 0x5c3378
  19751. {
  19752. enum keyboard key
  19753. {
  19754. 1
  19755. 2
  19756. 3
  19757. 4
  19758. 5
  19759. 6
  19760. 7
  19761. 8
  19762. 9
  19763. 0
  19764. A
  19765. B
  19766. C
  19767. D
  19768. E
  19769. F
  19770. G
  19771. H
  19772. I
  19773. J
  19774. K
  19775. L
  19776. M
  19777. N
  19778. O
  19779. P
  19780. Q
  19781. R
  19782. S
  19783. T
  19784. U
  19785. V
  19786. W
  19787. X
  19788. Y
  19789. Z
  19790. DONE
  19791. SHIFT
  19792. CAPS LOCK
  19793. SYMBOLS
  19794. BACKSPACE
  19795. LEFT
  19796. RIGHT
  19797. SPACE
  19798. }
  19799. explanation key codes
  19800. {
  19801. Dialog Data Offset: 0x4b4dbc
  19802. {
  19803. enter unicode character values as integer numbers
  19804. }
  19805. }
  19806. short_integer lowercase character
  19807. short_integer shift character
  19808. short_integer caps character
  19809. short_integer symbols character
  19810. short_integer shift+caps character
  19811. short_integer shift+symbols character
  19812. short_integer caps+symbols character
  19813. tag reference unselected background bitmap
  19814. {
  19815. Supported tag class category: bitm
  19816. }
  19817. tag reference selected background bitmap
  19818. {
  19819. Supported tag class category: bitm
  19820. }
  19821. tag reference active background bitmap
  19822. {
  19823. Supported tag class category: bitm
  19824. }
  19825. tag reference sticky background bitmap
  19826. {
  19827. Supported tag class category: bitm
  19828. }
  19829. }
  19830. }
  19831. POORLY-DETERMINED MIN FILESIZE OF vcky (including 64-byte header): 124
  19832. POORLY-DETERMINED MAX FILESIZE OF vcky (including 64-byte header): 5429
  19833.  
  19834. Tag Definition Offset: 0x5c30f8
  19835. Extension: multiplayer_scenario_description
  19836. Unknown: 0
  19837. Class: mply
  19838. No superclass
  19839. Version: 1
  19840. Definition Block:
  19841. {
  19842. Name: multiplayer_scenario_description
  19843. Count: 1
  19844. Size: 12
  19845. Chunks Offset: 0x5c30b4
  19846. }
  19847. block multiplayer scenarios
  19848. {
  19849. Name: scenario_description_block
  19850. Max Chunks: 32
  19851. Chunk Size: 68
  19852. Max Chunks x Chunk Size: 2176
  19853. Chunk Definition Offset: 0x5c3040
  19854. {
  19855. explanation net map info
  19856. {
  19857. Dialog Data Offset: 0x4b4b70
  19858. {
  19859. these provide the info required by the UI to load a net map
  19860. }
  19861. }
  19862. tag reference descriptive bitmap
  19863. {
  19864. Supported tag class category: bitm
  19865. }
  19866. tag reference displayed map name
  19867. {
  19868. Supported tag class category: ustr
  19869. }
  19870. string scenario tag directory path#this is the path to the directory containing the scenario tag file of the same name
  19871. pad[4]
  19872. }
  19873. }
  19874. POORLY-DETERMINED MIN FILESIZE OF mply (including 64-byte header): 76
  19875. POORLY-DETERMINED MAX FILESIZE OF mply (including 64-byte header): 2762
  19876.  
  19877. Tag Definition Offset: 0x5c2e28
  19878. Extension: detail_object_collection
  19879. Unknown: 8
  19880. Class: dobc
  19881. No superclass
  19882. Version: 1
  19883. Dialog Data Offset: 0x48b110
  19884. Definition Block:
  19885. {
  19886. Name: detail_object_collection
  19887. Count: 1
  19888. Size: 128
  19889. Chunks Offset: 0x5c2d98
  19890. }
  19891. enum collection type
  19892. {
  19893. screen-facing
  19894. viewer-facing
  19895. }
  19896. pad[2]
  19897. real global z offset:applied to all detail objects of in this collection so they don't float above the ground
  19898. pad[44]
  19899. tag reference sprite plate
  19900. {
  19901. Supported tag class category: bitm
  19902. }
  19903. block types
  19904. {
  19905. Name: detail_object_type_block
  19906. Max Chunks: 16
  19907. Chunk Size: 96
  19908. Max Chunks x Chunk Size: 1536
  19909. Chunk Definition Offset: 0x5c2cb8
  19910. {
  19911. string name^
  19912. char_integer sequence index:[0,15]
  19913. byte_flags type flags
  19914. {
  19915. unused
  19916. unused
  19917. interpolate color in hsv
  19918. ...more colors
  19919. }
  19920. pad[2]
  19921. real_fraction color override factor#fraction of detail object color to use instead of the base map color in the environment:[0,1]
  19922. pad[8]
  19923. real near fade distance:world units
  19924. real far fade distance:world units
  19925. real size:world units per pixel
  19926. pad[4]
  19927. real_rgb_color minimum color:[0,1]
  19928. real_rgb_color maximum color:[0,1]
  19929. argb_color ambient color:[0,255]
  19930. pad[4]
  19931. }
  19932. }
  19933. pad[48]
  19934. POORLY-DETERMINED MIN FILESIZE OF dobc (including 64-byte header): 192
  19935. POORLY-DETERMINED MAX FILESIZE OF dobc (including 64-byte header): 1983
  19936.  
  19937. Tag Definition Offset: 0x5c2c20
  19938. Extension: sound_scenery
  19939. Unknown: 9
  19940. Class: ssce
  19941. Superclass: obje
  19942. Version: 1
  19943. Definition Block:
  19944. {
  19945. Name: sound_scenery
  19946. Count: 1
  19947. Size: 128
  19948. Chunks Offset: 0x5c2bd8
  19949. }
  19950. pad[128]
  19951. POORLY-DETERMINED MIN FILESIZE OF ssce (including 64-byte header): 192
  19952. POORLY-DETERMINED MAX FILESIZE OF ssce (including 64-byte header): 192
  19953.  
  19954. Tag Definition Offset: 0x5c2b78
  19955. Extension: hud_message_text
  19956. Unknown: 8
  19957. Class: hmt
  19958. No superclass
  19959. Version: 1
  19960. Definition Block:
  19961. {
  19962. Name: hud_message_text
  19963. Count: 1
  19964. Size: 128
  19965. Chunks Offset: 0x5c2b10
  19966. }
  19967. data text data*
  19968. {
  19969. Definition Name: string data
  19970. Interface Flags: 2
  19971. Max Bytes: 65536
  19972. }
  19973. block message elements*
  19974. {
  19975. Name: hud_message_elements_block
  19976. Max Chunks: 8192
  19977. Chunk Size: 2
  19978. Max Chunks x Chunk Size: 16384
  19979. Chunk Definition Offset: 0x5c2a40
  19980. {
  19981. char_integer type*
  19982. char_integer data*
  19983. }
  19984. }
  19985. block messages*
  19986. {
  19987. Name: hud_messages_block
  19988. Max Chunks: 1024
  19989. Chunk Size: 64
  19990. Max Chunks x Chunk Size: 65536
  19991. Chunk Definition Offset: 0x5c2a90
  19992. {
  19993. string name*
  19994. short_integer start index into text blob*
  19995. short_integer start index of message block*
  19996. char_integer panel count*
  19997. pad[3]
  19998. pad[24]
  19999. }
  20000. }
  20001. pad[84]
  20002. POORLY-DETERMINED MIN FILESIZE OF hmt (including 64-byte header): 192
  20003. POORLY-DETERMINED MAX FILESIZE OF hmt (including 64-byte header): 147648
  20004.  
  20005. Tag Definition Offset: 0x5c29d0
  20006. Extension: ui_widget_definition
  20007. Unknown: 8
  20008. Class: DeLa
  20009. No superclass
  20010. Version: 1
  20011. Definition Block:
  20012. {
  20013. Name: ui_widget_definition
  20014. Count: 1
  20015. Size: 1004
  20016. Chunks Offset: 0x5c2770
  20017. }
  20018. enum widget type
  20019. {
  20020. container
  20021. text box
  20022. spinner list
  20023. column list
  20024. game model (not implemented)
  20025. movie (not implemented)
  20026. custom (not implemented)
  20027. }
  20028. enum controller index
  20029. {
  20030. player 1
  20031. player 2
  20032. player 3
  20033. player 4
  20034. any player
  20035. }
  20036. string name
  20037. rectangle_2d bounds
  20038. long_flags flags
  20039. {
  20040. pass unhandled events to focused child
  20041. pause game time
  20042. flash background bitmap
  20043. dpad up/down tabs thru children
  20044. dpad left/right tabs thru children
  20045. dpad up/down tabs thru list items
  20046. dpad left/right tabs thru list items
  20047. dont focus a specific child widget
  20048. pass unhandled events to all children
  20049. render regardless of controller index
  20050. pass handled events to all children
  20051. return to main menu if no history
  20052. always use tag controller index
  20053. always use nifty render fx
  20054. don't push history
  20055. force handle mouse
  20056. }
  20057. long_integer milliseconds to auto close#<=0 to never auto-close
  20058. long_integer milliseconds auto close fade time#<= 0 for immediate close
  20059. tag reference background bitmap
  20060. {
  20061. Supported tag class category: bitm
  20062. }
  20063. explanation game data input fxns
  20064. {
  20065. Dialog Data Offset: 0x4b3900
  20066. {
  20067. These functions use current game data to modify the appearance of
  20068. the widget. These functions are called every time the widget is
  20069. rendered.
  20070. }
  20071. }
  20072. block game data inputs
  20073. {
  20074. Name: game_data_input_references_block
  20075. Max Chunks: 64
  20076. Chunk Size: 36
  20077. Max Chunks x Chunk Size: 2304
  20078. Chunk Definition Offset: 0x5c23c0
  20079. {
  20080. enum function
  20081. {
  20082. NULL
  20083. player settings menu update desc
  20084. unused
  20085. playlist settings menu update desc
  20086. gametype select menu update desc
  20087. multiplayer type menu update desc
  20088. solo level select update
  20089. difficulty menu update desc
  20090. build number (textbox only)
  20091. server list update
  20092. network pregame status update
  20093. splitscreen pregame status update
  20094. net/splitscreen prejoin players
  20095. mp profile list update
  20096. 3wide player profile list update
  20097. plyr prof edit-select menu upd8
  20098. player profile small menu update
  20099. game settings lists text update
  20100. solo game objective text
  20101. color picker update
  20102. game settings lists pic update
  20103. main menu fake animate
  20104. mp level select update
  20105. get active plyr profile name
  20106. get edit plyr profile name
  20107. get edit game settings name
  20108. get active plyr profile color
  20109. mp set textbox map name
  20110. mp set textbox game ruleset
  20111. mp set textbox teams noteams
  20112. mp set textbox score limit
  20113. mp set textbox score limit type
  20114. mp set bitmap for map
  20115. mp set bitmap for ruleset
  20116. mp set textbox # of players
  20117. mp edit profile set rule text
  20118. system link status check
  20119. mp game directions
  20120. teams/no teams bitmap update
  20121. warn if diff. will nuke saved game
  20122. dim if no net cable
  20123. pause game set textbox inverted
  20124. dim unless two controllers
  20125. controls update menu
  20126. video menu update
  20127. gamespy screen update
  20128. common button bar update
  20129. gamepad update menu
  20130. server settings update
  20131. audio_menu_update
  20132. mp prof vehicles update
  20133. solo map list update
  20134. mp map list update
  20135. gt select list update
  20136. gt edit list update
  20137. load game list update
  20138. checking for updates
  20139. direct ip connect update
  20140. network settings update
  20141. }
  20142. pad[2]
  20143. pad[32]
  20144. }
  20145. }
  20146. explanation event handlers
  20147. {
  20148. Dialog Data Offset: 0x4b3808
  20149. {
  20150. These allow actions to be tied to certain ui events.
  20151. The event handler is run every time the widget receives the specified event.
  20152. By default, the 'back' and 'B' buttons will take you to the previous screen.
  20153. }
  20154. }
  20155. block event handlers
  20156. {
  20157. Name: event_handler_references_block
  20158. Max Chunks: 32
  20159. Chunk Size: 72
  20160. Max Chunks x Chunk Size: 2304
  20161. Chunk Definition Offset: 0x5c2458
  20162. {
  20163. long_flags flags
  20164. {
  20165. close current widget
  20166. close other widget
  20167. close all widgets
  20168. open widget
  20169. reload self
  20170. reload other widget
  20171. give focus to widget
  20172. run function
  20173. replace self w/ widget
  20174. go back to previous widget
  20175. run scenario script
  20176. try to branch on failure
  20177. }
  20178. enum event type
  20179. {
  20180. A button
  20181. B button
  20182. X button
  20183. Y button
  20184. black button
  20185. white button
  20186. left trigger
  20187. right trigger
  20188. dpad up
  20189. dpad down
  20190. dpad left
  20191. dpad right
  20192. start button
  20193. back button
  20194. left thumb
  20195. right thumb
  20196. left analog stick up
  20197. left analog stick down
  20198. left analog stick left
  20199. left analog stick right
  20200. left analog stick up
  20201. right analog stick down
  20202. right analog stick left
  20203. right analog stick right
  20204. created
  20205. deleted
  20206. get focus
  20207. lose focus
  20208. left mouse
  20209. middle mouse
  20210. right mouse
  20211. double click
  20212. custom activation
  20213. post-render
  20214. }
  20215. enum function
  20216. {
  20217. NULL
  20218. list goto next item
  20219. list goto previous item
  20220. unused
  20221. unused
  20222. initialize sp level list solo
  20223. initialize sp level list coop
  20224. dispose sp level list
  20225. solo level set map
  20226. set difficulty
  20227. start new game
  20228. pause game restart at checkpoint
  20229. pause game restart level
  20230. pause game return to main menu
  20231. clear multiplayer player joins
  20232. join controller to mp game
  20233. initialize net game server list
  20234. start network game server
  20235. dispose net game server list
  20236. shutdown network game
  20237. net game join from server list
  20238. split screen game initialize
  20239. coop game initialize
  20240. main menu intialize
  20241. mp type menu initialize
  20242. pick play stage for quick start
  20243. mp level list initialize
  20244. mp level list dispose
  20245. mp level select
  20246. mp profiles list initialize
  20247. mp profiles list dispose
  20248. mp profile set for game
  20249. swap player team
  20250. net game join player
  20251. player profile list initialize
  20252. player profile list dispose
  20253. 3wide plyr prof set for game
  20254. 1wide plyr prof set for game
  20255. mp profile begin editing
  20256. mp profile end editing
  20257. mp profile set game engine
  20258. mp profile change name
  20259. mp profile set ctf rules
  20260. mp profile set koth rules
  20261. mp profile set slayer rules
  20262. mp profile set oddball rules
  20263. mp profile set racing rules
  20264. mp profile set player options
  20265. mp profile set item options
  20266. mp profile set indicator opts
  20267. mp profile init game engine
  20268. mp profile init name
  20269. mp profile init ctf rules
  20270. mp profile init koth rules
  20271. mp profile init slayer rules
  20272. mp profile init oddball rules
  20273. mp profile init racing rules
  20274. mp profile init player opts
  20275. mp profile init item options
  20276. mp profile init indicator opts
  20277. mp profile save changes
  20278. color picker menu initialize
  20279. color picker menu dispose
  20280. color picker select color
  20281. player profile begin editing
  20282. player profile end editing
  20283. player profile change name
  20284. player profile save changes
  20285. plyr prf init cntl settings
  20286. plyr prf init adv cntl set
  20287. plyr prf save cntl settings
  20288. plyr prf save adv cntl set
  20289. mp game player quit
  20290. main menu switch to solo game
  20291. request del player profile
  20292. request del playlist profile
  20293. final del player profile
  20294. final del playlist profile
  20295. cancel profile delete
  20296. create&edit playlist profile
  20297. create&edit player profile
  20298. net game speed start
  20299. net game delay start
  20300. net server accept conx
  20301. net server defer start
  20302. net server allow start
  20303. disable if no xdemos
  20304. run xdemos
  20305. sp reset controller choices
  20306. sp set p1 controller choice
  20307. sp set p2 controller choice
  20308. error if no network connection
  20309. start server if none advertised
  20310. net game unjoin player
  20311. close if not editing profile
  20312. exit to xbox dashboard
  20313. new campaign chosen
  20314. new campaign decision
  20315. pop history stack once
  20316. difficulty menu init
  20317. begin music fade out
  20318. new game if no plyr profiles
  20319. exit gracefully to xbox dashboard
  20320. pause game invert pitch
  20321. start new coop game
  20322. pause game invert spinner get
  20323. pause game invert spinner set
  20324. main menu quit game
  20325. mouse - emit ACCEPT event
  20326. mouse - emit BACK event
  20327. mouse - emit DPAD LEFT event
  20328. mouse - emit DPAD RIGHT event
  20329. mouse spinner 3wide click
  20330. controls screen init
  20331. video screen init
  20332. controls begin binding
  20333. gamespy screen init
  20334. gamespy screen dispose
  20335. gamespy select header
  20336. gamespy select item
  20337. gamespy select button
  20338. plr prof init mouse set
  20339. plr prof change mouse set
  20340. plr prof init audio set
  20341. plr prof change audio set
  20342. plr prof change video set
  20343. controls screen dispose
  20344. controls screen change set
  20345. mouse - emit X event
  20346. gamepad screen init
  20347. gamepad screen dispose
  20348. gamepad screen change gamepads
  20349. gamepad screen select item
  20350. mouse screen defaults
  20351. audio screen defaults
  20352. video screen defaults
  20353. controls screen defaults
  20354. profile set edit begin
  20355. profile manager delete
  20356. profile manager select
  20357. gamespy dismiss error
  20358. server settings init
  20359. ss edit server name
  20360. ss edit server password
  20361. ss start game
  20362. video test dialog init
  20363. video test dialog dispose
  20364. video test dialog accept
  20365. gamespy dismiss filters
  20366. gamespy update filter settings
  20367. gamespy back handler
  20368. mouse spinner 1wide click
  20369. controls back handler
  20370. controls advanced launch
  20371. controls advanced ok
  20372. mp pause menu open
  20373. mp game options open
  20374. mp choose team
  20375. mp prof init vehicle options
  20376. mp prof save vehicle options
  20377. single prev cl item activated
  20378. mp prof init teamplay options
  20379. mp prof save teamplay options
  20380. mp game options choose
  20381. emit custom activation event
  20382. plr prof cancel audio set
  20383. plr prof init network options
  20384. plr prof save network options
  20385. credits post render
  20386. difficulty item select
  20387. credits initialize
  20388. credits dispose
  20389. gamespy get patch
  20390. video screen dispose
  20391. campaign menu init
  20392. campaign menu continue
  20393. load game menu init
  20394. load game menu dispose
  20395. load game menu activated
  20396. solo menu save checkpoint
  20397. mp type set mode
  20398. checking for updates ok
  20399. checking for updates dismiss
  20400. direct ip connect init
  20401. direct ip connect go
  20402. direct ip edit field
  20403. network settings edit a port
  20404. network settings defaults
  20405. load game menu delete request
  20406. load game menu delete finish
  20407. }
  20408. tag reference widget tag
  20409. {
  20410. Supported tag class category: DeLa
  20411. }
  20412. tag reference sound effect
  20413. {
  20414. Supported tag class category: snd!
  20415. }
  20416. string script
  20417. }
  20418. }
  20419. explanation search-and-replace
  20420. {
  20421. Dialog Data Offset: 0x4b36c0
  20422. {
  20423. These are used to run a search-and-replace on the specified
  20424. word in the text-box text, replacing all occurrences of the word
  20425. with the output of the replace-function. These are invoked each
  20426. time the text box is rendered (after any game data input functions
  20427. have been run). The searching is case-sensitive.
  20428. }
  20429. }
  20430. block search and replace functions
  20431. {
  20432. Name: search_and_replace_reference_block
  20433. Max Chunks: 32
  20434. Chunk Size: 34
  20435. Max Chunks x Chunk Size: 1088
  20436. Chunk Definition Offset: 0x5c25f4
  20437. {
  20438. string search string
  20439. enum replace function
  20440. {
  20441. NULL
  20442. widget's controller
  20443. build number
  20444. pid
  20445. }
  20446. }
  20447. }
  20448. pad[128]
  20449. explanation text box
  20450. {
  20451. Dialog Data Offset: 0x4b3618
  20452. {
  20453. parameters specific to text box widgets
  20454. NOTE: the string list tag can also be used for lists whose items come from a string list tag
  20455. }
  20456. }
  20457. tag reference text label unicode strings list
  20458. {
  20459. Supported tag class category: ustr
  20460. }
  20461. tag reference text font
  20462. {
  20463. Supported tag class category: font
  20464. }
  20465. real_argb_color text color
  20466. enum justification
  20467. {
  20468. left justify
  20469. right justify
  20470. center justify
  20471. }
  20472. long_flags flags
  20473. {
  20474. editable
  20475. password
  20476. flashing
  20477. don't do that weird focus test
  20478. }
  20479. pad[12]
  20480. explanation more text box parameters
  20481. {
  20482. Dialog Data Offset: 0x4b35a0
  20483. {
  20484. blah blah blah
  20485. }
  20486. }
  20487. short_integer string list index#default is 0
  20488. short_integer horiz offset#offsets text position in its bounding area
  20489. short_integer vert offset#offsets the text position in its bounding area
  20490. pad[26]
  20491. explanation list items
  20492. {
  20493. Dialog Data Offset: 0x4b33a8
  20494. {
  20495. These options affect list items for both spinner and column lists
  20496. * child widgets are used to define the visible list items
  20497. * for lists with code-generated list items, the child widgets are used
  20498. as templated for visible list item placement
  20499. IMPORTANT: for list widgets, the ONLY thing you can have as child widgets are the list item widgets!
  20500. }
  20501. }
  20502. pad[2]
  20503. long_flags flags
  20504. {
  20505. list items generated in code
  20506. list items from string list tag
  20507. list items only one tooltip
  20508. list single preview no scroll
  20509. }
  20510. explanation spinner list
  20511. {
  20512. Dialog Data Offset: 0x4b3358
  20513. {
  20514. parameters specific to spinner list widgets
  20515. child widgets are the list items
  20516. }
  20517. }
  20518. tag reference list header bitmap
  20519. {
  20520. Supported tag class category: bitm
  20521. }
  20522. tag reference list footer bitmap
  20523. {
  20524. Supported tag class category: bitm
  20525. }
  20526. rectangle_2d header bounds
  20527. rectangle_2d footer bounds
  20528. pad[32]
  20529. explanation column list
  20530. {
  20531. Dialog Data Offset: 0x4b32c0
  20532. {
  20533. parameters specific to column list widgets
  20534. child widgets are the list items
  20535. }
  20536. }
  20537. tag reference extended description widget
  20538. {
  20539. Supported tag class category: DeLa
  20540. }
  20541. pad[32]
  20542. pad[256]
  20543. explanation conditional widgets
  20544. {
  20545. Dialog Data Offset: 0x4b3218
  20546. {
  20547. use this to attach widgets that are loaded only
  20548. if some internal criteria is met while processing a widget event
  20549. }
  20550. }
  20551. block conditional widgets
  20552. {
  20553. Name: conditional_widget_reference_block
  20554. Max Chunks: 32
  20555. Chunk Size: 80
  20556. Max Chunks x Chunk Size: 2560
  20557. Chunk Definition Offset: 0x5c24e8
  20558. {
  20559. tag reference widget tag
  20560. {
  20561. Supported tag class category: DeLa
  20562. }
  20563. string name (unused)
  20564. long_flags flags
  20565. {
  20566. load if event handler function fails
  20567. }
  20568. short_integer custom controller index (unused)
  20569. pad[26]
  20570. }
  20571. }
  20572. pad[128]
  20573. pad[128]
  20574. explanation child widgets
  20575. {
  20576. Dialog Data Offset: 0x4b3180
  20577. {
  20578. use this to attach widgets that are loaded as 'children'
  20579. of this widget (children are always loaded as part of the parent widget)
  20580. }
  20581. }
  20582. block child widgets
  20583. {
  20584. Name: child_widget_reference_block
  20585. Max Chunks: 32
  20586. Chunk Size: 80
  20587. Max Chunks x Chunk Size: 2560
  20588. Chunk Definition Offset: 0x5c2568
  20589. {
  20590. tag reference widget tag
  20591. {
  20592. Supported tag class category: DeLa
  20593. }
  20594. string name (unused)
  20595. long_flags flags
  20596. {
  20597. use custom controller index
  20598. }
  20599. short_integer custom controller index
  20600. short_integer vertical offset
  20601. short_integer horizontal offset
  20602. pad[22]
  20603. }
  20604. }
  20605. POORLY-DETERMINED MIN FILESIZE OF DeLa (including 64-byte header): 1068
  20606. POORLY-DETERMINED MAX FILESIZE OF DeLa (including 64-byte header): 14434
  20607.  
  20608. Tag Definition Offset: 0x5c2710
  20609. Extension: ui_widget_collection
  20610. Unknown: 0
  20611. Class: Soul
  20612. No superclass
  20613. Version: 1
  20614. Definition Block:
  20615. {
  20616. Name: ui_widget_collection
  20617. Count: 1
  20618. Size: 12
  20619. Chunks Offset: 0x5c26cc
  20620. }
  20621. block ui widget definitions
  20622. {
  20623. Name: ui_widget_references_block
  20624. Max Chunks: 32
  20625. Chunk Size: 16
  20626. Max Chunks x Chunk Size: 512
  20627. Chunk Definition Offset: 0x5c2688
  20628. {
  20629. tag reference ui_widget_definition
  20630. {
  20631. Supported tag class category: DeLa
  20632. }
  20633. }
  20634. }
  20635. POORLY-DETERMINED MIN FILESIZE OF Soul (including 64-byte header): 76
  20636. POORLY-DETERMINED MAX FILESIZE OF Soul (including 64-byte header): 843
  20637.  
  20638. Tag Definition Offset: 0x5c21e0
  20639. Extension: continuous_damage_effect
  20640. Unknown: 8
  20641. Class: cdmg
  20642. No superclass
  20643. Version: 1
  20644. Dialog Data Offset: 0x48ad50
  20645. Definition Block:
  20646. {
  20647. Name: continuous_damage_effect
  20648. Count: 1
  20649. Size: 512
  20650. Chunks Offset: 0x5c1e60
  20651. }
  20652. real_bounds radius:world units
  20653. real_fraction cutoff scale:[0,1]
  20654. pad[24]
  20655. explanation vibrate parameters
  20656. {
  20657. Dialog Data Offset: 0x494b11
  20658. {
  20659.  
  20660. }
  20661. }
  20662. real_fraction low frequency:[0,1]
  20663. real_fraction high frequency:[0,1]
  20664. pad[24]
  20665. explanation camera shaking
  20666. {
  20667. Dialog Data Offset: 0x494b11
  20668. {
  20669.  
  20670. }
  20671. }
  20672. real random translation:world units#random translation in all directions
  20673. angle random rotation:degrees#random rotation in all directions
  20674. pad[12]
  20675. enum wobble function#a function to perturb the effect's behavior over time
  20676. {
  20677. one
  20678. zero
  20679. cosine
  20680. cosine (variable period)
  20681. diagonal wave
  20682. diagonal wave (variable period)
  20683. slide
  20684. slide (variable period)
  20685. noise
  20686. jitter
  20687. wander
  20688. spark
  20689. }
  20690. pad[2]
  20691. real wobble function period:seconds
  20692. real_fraction wobble weight#a value of 0.0 signifies that the wobble function has no effect; a value of 1.0 signifies that the effect will not be felt when the wobble function's value is zero.
  20693. pad[4]
  20694. pad[20]
  20695. pad[8]
  20696. pad[160]
  20697. explanation damage
  20698. {
  20699. Dialog Data Offset: 0x494b11
  20700. {
  20701.  
  20702. }
  20703. }
  20704. enum side effect
  20705. {
  20706. none
  20707. harmless
  20708. lethal to the unsuspecting
  20709. emp
  20710. }
  20711. enum category
  20712. {
  20713. none
  20714. falling
  20715. bullet
  20716. grenade
  20717. high explosive
  20718. sniper
  20719. melee
  20720. flame
  20721. mounted weapon
  20722. vehicle
  20723. plasma
  20724. needle
  20725. shotgun
  20726. }
  20727. long_flags flags
  20728. {
  20729. does not hurt owner
  20730. can cause headshots
  20731. pings resistant units
  20732. does not hurt friends
  20733. does not ping units
  20734. detonates explosives
  20735. only hurts shields
  20736. causes flaming death
  20737. damage indicators always point down
  20738. skips shields
  20739. only hurts one infection form
  20740. can cause multiplayer headshots
  20741. infection form pop
  20742. }
  20743. pad[4]
  20744. real damage lower bound
  20745. real_bounds damage upper bound
  20746. real vehicle passthrough penalty:[0,1]#zero damages passengers in vehicles, one does not
  20747. pad[4]
  20748. real stun:[0,1]#amount of stun added to damaged unit
  20749. real maximum stun:[0,1]#damaged unit's stun will never exceed this amount
  20750. real stun time:seconds#duration of stun due to this damage
  20751. pad[4]
  20752. real instantaneous acceleration:[0,+inf]
  20753. pad[4]
  20754. pad[4]
  20755. explanation damage modifiers
  20756. {
  20757. Dialog Data Offset: 0x494b11
  20758. {
  20759.  
  20760. }
  20761. }
  20762. real dirt:[0,+inf]
  20763. real sand:[0,+inf]
  20764. real stone:[0,+inf]
  20765. real snow:[0,+inf]
  20766. real wood:[0,+inf]
  20767. real metal (hollow):[0,+inf]
  20768. real metal (thin):[0,+inf]
  20769. real metal (thick):[0,+inf]
  20770. real rubber:[0,+inf]
  20771. real glass:[0,+inf]
  20772. real force field:[0,+inf]
  20773. real grunt:[0,+inf]
  20774. real hunter armor:[0,+inf]
  20775. real hunter skin:[0,+inf]
  20776. real elite:[0,+inf]
  20777. real jackal:[0,+inf]
  20778. real jackal energy shield:[0,+inf]
  20779. real engineer:[0,+inf]
  20780. real engineer force field:[0,+inf]
  20781. real flood combat form:[0,+inf]
  20782. real flood carrier form:[0,+inf]
  20783. real cyborg:[0,+inf]
  20784. real cyborg energy shield:[0,+inf]
  20785. real armored human:[0,+inf]
  20786. real human:[0,+inf]
  20787. real sentinel:[0,+inf]
  20788. real monitor:[0,+inf]
  20789. real plastic:[0,+inf]
  20790. real water:[0,+inf]
  20791. real leaves:[0,+inf]
  20792. real elite energy shield:[0,+inf]
  20793. real ice:[0,+inf]
  20794. real hunter shield:[0,+inf]
  20795. pad[28]
  20796. POORLY-DETERMINED MIN FILESIZE OF cdmg (including 64-byte header): 576
  20797. POORLY-DETERMINED MAX FILESIZE OF cdmg (including 64-byte header): 576
  20798.  
  20799. Tag Definition Offset: 0x5c16d0
  20800. Extension: material_effects
  20801. Unknown: 8
  20802. Class: foot
  20803. No superclass
  20804. Version: 1
  20805. Definition Block:
  20806. {
  20807. Name: material_effects
  20808. Count: 1
  20809. Size: 140
  20810. Chunks Offset: 0x5c167c
  20811. }
  20812. block effects
  20813. {
  20814. Name: material_effect_block
  20815. Max Chunks: 13
  20816. Chunk Size: 28
  20817. Max Chunks x Chunk Size: 364
  20818. Chunk Definition Offset: 0x5c162c
  20819. {
  20820. block materials
  20821. {
  20822. Name: material_effect_material_block
  20823. Max Chunks: 33
  20824. Chunk Size: 48
  20825. Max Chunks x Chunk Size: 1584
  20826. Chunk Definition Offset: 0x5c15d0
  20827. {
  20828. tag reference effect
  20829. {
  20830. Supported tag class category: effe
  20831. }
  20832. tag reference sound
  20833. {
  20834. Supported tag class category: snd!
  20835. }
  20836. pad[16]
  20837. }
  20838. }
  20839. pad[16]
  20840. }
  20841. }
  20842. pad[128]
  20843. POORLY-DETERMINED MIN FILESIZE OF foot (including 64-byte header): 204
  20844. POORLY-DETERMINED MAX FILESIZE OF foot (including 64-byte header): 2662
  20845.  
  20846. Tag Definition Offset: 0x5c1520
  20847. Extension: garbage
  20848. Unknown: 0
  20849. Class: garb
  20850. Superclass: item
  20851. Version: 1
  20852. Definition Block:
  20853. {
  20854. Name: garbage
  20855. Count: 1
  20856. Size: 168
  20857. Chunks Offset: 0x5c14d8
  20858. }
  20859. pad[168]
  20860. POORLY-DETERMINED MIN FILESIZE OF garb (including 64-byte header): 232
  20861. POORLY-DETERMINED MAX FILESIZE OF garb (including 64-byte header): 232
  20862.  
  20863. Tag Definition Offset: 0x5c1478
  20864. Extension: tag_collection
  20865. Unknown: 0
  20866. Class: tagc
  20867. No superclass
  20868. Version: 1
  20869. Definition Block:
  20870. {
  20871. Name: tag_collection
  20872. Count: 1
  20873. Size: 12
  20874. Chunks Offset: 0x5c1434
  20875. }
  20876. block tag references
  20877. {
  20878. Name: tag reference
  20879. Max Chunks: 200
  20880. Chunk Size: 16
  20881. Max Chunks x Chunk Size: 3200
  20882. Chunk Definition Offset: 0x5c13f0
  20883. {
  20884. tag reference tag
  20885. {
  20886. Supports all tag classes
  20887. }
  20888. }
  20889. }
  20890. POORLY-DETERMINED MIN FILESIZE OF tagc (including 64-byte header): 76
  20891. POORLY-DETERMINED MAX FILESIZE OF tagc (including 64-byte header): 3531
  20892.  
  20893. Tag Definition Offset: 0x5b9a20
  20894. Extension: input_device_defaults
  20895. Unknown: 1
  20896. Class: devc
  20897. No superclass
  20898. Version: 1
  20899. Definition Block:
  20900. {
  20901. Name: input_device_defaults
  20902. Count: 1
  20903. Size: 44
  20904. Chunks Offset: 0x5b99a8
  20905. }
  20906. enum device type*
  20907. {
  20908. mouse and keyboard
  20909. joysticks/gamepads/etc...
  20910. full profile definition
  20911. }
  20912. word_flags flags*
  20913. {
  20914. unused
  20915. }
  20916. data device id*
  20917. {
  20918. Definition Name: deviceid_data
  20919. Max Bytes: 16
  20920. }
  20921. data profile*
  20922. {
  20923. Definition Name: player_profile_data
  20924. Max Bytes: 8188
  20925. }
  20926. custom
  20927. {
  20928. Field Class: prof
  20929. }
  20930. POORLY-DETERMINED MIN FILESIZE OF devc (including 64-byte header): 108
  20931. POORLY-DETERMINED MAX FILESIZE OF devc (including 64-byte header): 8312
  20932.  
  20933. Program ended with exit code: 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement