Editing Halo: Combat Evolved Mod Tools
From Halopedia, the Halo wiki
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
{{ | {{Era|RW}} | ||
{{References}} | {{References}} | ||
The ''' | The '''H1A Editing Kit''', abbreviated as H1A-EK, is an editing software released by [[343 Industries]] for the ''[[Halo: The Master Chief Collection|Master Chief Collection]]'' version of ''[[Halo: Combat Evolved]]'' and distributed via [[Steam]]. The [[modding]] software itself is quite similar to the ''[[Halo Editing Kit]]'' released by [[Gearbox Software]] for ''[[Halo Custom Edition]]'', although with several improvements, and an additional program called H1A standalone build for loading tags instead of maps. H1A-EK includes updates to the game engine and tools, bug fixes QoL improvements, extended limits, and new features. A complete source tag set for the game's stock campaign and multiplayer maps, plus source scripts for the campaign is also available. | ||
== | == Mapping programs == | ||
Much like ''Halo Custom Edition'', H1a Editing Kit comes with several programs designed to assist users in making custom content. | |||
== | === Tool === | ||
=== | === Guerilla === | ||
=== | === Sapien === | ||
=== | === H1A Standalone Build === | ||
== Changes from the Halo Editing Kit == | |||
=== General === | === General === | ||
Stability improvements: | Stability improvements: | ||
Line 30: | Line 21: | ||
**Fixed bitmap group sequence blocks crashing when crosshair overlay sequence index was out of bounds. | **Fixed bitmap group sequence blocks crashing when crosshair overlay sequence index was out of bounds. | ||
**Fixed exception when AI try to fire weapons without projectile references. | **Fixed exception when AI try to fire weapons without projectile references. | ||
**Fixed a crash resulting from ejection from flipped vehicles | **Fixed a crash resulting from ejection from flipped vehicles not resetting unit animation state. | ||
**Removed an incorrect assertion related to drawing HUD numbers and bitmap sequences. | **Removed an incorrect assertion related to drawing HUD numbers and bitmap sequences. | ||
**AI debug code now safely checks for an actor's secondary look direction prop index being NONE. | **AI debug code now safely checks for an actor's secondary look direction prop index being NONE. | ||
**Various buffer overflow, index out of range, and stale pointer fixes. | **Various buffer overflow, index out of range, and stale pointer fixes. | ||
**Increase MAXIMUM_NUMBER_OF_BUILD_SPRITE_BITMAPS from 8 to 16 (renderer stability). | **Increase MAXIMUM_NUMBER_OF_BUILD_SPRITE_BITMAPS from 8 to 16 (renderer stability). | ||
*The engine will now check and log when an invalid particle_system using rotational complex render mode has a particle state where the sprites | *The engine will now check and log when an invalid particle_system using rotational complex render mode has a particle state where the sprites bitmap does not include another "sideways" sequence after the given "forward" sequence index. | ||
*The tools are in general faster and more responsive (in part due to manual optimizations, in part due to play builds built with a modern optimizing compiler being used instead of test builds). | *The tools are in general faster and more responsive (in part due to manual optimizations, in part due to play builds built with a modern optimizing compiler being used instead of test builds). | ||
*Asserts can be disabled using the -noassert command line flag. | *Asserts can be disabled using the -noassert command line flag. | ||
*The tags, data, and maps directories can now be set when running all tools. See custom content paths for more info. This makes it easier to work with different tag sets. | *The tags, data, and maps directories can now be set when running all tools. See custom content paths for more info. This makes it easier to work with different tag sets. | ||
*All tools are still 32-bit | *All tools are still 32-bit but they are now large address aware (LAA). This allows them to use up to 4 GiB of virtual memory instead of 2, which prevents Sapien from running out of memory when editing scenarios with many large assets. | ||
*Various cases of unnecessary/confusing logging in the tools have been removed, such as "Couldn't read map file toolbeta.map" and "Sound card doesn't meet minimum hardware requirements". | *Various cases of unnecessary/confusing logging in the tools have been removed, such as "Couldn't read map file toolbeta.map" and "Sound card doesn't meet minimum hardware requirements". | ||
===Visual=== | === Visual === | ||
*The tools now use the modern DX11 graphics API instead of the obsolete D3D9 API. | *The tools now use the modern DX11 graphics API instead of the obsolete D3D9 API. this should result in better performance and support on modern systems. | ||
*First person models now use the highest LOD available instead of the lowest. | *First person models now use the highest LOD available instead of the lowest. | ||
*Increased MAXIMUM_RENDERED_ENVIRONMENT_SURFACES from 16k to 32k. This means BSPs can now have more visible triangles without culling happening. It is still important to use portals to manage visible clusters. | *Increased MAXIMUM_RENDERED_ENVIRONMENT_SURFACES from 16k to 32k. This means BSPs can now have more visible triangles without culling happening. It is still important to use portals to manage visible clusters. | ||
Line 58: | Line 49: | ||
**Widget alignment in mirror reflections | **Widget alignment in mirror reflections | ||
===Tool=== | === Tool === | ||
*Lots of new verbs have been added. | *Lots of new verbs have been added. | ||
*A -verbose flag can be added to see additional logging. | *A -verbose flag can be added to see additional logging. | ||
Line 65: | Line 56: | ||
*Bitmaps compilation | *Bitmaps compilation | ||
**Bitmap DXT1-3 (BC1-3) encoding now uses DirectXTex instead of some S3TC code. This should result in higher quality similar to the original XDK. | **Bitmap DXT1-3 (BC1-3) encoding now uses DirectXTex instead of some S3TC code. This should result in higher quality similar to the original XDK. | ||
**The bitmaps verb now accepts both .tiff and .tif extensions | **The bitmaps verb now accepts both .tiff and .tif extensions like bitmap does. | ||
*Map compilation (build-cache-file): | *Map compilation (build-cache-file): | ||
**Script data is properly recompiled from source files when available now. A bug previously caused Tool to always fall back to sources stored in the scenario tag. | **Script data is properly recompiled from source files when available now. A bug previously caused Tool to always fall back to sources stored in the scenario tag. | ||
**Resource maps can optionally be updated to include all the resource data for the scenario being packaged. | **Resource maps can optionally be updated to include all the resource data for the scenario being packaged. | ||
**Maps can target "classic" or "remastered" mode. | **Maps can target "classic" or "remastered" mode. | ||
**loc.map resource maps are no longer generated or used | **loc.map resource maps are no longer generated or used as they are not used by H1A (aside from H1CE backwards compatibility). | ||
**Tool will now log errors when the user attempts to use swarm actors in firing-position based combat; always charge at enemies must be set to prevent runtime crashes. | **Tool will now log errors when the user attempts to use swarm actors in firing-position based combat; always charge at enemies must be set to prevent runtime crashes. | ||
*Model and structure compilation: | *Model and structure compilation: | ||
Line 79: | Line 70: | ||
**Model and collision importing have more verbose output. Use -verbose for the most troubleshooting information. | **Model and collision importing have more verbose output. Use -verbose for the most troubleshooting information. | ||
*Usage and feedback clarity: | *Usage and feedback clarity: | ||
**Argument parsing is now less primitive. Verbs can include optional arguments and flags | **Argument parsing is now less primitive. Verbs can include optional arguments and flags and any unrecognized options are presented to the user. | ||
**The usage printout when Tool is run without arguments is now sorted. The names and argument descriptions of some existing verbs have been updated for clarity and consistency. | **The usage printout when Tool is run without arguments is now sorted. The names and argument descriptions of some existing verbs have been updated for clarity and consistency. | ||
**zoners_model_upgrade and strings verbs have been removed since they weren't useful. | **zoners_model_upgrade and strings verbs have been removed since they weren't useful. | ||
**Tool will now tell you if it couldn't find a directory | **Tool will now tell you if it couldn't find a directory rather than simply logging nothing like some verbs previously did (looking at you model). | ||
**Verbs which accept a tag path as an argument will now automatically strip data\ and tags\ prefixes, allowing you to use tab completion on the command line (Halo 3 backport). | **Verbs which accept a tag path as an argument will now automatically strip data\ and tags\ prefixes, allowing you to use tab completion on the command line (Halo 3 backport). | ||
**Tool will no longer exception (but will log errors) when compiling a gbxmodel where the JMS has invalid node weights (two nodes where one has weight 1.0). | **Tool will no longer exception (but will log errors) when compiling a gbxmodel where the JMS has invalid node weights (two nodes where one has weight 1.0). | ||
*Tool supports a -pause flag | *Tool supports a -pause flag which keeps the process running after completion until the user presses Enter. This was meant for community-made launchers like Osoyoos. | ||
*Stability improvements: | *Stability improvements: | ||
**ogg/vorbis upgraded to 1.3.5/1.3.7 which should improve sound compilation stability. | **ogg/vorbis upgraded to to 1.3.5/1.3.7 which should improve sound compilation stability. | ||
**Fixes for various unsafe code: uninitialized variables, bad printf args, etc. | **Fixes for various unsafe code: uninitialized variables, bad printf args, etc. | ||
[[Category:Modding]] | [[Category:Modding]] | ||
[[Category:Halo: Combat Evolved]] | [[Category:Halo: Combat Evolved]] |