Blocks and their functions
Object Block
Colour: Purple
Purpose: Represents a placeable Architect object
Things to know:
To add an Object Block, select the Cursor tool and right click an object in the Map Editor.
Certain objects with persistent states have multiple simpler events, such as "OnDeath", "FirstDeath" and "LoadedDead".
"OnDeath" broadcasts when an enemy dies or a room loads with the enemy already being dead.
"FirstDeath" broadcasts when an enemy dies.
"LoadedDead" broadcasts when a room loads with the enemy already being dead.

Event Blocks
Start Block
Colour: Green
Purpose: Broadcasts an event when the room is loaded

Timer
Colour: Green
Purpose: Broadcasts an event periodically
Things to know:
The Start Delay is how time from the room loading until the Timer should first broadcast.
The Repeat Delay is the time between broadcasts.
A random number from 0 to the Random Delay is added each repeat.
When the Max Calls are reached, the Timer will be fully disabled and is not re-activated by the Enable trigger.

Key Listener
Colour: Green
Purpose: Detects a key press or release from the player
Things to know:
The Key should be a Unity KeyCode, a list of KeyCodes can be found here.

Player Listener
Colour: Green
Purpose: Detects actions from the player
Things to know:
The X and Y values represent the internal position, which can be seen with tools such as UnityExplorer.

Process Blocks
If Block
Colour: Yellow-Orange
Purpose: Outputs the True event if the Check input variable is True, and the False event if it is False

Counter
Colour: Yellow-Orange
Purpose: Each time the "In" trigger is run, the counter increments. Once the counter reaches the Target, the Out event is activated.

Constants
Colour: Orange
Purpose: Has an output value that is a constant, configurable value for comparisons

Variables
Colour: Orange
Purpose: Stores persistent data that can be shared between rooms and loads
Things to know:
Running the Set trigger will set the variable to the New Value input.
Variables with the same ID will share the same value.
Persistence can be set to None, Bench and Global.
None will cause variables to be reset when the room is reloaded.
Bench will cause variables to be reset when sitting on a bench.
Global will cause variables to stay forever until changed.

Random Values
Colour: Orange
Purpose: Generates a random value
Things to know:
Enabling "Whole Num" on the Random Number block will output only whole numbers.

Compare Block
Colour: Yellow-Orange
Purpose: Compares two number values and outputs the result of the comparison

Operation Block
Colour: Yellow-Orange
Purpose: Performs mathematical operations with two numbers

Logic Blocks
Colour: Yellow-Orange
Purpose: Perform boolean logic (And, Or and Not gates)

Delay
Colour: Yellow
Purpose: Pauses for a set amount of time
Things to know:
The Extra Delay is added to the Delay option.

PlayerData Control
Colour: Orange
Purpose: Sets and checks PlayerData values

Trigger Blocks
Health Control
Colour: Blue
Purpose: Adds, takes and checks the current player health
Things to know:
The Amount config value is the amount of health to give or take.
The Amount output value is the player's current health.

Silk Control
Colour: Blue
Purpose: Adds, takes and checks the current silk amount
Things to know:
The Amount config value is the amount of silk chunks to give or take.
The Amount output value is the player's current silk amount.

Status Control
Colour: Blue
Purpose: Applies, removes and checks current status effects
Things to know:
The Frosted output value is whether the player is about to take frost damage.

Text Display
Colour: Red
Purpose: Displays dialogue to the player
Things to know:
<page> is used for a new page, <hpage> is used for a new page in which Hornet speaks.
Tags can be used for decoration such as <b> for bold and <color> for colour tags.
Example: "<color=#FF0000>Hello</color>"

Choice Display
Colour: Red
Purpose: Displays dialogue to the player with a Yes/No choice
Things to know:
The Requirement can be set to Rosaries, Shell Shards or an Item.
If an Item is set as the requirement, the Item ID is used.
Consume Item controls whether the item is taken from the player when selecting Yes.
A list of Item IDs can be found at Item IDs

Title Display
Colour: Red
Purpose: Displays a title to the player

Camera Shake
Colour: Dark Blue
Purpose: Shakes the camera

Time Slowdown
Colour: Dark Blue
Purpose: Slows the game similar to at the end of a boss or arena fight
Things to know:
By default the game cannot be paused during a slowdown, this can be toggled using the Disable Pause option.

Animator Controller
Colour: Dark Blue
Purpose: Locks the player to a specific animation
Things to know:
If Take Control is disabled the player can move as the animation plays, though this can cause unusual behaviour.
Time Override will force the animation to play for a specific duration.

Multiplayer
Multiplayer Receive
Colour: Magenta
Purpose: Receives an event over multiplayer through the SSMP mod

Multiplayer Broadcast
Colour: Magenta
Purpose: Broadcasts an event over multiplayer through the SSMP mod

Last updated