Skip to content

Modifiers

Mecha edited this page Jan 8, 2025 · 6 revisions

Modifiers are specific code blocks that can be added to an object to perform a specific action.
Modifiers have two types:

  • Actions (Does whatever the name of the modifier suggests)
  • Triggers (Checks if the name of the modifier is happening and if it is, allow other modifiers to activate)

Modifiers exist in Beatmap Objects, Background Objects, Players and Levels (level modifiers based on modern triggers).
Only a few modifiers will be documented here, the rest can be discovered in the editor.

Beatmap Object Modifiers

Beatmap Object Modifers Actions

  • setPitch
    Sets the song pitch multiplied by the audio event keyframe's pitch value.
  • setMusicTime
    Sets the song time. Recommended for skipping specific parts of a level / song.
  • setMusicTimeAutokill
    Sets the song time to where the object despawns. Good for skipping a section.
  • playSound
    Plays a sound located in the level folder or a soundlibrary folder in the beatmaps folder. (soundlibrary is only recommended for offline levels)
  • playDefaultSound
    Plays a sound located in the game files.
  • audioSource
    Works like the playSound modifier, except it aligns the sound time with the music time relative to when the object spawns. Scale X and Y can be used to animate pitch and volume respectively.
  • loadLevelID
    Finds a level with a matching arcade ID and plays it. Can be used in both editor and arcade.
  • loadLevelPrevious
    Loads the previously loaded level, if there was any.
  • loadLevelHub
    Loads the current hub level, if the player ever entered one during the current play session. (Play session includes from when the player enters the first level to when they return to the arcade)
  • endLevel
    Forces the end level screen to occur. For cases where you want to end the level differently from the regular way.
  • blur
    Changes the object's material to a blur. Can be animated with opacity if it is turned on.
  • blurOther
    Changes all objects in a group's material to a blur. Can be animated with opacity if it is turned on.
  • particleSystem
    Makes the object emit particles.
  • trailRenderer
    Makes the object leave behind a trail when it moves.
  • spawnPrefab
    Spawns a prefab from the internal prefabs list with custom offsets.
    Inactive condition: Prefab that was spawned is killed. (Subject to change)
  • playerHit
    Hits the player closest to the object.
  • playerHitAll
    Hits all players.
  • playerHeal
    Heals the player closest to the object.
  • playerHealAll
    Heals all players.
  • playerMove
    Moves the player closest to the object along both the X and Y axis.
  • playerMoveAll
    Moves all players along both the X and Y axis.
  • gameMode
    Sets the current gamemode of the level.
  • showMouse
    Shows the mouse cursor. Normally the mouse is disabled in levels, but it can be re-enabled for cases where you want mouse interaction.
  • setMousePosition
    Sets the mouse position relative to the Window.
  • followMousePosition
    Makes the object follow the mouse.
  • addVariable
    Adds an amount to a group of object's variables.
  • subVariable
    Subtracts an amount to a group of object's variables.
  • setVariable
    Sets an amount to a group of object's variables.
  • loadVariable
    Loads and applies a variable from a profile file.
  • loadVariableOther
    Loads and applies a variable to a group of objects from a profile file.
  • setCollision
    Turns the collision on or off.
  • setCollisionOther
    Turns the collision of a group of objects on or off.
  • enableObject
    Enables the visual object.
    Inactive condition: Disables.
  • enableObjectTree
    Enables the entire parent tree.
    Inactive condition: Disables.
  • disableObject
    Disables the visual object.
    Inactive condition: Disables.
  • disableObjectTree
    Disables the entire parent tree.
    Inactive condition: Disables.
  • saveFloat
    Saves a floating point number (like 0.4324) to a JSON file that can be read later.
  • saveString
    Saves a string (like "hi") to a JSON file that can be read later.
  • saveText
    Saves a the text of the text object to a JSON file that can be read later.
  • saveVariable
    Saves a the variable of the object to a JSON file that can be read later.
  • reactiveColLerp
    Makes the visual object's color react to the music. Reactive color interpolates from the object's current color to the set color.
  • reactivePosChain
    Makes the parent object's position react to the music.
  • reactiveScaChain
    Makes the parent object's scale react to the music.
  • reactiveRotChain
    Makes the parent object's rotation react to the music.
  • setPlayerModel
    Sets a specified player's player model.
  • eventOffset
    Offsets an event keyframe value. (E.G. Move, Zoom, etc)
  • eventOffsetAnimate
    Animates an event offset in real time.
  • eventOffsetCopyAxis
    Takes an axis of the object and applies it to an event offset.
  • vignetteTracksPlayer
    Forces vignette to follow the player. Can be good for moody dynamic levels.
  • legacyTail
    Makes a chain of objects act like the Legacy player tail.
  • blackHole
    Drags the player towards the center of the object.
  • lerpColor
    Lerps the current object's color and the set color.
  • lerpColorOther
    Lerps a group of object's color and the set color.
  • setAlpha
    Set the opacity of the object.
  • setAlphaOther
    Set the opacity of a group of objects.
  • copyColor
    Copies the color of another object.
  • copyColorOther
    Applies the color of the object to a group of objects.
  • signalModifier
    Sends a signal to a group of objects that must contain a requireSignal trigger modifier.
  • editorNotify
    Sends an editor notification. Good for debugging.
  • setImage
    Sets the image of the image object, if the object is an image object.
  • setImageOther
    Sets the image of a group of image objects, if the objects are an image object.
  • setText
    Sets the text of the text object, if the object is a text object.
  • setTextOther
    Sets the text of a group of text objects, if the objects are a text object.
  • textSequence
    Animates the text of the text object to be like a typewriter effect.
  • animateObject
    Animates the object in real-time.
  • copyAxis
    Copies the axis (E.G. position X, scale Y, etc) of another object and applies it to an axis of the current object with set limits and offsets. Basically, works like secondary parenting.
  • loadInterface
    Loads a custom interface from the level folder.

