Warframe uses metadata (or "property text") for many game design-related configurations, e.g. what upgrades a mod gives, what abilities a warframe has, what enemy types spawn for a given enemy spec, etc. For this guide, we will be creating a metadata patch for a mod from scratch, as it is the easiest kind of metadata patch.
Typically, the fastest way to find the internal path (or uniqueName) for a given object is by searching in the Public Export, PE+, or on browse.wf.
As you become more acquainted with metadata, you may also find the EE.log and the Bootstrapper's write_all_metadata_reads configs to be useful.
For this guide, we will be patching the Fever Strike mod, which is /Lotus/Upgrades/Mods/Melee/WeaponToxinDamageMod.
In order to read metadata, we first need to ask the Bootstrapper to hold onto it for us. Creating an empty patch would work, but enabling the save_all_metadata config is far less of a hassle. Afterwards, (re)start the game.
Now, to query it, simply add the internal path from above at the end of http://localhost:6155/get_effective_metadata? and navigate to it. So, that makes http://localhost:6155/get_effective_metadata?/Lotus/Upgrades/Mods/Melee/WeaponToxinDamageMod for Fever Strike.
You may see no such patch or patch not applied (yet), in which case you'll need to do something to cause the game to load that object, but mods should be loaded by the time you're logged in.
The Bootstrapper provides a domain-specific language for performing text replacements on metadata, which may sound complicated, but it's actually really simple:
OpenWF/Metadata Patches folder, e.g. Saryn Strike.txt./Lotus/Upgrades/Mods/Melee/WeaponToxinDamageMod on the first line.LocalizeTag, we write that verbatim, so LocalizeTag=Saryn Strike on the second line would rename the mod to Saryn Strike.DT_POISON with DT_CORROSIVE by writing r|DT_POISON|DT_CORROSIVE on line three.LocTag property of the first upgrade by writing q|Upgrades.0.LocTag|/Lotus/Language/Upgrades/WeaponCorrosiveDamage on line four. Note that we start counting at 0.After saving this file, you can (re)start the game, and you should see the mod renamed and with the new effect of adding corrosive instead of toxin damage.
For more details, consult the Bootstrapper's manual, which fully documents the syntax for Metadata Patches.