SPM LevelRewards Example

v0.0.1·Updated 2026-08-21

[Example Mod for Safehouse Progression Mode] (Coolest one!) For modders to use as a sample when adding new, progression paths with their own per-level rewards.

About this mod Author’s original text

New Level and Rewards Example mod

Who: For modders to use as an example when making their own "Safehouse Progression Mode" config mods.

What: Contains these README instructions, a sample shRnk_defaultRanks.json file, an icon.png, and manifest.json. It also includes 1.png, 2.png files and so on because these are the file names referenced inside the JSON which are used for icons of each level. The ply_lvl.png is the image associated with your rank system, which will run atop the default one that comes with the Safehouse mod. The sufficient resources for a newbie modder to copy the entire folder and make their own mod from.

When: NOW!

Where: If using R2ModMan (aka R2MM) you can find this folder under the path: "C:\Users\\AppData\Roaming\r2modmanPlus-local\H3VR\profiles\\BepInEx\plugins\NGA-SPM_HousePrices_Example"

Why

Suppose you made a ridiculous amount of "themed" gun mods, like from a certain video game, and want your friends to "grind" for them, gaining XP by playing Take-and-Hold and leveling up with custom rank pictures, increasing XP requirements, and all! Well this is the mod for you. This rank progress will appear at the end of each Take-and-Hold match automatically as a HUD and is also visible from the Launcher menu.

Details

  • There must be one file per "Rank Progression" you want to add, and each one has these top-level fields:
  • progressionId: A unique string ID used internally for code stuff, not visible to player.
  • displayName: Player-visible name of your Rank porgression, can be something like "Death Stranding"
  • modName: The folder name of the mod in format Author-ModName, so for this sample mod it's NGA-SPM_LevelRewards_Example.
  • description: Player-visible description of the rank. Nothing crazy.
  • icon: Player-visible icon associated with your "Rank Progression"
  • The overall progression icon can be up to 1000x1000px, and you can even reuse the icon.png of the mod if you want, just ensure the file is explicitly set in the JSON.
  • ranks: An ordered list of the actual ranks your player will progress through. Below is an example

{

"rankId": "pfc",

"displayName": "Private First Class",

"icon": "1.png",

"xpInTier": 1000,

"rewards": [

{

"rewardType": 1,

"currency": {

"currencyId": "spades",

"amount": 20

}

},

{

"rewardType": 2,

"unlock": {

"unlockIds": [

"Asp",

"GSh18"

]

}

}

]

},

  • rankId: A unique string ID used internally for code stuff, must be unique within this Rank Progression file.
  • displayName: Player-visible name of the rank
  • icon: The filename of the icon associated with this rank, MUST be a.png.
  • Level icon sizes should have size of, roughly, 75x100px, and their name must be identical to what you reference in the JSON file.
  • Does not have to be unique.
  • xpInTier: The actual amount of XP that needs to be earned to surpass this specific tier. Up to you whether each successive tier costs more or the same amount of XP.
  • rewards: A list of the rewards that will be automatically granted when this rank is finished.
  • rewardType: Type 1 is currency, and Type 2 is item unlocks
  • currency:
  • currencyId: Is either "spades" or "bitties". The former is used to unlock objects in the shop, the latter is used to Buy the items once unlocked.
  • amount: Integers only!!!
  • unlock:
  • unlockIDs: A list of the Object IDs of the items that will be automatically unlocked in the item shop once this level completes.
  • To find the Object ID of an item, go to a sandbox scene, bring out the Toolbox from the wrist-menu, on the top side of it bring out the Info Panel, grab the Stylus and point it at the object, then look around the tablet's info for the Object ID.

More details

  • You can update the rewards an XP and stuff even after you release the mod and people start playing it. The system automatically updates it when each player plays again.

Install & use Install: BepInEx plugin

  1. The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
  2. Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
  3. Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
  4. Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.

Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.

File & checksum

Filename
SPM_LevelRewards_Example-0.0.1.zip
File size
736.5 KiB