Skip to content

RFL2HMM

Gabriel edited this page Aug 4, 2023 · 5 revisions

Converting an RFL mod to a Hedge Mod Manager code

RFL2HMM allows you to take an original *.rfl file and a modified one and generate a Hedge Mod Manager code that instructs the game to write the same values in memory.

To use it, open the command line (cmd.exe/wt.exe) - running RFL2HMM.exe with no arguments will display usage information.

If you're having trouble running the application, please ensure you're in the right directory and have installed the .NET 7.0 runtime (x86/x64). The quickest way to open the right folder in Command Prompt is to click on the address bar in File Explorer when navigated inside the folder containing RFL2HMM.exe and type cmd.exe.

For the first argument, you must provide the name of the reflection type. There's not really a consistent way to identify which reflection types belong to which files, so you'll have to go off intuition.

Here are some example known reflection types;

  • effect_database.rfl - EffectRecordBaseTable
  • exp.rfl - GameExpParameter
  • hitstop.rfl - GameHitStopParameter
  • player_camera.rfl - PlayerCameraSetParameters
  • player_common.rfl - SonicParameters
  • skill.rfl - GameSkillParameter
  • timeservice.rfl - TimeServiceParam
  • w#r##.rfl - NeedleFxSceneData

We'll use SonicParameters for the main example.

For the second argument, you must provide an original copy of the *.rfl file you modified, including the original name. For example, we want the original file to be called player_common.rfl and nothing else (when converting SonicParameters data), as the Hedge Mod Manager code will intercept reads to a file of the same name.

For the third argument, you must provide your modified *.rfl file.

And if all goes right, you should receive a new *.hmm file containing your modifications.

Using the output Hedge Mod Manager code

If you simply want to use the output code in your mod as a replacement for *.rfl files, make a backup of all of your modified *.rfl files and convert them all to codes via RFL2HMM and combine them into one file in your mod folder. Then open mod.ini and for the CodeFile field, enter the name of your code file containing all the code.

If you're making changes to SonicParameters data that you wish to commit to the code file on the Hedge Mod Manager repository, make a pull request and it'll be reviewed in due time.

Clone this wiki locally