The Halo Reach Editing Kit (HREK) is the official set of tools for creating custom content for the MCC version of Halo Reach. Like the other officlal mod tools, it is based on the old internal tools used by Bungie during the development of Halo Reach, with modifications made during the porting of the game to MCC and some changes to make them more user-friendly.
Compared to H3, Foundation takes the place of Guerilla as the kit's tag editor with a completely new UI that makes it easier than ever before to create and modify tags. Another major difference is the introduction of GR2 (Granny) files as the new intermediate model format, replacing ASS and JMS.
Unlike the H1A-EK you do need to own [Halo Reach on Steam][steam_
Getting started
See the general installation steps for help installing these tools. Don't forget to run the extract script!
Changelog
This changelog is focused on known notable modding-related changes and is not guaranteed to be complete.
July 2023
- Fixed background sounds not playing in Sapien.
- Importing a BSP with water_
physics no longer causes import errors when using tool_ fast. - Add support for FSBs with custom names in MCC.
- Fixed lightmapping failure.
- Camera point transitions now interpolate correctly over 60 FPS.
- Reloading the globals tag no longer crashes Sapien.
- Using
debug_objects
no longer crashes Sapien/Standalone at part of ff10_prototype. - Reduced verbosity of Tool's
fbx-to-gr2
logging. - Fixed Tool stripper_
wrapper assert on complex geometry. - Fixed Foundation crashing when launching scenario.
- Fixed Sapien crashing when using structure painter.
- Added a solution for setting up marker permutations in FBX to GR2 pipeline.
- Added play builds of Sapien and Standalone.
- Fixed Foundation tag mover crashing if "include data" is selected.
- Removed unused tag fields.
- Reach now supports temporaries and
begin
actions in Megalo like H4. - MegaloEdit
- Can now take command line args to compile a script or directory.
- Improved autocomplete options for condition's variables.
- Fixed crash when putting a period in an include path before there's a closing parenthesis.
- Targting "everyone" with
set_score
,submit_incident
,submit_incident_with_custom_value
now actually targets everyone. - Added Tool command
multiplayer-mapinfo-replace-object-type-bitvector
. - ManagedBlam now targets .NET 4.8.
- Backported the following Megalo actions from H4:
hs_function_call
,get_button_time
,team_set_vehicle_spawning
,player_set_vehicle_spawning
,set_player_respawn_vehicle
,set_team_respawn_vehicle
,hide_object
. - Various Megalo parsing improvements.
bin\tools\tagDb.sdf
is now pre-populated, preventing some crashes when TagWatcher hadn't run yet.- Optimizations to make TagWatcher faster.
- Game variants without
engine_data
no longer crash MCC. - Models with large import info can now be imported (fixes
tag_data_resize() failed
). - Fixed assertion when accessing some CUI components (customization items, firefight lobby game type) in Standalone's main menu.
December 2022
- Instance imposters can now be generated.
- Tool command
import
will no longer show garbage characters. - Tool command
import
will no longer print unnecessary warnings about materials. - Tool command
extract-unicode-strings
added. - Tool command
model-animations
can now import JMRX and JMOX files. - Tool command
fbx-to-gr2
will now correctly apply materials to multiple objects. - Tool command
fbx-to-gr2
will sort bones by descending order of weights, fixing improper bone rotations. - Tool command
fbx-to-gr2
will try to readbungie_shader_path
from FBX custom properties to enable shader assignment in 3D editor rather than JSON sidecar. - Tool command
print-tag-to-xml
now correctly uses argument filename. - Fix axis conversion on importing Granny file created from FBX.
- Dumping Granny to JSON writes granny_
int32 as expected signed ints. - Updated icons for tools.
- Project chooser added.
- The Sapien/Standalone debug menu is properly scaled for the window size.
- Fixed a loud repeating sound distortion on some sounds in Sapien/Standalone.
- Console tab stops adjust with viewport resolution.
- Fixed crash in
structure_instance_snapshot
. - Added missing spreadsheets for AI dialog and damage globals.
Known issues
- Resource sharing is currently not supported.
- Single threaded lightmapping is not supported, you need to use the multi-process solution. This can be run with only a single client if only using one core is desired.
- All the stock tags do not contain import info so you will not be able to extract source assets that way.