@blamnetwork/blf 1.0.0-alpha.5 → 1.0.0-beta.2

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 (202) hide show
  1. package/README.md +17 -7
  2. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/index.d.ts +4 -1
  3. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/index.d.ts.map +1 -1
  4. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/index.js +4 -1
  5. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.d.ts +82 -1
  6. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.d.ts.map +1 -1
  7. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.js +99 -1
  8. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.d.ts +9 -1
  9. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.d.ts.map +1 -1
  10. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.js +10 -1
  11. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_object.d.ts +26 -0
  12. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_object.d.ts.map +1 -0
  13. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_object.js +26 -0
  14. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_player.d.ts +33 -0
  15. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_player.d.ts.map +1 -0
  16. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_player.js +33 -0
  17. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_team.d.ts +25 -0
  18. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_team.d.ts.map +1 -0
  19. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_team.js +25 -0
  20. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_hud_widgets.d.ts +7 -0
  21. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_hud_widgets.d.ts.map +1 -0
  22. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_hud_widgets.js +7 -0
  23. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.d.ts +6 -2
  24. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.d.ts.map +1 -1
  25. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.js +6 -2
  26. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.d.ts +1 -1
  27. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.d.ts.map +1 -1
  28. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.js +1 -1
  29. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant.d.ts +37 -0
  30. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant.d.ts.map +1 -0
  31. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant.js +125 -0
  32. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant_au1_settings.d.ts +14 -0
  33. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant_au1_settings.d.ts.map +1 -0
  34. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant_au1_settings.js +30 -0
  35. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_default.d.ts +114 -0
  36. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_default.d.ts.map +1 -0
  37. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_default.js +292 -0
  38. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_survival_variant.d.ts +74 -0
  39. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_survival_variant.d.ts.map +1 -0
  40. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_survival_variant.js +184 -0
  41. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_traits.d.ts +10 -0
  42. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_traits.d.ts.map +1 -0
  43. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_traits.js +16 -0
  44. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_variant.d.ts +28 -0
  45. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_variant.d.ts.map +1 -0
  46. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_variant.js +109 -0
  47. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_player_traits.d.ts +56 -0
  48. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_player_traits.d.ts.map +1 -0
  49. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_player_traits.js +142 -0
  50. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_string_table.d.ts +27 -0
  51. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_string_table.d.ts.map +1 -0
  52. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_string_table.js +190 -0
  53. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/game_engine_enums.d.ts +45 -0
  54. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/game_engine_enums.d.ts.map +1 -0
  55. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/game_engine_enums.js +60 -0
  56. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/index.d.ts +11 -0
  57. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/index.d.ts.map +1 -0
  58. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/index.js +10 -0
  59. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalo_game_statistic.d.ts +10 -0
  60. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalo_game_statistic.d.ts.map +1 -0
  61. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalo_game_statistic.js +18 -0
  62. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalogamengine_map_permissions.d.ts +8 -0
  63. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalogamengine_map_permissions.d.ts.map +1 -0
  64. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalogamengine_map_permissions.js +18 -0
  65. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_object_filter.d.ts +13 -0
  66. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_object_filter.d.ts.map +1 -0
  67. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_object_filter.js +39 -0
  68. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_trigger.d.ts +34 -0
  69. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_trigger.d.ts.map +1 -0
  70. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_trigger.js +59 -0
  71. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/index.d.ts +18 -0
  72. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/index.d.ts.map +1 -0
  73. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/index.js +17 -0
  74. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_actions.d.ts +478 -0
  75. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_actions.d.ts.map +1 -0
  76. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_actions.js +1696 -0
  77. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_conditions.d.ts +58 -0
  78. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_conditions.d.ts.map +1 -0
  79. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_conditions.js +226 -0
  80. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_object.d.ts +34 -0
  81. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_object.d.ts.map +1 -0
  82. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_object.js +34 -0
  83. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_player.d.ts +36 -0
  84. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_player.d.ts.map +1 -0
  85. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_player.js +36 -0
  86. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_team.d.ts +31 -0
  87. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_team.d.ts.map +1 -0
  88. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_team.js +31 -0
  89. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_hud_widgets.d.ts +7 -0
  90. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_hud_widgets.d.ts.map +1 -0
  91. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_hud_widgets.js +7 -0
  92. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_references.d.ts +85 -0
  93. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_references.d.ts.map +1 -0
  94. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_references.js +502 -0
  95. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_text.d.ts +27 -0
  96. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_text.d.ts.map +1 -0
  97. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_text.js +119 -0
  98. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_custom_game_engine_definition.d.ts +29 -0
  99. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_custom_game_engine_definition.d.ts.map +1 -0
  100. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_custom_game_engine_definition.js +116 -0
  101. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_game_engine_player_rating_parameters.d.ts +22 -0
  102. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_game_engine_player_rating_parameters.d.ts.map +1 -0
  103. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_game_engine_player_rating_parameters.js +54 -0
  104. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_user_defined_option.d.ts +22 -0
  105. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_user_defined_option.d.ts.map +1 -0
  106. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_user_defined_option.js +82 -0
  107. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variable_metadata.d.ts +22 -0
  108. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variable_metadata.d.ts.map +1 -0
  109. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variable_metadata.js +85 -0
  110. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variant_variable.d.ts +13 -0
  111. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variant_variable.d.ts.map +1 -0
  112. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variant_variable.js +75 -0
  113. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/index.d.ts +4 -0
  114. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/index.d.ts.map +1 -0
  115. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/index.js +3 -0
  116. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/index.d.ts +2 -0
  117. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/index.d.ts.map +1 -0
  118. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/index.js +1 -0
  119. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/saved_game_files.d.ts +66 -0
  120. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/saved_game_files.d.ts.map +1 -0
  121. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/saved_game_files.js +586 -0
  122. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/index.d.ts +2 -2
  123. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/index.d.ts.map +1 -1
  124. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/index.js +2 -2
  125. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/index.d.ts +5 -0
  126. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/index.d.ts.map +1 -0
  127. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/index.js +4 -0
  128. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_game_variant.d.ts +24 -0
  129. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_game_variant.d.ts.map +1 -0
  130. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_game_variant.js +130 -0
  131. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_packed_game_variant.d.ts +15 -0
  132. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_packed_game_variant.d.ts.map +1 -0
  133. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_packed_game_variant.js +85 -0
  134. package/dist/chunks/mcc/s_blf_chunk_fileshare_metadata.d.ts +12 -0
  135. package/dist/chunks/mcc/s_blf_chunk_fileshare_metadata.d.ts.map +1 -0
  136. package/dist/chunks/mcc/s_blf_chunk_fileshare_metadata.js +107 -0
  137. package/dist/helpers/convert_reach_gametype.d.ts +17 -0
  138. package/dist/helpers/convert_reach_gametype.d.ts.map +1 -0
  139. package/dist/helpers/convert_reach_gametype.js +197 -0
  140. package/dist/helpers/index.d.ts +2 -0
  141. package/dist/helpers/index.d.ts.map +1 -0
  142. package/dist/helpers/index.js +1 -0
  143. package/dist/versions/haloreach_mcc/v_untracked_25_08_19_1352.d.ts +9 -0
  144. package/dist/versions/haloreach_mcc/v_untracked_25_08_19_1352.d.ts.map +1 -0
  145. package/dist/versions/haloreach_mcc/v_untracked_25_08_19_1352.js +8 -0
  146. package/dist/versions/mcc/v_25_08_16.d.ts +2 -0
  147. package/dist/versions/mcc/v_25_08_16.d.ts.map +1 -0
  148. package/dist/versions/mcc/v_25_08_16.js +1 -0
  149. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/index.js +4 -1
  150. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.js +142 -42
  151. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.js +13 -4
  152. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_object.js +29 -0
  153. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_player.js +36 -0
  154. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_explicit_team.js +28 -0
  155. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_hud_widgets.js +10 -0
  156. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.js +15 -11
  157. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.js +5 -5
  158. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant.js +129 -0
  159. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant_au1_settings.js +34 -0
  160. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_default.js +305 -0
  161. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_survival_variant.js +192 -0
  162. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_traits.js +20 -0
  163. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_variant.js +113 -0
  164. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_player_traits.js +151 -0
  165. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_string_table.js +195 -0
  166. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/game_engine_enums.js +64 -0
  167. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/index.js +26 -0
  168. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalo_game_statistic.js +22 -0
  169. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalogamengine_map_permissions.js +22 -0
  170. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_object_filter.js +43 -0
  171. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_trigger.js +63 -0
  172. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/index.js +33 -0
  173. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_actions.js +1748 -0
  174. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_conditions.js +234 -0
  175. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_object.js +37 -0
  176. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_player.js +39 -0
  177. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_explicit_team.js +34 -0
  178. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_hud_widgets.js +10 -0
  179. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_references.js +517 -0
  180. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_text.js +125 -0
  181. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_custom_game_engine_definition.js +120 -0
  182. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_game_engine_player_rating_parameters.js +58 -0
  183. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_user_defined_option.js +87 -0
  184. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variable_metadata.js +93 -0
  185. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variant_variable.js +79 -0
  186. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/index.js +19 -0
  187. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/index.js +17 -0
  188. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/saved_game_files.js +591 -0
  189. package/dist-cjs/chunks/haloreach/v12065_11_08_24_1738_tu1actual/index.js +17 -13
  190. package/dist-cjs/chunks/haloreach_mcc/v_untracked_25_08_19_1352/index.js +23 -0
  191. package/dist-cjs/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_game_variant.js +133 -0
  192. package/dist-cjs/chunks/haloreach_mcc/v_untracked_25_08_19_1352/s_blf_chunk_packed_game_variant.js +88 -0
  193. package/dist-cjs/chunks/mcc/s_blf_chunk_fileshare_metadata.js +110 -0
  194. package/dist-cjs/helpers/convert_reach_gametype.js +200 -0
  195. package/dist-cjs/helpers/index.js +5 -0
  196. package/dist-cjs/versions/haloreach_mcc/v_untracked_25_08_19_1352.js +24 -0
  197. package/dist-cjs/versions/mcc/v_25_08_16.js +17 -0
  198. package/package.json +35 -4
  199. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_enums.d.ts +0 -170
  200. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_enums.d.ts.map +0 -1
  201. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_enums.js +0 -191
  202. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_enums.js +0 -195
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.s_player_trait_option = void 0;
4
+ const c_player_traits_1 = require("./c_player_traits");
5
+ class s_player_trait_option {
6
+ m_name_string_index = 0;
7
+ m_description_string_index = 0;
8
+ m_player_traits = new c_player_traits_1.c_player_traits();
9
+ decode(bitstream) {
10
+ this.m_name_string_index = bitstream.read_integer("name-string-index", 7);
11
+ this.m_description_string_index = bitstream.read_integer("description-string-index", 7);
12
+ this.m_player_traits.decode(bitstream);
13
+ }
14
+ encode(bitstream) {
15
+ bitstream.write_integer(this.m_name_string_index, 7);
16
+ bitstream.write_integer(this.m_description_string_index, 7);
17
+ this.m_player_traits.encode(bitstream);
18
+ }
19
+ }
20
+ exports.s_player_trait_option = s_player_trait_option;
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.c_game_variant = exports.e_game_mode = void 0;
4
+ const bitstream_1 = require("../../../../bitstream");
5
+ const error_1 = require("../../../../error");
6
+ const c_game_engine_custom_variant_1 = require("./c_game_engine_custom_variant");
7
+ const c_game_engine_default_1 = require("./c_game_engine_default");
8
+ const c_game_engine_survival_variant_1 = require("./c_game_engine_survival_variant");
9
+ /** Matches `e_game_mode` in blf_lib. */
10
+ var e_game_mode;
11
+ (function (e_game_mode) {
12
+ e_game_mode[e_game_mode["sandbox"] = 1] = "sandbox";
13
+ e_game_mode[e_game_mode["custom"] = 2] = "custom";
14
+ e_game_mode[e_game_mode["campaign"] = 3] = "campaign";
15
+ e_game_mode[e_game_mode["survival"] = 4] = "survival";
16
+ })(e_game_mode || (exports.e_game_mode = e_game_mode = {}));
17
+ /**
18
+ * Halo Reach game variant gametype bitstream body (after the `mpvr` hash header).
19
+ * Mirrors `c_game_variant` in blf_lib — decode-only.
20
+ */
21
+ class c_game_variant {
22
+ m_game_engine = e_game_mode.custom;
23
+ m_campaign_variant;
24
+ m_custom_variant;
25
+ m_survival_variant;
26
+ decode(bitstream) {
27
+ this.m_game_engine = bitstream.read_enum("game-engine", 4, e_game_mode);
28
+ switch (this.m_game_engine) {
29
+ case e_game_mode.sandbox:
30
+ throw new error_1.BlfError("Decoding forge (sandbox) game variants is not supported yet");
31
+ case e_game_mode.custom: {
32
+ const custom = new c_game_engine_custom_variant_1.c_game_engine_custom_variant();
33
+ custom.decode(bitstream);
34
+ this.m_custom_variant = custom;
35
+ break;
36
+ }
37
+ case e_game_mode.campaign: {
38
+ const campaign = new c_game_engine_default_1.c_game_engine_base_variant();
39
+ campaign.decode(bitstream);
40
+ this.m_campaign_variant = campaign;
41
+ break;
42
+ }
43
+ case e_game_mode.survival: {
44
+ const survival = new c_game_engine_survival_variant_1.c_game_engine_survival_variant();
45
+ survival.decode(bitstream);
46
+ this.m_survival_variant = survival;
47
+ break;
48
+ }
49
+ default:
50
+ throw new error_1.BlfError(`Unrecognized game engine ${this.m_game_engine}`);
51
+ }
52
+ }
53
+ encode(bitstream) {
54
+ bitstream.write_enum(this.m_game_engine, 4);
55
+ switch (this.m_game_engine) {
56
+ case e_game_mode.sandbox:
57
+ throw new error_1.BlfError("Encoding forge variants is currently unsupported");
58
+ case e_game_mode.custom:
59
+ if (!this.m_custom_variant) {
60
+ throw new error_1.BlfError("m_custom_variant does not exist");
61
+ }
62
+ this.m_custom_variant.encode(bitstream);
63
+ break;
64
+ case e_game_mode.campaign:
65
+ if (!this.m_campaign_variant) {
66
+ throw new error_1.BlfError("m_campaign_variant does not exist");
67
+ }
68
+ this.m_campaign_variant.encode(bitstream);
69
+ break;
70
+ case e_game_mode.survival:
71
+ if (!this.m_survival_variant) {
72
+ throw new error_1.BlfError("m_survival_variant does not exist");
73
+ }
74
+ this.m_survival_variant.encode(bitstream);
75
+ break;
76
+ default:
77
+ throw new error_1.BlfError(`Unrecognized game engine ${this.m_game_engine}`);
78
+ }
79
+ }
80
+ /** Decode gametype bytes from a standalone buffer (convenience wrapper). */
81
+ static decode_bytes(gametype_bytes) {
82
+ const bitstream = bitstream_1.c_bitstream_reader.new(gametype_bytes, bitstream_1.e_bitstream_byte_order._bitstream_byte_order_big_endian);
83
+ bitstream.begin_reading();
84
+ const variant = new c_game_variant();
85
+ variant.decode(bitstream);
86
+ bitstream.finish_reading();
87
+ return variant;
88
+ }
89
+ get_metadata() {
90
+ switch (this.m_game_engine) {
91
+ case e_game_mode.sandbox:
92
+ throw new error_1.BlfError("Forge variants are currently unsupported");
93
+ case e_game_mode.custom:
94
+ if (!this.m_custom_variant) {
95
+ throw new error_1.BlfError("m_custom_variant does not exist");
96
+ }
97
+ return this.m_custom_variant.m_base_variant.m_metadata;
98
+ case e_game_mode.campaign:
99
+ if (!this.m_campaign_variant) {
100
+ throw new error_1.BlfError("m_campaign_variant does not exist");
101
+ }
102
+ return this.m_campaign_variant.m_metadata;
103
+ case e_game_mode.survival:
104
+ if (!this.m_survival_variant) {
105
+ throw new error_1.BlfError("m_survival_variant does not exist");
106
+ }
107
+ return this.m_survival_variant.m_base_variant.m_metadata;
108
+ default:
109
+ throw new error_1.BlfError(`Unrecognized game engine ${this.m_game_engine}`);
110
+ }
111
+ }
112
+ }
113
+ exports.c_game_variant = c_game_variant;
@@ -0,0 +1,151 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.c_player_traits = exports.c_player_trait_sensors = exports.c_player_trait_appearance = exports.c_player_trait_movement = exports.c_player_trait_weapons = exports.c_player_trait_shield_vitality = void 0;
4
+ class c_player_trait_shield_vitality {
5
+ m_damage_resistance_percentage_setting = 0;
6
+ m_body_multiplier = 0;
7
+ m_body_recharge_rate = 0;
8
+ m_shield_multiplier = 0;
9
+ m_shield_recharge_rate = 0;
10
+ m_overshield_recharge_rate = 0;
11
+ m_headshot_immunity_setting = 0;
12
+ m_vampirism_percentage_setting = 0;
13
+ m_assasination_immunity = 0;
14
+ m_cannot_die_from_damage = 0;
15
+ }
16
+ exports.c_player_trait_shield_vitality = c_player_trait_shield_vitality;
17
+ class c_player_trait_weapons {
18
+ m_damage_modifier_percentage_setting = 0;
19
+ m_melee_damage_modifier_percentage_setting = 0;
20
+ m_initial_primary_weapon_absolute_index = 0;
21
+ m_initial_secondary_weapon_absolute_index = 0;
22
+ m_initial_grenade_count_setting = 0;
23
+ m_infinite_ammo_setting = 0;
24
+ m_recharging_grenades_setting = 0;
25
+ m_weapon_pickup_setting = 0;
26
+ m_equipment_usage_setting = 0;
27
+ m_equipment_drop_on_death_setting = 0;
28
+ m_infinite_equipment_setting = 0;
29
+ m_initial_equipment_absolute_index = 0;
30
+ }
31
+ exports.c_player_trait_weapons = c_player_trait_weapons;
32
+ class c_player_trait_movement {
33
+ m_speed_setting = 0;
34
+ m_gravity_setting = 0;
35
+ m_vehicle_usage_setting = 0;
36
+ m_double_jump_setting = 0;
37
+ m_jump_modifier = -1;
38
+ }
39
+ exports.c_player_trait_movement = c_player_trait_movement;
40
+ class c_player_trait_appearance {
41
+ m_active_camo_setting = 0;
42
+ m_waypoint_setting = 0;
43
+ m_gamertag_setting = 0;
44
+ m_aura_setting = 0;
45
+ m_forced_change_color_setting = 0;
46
+ }
47
+ exports.c_player_trait_appearance = c_player_trait_appearance;
48
+ class c_player_trait_sensors {
49
+ m_motion_tracker_setting = 0;
50
+ m_motion_tracker_range_setting = 0;
51
+ m_directional_damage_setting = 0;
52
+ }
53
+ exports.c_player_trait_sensors = c_player_trait_sensors;
54
+ class c_player_traits {
55
+ m_shield_vitality_traits = new c_player_trait_shield_vitality();
56
+ m_weapon_traits = new c_player_trait_weapons();
57
+ m_movement_traits = new c_player_trait_movement();
58
+ m_appearance_traits = new c_player_trait_appearance();
59
+ m_sensor_traits = new c_player_trait_sensors();
60
+ decode(bitstream) {
61
+ const sv = this.m_shield_vitality_traits;
62
+ sv.m_damage_resistance_percentage_setting = bitstream.read_integer("damage-resistance", 4);
63
+ sv.m_body_multiplier = bitstream.read_integer("body-multiplier", 3);
64
+ sv.m_body_recharge_rate = bitstream.read_integer("body-recharge-rate", 4);
65
+ sv.m_shield_multiplier = bitstream.read_integer("shield-multiplier", 3);
66
+ sv.m_shield_recharge_rate = bitstream.read_integer("shield-recharge-rate", 4);
67
+ sv.m_overshield_recharge_rate = bitstream.read_integer("overshield-recharge-rate", 4);
68
+ sv.m_headshot_immunity_setting = bitstream.read_integer("headshot-immunity", 2);
69
+ sv.m_vampirism_percentage_setting = bitstream.read_integer("vampirism", 3);
70
+ sv.m_assasination_immunity = bitstream.read_integer("assasination-immunity", 2);
71
+ sv.m_cannot_die_from_damage = bitstream.read_integer("cannot-die-from-damage", 2);
72
+ const w = this.m_weapon_traits;
73
+ w.m_damage_modifier_percentage_setting = bitstream.read_integer("damage-modifier", 4);
74
+ w.m_melee_damage_modifier_percentage_setting = bitstream.read_integer("melee-damage-modifier", 4);
75
+ w.m_initial_primary_weapon_absolute_index = bitstream.read_signed_integer("player-trait-initial-primary-weapon", 8);
76
+ w.m_initial_secondary_weapon_absolute_index = bitstream.read_signed_integer("player-trait-initial-secondary-weapon", 8);
77
+ w.m_initial_grenade_count_setting = bitstream.read_integer("player-trait-initial-grenade-count", 4);
78
+ w.m_infinite_ammo_setting = bitstream.read_integer("player-traits-infinite-ammo-setting", 2);
79
+ w.m_recharging_grenades_setting = bitstream.read_integer("player-traits-recharging-grenades", 2);
80
+ w.m_weapon_pickup_setting = bitstream.read_integer("player-traits-weapon-pickup-allowed", 2);
81
+ w.m_equipment_usage_setting = bitstream.read_integer("player-traits-equipment-usage", 2);
82
+ w.m_equipment_drop_on_death_setting = bitstream.read_integer("player-traits-equipment-drop", 2);
83
+ w.m_infinite_equipment_setting = bitstream.read_integer("player-traits-infinite-equipment", 2);
84
+ w.m_initial_equipment_absolute_index = bitstream.read_signed_integer("player-trait-initial-equipment", 8);
85
+ const m = this.m_movement_traits;
86
+ m.m_speed_setting = bitstream.read_integer("player-speed", 5);
87
+ m.m_gravity_setting = bitstream.read_integer("player-gravity", 4);
88
+ m.m_vehicle_usage_setting = bitstream.read_integer("player-traits-movement-vehicle-usage", 4);
89
+ m.m_double_jump_setting = bitstream.read_integer("player-traits-movement-double-jump", 2);
90
+ if (bitstream.read_bool("player-traits-movement-jump-modifier-changed")) {
91
+ m.m_jump_modifier = bitstream.read_integer("player-traits-movement-jump-modifier", 9);
92
+ }
93
+ else {
94
+ m.m_jump_modifier = -1;
95
+ }
96
+ const a = this.m_appearance_traits;
97
+ a.m_active_camo_setting = bitstream.read_integer("player-traits-appearance-active-camo", 3);
98
+ a.m_waypoint_setting = bitstream.read_integer("player-traits-appearance-waypoint", 2);
99
+ a.m_gamertag_setting = bitstream.read_integer("player-traits-appearance-gamertag", 2);
100
+ a.m_aura_setting = bitstream.read_integer("player-traits-appearance-aura", 3);
101
+ a.m_forced_change_color_setting = bitstream.read_integer("player-traits-appearance-forced-change-color", 4);
102
+ const s = this.m_sensor_traits;
103
+ s.m_motion_tracker_setting = bitstream.read_integer("player-traits-sensors-motion-tracker", 3);
104
+ s.m_motion_tracker_range_setting = bitstream.read_integer("motion-tracker-range", 3);
105
+ s.m_directional_damage_setting = bitstream.read_integer("player-traits-sensors-directional-damage", 2);
106
+ }
107
+ encode(bitstream) {
108
+ bitstream.write_integer(this.m_shield_vitality_traits.m_damage_resistance_percentage_setting, 4);
109
+ bitstream.write_integer(this.m_shield_vitality_traits.m_body_multiplier, 3);
110
+ bitstream.write_integer(this.m_shield_vitality_traits.m_body_recharge_rate, 4);
111
+ bitstream.write_integer(this.m_shield_vitality_traits.m_shield_multiplier, 3);
112
+ bitstream.write_integer(this.m_shield_vitality_traits.m_shield_recharge_rate, 4);
113
+ bitstream.write_integer(this.m_shield_vitality_traits.m_overshield_recharge_rate, 4);
114
+ bitstream.write_integer(this.m_shield_vitality_traits.m_headshot_immunity_setting, 2);
115
+ bitstream.write_integer(this.m_shield_vitality_traits.m_vampirism_percentage_setting, 3);
116
+ bitstream.write_integer(this.m_shield_vitality_traits.m_assasination_immunity, 2);
117
+ bitstream.write_integer(this.m_shield_vitality_traits.m_cannot_die_from_damage, 2);
118
+ bitstream.write_integer(this.m_weapon_traits.m_damage_modifier_percentage_setting, 4);
119
+ bitstream.write_integer(this.m_weapon_traits.m_melee_damage_modifier_percentage_setting, 4);
120
+ bitstream.write_signed_integer(this.m_weapon_traits.m_initial_primary_weapon_absolute_index, 8);
121
+ bitstream.write_signed_integer(this.m_weapon_traits.m_initial_secondary_weapon_absolute_index, 8);
122
+ bitstream.write_integer(this.m_weapon_traits.m_initial_grenade_count_setting, 4);
123
+ bitstream.write_integer(this.m_weapon_traits.m_infinite_ammo_setting, 2);
124
+ bitstream.write_integer(this.m_weapon_traits.m_recharging_grenades_setting, 2);
125
+ bitstream.write_integer(this.m_weapon_traits.m_weapon_pickup_setting, 2);
126
+ bitstream.write_integer(this.m_weapon_traits.m_equipment_usage_setting, 2);
127
+ bitstream.write_integer(this.m_weapon_traits.m_equipment_drop_on_death_setting, 2);
128
+ bitstream.write_integer(this.m_weapon_traits.m_infinite_equipment_setting, 2);
129
+ bitstream.write_signed_integer(this.m_weapon_traits.m_initial_equipment_absolute_index, 8);
130
+ bitstream.write_integer(this.m_movement_traits.m_speed_setting, 5);
131
+ bitstream.write_integer(this.m_movement_traits.m_gravity_setting, 4);
132
+ bitstream.write_integer(this.m_movement_traits.m_vehicle_usage_setting, 4);
133
+ bitstream.write_integer(this.m_movement_traits.m_double_jump_setting, 2);
134
+ if (this.m_movement_traits.m_jump_modifier === -1) {
135
+ bitstream.write_bool(false);
136
+ }
137
+ else {
138
+ bitstream.write_bool(true);
139
+ bitstream.write_signed_integer(this.m_movement_traits.m_jump_modifier, 9);
140
+ }
141
+ bitstream.write_integer(this.m_appearance_traits.m_active_camo_setting, 3);
142
+ bitstream.write_integer(this.m_appearance_traits.m_waypoint_setting, 2);
143
+ bitstream.write_integer(this.m_appearance_traits.m_gamertag_setting, 2);
144
+ bitstream.write_integer(this.m_appearance_traits.m_aura_setting, 3);
145
+ bitstream.write_integer(this.m_appearance_traits.m_forced_change_color_setting, 4);
146
+ bitstream.write_integer(this.m_sensor_traits.m_motion_tracker_setting, 3);
147
+ bitstream.write_integer(this.m_sensor_traits.m_motion_tracker_range_setting, 3);
148
+ bitstream.write_integer(this.m_sensor_traits.m_directional_damage_setting, 2);
149
+ }
150
+ }
151
+ exports.c_player_traits = c_player_traits;
@@ -0,0 +1,195 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.c_string_table = exports.c_single_language_string_table = exports.k_language_count = void 0;
4
+ const bitstream_1 = require("../../../../bitstream");
5
+ const data_compress_1 = require("../../../common/memory/data_compress");
6
+ exports.k_language_count = 12;
7
+ /** One wire byte per code unit (U+00–U+FF), matching blf_lib extended ASCII / NullString slots. */
8
+ function read_null_terminated_string(data, offset) {
9
+ let end = offset;
10
+ while (end < data.length && data[end] !== 0) {
11
+ end++;
12
+ }
13
+ let out = "";
14
+ for (let i = offset; i < end; i++) {
15
+ out += String.fromCharCode(data[i]);
16
+ }
17
+ return out;
18
+ }
19
+ function write_null_terminated_string(writer, value, max_length) {
20
+ writer.write_string_extended_ascii(value, max_length);
21
+ }
22
+ /** Wire byte length (one byte per decoded code unit). */
23
+ function string_byte_length(value) {
24
+ for (let i = 0; i < value.length; i++) {
25
+ if (value.charCodeAt(i) > 0xff) {
26
+ throw new Error(`String table entry U+${value.charCodeAt(i).toString(16)} cannot be encoded as Latin-1`);
27
+ }
28
+ }
29
+ return value.length;
30
+ }
31
+ function write_buffer_blob(bitstream, buffer, buffer_size_bit_length, is_compressed) {
32
+ bitstream.write_integer(buffer.length, buffer_size_bit_length);
33
+ if (is_compressed) {
34
+ const compressed = (0, data_compress_1.runtime_data_compress)(buffer, true);
35
+ bitstream.write_bool(true);
36
+ bitstream.write_integer(compressed.length, buffer_size_bit_length);
37
+ bitstream.write_raw_data(compressed, compressed.length * 8);
38
+ }
39
+ else {
40
+ bitstream.write_bool(false);
41
+ bitstream.write_raw_data(buffer, buffer.length * 8);
42
+ }
43
+ }
44
+ class c_single_language_string_table {
45
+ max_string_count;
46
+ max_string_length;
47
+ offset_bit_length;
48
+ buffer_size_bit_length;
49
+ count_bit_length;
50
+ strings = [];
51
+ m_buffer_is_compressed = true;
52
+ constructor(max_string_count, max_string_length, offset_bit_length, buffer_size_bit_length, count_bit_length) {
53
+ this.max_string_count = max_string_count;
54
+ this.max_string_length = max_string_length;
55
+ this.offset_bit_length = offset_bit_length;
56
+ this.buffer_size_bit_length = buffer_size_bit_length;
57
+ this.count_bit_length = count_bit_length;
58
+ }
59
+ decode(bitstream) {
60
+ this.strings = [];
61
+ const string_count = bitstream.read_integer("string-count", this.count_bit_length);
62
+ if (string_count === 0) {
63
+ return;
64
+ }
65
+ const offsets = [];
66
+ for (let i = 0; i < string_count; i++) {
67
+ if (bitstream.read_bool("exists")) {
68
+ offsets.push(bitstream.read_integer("offset", this.offset_bit_length));
69
+ }
70
+ else {
71
+ offsets.push(0);
72
+ }
73
+ }
74
+ const buffer_size = bitstream.read_integer("size", this.buffer_size_bit_length);
75
+ this.m_buffer_is_compressed = bitstream.read_bool("compressed");
76
+ const string_data = this.m_buffer_is_compressed
77
+ ? (0, data_compress_1.runtime_data_decompress)(bitstream.read_raw_data(bitstream.read_integer("compressed-buffer-size", this.buffer_size_bit_length) * 8))
78
+ : bitstream.read_raw_data(buffer_size * 8);
79
+ for (const offset of offsets) {
80
+ this.strings.push(read_null_terminated_string(string_data, offset));
81
+ }
82
+ }
83
+ encode(bitstream) {
84
+ bitstream.write_integer(this.strings.length, this.count_bit_length);
85
+ if (this.strings.length === 0) {
86
+ return;
87
+ }
88
+ const string_writer = bitstream_1.c_bitstream_writer.new_from_instance(this.max_string_count * this.max_string_length, bitstream);
89
+ string_writer.begin_writing();
90
+ let offset = 0;
91
+ for (const string of this.strings) {
92
+ bitstream.write_bool(true);
93
+ bitstream.write_integer(offset, this.offset_bit_length);
94
+ write_null_terminated_string(string_writer, string, this.max_string_length);
95
+ offset += string_byte_length(string) + 1;
96
+ }
97
+ string_writer.finish_writing();
98
+ const buffer = string_writer.get_data();
99
+ write_buffer_blob(bitstream, buffer, this.buffer_size_bit_length, this.m_buffer_is_compressed);
100
+ }
101
+ }
102
+ exports.c_single_language_string_table = c_single_language_string_table;
103
+ class c_string_table {
104
+ max_string_count;
105
+ max_string_length;
106
+ offset_bit_length;
107
+ buffer_size_bit_length;
108
+ count_bit_length;
109
+ strings = Array.from({ length: exports.k_language_count }, () => []);
110
+ m_buffer_is_compressed = true;
111
+ constructor(max_string_count, max_string_length, offset_bit_length, buffer_size_bit_length, count_bit_length) {
112
+ this.max_string_count = max_string_count;
113
+ this.max_string_length = max_string_length;
114
+ this.offset_bit_length = offset_bit_length;
115
+ this.buffer_size_bit_length = buffer_size_bit_length;
116
+ this.count_bit_length = count_bit_length;
117
+ }
118
+ decode(bitstream) {
119
+ this.strings = Array.from({ length: exports.k_language_count }, () => []);
120
+ const string_count = bitstream.read_integer("string-count", this.count_bit_length);
121
+ if (string_count === 0) {
122
+ return;
123
+ }
124
+ const offsets = Array.from({ length: exports.k_language_count }, () => Array.from({ length: string_count }, () => -1));
125
+ for (let j = 0; j < string_count; j++) {
126
+ for (let i = 0; i < exports.k_language_count; i++) {
127
+ if (bitstream.read_bool("exists")) {
128
+ offsets[i][j] = bitstream.read_integer("index", this.offset_bit_length);
129
+ }
130
+ }
131
+ }
132
+ const buffer_size = bitstream.read_integer("size", this.buffer_size_bit_length);
133
+ this.m_buffer_is_compressed = bitstream.read_bool("compressed");
134
+ const string_data = this.m_buffer_is_compressed
135
+ ? (0, data_compress_1.runtime_data_decompress)(bitstream.read_raw_data(bitstream.read_integer("compressed-buffer-size", this.buffer_size_bit_length) * 8))
136
+ : bitstream.read_raw_data(buffer_size * 8);
137
+ for (let i = 0; i < exports.k_language_count; i++) {
138
+ for (let j = 0; j < string_count; j++) {
139
+ const offset = offsets[i][j];
140
+ if (offset < 0) {
141
+ this.strings[i].push(null);
142
+ }
143
+ else {
144
+ this.strings[i].push(read_null_terminated_string(string_data, offset));
145
+ }
146
+ }
147
+ }
148
+ }
149
+ encode(bitstream) {
150
+ const string_count = this.strings[0]?.length ?? 0;
151
+ bitstream.write_integer(string_count, this.count_bit_length);
152
+ if (string_count === 0) {
153
+ return;
154
+ }
155
+ const string_writer = bitstream_1.c_bitstream_writer.new(exports.k_language_count * this.max_string_count * this.max_string_length, bitstream_1.e_bitstream_byte_order._bitstream_byte_order_big_endian);
156
+ string_writer.begin_writing();
157
+ let offset = 0;
158
+ for (let j = 0; j < string_count; j++) {
159
+ let deduplicate = true;
160
+ const reference = this.strings[0]?.[j] ?? null;
161
+ if (reference === null) {
162
+ deduplicate = false;
163
+ }
164
+ else {
165
+ for (let i = 1; i < exports.k_language_count; i++) {
166
+ if (this.strings[i]?.[j] !== reference) {
167
+ deduplicate = false;
168
+ break;
169
+ }
170
+ }
171
+ }
172
+ for (let i = 0; i < exports.k_language_count; i++) {
173
+ const string = this.strings[i]?.[j] ?? null;
174
+ if (string === null) {
175
+ bitstream.write_bool(false);
176
+ continue;
177
+ }
178
+ bitstream.write_bool(true);
179
+ bitstream.write_integer(offset, this.offset_bit_length);
180
+ if (!deduplicate) {
181
+ write_null_terminated_string(string_writer, string, this.max_string_length);
182
+ offset += string_byte_length(string) + 1;
183
+ }
184
+ }
185
+ if (deduplicate && reference !== null) {
186
+ write_null_terminated_string(string_writer, reference, this.max_string_length);
187
+ offset += string_byte_length(reference) + 1;
188
+ }
189
+ }
190
+ string_writer.finish_writing();
191
+ const buffer = string_writer.get_data();
192
+ write_buffer_blob(bitstream, buffer, this.buffer_size_bit_length, this.m_buffer_is_compressed);
193
+ }
194
+ }
195
+ exports.c_string_table = c_string_table;
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.e_survival_variant_flags = exports.e_weapon_pickup_priority = exports.e_game_engine_timer_rate = void 0;
4
+ var e_game_engine_timer_rate;
5
+ (function (e_game_engine_timer_rate) {
6
+ e_game_engine_timer_rate[e_game_engine_timer_rate["zero"] = 0] = "zero";
7
+ e_game_engine_timer_rate[e_game_engine_timer_rate["minus_10x"] = 1] = "minus_10x";
8
+ e_game_engine_timer_rate[e_game_engine_timer_rate["minus_25x"] = 2] = "minus_25x";
9
+ e_game_engine_timer_rate[e_game_engine_timer_rate["minus_50x"] = 3] = "minus_50x";
10
+ e_game_engine_timer_rate[e_game_engine_timer_rate["minus_75x"] = 4] = "minus_75x";
11
+ e_game_engine_timer_rate[e_game_engine_timer_rate["minus_100x"] = 5] = "minus_100x";
12
+ e_game_engine_timer_rate[e_game_engine_timer_rate["minus_125x"] = 6] = "minus_125x";
13
+ e_game_engine_timer_rate[e_game_engine_timer_rate["minus_150x"] = 7] = "minus_150x";
14
+ e_game_engine_timer_rate[e_game_engine_timer_rate["minus_175x"] = 8] = "minus_175x";
15
+ e_game_engine_timer_rate[e_game_engine_timer_rate["minus_200x"] = 9] = "minus_200x";
16
+ e_game_engine_timer_rate[e_game_engine_timer_rate["minus_300x"] = 10] = "minus_300x";
17
+ e_game_engine_timer_rate[e_game_engine_timer_rate["minus_400x"] = 11] = "minus_400x";
18
+ e_game_engine_timer_rate[e_game_engine_timer_rate["minus_500x"] = 12] = "minus_500x";
19
+ e_game_engine_timer_rate[e_game_engine_timer_rate["minus_1000x"] = 13] = "minus_1000x";
20
+ e_game_engine_timer_rate[e_game_engine_timer_rate["_10x"] = 14] = "_10x";
21
+ e_game_engine_timer_rate[e_game_engine_timer_rate["_25x"] = 15] = "_25x";
22
+ e_game_engine_timer_rate[e_game_engine_timer_rate["_50x"] = 16] = "_50x";
23
+ e_game_engine_timer_rate[e_game_engine_timer_rate["_75x"] = 17] = "_75x";
24
+ e_game_engine_timer_rate[e_game_engine_timer_rate["_100x"] = 18] = "_100x";
25
+ e_game_engine_timer_rate[e_game_engine_timer_rate["_125x"] = 19] = "_125x";
26
+ e_game_engine_timer_rate[e_game_engine_timer_rate["_150x"] = 20] = "_150x";
27
+ e_game_engine_timer_rate[e_game_engine_timer_rate["_175x"] = 21] = "_175x";
28
+ e_game_engine_timer_rate[e_game_engine_timer_rate["_200x"] = 22] = "_200x";
29
+ e_game_engine_timer_rate[e_game_engine_timer_rate["_300x"] = 23] = "_300x";
30
+ e_game_engine_timer_rate[e_game_engine_timer_rate["_400x"] = 24] = "_400x";
31
+ e_game_engine_timer_rate[e_game_engine_timer_rate["_500x"] = 25] = "_500x";
32
+ e_game_engine_timer_rate[e_game_engine_timer_rate["_1000x"] = 26] = "_1000x";
33
+ })(e_game_engine_timer_rate || (exports.e_game_engine_timer_rate = e_game_engine_timer_rate = {}));
34
+ var e_weapon_pickup_priority;
35
+ (function (e_weapon_pickup_priority) {
36
+ e_weapon_pickup_priority[e_weapon_pickup_priority["normal"] = 0] = "normal";
37
+ e_weapon_pickup_priority[e_weapon_pickup_priority["high"] = 1] = "high";
38
+ e_weapon_pickup_priority[e_weapon_pickup_priority["automatic"] = 2] = "automatic";
39
+ })(e_weapon_pickup_priority || (exports.e_weapon_pickup_priority = e_weapon_pickup_priority = {}));
40
+ /** Matches `e_survival_variant_flags` in blf_lib `game_engine_survival.rs`. */
41
+ class e_survival_variant_flags {
42
+ hazards_enabled = false;
43
+ all_generators_must_survive = false;
44
+ random_generator_spawns = false;
45
+ weapon_drops_enabled = false;
46
+ ammo_crates_enabled = false;
47
+ to_raw() {
48
+ return ((this.hazards_enabled ? 1 : 0) |
49
+ (this.all_generators_must_survive ? 1 << 1 : 0) |
50
+ (this.random_generator_spawns ? 1 << 2 : 0) |
51
+ (this.weapon_drops_enabled ? 1 << 3 : 0) |
52
+ (this.ammo_crates_enabled ? 1 << 4 : 0));
53
+ }
54
+ static from_raw(raw) {
55
+ const flags = new e_survival_variant_flags();
56
+ flags.hazards_enabled = (raw & 1) !== 0;
57
+ flags.all_generators_must_survive = (raw & (1 << 1)) !== 0;
58
+ flags.random_generator_spawns = (raw & (1 << 2)) !== 0;
59
+ flags.weapon_drops_enabled = (raw & (1 << 3)) !== 0;
60
+ flags.ammo_crates_enabled = (raw & (1 << 4)) !== 0;
61
+ return flags;
62
+ }
63
+ }
64
+ exports.e_survival_variant_flags = e_survival_variant_flags;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./c_game_engine_custom_variant"), exports);
18
+ __exportStar(require("./c_game_engine_custom_variant_au1_settings"), exports);
19
+ __exportStar(require("./c_game_engine_default"), exports);
20
+ __exportStar(require("./c_game_engine_survival_variant"), exports);
21
+ __exportStar(require("./c_game_engine_traits"), exports);
22
+ __exportStar(require("./c_game_variant"), exports);
23
+ __exportStar(require("./c_player_traits"), exports);
24
+ __exportStar(require("./c_string_table"), exports);
25
+ __exportStar(require("./game_engine_enums"), exports);
26
+ __exportStar(require("./megalogamengine"), exports);
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.c_megalo_game_statistic = void 0;
4
+ class c_megalo_game_statistic {
5
+ m_name_string_index = 0;
6
+ m_format = 0;
7
+ m_sort_order = 0;
8
+ m_growuping = 0;
9
+ decode(bitstream) {
10
+ this.m_name_string_index = bitstream.read_integer("name-string-index", 7);
11
+ this.m_format = bitstream.read_integer("format", 2);
12
+ this.m_sort_order = bitstream.read_integer("sort-order", 2);
13
+ this.m_growuping = bitstream.read_integer("groupingt", 1);
14
+ }
15
+ encode(bitstream) {
16
+ bitstream.write_integer(this.m_name_string_index, 7);
17
+ bitstream.write_integer(this.m_format, 2);
18
+ bitstream.write_integer(this.m_sort_order, 2);
19
+ bitstream.write_integer(this.m_growuping, 1);
20
+ }
21
+ }
22
+ exports.c_megalo_game_statistic = c_megalo_game_statistic;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.c_megalogamengine_map_permissions = void 0;
4
+ class c_megalogamengine_map_permissions {
5
+ m_except_map_ids = [];
6
+ m_allow_by_default = false;
7
+ decode(bitstream) {
8
+ const map_id_count = bitstream.read_integer("exception-count", 6);
9
+ for (let i = 0; i < map_id_count; i++) {
10
+ this.m_except_map_ids.push(bitstream.read_integer("map-id", 16));
11
+ }
12
+ this.m_allow_by_default = bitstream.read_bool("default-permission");
13
+ }
14
+ encode(bitstream) {
15
+ bitstream.write_integer(this.m_except_map_ids.length, 6);
16
+ for (const map_id of this.m_except_map_ids) {
17
+ bitstream.write_integer(map_id, 16);
18
+ }
19
+ bitstream.write_bool(this.m_allow_by_default);
20
+ }
21
+ }
22
+ exports.c_megalogamengine_map_permissions = c_megalogamengine_map_permissions;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.c_object_filter = void 0;
4
+ const megalogamengine_references_1 = require("./megalogamengine_references");
5
+ class c_object_filter {
6
+ m_label_string_index = 0;
7
+ m_valid_parameters = 0;
8
+ m_object_type;
9
+ m_team;
10
+ m_user_data;
11
+ m_min = 0;
12
+ decode(bitstream) {
13
+ this.m_label_string_index = bitstream.read_integer("label-string-index", 7);
14
+ this.m_valid_parameters = bitstream.read_integer("valid-parameters", 3);
15
+ if ((this.m_valid_parameters & 1) !== 0) {
16
+ const object_type = new megalogamengine_references_1.c_object_type_reference();
17
+ object_type.decode(bitstream);
18
+ this.m_object_type = object_type;
19
+ }
20
+ if ((this.m_valid_parameters & 2) !== 0) {
21
+ this.m_team = bitstream.read_integer("team", 4);
22
+ }
23
+ if ((this.m_valid_parameters & 4) !== 0) {
24
+ this.m_user_data = bitstream.read_signed_integer("user-data", 16);
25
+ }
26
+ this.m_min = bitstream.read_integer("min", 7);
27
+ }
28
+ encode(bitstream) {
29
+ bitstream.write_integer(this.m_label_string_index, 7);
30
+ bitstream.write_integer(this.m_valid_parameters, 3);
31
+ if ((this.m_valid_parameters & 1) !== 0) {
32
+ this.m_object_type.encode(bitstream);
33
+ }
34
+ if ((this.m_valid_parameters & 2) !== 0) {
35
+ bitstream.write_integer(this.m_team, 4);
36
+ }
37
+ if ((this.m_valid_parameters & 4) !== 0) {
38
+ bitstream.write_signed_integer(this.m_user_data, 16);
39
+ }
40
+ bitstream.write_integer(this.m_min, 7);
41
+ }
42
+ }
43
+ exports.c_object_filter = c_object_filter;