Modified modules and systems
There are a lot of Foundry VTT modules, custom worlds, and systems. These are collectively referred to as “Foundry VTT packages”.
Packages available for free on the Foundry VTT package listing are installed through The Bazaar on The Forge. This means that module storage is (mostly) free, and increases the amount of available storage available to the user. However, this only applies to officially released versions of Foundry VTT packages.
Sometimes, users will want to install modified Foundry VTT packages. This is most common for edits to a publicly-available system or module. By default, when uploading this content The Bazaar will install the official version of the module, over the custom version. We explain how to uploaded modified modules or systems so that they retain their changes below.
Uploading modified packages
When you seek to upload a modified package to your Forge account, or simply wish to install content without installing it through The Bazaar, you can do so via the following:
-
Go to the Games Configuration page and click “Summon Import Wizard” in the “Table Tools” section.
-
This will open the Import Wizard.
-
From here, you can turn off the “Install found packages from the Bazaar” toggle.
-
Browse for the package or packages you would like to import. You can choose to upload a Local Folder or ZIP file.
-
Click Analyze to proceed with the Import Wizard process.
Note: The imported package will replace any currently installed version of the same package on your Forge account, if it exists.
If you have customized an existing package, you can find your custom package on the Bazaar and lock it to prevent it from prompting you to update it if a new version of the original package becomes available.
For more information, please see the “advanced” section below or contact Forge support.
Advanced
To upload a modified version of a package, you will need to make changes to the package files on your local machine.
If you will be replacing an existing module on your Forge account, we recommend making a backup of the original package, before you delete or replace the existing version.
Download a local copy of the package to edit.
First, you need a copy of the package. Download the module or system zip, or if it is on your Forge account at the moment, you can export it from your Games Configuration page.
Optional: You can also delete the existing package. To do this, click View Data Storage
on your Games Configuration page My Foundry. You can also delete the package from the Foundry setup screen if your Game Manager is disabled.
Edit your local copy of the package.
Now, edit the package on your local machine.
This may involve adding files to the package, or making edits to the module.json
, system.json
, or world.json
file using a text editor, such as Notepad++ or notepad. You’ll usually find the module.json
, system.json
, or world.json
file inside the package’s folder.
You may also want to update the package’s version
and id
inside of the .json
file, especially if you want to install it alongside the un-edited package. Package id
s are unique, and each unique id
is treated as a unique package.
To edit the version
or id
of the package, add -custom
at the end, since this is a custom version of that package. We recommend you edit it to something recognizable - “Custom (module name) V(module Version)”. Take care to stick to the .json
file’s existing formatting.
The .json
file is in JSON format, which must be valid for Foundry to be able to recognize it. There are various JSON validators online which alert you to syntax errors, and you can test your .json
file contents there to ensure that it is valid JSON.
Once done, save your edits, and test it within a local Foundry installation. If it is not working, you may have accidentally broken the .json file. .
Now you can use the Import Wizard to upload your modified module, system, or world. You can also find this over at the Games Configuration page.
Once imported, Stop and Start your Foundry server from the Games Configuration page so that Foundry can recognize the new package, and it can now be used in your worlds.
To enable a module in-game, select it via the “Manage Modules” module configuration menu under the settings sidebar.
To use a custom system for a world, the custom system must be selected when creating the world, however if you do not change the system.json
id
field when customizing the system, you will be able to replace an existing system, in which case the custom system with that same id
will be used instead.
If you did not change the package id
, you can find your custom package on the Bazaar and lock it to prevent it from prompting you to update it if a new version of the original package becomes available.