BalsamV is a library and editor for the binary file used by HCE to store the profile configuration. It reads the saved values and allows the editing of them. The main advantage is more freedom over setting values, including name hacks and custom resolutions without refresh-rate locks.
This project is currently a work progress. At the moment, all values can be edited except:
- KBM/Controller Input mappings
- Video gamma value
- Video refresh rate
- Sound EAX/HW Acceleration
- Download & run the executable.
- If a HCE profile exists, it will automatically be loaded. If not, please
click on
Loadand select yourblam.sav[1]. - Edit the values accordingly, then click
Save.
[1] - The blam.sav binary can be found in <personal hce data>\savegames\<profile name>\blam.sav.
The following documentation covers both the blam.sav and lastprof.txt files,
and the BalsamV library.
Considering that the blam.sav binary contains a lot of properties, the BalsamV
library and documentation has been split up into three categories. Refer to the
following development documentation for information on the various sections
blam.sav binary:
| Document | Topics |
|---|---|
| BalsamV.Profile | Profile name and player colour. |
| BalsamV.Settings | Video, audio and network settings. |
| BalsamV.Input | Keyboard, mouse and controller mappings. |
- The last accessed HCE profile can be deduced by parsing the text data of the
lastprof.txtfile. - The text file in question is officially located in
Documents\My Games\Halo CE. - BalsamV validates the inbound
lastprof.txtdata by checking for thelam.savsuffix[1].
[1] - Yup, the lack of b is deliberate!
- The
blam.savintegrity is verified by HCE on process initiation by checking the CRC32 hash stored at0x1FFC. - The hash is stored as an unsigned int32, with the value being the bitwise
complement of the CRC32 of
blam.savdata range from0x0000to0x1FFC.

