Skip to content

Example Mods

Atílio edited this page Apr 9, 2024 · 18 revisions

Single Container and UUID, the simplest possible ISF integration.

{
  "FileVersion": 1,
  "Items": [
    {
      "TemplateUUID": "3675fe0a-4f30-48c0-bf78-3369f65dc366" // UUID for a custom container, housing every clothing item in the game.
    }
  ]
}

This mod spawns the Debug Book into the host's inventory as early as spawning in on the Nautiloid during the tutorial. It utilizes the PlayerProgression section of the config to do so. By setting Act to 0, it tells the ISF to spawn in the Debug Book during the tutorial.

{
  "FileVersion": 1,
  "Items": [
    {
      "TemplateUUID": "31ee023c-d151-40f6-917e-84066772783b", // UUID for the Debug Book.
      "Send": {
        "To": {
          "CampChest": { // All camp chest spawning is disabled, as I do not want the Debug Book to spawn into them.
            "Player1Chest": false,
            "Player2Chest": false,
            "Player3Chest": false,
            "Player4Chest": false
          },
          "Host": true // The Debug Book will only spawn into the host's inventory.
        },
        "NotifyPlayer": false, // The player will not be notified when the Debug Book has been added to their inventory.
        "Check": {
          "PlayerProgression": {
            "Act": 0 // The Debug Book will be spawned in during the Tutorial, while the player is on the Nautiloid in Avernus.
          }
        }
      }
    }
  ]
}

This mod spawns a Heavy Supply Pack in the host's inventory when the player chooses to end the day and ISF detects that the player does not have any. It utilizes two main features of the ISF's Config file to do so: the DayEnd, and FrameworkCheck variables.

By setting DayEnd to true, it tells the framework to attempt to spawn in the Heavy Supply Pack after the player has ended the day (but before they have actually Long Rested).

By setting FrameworkCheck to false, the mod tells the framework not to verify if the Heavy Supply Pack has been shipped before, which allows it to be spawned an indefinite amount of times.

{
  "FileVersion": 1,
  "Items": [
    {
      "TemplateUUID": "a24a2ca2-a213-424c-833d-47c79934c0ce", // UUID for the Heavy Supply Pack.
      "Send": {
        "To": {
          "CampChest": { // All camp chest spawning is disabled, as I do not want the packs to spawn into them.
            "Player1Chest": false,
            "Player2Chest": false,
            "Player3Chest": false,
            "Player4Chest": false
          },
          "Host": true // Heavy Supply Packs will only spawn into the host's inventory.
        },
        "On": {
          "DayEnd": true // The supplies will spawn in as soon the player has ended the day and ISF recognizes that there are no Heavy Supply Packs in the player's inventory.
        },
        "NotifyPlayer": false, // The player will not be notified when new supplies have been added to their inventory.
        "Check": {
          "ItemExistence": {
            "FrameworkCheck": false // FrameworkCheck disabled, so the Heavy Supply Packs can spawn an infinite amount of times.
          }
        }
      }
    }
  ]
}

Spawn multiple items with ISF

This example showcases how you are able to spawn in multiple items using one ISF Config JSON that leverages the default configuration.

{
  "FileVersion": 1,
  "Items": [
    {
      "TemplateUUID": "6d0d3206-50b5-48ed-af92-a146ed6b98f2" // Phalar Aluve UUID
    },
    {
      "TemplateUUID": "44dedec0-df82-4ed3-b9ca-147bd830e312" // Sussur Greatsword UUID
    }
  ]
}