Beatmap Object Modifers Triggers

  • disableModifier
    Prevents all modifiers from running. Useful for debugging.
  • playerCollide
    Trigger is active if the object is colliding with the player.
  • playerHealthEquals
    Trigger is active if the player's health is equal to the modifier value.

Background Object Modifiers

Background Object Modifers Actions

  • setActive
    Sets the background active / inactive. If it is inactive, rendering is disabled therefore optimizing a level.
  • animateObject
  • copyAxis

Background Object Modifers Triggers

  • timeLesserEquals
  • timeGreaterEquals
  • timeLesser
  • timeGreater

Player Modifiers (yet to be fully implemented)

Player Modifiers Actions

  • setCustomActive
    Sets a custom object active / inactive.
  • kill
    Kills the player. Not sure why you would want this but sure, why not.
  • hit
    Hits the player. Not sure why you would want this but sure, why not.
  • signalModifier
    Based on the Beatmap Object Modifier signalModifier. Only used for cases where a player model is specifically made for a specific level.

Player Modifiers Triggers

  • actionPress
    Checks what button / key of the player is being pressed. (Not implemented, currently only checks for boost buttons)
  • actionDown
    Same as above but only when the button / key was pressed.
  • healthEquals
  • healthGreaterEquals
  • healthLesserEquals
  • healthGreater
  • healthLesser
  • healthPerEquals
  • healthPerGreaterEquals
  • healthPerLesserEquals
  • healthPerGreater
  • healthPerLesser
  • isDead
  • isBoosting

Level Modifiers

Level modifiers require an action and a trigger to be a part of it. (Some triggers will not be ported from alpha, such as the visual novel events or the player bubble.)

Level Modifers Actions

  • playerlocation
  • playerboostlock

Level Modifiers Triggers

  • none
  • time
  • playerhit
  • playerdeath
  • levelstart

Contents

  1. Home
  2. Dictionary
  3. Game
    2.1. Configs
    2.2. Core
    2.3. Editor
    2.4. Events
    2.5. Players
    2.6. Modifiers
    2.7. Arcade
    2.8. Menus
    2.9. Companion
  4. Code
    3.1. Essentials
    3.2. Guidelines
    3.3. Data
    3.4. Usings

Clone this wiki locally