@blamnetwork/blf 1.0.0-alpha.4 → 1.0.0-beta.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 (198) hide show
  1. package/README.md +17 -7
  2. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_survival_variant.d.ts +2 -1
  3. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_survival_variant.d.ts.map +1 -1
  4. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_survival_variant.js +4 -3
  5. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/game_engine_enums.d.ts +45 -0
  6. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/game_engine_enums.d.ts.map +1 -0
  7. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/game_engine_enums.js +60 -0
  8. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/index.d.ts +1 -0
  9. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/index.d.ts.map +1 -1
  10. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/index.js +1 -0
  11. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/index.d.ts +4 -0
  12. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/index.d.ts.map +1 -1
  13. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/index.js +4 -0
  14. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.d.ts +97 -14
  15. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.d.ts.map +1 -1
  16. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.js +159 -55
  17. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.d.ts +10 -1
  18. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.d.ts.map +1 -1
  19. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.js +13 -3
  20. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_object.d.ts +26 -0
  21. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_object.d.ts.map +1 -0
  22. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_object.js +26 -0
  23. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_player.d.ts +33 -0
  24. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_player.d.ts.map +1 -0
  25. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_player.js +33 -0
  26. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_team.d.ts +25 -0
  27. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_team.d.ts.map +1 -0
  28. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_team.js +25 -0
  29. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_hud_widgets.d.ts +7 -0
  30. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_hud_widgets.d.ts.map +1 -0
  31. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_hud_widgets.js +7 -0
  32. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.d.ts +9 -3
  33. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.d.ts.map +1 -1
  34. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.js +15 -9
  35. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.d.ts +2 -1
  36. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.d.ts.map +1 -1
  37. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.js +6 -5
  38. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant.d.ts +37 -0
  39. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant.d.ts.map +1 -0
  40. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant.js +125 -0
  41. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant_au1_settings.d.ts +14 -0
  42. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant_au1_settings.d.ts.map +1 -0
  43. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant_au1_settings.js +30 -0
  44. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_default.d.ts +114 -0
  45. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_default.d.ts.map +1 -0
  46. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_default.js +292 -0
  47. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_survival_variant.d.ts +74 -0
  48. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_survival_variant.d.ts.map +1 -0
  49. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_survival_variant.js +184 -0
  50. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_traits.d.ts +10 -0
  51. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_traits.d.ts.map +1 -0
  52. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_traits.js +16 -0
  53. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_variant.d.ts +28 -0
  54. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_variant.d.ts.map +1 -0
  55. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_variant.js +109 -0
  56. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_player_traits.d.ts +56 -0
  57. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_player_traits.d.ts.map +1 -0
  58. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_player_traits.js +142 -0
  59. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_string_table.d.ts +27 -0
  60. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_string_table.d.ts.map +1 -0
  61. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_string_table.js +190 -0
  62. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/game_engine_enums.d.ts +45 -0
  63. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/game_engine_enums.d.ts.map +1 -0
  64. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/game_engine_enums.js +60 -0
  65. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/index.d.ts +11 -0
  66. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/index.d.ts.map +1 -0
  67. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/index.js +10 -0
  68. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalo_game_statistic.d.ts +10 -0
  69. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalo_game_statistic.d.ts.map +1 -0
  70. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalo_game_statistic.js +18 -0
  71. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalogamengine_map_permissions.d.ts +8 -0
  72. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalogamengine_map_permissions.d.ts.map +1 -0
  73. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalogamengine_map_permissions.js +18 -0
  74. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_object_filter.d.ts +13 -0
  75. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_object_filter.d.ts.map +1 -0
  76. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_object_filter.js +39 -0
  77. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_trigger.d.ts +34 -0
  78. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_trigger.d.ts.map +1 -0
  79. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_trigger.js +59 -0
  80. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/index.d.ts +18 -0
  81. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/index.d.ts.map +1 -0
  82. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/index.js +17 -0
  83. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_actions.d.ts +478 -0
  84. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_actions.d.ts.map +1 -0
  85. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_actions.js +1696 -0
  86. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_conditions.d.ts +58 -0
  87. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_conditions.d.ts.map +1 -0
  88. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_conditions.js +226 -0
  89. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_object.d.ts +34 -0
  90. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_object.d.ts.map +1 -0
  91. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_object.js +34 -0
  92. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_player.d.ts +36 -0
  93. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_player.d.ts.map +1 -0
  94. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_player.js +36 -0
  95. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_team.d.ts +31 -0
  96. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_team.d.ts.map +1 -0
  97. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_team.js +31 -0
  98. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_hud_widgets.d.ts +7 -0
  99. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_hud_widgets.d.ts.map +1 -0
  100. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_hud_widgets.js +7 -0
  101. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_references.d.ts +85 -0
  102. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_references.d.ts.map +1 -0
  103. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_references.js +502 -0
  104. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_text.d.ts +27 -0
  105. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_text.d.ts.map +1 -0
  106. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_text.js +119 -0
  107. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_custom_game_engine_definition.d.ts +29 -0
  108. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_custom_game_engine_definition.d.ts.map +1 -0
  109. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_custom_game_engine_definition.js +116 -0
  110. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_game_engine_player_rating_parameters.d.ts +22 -0
  111. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_game_engine_player_rating_parameters.d.ts.map +1 -0
  112. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_game_engine_player_rating_parameters.js +54 -0
  113. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_user_defined_option.d.ts +22 -0
  114. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_user_defined_option.d.ts.map +1 -0
  115. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_user_defined_option.js +82 -0
  116. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variable_metadata.d.ts +22 -0
  117. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variable_metadata.d.ts.map +1 -0
  118. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variable_metadata.js +85 -0
  119. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variant_variable.d.ts +13 -0
  120. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variant_variable.d.ts.map +1 -0
  121. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variant_variable.js +75 -0
  122. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/index.d.ts +4 -0
  123. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/index.d.ts.map +1 -0
  124. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/index.js +3 -0
  125. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/index.d.ts +2 -0
  126. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/index.d.ts.map +1 -0
  127. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/index.js +1 -0
  128. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/saved_game_files.d.ts +66 -0
  129. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/saved_game_files.d.ts.map +1 -0
  130. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/saved_game_files.js +586 -0
  131. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/index.d.ts +5 -0
  132. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/index.d.ts.map +1 -0
  133. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/index.js +4 -0
  134. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_game_variant.d.ts +24 -0
  135. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_game_variant.d.ts.map +1 -0
  136. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_game_variant.js +130 -0
  137. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_packed_game_variant.d.ts +15 -0
  138. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_packed_game_variant.d.ts.map +1 -0
  139. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_packed_game_variant.js +85 -0
  140. package/dist/helpers/convert_reach_gametype.d.ts +17 -0
  141. package/dist/helpers/convert_reach_gametype.d.ts.map +1 -0
  142. package/dist/helpers/convert_reach_gametype.js +191 -0
  143. package/dist/helpers/index.d.ts +2 -0
  144. package/dist/helpers/index.d.ts.map +1 -0
  145. package/dist/helpers/index.js +1 -0
  146. package/dist/versions/haloreach_mcc/v_untracked_25_08_19_1352.d.ts +9 -0
  147. package/dist/versions/haloreach_mcc/v_untracked_25_08_19_1352.d.ts.map +1 -0
  148. package/dist/versions/haloreach_mcc/v_untracked_25_08_19_1352.js +8 -0
  149. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_survival_variant.js +4 -3
  150. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/game_engine_enums.js +64 -0
  151. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/index.js +1 -0
  152. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/index.js +4 -0
  153. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.js +162 -56
  154. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.js +14 -4
  155. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_object.js +29 -0
  156. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_player.js +36 -0
  157. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_team.js +28 -0
  158. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_hud_widgets.js +10 -0
  159. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.js +19 -10
  160. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.js +6 -5
  161. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant.js +129 -0
  162. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant_au1_settings.js +34 -0
  163. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_default.js +305 -0
  164. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_survival_variant.js +192 -0
  165. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_traits.js +20 -0
  166. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_variant.js +113 -0
  167. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_player_traits.js +151 -0
  168. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_string_table.js +195 -0
  169. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/game_engine_enums.js +64 -0
  170. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/index.js +26 -0
  171. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalo_game_statistic.js +22 -0
  172. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalogamengine_map_permissions.js +22 -0
  173. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_object_filter.js +43 -0
  174. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_trigger.js +63 -0
  175. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/index.js +33 -0
  176. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_actions.js +1748 -0
  177. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_conditions.js +234 -0
  178. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_object.js +37 -0
  179. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_player.js +39 -0
  180. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_team.js +34 -0
  181. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_hud_widgets.js +10 -0
  182. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_references.js +517 -0
  183. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_text.js +125 -0
  184. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_custom_game_engine_definition.js +120 -0
  185. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_game_engine_player_rating_parameters.js +58 -0
  186. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_user_defined_option.js +87 -0
  187. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variable_metadata.js +93 -0
  188. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variant_variable.js +79 -0
  189. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/index.js +19 -0
  190. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/index.js +17 -0
  191. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/saved_game_files.js +591 -0
  192. package/dist-cjs/chunks/haloreach_mcc/v_untracked_25_08_19_1352/index.js +19 -0
  193. package/dist-cjs/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_game_variant.js +133 -0
  194. package/dist-cjs/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_packed_game_variant.js +88 -0
  195. package/dist-cjs/helpers/convert_reach_gametype.js +194 -0
  196. package/dist-cjs/helpers/index.js +5 -0
  197. package/dist-cjs/versions/haloreach_mcc/v_untracked_25_08_19_1352.js +24 -0
  198. package/package.json +26 -4
