Developer API Overview

Estimated reading time: 2 minutes

ModLoader exposes a public API to Mod developers via global objects for querying Mod info, inter-Mod communication, image loading, and more.

Global Objects

Global ObjectDescription
window.modUtilsMain API entry for Mod authors
window.modSC2DataManagerCore data manager; low-level access
window.jsPreloaderScript preloader
window.modAddonPluginManagerAddon plugin manager

API Categories

SugarCube2 Events

SC2 emits these jQuery events during gameplay. Mods can listen for them to react to game state:

EventWhen Fired
:storyreadyGame fully started
:passageinitNew Passage context initializing
:passagestartNew Passage starting to render
:passagerenderNew Passage render complete
:passagedisplayNew Passage ready to insert into HTML
:passageendNew Passage handling complete

Listening Example

// One-shot
$(document).one(":storyready", () => {
  // Post-game-start logic
});

// Every time
$(document).on(":passageend", () => {
  // Logic after each Passage render
});