Boxel 3D API

The Boxel 3D API provides modders the documentation they need to develop new features for Boxel 3D.

Credit: outerbound, Charlieee1

About Boxel 3D

Boxel 3D API

Boxel 3D Level Packs

Event Listeners

Boxel 3D events are special “hooks” that modders can hook into during the game lifecycle.

For example, if you want to run code after the player dies, you can add an event listener using the playerKill event name.

Example Event Listener

window.addEventListener("playerRespawn", (event) => {
    console.log("Player respawned:", event.detail.player);
});

General Events

Event Name Data Description
beforeSettingsClosed {} Triggered before settings are closed.
cameraUpdated { detail: Object } Triggered after camera updates.
closePopup {} Fires when a popup is closed.
engineUpdated { detail: Object } Triggered after engine loop ends.
levelStart { detail: Object } Called when a level starts.
levelFinished { detail: Object } Triggered when a level is completed.
openLevelSelectorPopup {} Fires when the level selector popup opens.
openPopup { detail: Object } Called when a popup is opened.
pageMounted { detail: String } Fired when a page is mounted.
popupClosed {} Triggered when a popup is closed.
popupOpened {} Fires when a popup is opened.
renderUpdated { detail: Object } Triggered after render loop ends.

Player Events

Event Name Data Description
playerKill { detail: { player: Object } } Triggered when a player is killed.
playerRespawn { detail: { player: Object } } Fires when a player respawns.
playerRestart { detail: { player: Object } } Called when a player restarts.

UI & Settings Events

Event Name Data Description
setCredit { detail: { text: String } } Updates credit text.
setMode { detail: String } Sets the current game mode.
setPage { detail: String } Changes the current page.
setSelectedObject { detail: Object } Sets the selected object in the UI.
setSelectedMode { detail: String } Changes the selected mode.
setTheme { detail: String } Sets the game theme.
settingsClosed {} Fires when the settings menu is closed.
settingsOpened {} Fires when the settings menu is opened.
themeSelected { detail: Object } Triggered when a theme is selected.
updateLoading { detail: Object } Updates the loading state.
updateStatsVisibility {} Updates the visibility of stats.