@@ -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,74 @@
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
+ import { e_survival_variant_flags } from "./game_engine_enums";
5
+ export declare class c_ai_traits {
6
+ m_vision: number;
7
+ m_sound: number;
8
+ m_luck: number;
9
+ m_weapon: number;
10
+ m_grenade: number;
11
+ m_equipment_drop_setting: number;
12
+ m_assasination_immunity_setting: number;
13
+ m_headshot_immunity_setting: number;
14
+ m_damage_resistance: number;
15
+ m_damage_modifier: number;
16
+ decode(bitstream: c_bitstream_reader): void;
17
+ encode(bitstream: c_bitstream_writer): void;
18
+ }
19
+ export declare class s_survival_wave_properties {
20
+ m_wave_flags: number;
21
+ m_wave_squad_advance_type: number;
22
+ m_wave_squad_count: number;
23
+ m_squads: number[];
24
+ decode(bitstream: c_bitstream_reader): void;
25
+ encode(bitstream: c_bitstream_writer): void;
26
+ }
27
+ export declare class s_custom_skull {
28
+ m_spartan_traits: c_player_traits;
29
+ m_elite_traits: c_player_traits;
30
+ m_wave_traits: c_ai_traits;
31
+ decode(bitstream: c_bitstream_reader): void;
32
+ encode(bitstream: c_bitstream_writer): void;
33
+ }
34
+ export declare class s_survival_round_properties {
35
+ m_skull_flags: number;
36
+ m_initial_wave_options: s_survival_wave_properties;
37
+ m_main_wave_options: s_survival_wave_properties;
38
+ m_boss_wave_options: s_survival_wave_properties;
39
+ decode(bitstream: c_bitstream_reader): void;
40
+ encode(bitstream: c_bitstream_writer): void;
41
+ }
42
+ export declare class c_game_engine_survival_variant {
43
+ m_base_variant: c_game_engine_base_variant;
44
+ m_variant_flags: e_survival_variant_flags;
45
+ /** 3 bits; when >= 2, `m_additional_flags` is present on the wire. */
46
+ m_encoding_version: number;
47
+ m_set_count: number;
48
+ m_bonus_lives_awarded: number;
49
+ m_bonus_target: number;
50
+ m_bonus_lives_on_elite_player_death: number;
51
+ m_shared_team_life_count: number;
52
+ m_elite_life_count: number;
53
+ m_extra_life_score_target: number;
54
+ m_maximum_lives: number;
55
+ m_generator_count: number;
56
+ m_spartan_traits: c_player_traits;
57
+ m_elite_traits: c_player_traits;
58
+ m_ai_traits: c_ai_traits;
59
+ m_red_skull: s_custom_skull;
60
+ m_blue_skull: s_custom_skull;
61
+ m_yellow_skull: s_custom_skull;
62
+ m_elite_respawn_options: c_game_engine_respawn_options;
63
+ m_round_1_properties: s_survival_round_properties;
64
+ m_round_2_properties: s_survival_round_properties;
65
+ m_round_3_properties: s_survival_round_properties;
66
+ m_bonus_round_duration: number;
67
+ m_bonus_round_skull_flags: number;
68
+ m_bonus_round_properties: s_survival_wave_properties;
69
+ /** 8 bits when `m_encoding_version` >= 2 (e.g. alpha_sync_slayer). */
70
+ m_additional_flags: number;
71
+ decode(bitstream: c_bitstream_reader): void;
72
+ encode(bitstream: c_bitstream_writer): void;
73
+ }
74
+ //# 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_mcc/v_untracked_25_08_19_1352/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;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,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,2BAAkC;IACjD,sEAAsE;IACtE,kBAAkB,SAAK;IACvB,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;IAC5D,sEAAsE;IACtE,kBAAkB,SAAK;IAEvB,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAgD3C,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;CA8B5C"}
@@ -0,0 +1,184 @@
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
+ import { e_survival_variant_flags } from "./game_engine_enums";
4
+ export class c_ai_traits {
5
+ m_vision = 0;
6
+ m_sound = 0;
7
+ m_luck = 0;
8
+ m_weapon = 0;
9
+ m_grenade = 0;
10
+ m_equipment_drop_setting = 0;
11
+ m_assasination_immunity_setting = 0;
12
+ m_headshot_immunity_setting = 0;
13
+ m_damage_resistance = 0;
14
+ m_damage_modifier = 0;
15
+ decode(bitstream) {
16
+ this.m_vision = bitstream.read_integer("vision", 3);
17
+ this.m_sound = bitstream.read_integer("sound", 2);
18
+ this.m_luck = bitstream.read_integer("luck", 3);
19
+ this.m_weapon = bitstream.read_integer("weapon", 2);
20
+ this.m_grenade = bitstream.read_integer("grenade", 2);
21
+ this.m_equipment_drop_setting = bitstream.read_integer("equipment-drop-setting", 2);
22
+ this.m_assasination_immunity_setting = bitstream.read_integer("assasination-immunity-setting", 2);
23
+ this.m_headshot_immunity_setting = bitstream.read_integer("headshot-immunity-setting", 2);
24
+ this.m_damage_resistance = bitstream.read_integer("damage-resistance", 4);
25
+ this.m_damage_modifier = bitstream.read_integer("damage-modifier", 4);
26
+ }
27
+ encode(bitstream) {
28
+ bitstream.write_integer(this.m_vision, 3);
29
+ bitstream.write_integer(this.m_sound, 2);
30
+ bitstream.write_integer(this.m_luck, 3);
31
+ bitstream.write_integer(this.m_weapon, 2);
32
+ bitstream.write_integer(this.m_grenade, 2);
33
+ bitstream.write_integer(this.m_equipment_drop_setting, 2);
34
+ bitstream.write_integer(this.m_assasination_immunity_setting, 2);
35
+ bitstream.write_integer(this.m_headshot_immunity_setting, 2);
36
+ bitstream.write_integer(this.m_damage_resistance, 4);
37
+ bitstream.write_integer(this.m_damage_modifier, 4);
38
+ }
39
+ }
40
+ export class s_survival_wave_properties {
41
+ m_wave_flags = 0;
42
+ m_wave_squad_advance_type = 0;
43
+ m_wave_squad_count = 0;
44
+ m_squads = Array.from({ length: 12 }, () => 0);
45
+ decode(bitstream) {
46
+ this.m_wave_flags = bitstream.read_integer("wave_flags", 1);
47
+ this.m_wave_squad_advance_type = bitstream.read_integer("wave_squad_advance_type", 1);
48
+ this.m_wave_squad_count = bitstream.read_integer("wave-squad-count", 4);
49
+ for (let i = 0; i < 12; i++) {
50
+ this.m_squads[i] = bitstream.read_integer("possible-wave-squad", 8);
51
+ }
52
+ }
53
+ encode(bitstream) {
54
+ bitstream.write_integer(this.m_wave_flags, 1);
55
+ bitstream.write_integer(this.m_wave_squad_advance_type, 1);
56
+ bitstream.write_integer(this.m_wave_squad_count, 4);
57
+ for (let i = 0; i < 12; i++) {
58
+ bitstream.write_integer(this.m_squads[i], 8);
59
+ }
60
+ }
61
+ }
62
+ export class s_custom_skull {
63
+ m_spartan_traits = new c_player_traits();
64
+ m_elite_traits = new c_player_traits();
65
+ m_wave_traits = new c_ai_traits();
66
+ decode(bitstream) {
67
+ this.m_spartan_traits.decode(bitstream);
68
+ this.m_elite_traits.decode(bitstream);
69
+ this.m_wave_traits.decode(bitstream);
70
+ }
71
+ encode(bitstream) {
72
+ this.m_spartan_traits.encode(bitstream);
73
+ this.m_elite_traits.encode(bitstream);
74
+ this.m_wave_traits.encode(bitstream);
75
+ }
76
+ }
77
+ export class s_survival_round_properties {
78
+ m_skull_flags = 0;
79
+ m_initial_wave_options = new s_survival_wave_properties();
80
+ m_main_wave_options = new s_survival_wave_properties();
81
+ m_boss_wave_options = new s_survival_wave_properties();
82
+ decode(bitstream) {
83
+ this.m_skull_flags = bitstream.read_integer("skull-flags", 18);
84
+ this.m_initial_wave_options.decode(bitstream);
85
+ this.m_main_wave_options.decode(bitstream);
86
+ this.m_boss_wave_options.decode(bitstream);
87
+ }
88
+ encode(bitstream) {
89
+ bitstream.write_integer(this.m_skull_flags, 18);
90
+ this.m_initial_wave_options.encode(bitstream);
91
+ this.m_main_wave_options.encode(bitstream);
92
+ this.m_boss_wave_options.encode(bitstream);
93
+ }
94
+ }
95
+ export class c_game_engine_survival_variant {
96
+ m_base_variant = new c_game_engine_base_variant();
97
+ m_variant_flags = new e_survival_variant_flags();
98
+ /** 3 bits; when >= 2, `m_additional_flags` is present on the wire. */
99
+ m_encoding_version = 0;
100
+ m_set_count = 0;
101
+ m_bonus_lives_awarded = 0;
102
+ m_bonus_target = 0;
103
+ m_bonus_lives_on_elite_player_death = 0;
104
+ m_shared_team_life_count = 0;
105
+ m_elite_life_count = 0;
106
+ m_extra_life_score_target = 0;
107
+ m_maximum_lives = 0;
108
+ m_generator_count = 0;
109
+ m_spartan_traits = new c_player_traits();
110
+ m_elite_traits = new c_player_traits();
111
+ m_ai_traits = new c_ai_traits();
112
+ m_red_skull = new s_custom_skull();
113
+ m_blue_skull = new s_custom_skull();
114
+ m_yellow_skull = new s_custom_skull();
115
+ m_elite_respawn_options = new c_game_engine_respawn_options();
116
+ m_round_1_properties = new s_survival_round_properties();
117
+ m_round_2_properties = new s_survival_round_properties();
118
+ m_round_3_properties = new s_survival_round_properties();
119
+ m_bonus_round_duration = 0;
120
+ m_bonus_round_skull_flags = 0;
121
+ m_bonus_round_properties = new s_survival_wave_properties();
122
+ /** 8 bits when `m_encoding_version` >= 2 (e.g. alpha_sync_slayer). */
123
+ m_additional_flags = 0;
124
+ decode(bitstream) {
125
+ this.m_base_variant.decode(bitstream);
126
+ this.m_variant_flags = e_survival_variant_flags.from_raw(bitstream.read_integer("m_variant_flags", 5));
127
+ this.m_encoding_version = bitstream.read_integer("encoding-version", 3);
128
+ this.m_set_count = bitstream.read_integer("set-count", 8);
129
+ this.m_bonus_lives_awarded = bitstream.read_integer("bonus-lives-awarded", 4);
130
+ this.m_bonus_target = bitstream.read_integer("bonus-target", 15);
131
+ this.m_bonus_lives_on_elite_player_death = bitstream.read_integer("bonus-lives-on-elite-player-death", 15);
132
+ this.m_shared_team_life_count = bitstream.read_integer("shared-team-life-count", 7);
133
+ this.m_elite_life_count = bitstream.read_integer("elite-life-count", 7);
134
+ this.m_extra_life_score_target = bitstream.read_integer("extra-life-score-target", 15);
135
+ this.m_maximum_lives = bitstream.read_integer("maximum-lives", 7);
136
+ this.m_generator_count = bitstream.read_integer("generator-count", 2);
137
+ this.m_spartan_traits.decode(bitstream);
138
+ this.m_elite_traits.decode(bitstream);
139
+ this.m_ai_traits.decode(bitstream);
140
+ this.m_red_skull.decode(bitstream);
141
+ this.m_blue_skull.decode(bitstream);
142
+ this.m_yellow_skull.decode(bitstream);
143
+ this.m_elite_respawn_options.decode(bitstream);
144
+ this.m_round_1_properties.decode(bitstream);
145
+ this.m_round_2_properties.decode(bitstream);
146
+ this.m_round_3_properties.decode(bitstream);
147
+ this.m_bonus_round_duration = bitstream.read_integer("duration-seconds", 12);
148
+ this.m_bonus_round_skull_flags = bitstream.read_integer("skull-flags", 18);
149
+ this.m_bonus_round_properties.decode(bitstream);
150
+ if (this.m_encoding_version >= 2) {
151
+ this.m_additional_flags = bitstream.read_integer("additional-flags", 8);
152
+ }
153
+ }
154
+ encode(bitstream) {
155
+ this.m_base_variant.encode(bitstream);
156
+ bitstream.write_integer(this.m_variant_flags.to_raw(), 5);
157
+ bitstream.write_integer(this.m_encoding_version, 3);
158
+ bitstream.write_integer(this.m_set_count, 8);
159
+ bitstream.write_integer(this.m_bonus_lives_awarded, 4);
160
+ bitstream.write_integer(this.m_bonus_target, 15);
161
+ bitstream.write_integer(this.m_bonus_lives_on_elite_player_death, 15);
162
+ bitstream.write_integer(this.m_shared_team_life_count, 7);
163
+ bitstream.write_integer(this.m_elite_life_count, 7);
164
+ bitstream.write_integer(this.m_extra_life_score_target, 15);
165
+ bitstream.write_integer(this.m_maximum_lives, 7);
166
+ bitstream.write_integer(this.m_generator_count, 2);
167
+ this.m_spartan_traits.encode(bitstream);
168
+ this.m_elite_traits.encode(bitstream);
169
+ this.m_ai_traits.encode(bitstream);
170
+ this.m_red_skull.encode(bitstream);
171
+ this.m_blue_skull.encode(bitstream);
172
+ this.m_yellow_skull.encode(bitstream);
173
+ this.m_elite_respawn_options.encode(bitstream);
174
+ this.m_round_1_properties.encode(bitstream);
175
+ this.m_round_2_properties.encode(bitstream);
176
+ this.m_round_3_properties.encode(bitstream);
177
+ bitstream.write_integer(this.m_bonus_round_duration, 12);
178
+ bitstream.write_integer(this.m_bonus_round_skull_flags, 18);
179
+ this.m_bonus_round_properties.encode(bitstream);
180
+ if (this.m_encoding_version >= 2) {
181
+ bitstream.write_integer(this.m_additional_flags, 8);
182
+ }
183
+ }
184
+ }
@@ -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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"c_game_engine_traits.d.ts","sourceRoot":"","sources":["../../../../../src/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_traits.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,qBAAa,qBAAqB;IAChC,mBAAmB,SAAK;IACxB,0BAA0B,SAAK;IAC/B,eAAe,kBAAyB;IAExC,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAS3C,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;CAK5C"}
@@ -0,0 +1,16 @@
1
+ import { c_player_traits } from "./c_player_traits";
2
+ export class s_player_trait_option {
3
+ m_name_string_index = 0;
4
+ m_description_string_index = 0;
5
+ m_player_traits = new c_player_traits();
6
+ decode(bitstream) {
7
+ this.m_name_string_index = bitstream.read_integer("name-string-index", 7);
8
+ this.m_description_string_index = bitstream.read_integer("description-string-index", 7);
9
+ this.m_player_traits.decode(bitstream);
10
+ }
11
+ encode(bitstream) {
12
+ bitstream.write_integer(this.m_name_string_index, 7);
13
+ bitstream.write_integer(this.m_description_string_index, 7);
14
+ this.m_player_traits.encode(bitstream);
15
+ }
16
+ }
@@ -0,0 +1,28 @@
1
+ import { c_bitstream_reader, type c_bitstream_writer } from "../../../../bitstream";
2
+ import type { s_content_item_metadata } from "../saved_games/saved_game_files";
3
+ import { c_game_engine_custom_variant } from "./c_game_engine_custom_variant";
4
+ import { c_game_engine_base_variant } from "./c_game_engine_default";
5
+ import { c_game_engine_survival_variant } from "./c_game_engine_survival_variant";
6
+ /** Matches `e_game_mode` in blf_lib. */
7
+ export declare enum e_game_mode {
8
+ sandbox = 1,
9
+ custom = 2,
10
+ campaign = 3,
11
+ survival = 4
12
+ }
13
+ /**
14
+ * Halo Reach game variant gametype bitstream body (after the `mpvr` hash header).
15
+ * Mirrors `c_game_variant` in blf_lib — decode-only.
16
+ */
17
+ export declare class c_game_variant {
18
+ m_game_engine: e_game_mode;
19
+ m_campaign_variant?: c_game_engine_base_variant;
20
+ m_custom_variant?: c_game_engine_custom_variant;
21
+ m_survival_variant?: c_game_engine_survival_variant;
22
+ decode(bitstream: c_bitstream_reader): void;
23
+ encode(bitstream: c_bitstream_writer): void;
24
+ /** Decode gametype bytes from a standalone buffer (convenience wrapper). */
25
+ static decode_bytes(gametype_bytes: Uint8Array): c_game_variant;
26
+ get_metadata(): s_content_item_metadata;
27
+ }
28
+ //# sourceMappingURL=c_game_variant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"c_game_variant.d.ts","sourceRoot":"","sources":["../../../../../src/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_variant.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,kBAAkB,EAExB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAElF,wCAAwC;AACxC,oBAAY,WAAW;IACrB,OAAO,IAAI;IACX,MAAM,IAAI;IACV,QAAQ,IAAI;IACZ,QAAQ,IAAI;CACb;AAED;;;GAGG;AACH,qBAAa,cAAc;IACzB,aAAa,EAAE,WAAW,CAAsB;IAChD,kBAAkB,CAAC,EAAE,0BAA0B,CAAC;IAChD,gBAAgB,CAAC,EAAE,4BAA4B,CAAC;IAChD,kBAAkB,CAAC,EAAE,8BAA8B,CAAC;IAEpD,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IA+B3C,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IA4B3C,4EAA4E;IAC5E,MAAM,CAAC,YAAY,CAAC,cAAc,EAAE,UAAU,GAAG,cAAc;IAY/D,YAAY,IAAI,uBAAuB;CAuBxC"}