A collection of utilities for modding the game
most utilities have an example folder and extensive comments explaining how to use them.
Name (shortname) | Description | Dependencies (other modules it depends on) |
---|---|---|
Helpers (SUH) | Functions you may find useful while creating mods | |
Noticeboards | Detect when the player picks a notice from a noticeboard | |
Journal Quest | Create script based quests | |
Custom bossbar | Three easy to use functions to use boss bars as progress bars | |
Dialog choice | Display the dialogue choice UI whenever you want, and allows you to detect when the player picks a choice | |
Dialog hover | Detect when the player puts the cursor over a dialog choice | |
Glossary | Add custom glossary entries with dynamic descriptions if needed | |
Mappins (SUMP) | Add custom markers on the player map & minimap | Helpers |
Oneliners/3D Markers (SUOL) | Add floating text/image elements to the world | |
Custom cooldowns | Add custom cooldown icons to the player and to add event listeners for when they finish | |
NPC interaction | Run custom code when the player interacts with an NPC | |
DEPRECATED Tiny Bootstrapper (SUTB) | DEPRECATED: refer to the wrapMethod for a merge free solution to bootstrap your mods from CR4Player 's event OnSpawned . Bootstrap a persistent class after every reload automatically and with no extra merge for the end-users |
Storage |
DEPRECATED Storage (SUST) | DEPRECATED: refer to the addField for a merge free solution to store data in CR4Player . Store persistent objects in the save with no extra merge. Most sharedutils module rely on this one for internal data storage. |
The code available in this repository can be considered public domain. You may use, edit, and share this code with no restriction. Editing sharedutils rather than submitting PRs may be counter productive though, but you can freely ship the sharedutils alongside your own mods on any website even those with monetary rewards.
The primary goal of the shared-utils package is to simplify mod making and reduce complexity while shipping mods by decreasing the amount of merge conflicts for the end-users.