@blamnetwork/blf 1.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (235) hide show
  1. package/README.md +82 -0
  2. package/dist/bitstream/enum.d.ts +6 -0
  3. package/dist/bitstream/enum.d.ts.map +1 -0
  4. package/dist/bitstream/enum.js +15 -0
  5. package/dist/bitstream/enums.d.ts +21 -0
  6. package/dist/bitstream/enums.d.ts.map +1 -0
  7. package/dist/bitstream/enums.js +31 -0
  8. package/dist/bitstream/errors.d.ts +5 -0
  9. package/dist/bitstream/errors.d.ts.map +1 -0
  10. package/dist/bitstream/errors.js +11 -0
  11. package/dist/bitstream/index.d.ts +7 -0
  12. package/dist/bitstream/index.d.ts.map +1 -0
  13. package/dist/bitstream/index.js +5 -0
  14. package/dist/bitstream/math.d.ts +28 -0
  15. package/dist/bitstream/math.d.ts.map +1 -0
  16. package/dist/bitstream/math.js +149 -0
  17. package/dist/bitstream/reader.d.ts +81 -0
  18. package/dist/bitstream/reader.d.ts.map +1 -0
  19. package/dist/bitstream/reader.js +400 -0
  20. package/dist/bitstream/writer.d.ts +56 -0
  21. package/dist/bitstream/writer.d.ts.map +1 -0
  22. package/dist/bitstream/writer.js +330 -0
  23. package/dist/blam/common/cache/index.d.ts +2 -0
  24. package/dist/blam/common/cache/index.d.ts.map +1 -0
  25. package/dist/blam/common/cache/index.js +1 -0
  26. package/dist/blam/common/cache/security_functions.d.ts +2 -0
  27. package/dist/blam/common/cache/security_functions.d.ts.map +1 -0
  28. package/dist/blam/common/cache/security_functions.js +19 -0
  29. package/dist/blam/common/index.d.ts +3 -0
  30. package/dist/blam/common/index.d.ts.map +1 -0
  31. package/dist/blam/common/index.js +2 -0
  32. package/dist/blam/common/memory/data_compress.d.ts +10 -0
  33. package/dist/blam/common/memory/data_compress.d.ts.map +1 -0
  34. package/dist/blam/common/memory/data_compress.js +28 -0
  35. package/dist/blam/common/memory/index.d.ts +2 -0
  36. package/dist/blam/common/memory/index.d.ts.map +1 -0
  37. package/dist/blam/common/memory/index.js +1 -0
  38. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant.d.ts +37 -0
  39. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant.d.ts.map +1 -0
  40. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant.js +125 -0
  41. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant_au1_settings.d.ts +14 -0
  42. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant_au1_settings.d.ts.map +1 -0
  43. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant_au1_settings.js +30 -0
  44. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_default.d.ts +114 -0
  45. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_default.d.ts.map +1 -0
  46. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_default.js +292 -0
  47. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_survival_variant.d.ts +70 -0
  48. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_survival_variant.d.ts.map +1 -0
  49. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_survival_variant.js +174 -0
  50. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_traits.d.ts +10 -0
  51. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_traits.d.ts.map +1 -0
  52. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_traits.js +16 -0
  53. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_variant.d.ts +28 -0
  54. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_variant.d.ts.map +1 -0
  55. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_variant.js +109 -0
  56. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_player_traits.d.ts +56 -0
  57. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_player_traits.d.ts.map +1 -0
  58. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_player_traits.js +142 -0
  59. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_string_table.d.ts +27 -0
  60. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_string_table.d.ts.map +1 -0
  61. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_string_table.js +190 -0
  62. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/index.d.ts +10 -0
  63. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/index.d.ts.map +1 -0
  64. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/index.js +9 -0
  65. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalo_game_statistic.d.ts +10 -0
  66. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalo_game_statistic.d.ts.map +1 -0
  67. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalo_game_statistic.js +18 -0
  68. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalogamengine_map_permissions.d.ts +8 -0
  69. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalogamengine_map_permissions.d.ts.map +1 -0
  70. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalogamengine_map_permissions.js +18 -0
  71. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_object_filter.d.ts +13 -0
  72. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_object_filter.d.ts.map +1 -0
  73. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_object_filter.js +39 -0
  74. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_trigger.d.ts +34 -0
  75. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_trigger.d.ts.map +1 -0
  76. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_trigger.js +59 -0
  77. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/index.d.ts +14 -0
  78. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/index.d.ts.map +1 -0
  79. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/index.js +13 -0
  80. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.d.ts +393 -0
  81. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.d.ts.map +1 -0
  82. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.js +1590 -0
  83. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.d.ts +49 -0
  84. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.d.ts.map +1 -0
  85. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.js +216 -0
  86. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.d.ts +79 -0
  87. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.d.ts.map +1 -0
  88. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.js +496 -0
  89. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.d.ts +26 -0
  90. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.d.ts.map +1 -0
  91. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.js +118 -0
  92. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_custom_game_engine_definition.d.ts +29 -0
  93. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_custom_game_engine_definition.d.ts.map +1 -0
  94. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_custom_game_engine_definition.js +116 -0
  95. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_game_engine_player_rating_parameters.d.ts +22 -0
  96. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_game_engine_player_rating_parameters.d.ts.map +1 -0
  97. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_game_engine_player_rating_parameters.js +54 -0
  98. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_user_defined_option.d.ts +22 -0
  99. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_user_defined_option.d.ts.map +1 -0
  100. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_user_defined_option.js +82 -0
  101. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variable_metadata.d.ts +22 -0
  102. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variable_metadata.d.ts.map +1 -0
  103. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variable_metadata.js +85 -0
  104. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variant_variable.d.ts +13 -0
  105. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variant_variable.d.ts.map +1 -0
  106. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variant_variable.js +75 -0
  107. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/index.d.ts +4 -0
  108. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/index.d.ts.map +1 -0
  109. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/index.js +3 -0
  110. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/index.d.ts +2 -0
  111. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/index.d.ts.map +1 -0
  112. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/index.js +1 -0
  113. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/saved_game_files.d.ts +66 -0
  114. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/saved_game_files.d.ts.map +1 -0
  115. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/saved_game_files.js +586 -0
  116. package/dist/blf_chunk.d.ts +41 -0
  117. package/dist/blf_chunk.d.ts.map +1 -0
  118. package/dist/blf_chunk.js +126 -0
  119. package/dist/blffile.d.ts +5 -0
  120. package/dist/blffile.d.ts.map +1 -0
  121. package/dist/blffile.js +23 -0
  122. package/dist/chunk_signature.d.ts +10 -0
  123. package/dist/chunk_signature.d.ts.map +1 -0
  124. package/dist/chunk_signature.js +47 -0
  125. package/dist/chunks/halo3/v12070_08_09_05_2031_halo3_ship/index.d.ts +4 -0
  126. package/dist/chunks/halo3/v12070_08_09_05_2031_halo3_ship/index.d.ts.map +1 -0
  127. package/dist/chunks/halo3/v12070_08_09_05_2031_halo3_ship/index.js +3 -0
  128. package/dist/chunks/halo3/v12070_08_09_05_2031_halo3_ship/s_blf_chunk_compressed_data.d.ts +21 -0
  129. package/dist/chunks/halo3/v12070_08_09_05_2031_halo3_ship/s_blf_chunk_compressed_data.d.ts.map +1 -0
  130. package/dist/chunks/halo3/v12070_08_09_05_2031_halo3_ship/s_blf_chunk_compressed_data.js +112 -0
  131. package/dist/chunks/halo3/v12070_08_09_05_2031_halo3_ship/s_blf_chunk_end_of_file.d.ts +7 -0
  132. package/dist/chunks/halo3/v12070_08_09_05_2031_halo3_ship/s_blf_chunk_end_of_file.d.ts.map +1 -0
  133. package/dist/chunks/halo3/v12070_08_09_05_2031_halo3_ship/s_blf_chunk_end_of_file.js +72 -0
  134. package/dist/chunks/halo3/v12070_08_09_05_2031_halo3_ship/s_blf_chunk_start_of_file.d.ts +13 -0
  135. package/dist/chunks/halo3/v12070_08_09_05_2031_halo3_ship/s_blf_chunk_start_of_file.d.ts.map +1 -0
  136. package/dist/chunks/halo3/v12070_08_09_05_2031_halo3_ship/s_blf_chunk_start_of_file.js +83 -0
  137. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/index.d.ts +7 -0
  138. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/index.d.ts.map +1 -0
  139. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/index.js +6 -0
  140. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_author.d.ts +26 -0
  141. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_author.d.ts.map +1 -0
  142. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_author.js +109 -0
  143. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_compressed_data.d.ts +4 -0
  144. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_compressed_data.d.ts.map +1 -0
  145. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_compressed_data.js +3 -0
  146. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_content_header.d.ts +8 -0
  147. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_content_header.d.ts.map +1 -0
  148. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_content_header.js +78 -0
  149. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_game_variant.d.ts +24 -0
  150. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_game_variant.d.ts.map +1 -0
  151. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_game_variant.js +130 -0
  152. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_packed_game_variant.d.ts +15 -0
  153. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_packed_game_variant.d.ts.map +1 -0
  154. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_packed_game_variant.js +85 -0
  155. package/dist/decorators.d.ts +38 -0
  156. package/dist/decorators.d.ts.map +1 -0
  157. package/dist/decorators.js +68 -0
  158. package/dist/error.d.ts +4 -0
  159. package/dist/error.d.ts.map +1 -0
  160. package/dist/error.js +6 -0
  161. package/dist/index.d.ts +7 -0
  162. package/dist/index.d.ts.map +1 -0
  163. package/dist/index.js +6 -0
  164. package/dist/s_blf_header.d.ts +14 -0
  165. package/dist/s_blf_header.d.ts.map +1 -0
  166. package/dist/s_blf_header.js +113 -0
  167. package/dist/versions/halo3/v12070_08_09_05_2031_halo3_ship.d.ts +5 -0
  168. package/dist/versions/halo3/v12070_08_09_05_2031_halo3_ship.d.ts.map +1 -0
  169. package/dist/versions/halo3/v12070_08_09_05_2031_halo3_ship.js +4 -0
  170. package/dist/versions/halo3odst/v13895_09_04_27_2201_atlas_release.d.ts +5 -0
  171. package/dist/versions/halo3odst/v13895_09_04_27_2201_atlas_release.d.ts.map +1 -0
  172. package/dist/versions/halo3odst/v13895_09_04_27_2201_atlas_release.js +4 -0
  173. package/dist/versions/haloreach/v12065_11_08_24_1738_tu1actual.d.ts +10 -0
  174. package/dist/versions/haloreach/v12065_11_08_24_1738_tu1actual.d.ts.map +1 -0
  175. package/dist/versions/haloreach/v12065_11_08_24_1738_tu1actual.js +9 -0
  176. package/dist-cjs/bitstream/enum.js +19 -0
  177. package/dist-cjs/bitstream/enums.js +34 -0
  178. package/dist-cjs/bitstream/errors.js +16 -0
  179. package/dist-cjs/bitstream/index.js +29 -0
  180. package/dist-cjs/bitstream/math.js +167 -0
  181. package/dist-cjs/bitstream/reader.js +404 -0
  182. package/dist-cjs/bitstream/writer.js +334 -0
  183. package/dist-cjs/blam/common/cache/index.js +17 -0
  184. package/dist-cjs/blam/common/cache/security_functions.js +22 -0
  185. package/dist-cjs/blam/common/index.js +18 -0
  186. package/dist-cjs/blam/common/memory/data_compress.js +33 -0
  187. package/dist-cjs/blam/common/memory/index.js +17 -0
  188. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant.js +129 -0
  189. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant_au1_settings.js +34 -0
  190. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_default.js +305 -0
  191. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_survival_variant.js +182 -0
  192. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_traits.js +20 -0
  193. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_variant.js +113 -0
  194. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_player_traits.js +151 -0
  195. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_string_table.js +195 -0
  196. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/index.js +25 -0
  197. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalo_game_statistic.js +22 -0
  198. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalogamengine_map_permissions.js +22 -0
  199. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_object_filter.js +43 -0
  200. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_trigger.js +63 -0
  201. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/index.js +29 -0
  202. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.js +1640 -0
  203. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.js +224 -0
  204. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.js +508 -0
  205. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.js +124 -0
  206. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_custom_game_engine_definition.js +120 -0
  207. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_game_engine_player_rating_parameters.js +58 -0
  208. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_user_defined_option.js +87 -0
  209. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variable_metadata.js +93 -0
  210. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variant_variable.js +79 -0
  211. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/index.js +19 -0
  212. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/index.js +17 -0
  213. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/saved_game_files.js +591 -0
  214. package/dist-cjs/blf_chunk.js +139 -0
  215. package/dist-cjs/blffile.js +26 -0
  216. package/dist-cjs/chunk_signature.js +52 -0
  217. package/dist-cjs/chunks/halo3/v12070_08_09_05_2031_halo3_ship/index.js +10 -0
  218. package/dist-cjs/chunks/halo3/v12070_08_09_05_2031_halo3_ship/s_blf_chunk_compressed_data.js +115 -0
  219. package/dist-cjs/chunks/halo3/v12070_08_09_05_2031_halo3_ship/s_blf_chunk_end_of_file.js +75 -0
  220. package/dist-cjs/chunks/halo3/v12070_08_09_05_2031_halo3_ship/s_blf_chunk_start_of_file.js +86 -0
  221. package/dist-cjs/chunks/haloreach/v12065_11_08_24_1738_tu1actual/index.js +23 -0
  222. package/dist-cjs/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_author.js +115 -0
  223. package/dist-cjs/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_compressed_data.js +10 -0
  224. package/dist-cjs/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_content_header.js +81 -0
  225. package/dist-cjs/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_game_variant.js +133 -0
  226. package/dist-cjs/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_packed_game_variant.js +88 -0
  227. package/dist-cjs/decorators.js +75 -0
  228. package/dist-cjs/error.js +10 -0
  229. package/dist-cjs/index.js +53 -0
  230. package/dist-cjs/package.json +1 -0
  231. package/dist-cjs/s_blf_header.js +117 -0
  232. package/dist-cjs/versions/halo3/v12070_08_09_05_2031_halo3_ship.js +20 -0
  233. package/dist-cjs/versions/halo3odst/v13895_09_04_27_2201_atlas_release.js +20 -0
  234. package/dist-cjs/versions/haloreach/v12065_11_08_24_1738_tu1actual.js +25 -0
  235. package/package.json +99 -0
