SoulFire LogoSoulFire
Scripting

Node Reference

Complete catalog of all 70+ built-in scripting nodes in SoulFire, organized by category.

This page lists every built-in node available in the SoulFire script editor, organized by category.

You can browse all nodes directly in the editor by pressing Shift+A or opening the Node Palette sidebar on the left.

Triggers

Trigger nodes start your script's execution. They fire when specific events happen and pass relevant data to downstream nodes.

NodeDescriptionOutputs
On TickFires every game tick (20 times per second), per botbot, tickCount
On ChatFires when a bot receives a chat messagebot, message, messagePlainText, timestamp
On DeathFires when a bot diesbot, shouldRespawn
On DamageFires when a bot takes damagebot, amount, previousHealth, newHealth
On JoinFires once when a bot joins the worldbot, botName
On Bot InitFires when a bot initializes its connectionbot, botName
On IntervalFires on a repeating timer (configurable interval)executionCount
On Script InitFires once when the script is activatedtimestamp
On Script EndFires when the script is deactivatedtimestamp

For a detailed breakdown of each trigger, see the Triggers page.

Actions

Action nodes control your bots and interact with the Minecraft world.

NodeDescriptionKey Inputs
Send ChatSends a chat message or commandbot, message
Pathfind ToNavigates a bot to a target positionbot, x, y, z
JumpMakes a bot jumpbot
AttackAttacks a target entitybot, entity
Use ItemUses the item in the bot's handbot, hand
SneakToggles sneaking on or offbot, enabled
SprintToggles sprinting on or offbot, enabled
Break BlockMines a block at the given positionbot, x, y, z
Place BlockPlaces a block at the given positionbot, x, y, z
Select SlotChanges the bot's selected hotbar slotbot, slot
Look AtPoints the bot's view at a positionbot, x, y, z
WaitPauses execution for a specified durationdurationMs

Data Queries

Data query nodes read information from the world, bots, and entities.

NodeDescriptionKey InputsOutputs
Get BotsReturns all connected bots(none)bots (list)
Get BlockGets block info at a positionbot, x, y, zblockType, isSolid, isAir
Find EntityFinds the nearest entity of a typebot, entityTypeentity, distance
Find BlockFinds the nearest block of a typebot, blockType, searchRadiusx, y, z, distance
Get PositionGets a bot's current positionbotx, y, z
Get HealthGets a bot's health and hungerbothealth, hunger
Get InventoryGets a bot's inventory contentsbotitems (list)
Get GamemodeGets a bot's current gamemodebotgamemode
Get BiomeGets the biome at the bot's positionbotbiome
Get DimensionGets the bot's current dimensionbotdimension

Flow Control

Flow control nodes manage the execution path of your script.

NodeDescriptionNotes
BranchRoutes execution based on a boolean conditiontrue and false output paths
For Each BotIterates over all connected botsRuns the body once per bot
For EachIterates over any listRuns the body once per item
LoopRepeats execution a set number of timesConfigurable iteration count
SwitchRoutes execution based on matching a valueMultiple case outputs
SequenceRuns multiple output paths one after anotherOrdered execution
GateOnly passes execution when a condition is trueConditional pass-through
DebounceIgnores rapid repeated executionsConfigurable cooldown period
Rate LimitThrottles execution to a maximum rateConfigurable rate

Math & Logic

Nodes for mathematical operations and logical comparisons.

Math

NodeDescription
AddAdds two numbers
MultiplyMultiplies two numbers
DivideDivides two numbers
ModuloReturns the remainder of division
FormulaEvaluates a math expression string
RandomGenerates a random number in a range
ClampConstrains a number between min and max
LerpLinearly interpolates between two values
DistanceCalculates distance between two 3D points

Logic

NodeDescription
CompareCompares two values (equals, greater than, less than, etc.)
AndReturns true if both inputs are true
OrReturns true if either input is true
NotInverts a boolean value
XorReturns true if exactly one input is true

String Operations

Nodes for working with text.

NodeDescription
ConcatJoins two or more strings together
ReplaceReplaces occurrences of a substring
SplitSplits a string into a list by delimiter
SubstringExtracts a portion of a string
ContainsChecks if a string contains a substring
Starts WithChecks if a string starts with a prefix
Ends WithChecks if a string ends with a suffix
FormatFormats a string with placeholders
Regex MatchTests a string against a regular expression
Regex ReplaceReplaces matches of a regular expression

List Operations

Nodes for working with collections.

NodeDescription
LengthReturns the number of items in a list
Get AtGets an item at a specific index
FirstGets the first item in a list
LastGets the last item in a list
ContainsChecks if a list contains a value
Join To StringJoins list items into a single string with a separator
RangeCreates a list of numbers from start to end

JSON

Nodes for parsing and building JSON data.

NodeDescription
ParseParses a JSON string into a value
StringifyConverts a value into a JSON string
GetReads a field from a JSON object by key
SetSets a field on a JSON object
ArrayCreates a JSON array from inputs
ObjectCreates a JSON object from key-value pairs

Network & Integration

Nodes for communicating with external services.

NodeDescriptionKey Inputs
Web FetchMakes HTTP requests (GET, POST, etc.)url, method, headers, body
Discord WebhookSends a message to a Discord webhookwebhookUrl, content, username

AI / LLM

Nodes for integrating large language models into your scripts.

NodeDescriptionKey Inputs
LLM ChatSends a prompt to an OpenAI-compatible API and returns the responsesystemPrompt, userMessage, model, temperature, maxTokens

The LLM Chat node requires an OpenAI API key configured in your instance settings. It supports any OpenAI-compatible API endpoint.

Encoding

Nodes for encoding, hashing, and encryption.

NodeDescription
HashComputes a hash (MD5, SHA-256, etc.) of a string
Base64 EncodeEncodes a string to Base64
Base64 DecodeDecodes a Base64 string
EncryptEncrypts data with a key
DecryptDecrypts data with a key
CompressCompresses data

State Management

Nodes for storing and retrieving persistent data.

NodeDescriptionScope
CacheStores a value in temporary per-script storagePer script, session only
Get Bot VariableReads a persistent variable for a specific botPer bot, persistent
Set Bot VariableWrites a persistent variable for a specific botPer bot, persistent

How is this guide?

Last updated on

On this page