Modular is an essential part of modern Limbus modding, and helps to create your own custom effects.
Modular: Video Guide
A video guide has been made for Modular, courtesy of Shane.
Timestamps:
- 0:23 What is Modular?
- 0:58 How do I add it? | dated video, the latest Modular release can be found here.
- 1:59 How do I add Modular scripts to skills?
- 2:30 How do I add Modular scripts to passives?
- 2:39 How do I add Modular scripts to buffs?
- 3:04 Passive script example
- 6:26 What are values/Using Value Acquisition Functions
- 8:38 If Statements
- 9:31 Script example using values & if statements
- 11:42 setdata & getdata
- 12:15 Script example using setdata & getdata
- 14:52 Limiting script activations using data
Modular: Text Guide
What is Modular?
Modular is a plugin that allows for modular creation of skill and passive scripts through JSON modding only.
What does that mean?
Essentially, before modular was developed, it was either make a DLL for custom passives and skill scripts, or just... not have them. Not anymore! With the invention of Modular, it is now entirely possible to do these things, and more (there is however still a few exceptions as no matter how many functions modular may have, it may still lack options that only DLL can provide)
How do I get modular?
Modular already comes installed on default with Lethe, but you will have to update it frequently from this channel on the discord. Simply download the latest .dll then put it into BepInEx\plugins, overwrite the one in it, and you're good to go.
How do I get started with using Modular?
- Modular has a wonderful documentation site that lists down every function it provides for you to use, alongside an examples section to help you with basic scripts. If you need additional help, reminder, please do go ask in #nirvana in the discord.
How do I make a custom passive with Modular?
- There is a very useful passive example for you to use!
Here is a template passive you can use. This goes in your "passive" folder in custom_limbus_data. Check Custom Passives to see how to add the passive to a character.
{
"list": [
{
"id": customidhere,
"attributeStockCondition": ["change Stock to Resonance for res condition"],
"requireIDList": [
"Each/Modular/script/goes/in/one/string",
"Multiple/Modular/scripts/can/be/put/in/one/passive/like/so"
]
}
]
}
Modular does not currently support the creation of support passives, and it is recommended to create your own DLL mod to add support passives.
How do I add Modular to my skills?
- The following information is right under the "github" section of the following message
Here is a template skill you can use. Within "abilityScriptList" you can enter in a "scriptName" and enter your modular script into the string attached like shown.
-
Timings such as
RoundStart,WhenUse,DuelClashmust be used here. (generally, anything that doesn't occur directly as a result of a coin) -
Within "coinList" there is another "abilityScriptList". Timings such as
OnSucceedAttackandOnSucceedEvademust be used here. (generally, everything that does happen as a result of a coin)
{
"list": [
{
"id": 1125001,
"skillTier": 1,
"skillData": [
{
"skillTargetType": "FRONT",
"canTeamKill": false,
"canDuel": true,
"canChangeTarget": true,
"attributeType": "SHAMROCK",
"atkType": "SLASH",
"defType": "ATTACK",
"skillMotion": "S1",
"viewType": "BATTLE",
"targetNum": 1,
"range": 6.5,
"defaultValue": 8,
"skillLevelCorrection": 1,
"abilityScriptList": [
{
"scriptName": "Modular/script/goes/here"
}
],
"coinList": [
{
"operatorType": "ADD",
"scale": 3,
"abilityScriptList": [
{
"scriptName": "Modular/script/goes/here/too"
}
]
}
]
}
]
}
]
}
Useful Plugins
Down below are a list of plugins provided by users that will help with experimenting/testing, but also may provide extra functions for anything you are trying to make for your mod. Put these into BepinEx/plugins as always.
- Multiple Defense Skill Cycler: Allows identities to control more than one defense skill on command.
- MT's custom scripts: Essentially an expansion pack to Modular, there are even a couple stuff that have been brought over into Modular from MT, but this is still great to have if you think Modular may not have what you need.
- Start Whenever: Allows you to start the combat whenever you please rather than having to select every skill necessary, even allows you to not select any skill at all.
- Restaged: Disables fixed unit requirements in certain story stages, disables min and max amount of units that can be deployed (meaning you can deploy however many you want), removes minimum level and uptie requirements, etc. This essentially gives you a lot more freedom to experiment in certain nodes that otherwise had strict restrictions before (do keep in mind certain stages that explicitly require a Sinner such as 6-48 and Sr. Quixote fight still won't work as it forces them to be in special cutscenes.)
- Execution Bullets: Kills anyone on screen, helps with testing 'On Ally Death' or other death-related effects.