@@ -0,0 +1,114 @@
1
+ import type { c_bitstream_reader, c_bitstream_writer } from "../../../../bitstream";
2
+ import { s_content_item_metadata } from "../saved_games/saved_game_files";
3
+ import { c_player_traits } from "./c_player_traits";
4
+ import { c_string_table } from "./c_string_table";
5
+ export declare class c_game_engine_miscellaneous_options {
6
+ m_teams_enabled: boolean;
7
+ m_round_reset_players: boolean;
8
+ m_round_reset_map: boolean;
9
+ m_perfection_enabled: boolean;
10
+ m_round_time_limit_minutes: number;
11
+ m_round_limit: number;
12
+ m_early_victory_win_count: number;
13
+ m_sudden_death_time: number;
14
+ m_grace_period: number;
15
+ decode(bitstream: c_bitstream_reader): void;
16
+ encode(bitstream: c_bitstream_writer): void;
17
+ }
18
+ export declare class c_game_engine_respawn_options {
19
+ m_inherit_respawn_time: boolean;
20
+ m_respawn_with_teammate: boolean;
21
+ m_respawn_at_location: boolean;
22
+ m_respawn_on_kills: boolean;
23
+ m_lives_per_round: number;
24
+ m_team_lives_per_round: number;
25
+ m_respawn_time_seconds: number;
26
+ m_suicide_penalty_seconds: number;
27
+ m_betrayal_penalty_seconds: number;
28
+ m_respawn_growth_seconds: number;
29
+ m_loadout_cam_time: number;
30
+ m_respawn_player_traits_duration_seconds: number;
31
+ m_respawn_player_traits: c_player_traits;
32
+ decode(bitstream: c_bitstream_reader): void;
33
+ encode(bitstream: c_bitstream_writer): void;
34
+ }
35
+ export declare class c_game_engine_social_options {
36
+ m_flags: number;
37
+ m_team_changing: number;
38
+ m_observers_enabled: boolean;
39
+ decode(bitstream: c_bitstream_reader): void;
40
+ encode(bitstream: c_bitstream_writer): void;
41
+ }
42
+ export declare class c_game_engine_map_override_options {
43
+ m_flags: number;
44
+ m_base_player_traits: c_player_traits;
45
+ m_weapon_set_absolute_index: number;
46
+ m_vehicle_set_absolute_index: number;
47
+ m_red_powerup_traits: c_player_traits;
48
+ m_blue_powerup_traits: c_player_traits;
49
+ m_yellow_powerup_traits: c_player_traits;
50
+ m_red_powerup_duration_seconds: number;
51
+ m_blue_powerup_duration_seconds: number;
52
+ m_yellow_powerup_duration_seconds: number;
53
+ decode(bitstream: c_bitstream_reader): void;
54
+ encode(bitstream: c_bitstream_writer): void;
55
+ }
56
+ export declare const k_game_variant_team_count = 8;
57
+ export declare class c_game_engine_team_options_team {
58
+ m_team_enabled: boolean;
59
+ m_override_color_armour: boolean;
60
+ m_override_color_ui_text: boolean;
61
+ m_override_color_ui_bitmap: boolean;
62
+ m_name: c_string_table;
63
+ m_team_initial_designator: number;
64
+ m_model_override: number;
65
+ m_team_color_override: number;
66
+ m_team_ui_text_tint_color_override: number;
67
+ m_team_ui_bitmap_tint_color_override: number;
68
+ m_fireteam_count: number;
69
+ decode(bitstream: c_bitstream_reader): void;
70
+ encode(bitstream: c_bitstream_writer): void;
71
+ }
72
+ export declare class c_game_engine_team_options {
73
+ m_model_override: number;
74
+ m_designator_switch_type: number;
75
+ m_teams: c_game_engine_team_options_team[];
76
+ decode(bitstream: c_bitstream_reader): void;
77
+ encode(bitstream: c_bitstream_writer): void;
78
+ }
79
+ export declare class c_loadout_traits {
80
+ m_visible: boolean;
81
+ m_name: number;
82
+ m_initial_primary_weapon_absolute_index: number;
83
+ m_initial_secondary_weapon_absolute_index: number;
84
+ m_initial_equipment_absolute_index: number;
85
+ m_initial_grenade_count_setting: number;
86
+ decode(bitstream: c_bitstream_reader): void;
87
+ encode(bitstream: c_bitstream_writer): void;
88
+ }
89
+ export declare class c_loadout_palette_traits {
90
+ m_loadouts: c_loadout_traits[];
91
+ decode(bitstream: c_bitstream_reader): void;
92
+ encode(bitstream: c_bitstream_writer): void;
93
+ }
94
+ export declare class c_game_engine_loadout_traits {
95
+ m_flags: number;
96
+ m_loadout_palettes: c_loadout_palette_traits[];
97
+ decode(bitstream: c_bitstream_reader): void;
98
+ encode(bitstream: c_bitstream_writer): void;
99
+ }
100
+ export declare class c_game_engine_base_variant {
101
+ m_metadata: s_content_item_metadata;
102
+ m_built_in: boolean;
103
+ m_miscellaneous_options: c_game_engine_miscellaneous_options;
104
+ m_respawn_options: c_game_engine_respawn_options;
105
+ m_social_options: c_game_engine_social_options;
106
+ m_map_override_options: c_game_engine_map_override_options;
107
+ m_team_scoring_method: number;
108
+ m_team_options: c_game_engine_team_options;
109
+ m_loadouts: c_game_engine_loadout_traits;
110
+ decode(bitstream: c_bitstream_reader): void;
111
+ encode(bitstream: c_bitstream_writer): void;
112
+ }
113
+ export type c_game_engine_campaign_variant = c_game_engine_base_variant;
114
+ //# sourceMappingURL=c_game_engine_default.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"c_game_engine_default.d.ts","sourceRoot":"","sources":["../../../../../src/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_default.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,292 @@
1
+ import { content_item_metadata_decode, content_item_metadata_encode, s_content_item_display_metadata, s_content_item_general_metadata, s_content_item_history, s_content_item_metadata, } from "../saved_games/saved_game_files";
2
+ import { c_player_traits } from "./c_player_traits";
3
+ import { c_string_table } from "./c_string_table";
4
+ export class c_game_engine_miscellaneous_options {
5
+ m_teams_enabled = false;
6
+ m_round_reset_players = false;
7
+ m_round_reset_map = false;
8
+ m_perfection_enabled = false;
9
+ m_round_time_limit_minutes = 0;
10
+ m_round_limit = 0;
11
+ m_early_victory_win_count = 0;
12
+ m_sudden_death_time = 0;
13
+ m_grace_period = 0;
14
+ decode(bitstream) {
15
+ this.m_teams_enabled = bitstream.read_bool("miscellaneous-options-teams");
16
+ this.m_round_reset_players = bitstream.read_bool("miscellaneous-options-round-reset-players");
17
+ this.m_round_reset_map = bitstream.read_bool("miscellaneous-options-round-reset-map");
18
+ this.m_perfection_enabled = bitstream.read_bool("miscellaneous-options-perfection-enabled");
19
+ this.m_round_time_limit_minutes = bitstream.read_integer("miscellaneous-options-round-time-limit-minutes", 8);
20
+ this.m_round_limit = bitstream.read_integer("miscellaneous-options-round-limit", 5);
21
+ this.m_early_victory_win_count = bitstream.read_integer("miscellaneous-options-early-victory-win-count", 4);
22
+ this.m_sudden_death_time = bitstream.read_integer("sudden-death-time-limit", 7);
23
+ this.m_grace_period = bitstream.read_integer("grace-period", 5);
24
+ }
25
+ encode(bitstream) {
26
+ bitstream.write_bool(this.m_teams_enabled);
27
+ bitstream.write_bool(this.m_round_reset_players);
28
+ bitstream.write_bool(this.m_round_reset_map);
29
+ bitstream.write_bool(this.m_perfection_enabled);
30
+ bitstream.write_integer(this.m_round_time_limit_minutes, 8);
31
+ bitstream.write_integer(this.m_round_limit, 5);
32
+ bitstream.write_integer(this.m_early_victory_win_count, 4);
33
+ bitstream.write_integer(this.m_sudden_death_time, 7);
34
+ bitstream.write_integer(this.m_grace_period, 5);
35
+ }
36
+ }
37
+ export class c_game_engine_respawn_options {
38
+ m_inherit_respawn_time = false;
39
+ m_respawn_with_teammate = false;
40
+ m_respawn_at_location = false;
41
+ m_respawn_on_kills = false;
42
+ m_lives_per_round = 0;
43
+ m_team_lives_per_round = 0;
44
+ m_respawn_time_seconds = 0;
45
+ m_suicide_penalty_seconds = 0;
46
+ m_betrayal_penalty_seconds = 0;
47
+ m_respawn_growth_seconds = 0;
48
+ m_loadout_cam_time = 0;
49
+ m_respawn_player_traits_duration_seconds = 0;
50
+ m_respawn_player_traits = new c_player_traits();
51
+ decode(bitstream) {
52
+ this.m_inherit_respawn_time = bitstream.read_bool("respawn-options-inherit-respawn-time");
53
+ this.m_respawn_with_teammate = bitstream.read_bool("respawn-options-respawn-with-teammate");
54
+ this.m_respawn_at_location = bitstream.read_bool("respawn-options-respawn-at-location");
55
+ this.m_respawn_on_kills = bitstream.read_bool("respawn-options-respawn-on-kills");
56
+ this.m_lives_per_round = bitstream.read_integer("respawn-options-lives-per-round", 6);
57
+ this.m_team_lives_per_round = bitstream.read_integer("respawn-options-team-lives-per-round", 7);
58
+ this.m_respawn_time_seconds = bitstream.read_integer("respawn-options-respawn-time", 8);
59
+ this.m_suicide_penalty_seconds = bitstream.read_integer("respawn-options-suicide-time", 8);
60
+ this.m_betrayal_penalty_seconds = bitstream.read_integer("respawn-options-betrayal-time", 8);
61
+ this.m_respawn_growth_seconds = bitstream.read_integer("respawn-options-respawn-growth-time", 4);
62
+ this.m_loadout_cam_time = bitstream.read_integer("respawn-options-initial-loadout-selection-time", 4);
63
+ this.m_respawn_player_traits_duration_seconds = bitstream.read_integer("respawn-options-player-traits-duration", 6);
64
+ this.m_respawn_player_traits.decode(bitstream);
65
+ }
66
+ encode(bitstream) {
67
+ bitstream.write_bool(this.m_inherit_respawn_time);
68
+ bitstream.write_bool(this.m_respawn_with_teammate);
69
+ bitstream.write_bool(this.m_respawn_at_location);
70
+ bitstream.write_bool(this.m_respawn_on_kills);
71
+ bitstream.write_integer(this.m_lives_per_round, 6);
72
+ bitstream.write_integer(this.m_team_lives_per_round, 7);
73
+ bitstream.write_integer(this.m_respawn_time_seconds, 8);
74
+ bitstream.write_integer(this.m_suicide_penalty_seconds, 8);
75
+ bitstream.write_integer(this.m_betrayal_penalty_seconds, 8);
76
+ bitstream.write_integer(this.m_respawn_growth_seconds, 4);
77
+ bitstream.write_integer(this.m_loadout_cam_time, 4);
78
+ bitstream.write_integer(this.m_respawn_player_traits_duration_seconds, 6);
79
+ this.m_respawn_player_traits.encode(bitstream);
80
+ }
81
+ }
82
+ export class c_game_engine_social_options {
83
+ m_flags = 0;
84
+ m_team_changing = 0;
85
+ m_observers_enabled = false;
86
+ decode(bitstream) {
87
+ this.m_observers_enabled = bitstream.read_bool("observers-enabled");
88
+ this.m_team_changing = bitstream.read_integer("team-changing", 2);
89
+ for (let i = 0; i < 5; i++) {
90
+ if (bitstream.read_bool(`social-flag-${i}`)) {
91
+ this.m_flags |= 1 << i;
92
+ }
93
+ }
94
+ }
95
+ encode(bitstream) {
96
+ bitstream.write_bool(this.m_observers_enabled);
97
+ bitstream.write_integer(this.m_team_changing, 2);
98
+ for (let i = 0; i < 5; i++) {
99
+ bitstream.write_bool(((this.m_flags >> i) & 1) !== 0);
100
+ }
101
+ }
102
+ }
103
+ export class c_game_engine_map_override_options {
104
+ m_flags = 0;
105
+ m_base_player_traits = new c_player_traits();
106
+ m_weapon_set_absolute_index = 0;
107
+ m_vehicle_set_absolute_index = 0;
108
+ m_red_powerup_traits = new c_player_traits();
109
+ m_blue_powerup_traits = new c_player_traits();
110
+ m_yellow_powerup_traits = new c_player_traits();
111
+ m_red_powerup_duration_seconds = 0;
112
+ m_blue_powerup_duration_seconds = 0;
113
+ m_yellow_powerup_duration_seconds = 0;
114
+ decode(bitstream) {
115
+ this.m_flags = bitstream.read_integer("flags", 6);
116
+ this.m_base_player_traits.decode(bitstream);
117
+ this.m_weapon_set_absolute_index = bitstream.read_signed_integer("map-override-weapon-set", 8);
118
+ this.m_vehicle_set_absolute_index = bitstream.read_signed_integer("map-override-vehicle-set", 8);
119
+ this.m_red_powerup_traits.decode(bitstream);
120
+ this.m_blue_powerup_traits.decode(bitstream);
121
+ this.m_yellow_powerup_traits.decode(bitstream);
122
+ this.m_red_powerup_duration_seconds = bitstream.read_integer("map-override-red-powerup-duration", 7);
123
+ this.m_blue_powerup_duration_seconds = bitstream.read_integer("map-override-blue-powerup-duration", 7);
124
+ this.m_yellow_powerup_duration_seconds = bitstream.read_integer("map-override-yellow-powerup-duration", 7);
125
+ }
126
+ encode(bitstream) {
127
+ bitstream.write_integer(this.m_flags, 6);
128
+ this.m_base_player_traits.encode(bitstream);
129
+ bitstream.write_signed_integer(this.m_weapon_set_absolute_index, 8);
130
+ bitstream.write_signed_integer(this.m_vehicle_set_absolute_index, 8);
131
+ this.m_red_powerup_traits.encode(bitstream);
132
+ this.m_blue_powerup_traits.encode(bitstream);
133
+ this.m_yellow_powerup_traits.encode(bitstream);
134
+ bitstream.write_integer(this.m_red_powerup_duration_seconds, 7);
135
+ bitstream.write_integer(this.m_blue_powerup_duration_seconds, 7);
136
+ bitstream.write_integer(this.m_yellow_powerup_duration_seconds, 7);
137
+ }
138
+ }
139
+ export const k_game_variant_team_count = 8;
140
+ export class c_game_engine_team_options_team {
141
+ m_team_enabled = false;
142
+ m_override_color_armour = false;
143
+ m_override_color_ui_text = false;
144
+ m_override_color_ui_bitmap = false;
145
+ m_name = new c_string_table(1, 32, 5, 6, 1);
146
+ m_team_initial_designator = 0;
147
+ m_model_override = 0;
148
+ m_team_color_override = 0;
149
+ m_team_ui_text_tint_color_override = 0;
150
+ m_team_ui_bitmap_tint_color_override = 0;
151
+ m_fireteam_count = 0;
152
+ decode(bitstream) {
153
+ this.m_override_color_ui_bitmap = bitstream.read_bool("team-override-ui-bitmap-color");
154
+ this.m_override_color_ui_text = bitstream.read_bool("team-override-ui-text-color");
155
+ this.m_override_color_armour = bitstream.read_bool("team-override-armour-color");
156
+ this.m_team_enabled = bitstream.read_bool("team-enabled");
157
+ this.m_name.decode(bitstream);
158
+ this.m_team_initial_designator = bitstream.read_integer("team-initial-designator", 4);
159
+ this.m_model_override = bitstream.read_integer("team-model-override", 1);
160
+ this.m_team_color_override = bitstream.read_integer("team-color-override", 32);
161
+ this.m_team_ui_text_tint_color_override = bitstream.read_integer("team-ui-text-tint-color-override", 32);
162
+ this.m_team_ui_bitmap_tint_color_override = bitstream.read_integer("team-ui-bitmap-tint-color-override", 32);
163
+ this.m_fireteam_count = bitstream.read_integer("fireteam-count", 5);
164
+ }
165
+ encode(bitstream) {
166
+ bitstream.write_bool(this.m_override_color_ui_bitmap);
167
+ bitstream.write_bool(this.m_override_color_ui_text);
168
+ bitstream.write_bool(this.m_override_color_armour);
169
+ bitstream.write_bool(this.m_team_enabled);
170
+ this.m_name.encode(bitstream);
171
+ bitstream.write_integer(this.m_team_initial_designator, 4);
172
+ bitstream.write_integer(this.m_model_override, 1);
173
+ bitstream.write_integer(this.m_team_color_override, 32);
174
+ bitstream.write_integer(this.m_team_ui_text_tint_color_override, 32);
175
+ bitstream.write_integer(this.m_team_ui_bitmap_tint_color_override, 32);
176
+ bitstream.write_integer(this.m_fireteam_count, 5);
177
+ }
178
+ }
179
+ export class c_game_engine_team_options {
180
+ m_model_override = 0;
181
+ m_designator_switch_type = 0;
182
+ m_teams = Array.from({ length: k_game_variant_team_count }, () => new c_game_engine_team_options_team());
183
+ decode(bitstream) {
184
+ this.m_model_override = bitstream.read_integer("model-override", 3);
185
+ this.m_designator_switch_type = bitstream.read_integer("designator-switch-type", 2);
186
+ for (const team of this.m_teams) {
187
+ team.decode(bitstream);
188
+ }
189
+ }
190
+ encode(bitstream) {
191
+ bitstream.write_integer(this.m_model_override, 3);
192
+ bitstream.write_integer(this.m_designator_switch_type, 2);
193
+ for (const team of this.m_teams) {
194
+ team.encode(bitstream);
195
+ }
196
+ }
197
+ }
198
+ export class c_loadout_traits {
199
+ m_visible = false;
200
+ m_name = 0;
201
+ m_initial_primary_weapon_absolute_index = 0;
202
+ m_initial_secondary_weapon_absolute_index = 0;
203
+ m_initial_equipment_absolute_index = 0;
204
+ m_initial_grenade_count_setting = 0;
205
+ decode(bitstream) {
206
+ this.m_visible = bitstream.read_bool("flags");
207
+ this.m_name = bitstream.read_index("name", 128, 7);
208
+ this.m_initial_primary_weapon_absolute_index =
209
+ bitstream.read_signed_integer("initial-primary-weapon", 8);
210
+ this.m_initial_secondary_weapon_absolute_index =
211
+ bitstream.read_signed_integer("initial-secondary-weapon", 8);
212
+ this.m_initial_equipment_absolute_index = bitstream.read_signed_integer("initial-equipment", 8);
213
+ this.m_initial_grenade_count_setting = bitstream.read_integer("initial-grenade-count", 4);
214
+ }
215
+ encode(bitstream) {
216
+ bitstream.write_bool(this.m_visible);
217
+ bitstream.write_index(this.m_name, 128, 7);
218
+ bitstream.write_signed_integer(this.m_initial_primary_weapon_absolute_index, 8);
219
+ bitstream.write_signed_integer(this.m_initial_secondary_weapon_absolute_index, 8);
220
+ bitstream.write_signed_integer(this.m_initial_equipment_absolute_index, 8);
221
+ bitstream.write_integer(this.m_initial_grenade_count_setting, 4);
222
+ }
223
+ }
224
+ export class c_loadout_palette_traits {
225
+ m_loadouts = Array.from({ length: 5 }, () => new c_loadout_traits());
226
+ decode(bitstream) {
227
+ for (const loadout of this.m_loadouts) {
228
+ loadout.decode(bitstream);
229
+ }
230
+ }
231
+ encode(bitstream) {
232
+ for (const loadout of this.m_loadouts) {
233
+ loadout.encode(bitstream);
234
+ }
235
+ }
236
+ }
237
+ export class c_game_engine_loadout_traits {
238
+ m_flags = 0;
239
+ m_loadout_palettes = Array.from({ length: 6 }, () => new c_loadout_palette_traits());
240
+ decode(bitstream) {
241
+ this.m_flags = bitstream.read_integer("loadout-flags", 2);
242
+ for (const palette of this.m_loadout_palettes) {
243
+ palette.decode(bitstream);
244
+ }
245
+ }
246
+ encode(bitstream) {
247
+ bitstream.write_integer(this.m_flags, 2);
248
+ for (const palette of this.m_loadout_palettes) {
249
+ palette.encode(bitstream);
250
+ }
251
+ }
252
+ }
253
+ export class c_game_engine_base_variant {
254
+ m_metadata = (() => {
255
+ const metadata = new s_content_item_metadata();
256
+ metadata.general = new s_content_item_general_metadata();
257
+ metadata.display = new s_content_item_display_metadata();
258
+ metadata.creation_history = new s_content_item_history();
259
+ metadata.modification_history = new s_content_item_history();
260
+ return metadata;
261
+ })();
262
+ m_built_in = false;
263
+ m_miscellaneous_options = new c_game_engine_miscellaneous_options();
264
+ m_respawn_options = new c_game_engine_respawn_options();
265
+ m_social_options = new c_game_engine_social_options();
266
+ m_map_override_options = new c_game_engine_map_override_options();
267
+ m_team_scoring_method = 0;
268
+ m_team_options = new c_game_engine_team_options();
269
+ m_loadouts = new c_game_engine_loadout_traits();
270
+ decode(bitstream) {
271
+ content_item_metadata_decode(bitstream, this.m_metadata);
272
+ this.m_built_in = bitstream.read_bool("variant-built-in");
273
+ this.m_miscellaneous_options.decode(bitstream);
274
+ this.m_respawn_options.decode(bitstream);
275
+ this.m_social_options.decode(bitstream);
276
+ this.m_map_override_options.decode(bitstream);
277
+ this.m_team_scoring_method = bitstream.read_integer("team-scoring-method", 3);
278
+ this.m_team_options.decode(bitstream);
279
+ this.m_loadouts.decode(bitstream);
280
+ }
281
+ encode(bitstream) {
282
+ content_item_metadata_encode(bitstream, this.m_metadata);
283
+ bitstream.write_bool(this.m_built_in);
284
+ this.m_miscellaneous_options.encode(bitstream);
285
+ this.m_respawn_options.encode(bitstream);
286
+ this.m_social_options.encode(bitstream);
287
+ this.m_map_override_options.encode(bitstream);
288
+ bitstream.write_integer(this.m_team_scoring_method, 3);
289
+ this.m_team_options.encode(bitstream);
290
+ this.m_loadouts.encode(bitstream);
291
+ }
292
+ }
@@ -0,0 +1,70 @@
1
+ import type { c_bitstream_reader, c_bitstream_writer } from "../../../../bitstream";
2
+ import { c_game_engine_base_variant, c_game_engine_respawn_options } from "./c_game_engine_default";
3
+ import { c_player_traits } from "./c_player_traits";
4
+ export declare class c_ai_traits {
5
+ m_vision: number;
6
+ m_sound: number;
7
+ m_luck: number;
8
+ m_weapon: number;
9
+ m_grenade: number;
10
+ m_equipment_drop_setting: number;
11
+ m_assasination_immunity_setting: number;
12
+ m_headshot_immunity_setting: number;
13
+ m_damage_resistance: number;
14
+ m_damage_modifier: number;
15
+ decode(bitstream: c_bitstream_reader): void;
16
+ encode(bitstream: c_bitstream_writer): void;
17
+ }
18
+ export declare class s_survival_wave_properties {
19
+ m_wave_flags: number;
20
+ m_wave_squad_advance_type: number;
21
+ m_wave_squad_count: number;
22
+ m_squads: number[];
23
+ decode(bitstream: c_bitstream_reader): void;
24
+ encode(bitstream: c_bitstream_writer): void;
25
+ }
26
+ export declare class s_custom_skull {
27
+ m_spartan_traits: c_player_traits;
28
+ m_elite_traits: c_player_traits;
29
+ m_wave_traits: c_ai_traits;
30
+ decode(bitstream: c_bitstream_reader): void;
31
+ encode(bitstream: c_bitstream_writer): void;
32
+ }
33
+ export declare class s_survival_round_properties {
34
+ m_skull_flags: number;
35
+ m_initial_wave_options: s_survival_wave_properties;
36
+ m_main_wave_options: s_survival_wave_properties;
37
+ m_boss_wave_options: s_survival_wave_properties;
38
+ decode(bitstream: c_bitstream_reader): void;
39
+ encode(bitstream: c_bitstream_writer): void;
40
+ }
41
+ export declare class c_game_engine_survival_variant {
42
+ m_base_variant: c_game_engine_base_variant;
43
+ m_variant_flags: number;
44
+ m_campaign_difficulty_level: number;
45
+ m_set_count: number;
46
+ m_bonus_lives_awarded: number;
47
+ m_bonus_target: number;
48
+ m_bonus_lives_on_elite_player_death: number;
49
+ m_shared_team_life_count: number;
50
+ m_elite_life_count: number;
51
+ m_extra_life_score_target: number;
52
+ m_maximum_lives: number;
53
+ m_generator_count: number;
54
+ m_spartan_traits: c_player_traits;
55
+ m_elite_traits: c_player_traits;
56
+ m_ai_traits: c_ai_traits;
57
+ m_red_skull: s_custom_skull;
58
+ m_blue_skull: s_custom_skull;
59
+ m_yellow_skull: s_custom_skull;
60
+ m_elite_respawn_options: c_game_engine_respawn_options;
61
+ m_round_1_properties: s_survival_round_properties;
62
+ m_round_2_properties: s_survival_round_properties;
63
+ m_round_3_properties: s_survival_round_properties;
64
+ m_bonus_round_duration: number;
65
+ m_bonus_round_skull_flags: number;
66
+ m_bonus_round_properties: s_survival_wave_properties;
67
+ decode(bitstream: c_bitstream_reader): void;
68
+ encode(bitstream: c_bitstream_writer): void;
69
+ }
70
+ //# sourceMappingURL=c_game_engine_survival_variant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"c_game_engine_survival_variant.d.ts","sourceRoot":"","sources":["../../../../../src/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_survival_variant.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAC9B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,qBAAa,WAAW;IACtB,QAAQ,SAAK;IACb,OAAO,SAAK;IACZ,MAAM,SAAK;IACX,QAAQ,SAAK;IACb,SAAS,SAAK;IACd,wBAAwB,SAAK;IAC7B,+BAA+B,SAAK;IACpC,2BAA2B,SAAK;IAChC,mBAAmB,SAAK;IACxB,iBAAiB,SAAK;IAEtB,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAsB3C,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;CAY5C;AAED,qBAAa,0BAA0B;IACrC,YAAY,SAAK;IACjB,yBAAyB,SAAK;IAC9B,kBAAkB,SAAK;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAuC;IAEzD,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAY3C,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;CAQ5C;AAED,qBAAa,cAAc;IACzB,gBAAgB,kBAAyB;IACzC,cAAc,kBAAyB;IACvC,aAAa,cAAqB;IAElC,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAM3C,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;CAK5C;AAED,qBAAa,2BAA2B;IACtC,aAAa,SAAK;IAClB,sBAAsB,6BAAoC;IAC1D,mBAAmB,6BAAoC;IACvD,mBAAmB,6BAAoC;IAEvD,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAO3C,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;CAM5C;AAED,qBAAa,8BAA8B;IACzC,cAAc,6BAAoC;IAClD,eAAe,SAAK;IACpB,2BAA2B,SAAK;IAChC,WAAW,SAAK;IAChB,qBAAqB,SAAK;IAC1B,cAAc,SAAK;IACnB,mCAAmC,SAAK;IACxC,wBAAwB,SAAK;IAC7B,kBAAkB,SAAK;IACvB,yBAAyB,SAAK;IAC9B,eAAe,SAAK;IACpB,iBAAiB,SAAK;IACtB,gBAAgB,kBAAyB;IACzC,cAAc,kBAAyB;IACvC,WAAW,cAAqB;IAChC,WAAW,iBAAwB;IACnC,YAAY,iBAAwB;IACpC,cAAc,iBAAwB;IACtC,uBAAuB,gCAAuC;IAC9D,oBAAoB,8BAAqC;IACzD,oBAAoB,8BAAqC;IACzD,oBAAoB,8BAAqC;IACzD,sBAAsB,SAAK;IAC3B,yBAAyB,SAAK;IAC9B,wBAAwB,6BAAoC;IAE5D,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IA8C3C,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;CA2B5C"}
@@ -0,0 +1,174 @@
1
+ import { c_game_engine_base_variant, c_game_engine_respawn_options, } from "./c_game_engine_default";
2
+ import { c_player_traits } from "./c_player_traits";
3
+ export class c_ai_traits {
4
+ m_vision = 0;
5
+ m_sound = 0;
6
+ m_luck = 0;
7
+ m_weapon = 0;
8
+ m_grenade = 0;
9
+ m_equipment_drop_setting = 0;
10
+ m_assasination_immunity_setting = 0;
11
+ m_headshot_immunity_setting = 0;
12
+ m_damage_resistance = 0;
13
+ m_damage_modifier = 0;
14
+ decode(bitstream) {
15
+ this.m_vision = bitstream.read_integer("vision", 3);
16
+ this.m_sound = bitstream.read_integer("sound", 2);
17
+ this.m_luck = bitstream.read_integer("luck", 3);
18
+ this.m_weapon = bitstream.read_integer("weapon", 2);
19
+ this.m_grenade = bitstream.read_integer("grenade", 2);
20
+ this.m_equipment_drop_setting = bitstream.read_integer("equipment-drop-setting", 2);
21
+ this.m_assasination_immunity_setting = bitstream.read_integer("assasination-immunity-setting", 2);
22
+ this.m_headshot_immunity_setting = bitstream.read_integer("headshot-immunity-setting", 2);
23
+ this.m_damage_resistance = bitstream.read_integer("damage-resistance", 4);
24
+ this.m_damage_modifier = bitstream.read_integer("damage-modifier", 4);
25
+ }
26
+ encode(bitstream) {
27
+ bitstream.write_integer(this.m_vision, 3);
28
+ bitstream.write_integer(this.m_sound, 2);
29
+ bitstream.write_integer(this.m_luck, 3);
30
+ bitstream.write_integer(this.m_weapon, 2);
31
+ bitstream.write_integer(this.m_grenade, 2);
32
+ bitstream.write_integer(this.m_equipment_drop_setting, 2);
33
+ bitstream.write_integer(this.m_assasination_immunity_setting, 2);
34
+ bitstream.write_integer(this.m_headshot_immunity_setting, 2);
35
+ bitstream.write_integer(this.m_damage_resistance, 4);
36
+ bitstream.write_integer(this.m_damage_modifier, 4);
37
+ }
38
+ }
39
+ export class s_survival_wave_properties {
40
+ m_wave_flags = 0;
41
+ m_wave_squad_advance_type = 0;
42
+ m_wave_squad_count = 0;
43
+ m_squads = Array.from({ length: 12 }, () => 0);
44
+ decode(bitstream) {
45
+ this.m_wave_flags = bitstream.read_integer("wave_flags", 1);
46
+ this.m_wave_squad_advance_type = bitstream.read_integer("wave_squad_advance_type", 1);
47
+ this.m_wave_squad_count = bitstream.read_integer("wave-squad-count", 4);
48
+ for (let i = 0; i < 12; i++) {
49
+ this.m_squads[i] = bitstream.read_integer("possible-wave-squad", 8);
50
+ }
51
+ }
52
+ encode(bitstream) {
53
+ bitstream.write_integer(this.m_wave_flags, 1);
54
+ bitstream.write_integer(this.m_wave_squad_advance_type, 1);
55
+ bitstream.write_integer(this.m_wave_squad_count, 4);
56
+ for (let i = 0; i < 12; i++) {
57
+ bitstream.write_integer(this.m_squads[i], 8);
58
+ }
59
+ }
60
+ }
61
+ export class s_custom_skull {
62
+ m_spartan_traits = new c_player_traits();
63
+ m_elite_traits = new c_player_traits();
64
+ m_wave_traits = new c_ai_traits();
65
+ decode(bitstream) {
66
+ this.m_spartan_traits.decode(bitstream);
67
+ this.m_elite_traits.decode(bitstream);
68
+ this.m_wave_traits.decode(bitstream);
69
+ }
70
+ encode(bitstream) {
71
+ this.m_spartan_traits.encode(bitstream);
72
+ this.m_elite_traits.encode(bitstream);
73
+ this.m_wave_traits.encode(bitstream);
74
+ }
75
+ }
76
+ export class s_survival_round_properties {
77
+ m_skull_flags = 0;
78
+ m_initial_wave_options = new s_survival_wave_properties();
79
+ m_main_wave_options = new s_survival_wave_properties();
80
+ m_boss_wave_options = new s_survival_wave_properties();
81
+ decode(bitstream) {
82
+ this.m_skull_flags = bitstream.read_integer("skull-flags", 18);
83
+ this.m_initial_wave_options.decode(bitstream);
84
+ this.m_main_wave_options.decode(bitstream);
85
+ this.m_boss_wave_options.decode(bitstream);
86
+ }
87
+ encode(bitstream) {
88
+ bitstream.write_integer(this.m_skull_flags, 18);
89
+ this.m_initial_wave_options.encode(bitstream);
90
+ this.m_main_wave_options.encode(bitstream);
91
+ this.m_boss_wave_options.encode(bitstream);
92
+ }
93
+ }
94
+ export class c_game_engine_survival_variant {
95
+ m_base_variant = new c_game_engine_base_variant();
96
+ m_variant_flags = 0;
97
+ m_campaign_difficulty_level = 0;
98
+ m_set_count = 0;
99
+ m_bonus_lives_awarded = 0;
100
+ m_bonus_target = 0;
101
+ m_bonus_lives_on_elite_player_death = 0;
102
+ m_shared_team_life_count = 0;
103
+ m_elite_life_count = 0;
104
+ m_extra_life_score_target = 0;
105
+ m_maximum_lives = 0;
106
+ m_generator_count = 0;
107
+ m_spartan_traits = new c_player_traits();
108
+ m_elite_traits = new c_player_traits();
109
+ m_ai_traits = new c_ai_traits();
110
+ m_red_skull = new s_custom_skull();
111
+ m_blue_skull = new s_custom_skull();
112
+ m_yellow_skull = new s_custom_skull();
113
+ m_elite_respawn_options = new c_game_engine_respawn_options();
114
+ m_round_1_properties = new s_survival_round_properties();
115
+ m_round_2_properties = new s_survival_round_properties();
116
+ m_round_3_properties = new s_survival_round_properties();
117
+ m_bonus_round_duration = 0;
118
+ m_bonus_round_skull_flags = 0;
119
+ m_bonus_round_properties = new s_survival_wave_properties();
120
+ decode(bitstream) {
121
+ this.m_base_variant.decode(bitstream);
122
+ this.m_variant_flags = bitstream.read_integer("m_variant_flags", 5);
123
+ this.m_campaign_difficulty_level = bitstream.read_integer("campaign-difficulty-level", 3);
124
+ this.m_set_count = bitstream.read_integer("set-count", 8);
125
+ this.m_bonus_lives_awarded = bitstream.read_integer("bonus-lives-awarded", 4);
126
+ this.m_bonus_target = bitstream.read_integer("bonus-target", 15);
127
+ this.m_bonus_lives_on_elite_player_death = bitstream.read_integer("bonus-lives-on-elite-player-death", 15);
128
+ this.m_shared_team_life_count = bitstream.read_integer("shared-team-life-count", 7);
129
+ this.m_elite_life_count = bitstream.read_integer("elite-life-count", 7);
130
+ this.m_extra_life_score_target = bitstream.read_integer("extra-life-score-target", 15);
131
+ this.m_maximum_lives = bitstream.read_integer("maximum-lives", 7);
132
+ this.m_generator_count = bitstream.read_integer("generator-count", 2);
133
+ this.m_spartan_traits.decode(bitstream);
134
+ this.m_elite_traits.decode(bitstream);
135
+ this.m_ai_traits.decode(bitstream);
136
+ this.m_red_skull.decode(bitstream);
137
+ this.m_blue_skull.decode(bitstream);
138
+ this.m_yellow_skull.decode(bitstream);
139
+ this.m_elite_respawn_options.decode(bitstream);
140
+ this.m_round_1_properties.decode(bitstream);
141
+ this.m_round_2_properties.decode(bitstream);
142
+ this.m_round_3_properties.decode(bitstream);
143
+ this.m_bonus_round_duration = bitstream.read_integer("duration-seconds", 12);
144
+ this.m_bonus_round_skull_flags = bitstream.read_integer("skull-flags", 18);
145
+ this.m_bonus_round_properties.decode(bitstream);
146
+ }
147
+ encode(bitstream) {
148
+ this.m_base_variant.encode(bitstream);
149
+ bitstream.write_integer(this.m_variant_flags, 5);
150
+ bitstream.write_integer(this.m_campaign_difficulty_level, 3);
151
+ bitstream.write_integer(this.m_set_count, 8);
152
+ bitstream.write_integer(this.m_bonus_lives_awarded, 4);
153
+ bitstream.write_integer(this.m_bonus_target, 15);
154
+ bitstream.write_integer(this.m_bonus_lives_on_elite_player_death, 15);
155
+ bitstream.write_integer(this.m_shared_team_life_count, 7);
156
+ bitstream.write_integer(this.m_elite_life_count, 7);
157
+ bitstream.write_integer(this.m_extra_life_score_target, 15);
158
+ bitstream.write_integer(this.m_maximum_lives, 7);
159
+ bitstream.write_integer(this.m_generator_count, 2);
160
+ this.m_spartan_traits.encode(bitstream);
161
+ this.m_elite_traits.encode(bitstream);
162
+ this.m_ai_traits.encode(bitstream);
163
+ this.m_red_skull.encode(bitstream);
164
+ this.m_blue_skull.encode(bitstream);
165
+ this.m_yellow_skull.encode(bitstream);
166
+ this.m_elite_respawn_options.encode(bitstream);
167
+ this.m_round_1_properties.encode(bitstream);
168
+ this.m_round_2_properties.encode(bitstream);
169
+ this.m_round_3_properties.encode(bitstream);
170
+ bitstream.write_integer(this.m_bonus_round_duration, 12);
171
+ bitstream.write_integer(this.m_bonus_round_skull_flags, 18);
172
+ this.m_bonus_round_properties.encode(bitstream);
173
+ }
174
+ }
@@ -0,0 +1,10 @@
1
+ import type { c_bitstream_reader, c_bitstream_writer } from "../../../../bitstream";
2
+ import { c_player_traits } from "./c_player_traits";
3
+ export declare class s_player_trait_option {
4
+ m_name_string_index: number;
5
+ m_description_string_index: number;
6
+ m_player_traits: c_player_traits;
7
+ decode(bitstream: c_bitstream_reader): void;
8
+ encode(bitstream: c_bitstream_writer): void;
9
+ }
10
+ //# sourceMappingURL=c_game_engine_traits.d.ts.map