This plugin is a BepInEx plugin made for Inscryption as an API. This is the de-facto standard API for Inscryption modders.
It can currently create and modify:
- Cards
- Abilities
- Appearance behaviours
- Stat Icons
- Challenges
- Starter Decks
- Regions
- Encounters
- Totem Tops
- Consumable Items
- Gramophone Tracks
- Slot Modifications
- Talking Cards
- Custom Costs
- Custom Rulebook Pages
- Rulebook Redirects/Hyperlinks
- And much more!
Additionally, a number of quality-of-life patches from the community are included with each release.
To begin, we'll go over how to install BepInEx, the framework all Inscryption mods use. This is a necessary step to playing modded Inscryption, so be sure to follow this carefully.
- Download and install Thunderstore Mod Manager, Gale or r2modman.
- Click the Install with Mod Manager button on the top of BepInEx's page.
- Run the game via the mod manager.
If you have issues with ModmManagers head to one of these discords;
- Install BepInEx by pressing 'Manual Download' and extract the contents into a folder. Do not extract into the game folder!
- Move the contents of the 'BepInExPack_Inscryption' folder into the game folder (where the game executable is).
- Run the game. If everything was done correctly, you will see the BepInEx console appear on your desktop. Close the game after it finishes loading.
- Install MonoModLoader and extract the contents into a folder.
- Move the contents of the 'patchers' folder into 'BepInEx/patchers' (If any of the mentioned BepInEx folders don't exist, just create them).
- Install Inscryption API and extract the contents into a folder.
- Move the contents of the 'plugins' folder into 'BepInEx/plugins' and the contents of the 'monomod' folder into the 'BepInEx/monomod' folder.
- Run the game again. If everything runs correctly, a message will appear in the console telling you that the API was loaded.
- For any additional mods create a new subfolder, it can be called anything and extract the zips archive into it and if there is a BepInEx folder within the zip instead drop the contents of that folder into the BepInEx root for the modding instance. EX;
BepInEx // These go within the BepInEx root folder
|-- config
|-- patchers
|-- plugins
|-- monomod
|-- core
plugins // Files within go into the created plugin subfolder that was created for the mod
|-- Art
|-- Scripts
|-- MyMod.dll
manifest.json --|
README.md |-- These can be ignored but if you want to keep them put them in the plugin subfolder
CHANGELOG.md |--
icon.png --|
- Run the game once more and everything should be correct and working.
- Download r2modman on the Steam Deck’s Desktop Mode and open it from its download using its
AppImagefile. - Download the mods you plan on using and their dependencies..
- Go to the setting of the profile you are using for the mods and click
Browse Profile Folder. - Copy the BepInEx folder, then go to Steam and open Inscryption's Properties menu
- Go to
Installed FilesclickBrowseto open the folder containing Inscryption's local files; paste the BepInEx folder there. - Enter Gaming Mode and check 'Force the use of a specific Steam Play compatibility tool' in the Properties menu under
Compatibility. - Go to the launch parameters and enter
WINEDLLOVERRIDES=“winhttp.dll=n,b” %command%. - Open Inscryption. If everything was done correctly, you should see a console appear on your screen.
- Follow the steps here first: https://docs.bepinex.dev/articles/user_guide/installation/index.html
- Next do steps 4-10 of the Manual Installation
- Your game should be setup for inscryption modding now
If you have any issues with Mac/Linux, Steam Deck, or Manual head over to the discord for this game:
- Inscryption Modding Discord: Here
Modding Inscryption requires a knowledge of coding in C#, and in many cases an understanding of how to patch the game using HarmonyPatch.
If you're unfamiliar with any of this, or just want to create cards and sigils, you can use JSONLoader.
JSONLoader is a versatile mode that provides a more beginner-friendly way of creating new cards and abilities for Inscryption using JSON syntax, which is much simpler than C#.
JSONLoader's documentation can be found here.
A video tutorial covering how to use JSONLoader in a basic form can be found here.
To begin modding with C#, you will need to create a new C# project using a code editor. We recommend and assume you're using Microsoft's Visual Studio.
Your project's target framework needs to be netstandard2.0.
Once your project's created, go to Project > Manage NuGet Packages.
Click the dropdown menu for 'Package source' and check that 'BepInEx' and 'nuget' is there.
If BepInEx or nuget aren't an available source, we need to add them. To add a new package source, click on the gear icon next to the package source selector, then click the large green plus-sign.
To add BepInEx, change the name to 'BepInEx' and the source link to 'https://nuget.bepinex.dev/v3/index.json'. To add nuget, change the name to 'nuget' and the source link to 'https://nuget.windows10ce.com/nuget/v3/index.json'.
Change the package source to 'All' then click 'Browse'. We want to install the following packages (Make sure the version numbers match!):
- BepInEx.Analyzers v1.0.8
- BepInEx.Core v5.4.19
- HarmonyX v2.9.0
- Inscryption.GameLibs v1.9.0-r.0
- UnityEngine.Modules v2019.4.24
You will also need to add the API as a reference.
There are a couple ways to do this, detailed below; whichever way you choose to do this, you'll also need to need to reference InscryptionAPI.dll, which should be in your BepInEx plugins folder; copy this path for future use.
To do so, go to your 'BepInEx/plugins' folder and copy the folder path.
Then, navigate to Project > Add Project Reference and click 'Browse'.
Copy the folder path and add 'InscryptionAPI.dll' as a reference.
You can do this for other mods' .dll files if you want to reference them as a mod dependency (a separate mod that your mod relies on to work).
An alternative method to adding the API (and other mods) as a reference is to use NuGet packages by adding 'https://nuget.bepinex.dev/v3/index.json' as a package source, and then adding 'API_dev-API' as a reference.
With all this, you are now ready to begin creating your mod! Some resources are provided below for you to use, including an example mod to look at for examples. Otherwise, continue reading this wiki.
Vanilla and Modded Enumerations
An example mod utilising this plugin can be found here, and the modding wiki and documentation can be found here.
With this API installed, an additional 'modded save file' will be created by the game. This file will be found in the 'BepInEx' subdirectory, and contains all save data created by mods that use this API. This file will not automatically be synced to the cloud by Steam.
The following patches from the Inscryption modding community have been included in this package to improve the overall quality-of-life for modding and compatibility.
Fixes the art for abilities that previously only appeared in Act 2 so they appear correctly in Act 1 and Act 3
Fixes the behavior of conduits so they function correctly in Act 1.
Allows activated sigils to work correctly in Act 1 and Act 3 by clicking the sigil icon on the card.
Fixes latch sigils to work in Act 1
Allows up to 8 sigils to be displayed on cards and adds the option to display merged sigil stamps at the bottom of the card instead of over the artwork (see the config files for more information).
Combines multiple instances of the same sigil on a single card into a single sigil with a number to free up space on the card.
Displays hybrid cost cards correctly and makes energy and mox show up on act 1 cards
If energy/mox cards are in the Act 1 pool, energy and mox card choice nodes will be added to the cost choice node in Act 1.
Displays targets for attacks made with the sniper sigil in Act 1.
Fixes a number of bugs caused by the Sentry ability being used in Act 1.
Fixes a number of sigils to be usable in all Acts. Sigils include: Mental Gemnastics, Tidal Lock, Hoarder, Vessel Printer, Amorphous, Handy.
Fixes Fledgling in Act 2 to show the correct number of turns until a card evolves, up to 3. Also changes its description to show the correct number of turns.
Fixes the OverrideAbilityIcon method to work in Act 2.
- Fixes issues related to using temporary mods in Act 2 or to add custom decals
Inscryption API 2.0 tries to have you use the original game's objects as much as possible. For example, there are no more 'NewCard' and 'CustomCard' objects; instead, you are responsible to create CardInfo objects yourself and add them.
The API does provide a number of helper methods to make this process simpler for you.
For more information, please check out the wiki: Here, and if you need any help with anything related to the API send a message over in Inscryption Modding Discord.
Use the plugin and report bugs you find! Ping us on the Inscryption Modding Discord server in the api channel with what you find.
Great! We're more than happy to accept help. Either make a pull request to the API's GitHub page or come join us over in the Inscryption Modding Discord.
Donations are totally not needed, this is a passion project before anything else.
Original version by cyantist
Contributors and builders of API 2.0:
- BobbyShmurner
- divisionbyz0rro
- Eri
- IngoH
- JamesVeug
- julian-perge
- KellyBetty
- Nevernamed
- SpecialAPI
- Void Slime
- WhistleWind
- Windows10CE
- Keks307
- ThinCreator3483