CIRCUITS: HOW TO BRING YOUR ISLAND TO LIFE
This guide is designed for users, builders and island owners. It explains Circuits in a clear, complete and practical way, without assuming you know how to code or how the system works internally.
Base formula
Trigger > Condition > Effect
If something happens, and a rule is met, then an action occurs.
BoomBang Circuits

CIRCUITS SEARCH
Showing the entire guide You can use the quick navigation to jump straight to each section.
WHAT ARE CIRCUITS

Circuits are the island automation system.

They allow a room to react to things like:

  • When someone enters
  • When someone steps on a furniture item
  • When someone clicks
  • When someone says a word
  • When an object's state changes
  • When you want something to repeat automatically
  • When a user gets close to another
  • When a furniture item reaches a certain position
With them you can create
Automatic welcomes Password doors Teleports Traps Puzzles Checkpoints VIP rooms Minigames Themed events Hot potato Obstacle courses Dice games Restricted zones Scoring competitions The Floor is Lava Chest game Drop rain Scoreboards & rankings Tournaments with prizes Treasure hunts
THE 3 PIECES OF THE SYSTEM
Trigger

It's the event that starts the chain.

  • Entering a room
  • Stepping on a tile
  • Clicking on a lever
  • Saying a word
  • When a timer ends
  • When a user gets close to another
  • When a die or furniture changes state
Condition

It's the rule that decides whether the action should continue or not.

  • Only if they are the owner
  • Only if they are on the whitelist
  • Only if there are between 2 and 5 users
  • Only if they have a certain badge
  • Only if they have a certain visual effect
  • Only if a furniture item is at a certain position
  • Only if the user is inside a zone
  • Only if the die rolled a certain number
Effect

It's the final action the system executes.

  • Send a message
  • Teleport
  • Change a furniture's state
  • Freeze the user
  • Change a furniture's color
  • Transfer an effect to another user
  • Roll a die or spin a wheel
How the system thinks
  1. Detects the event.
  2. Looks for associated Conditions.
  3. If all pass, looks for the Effects.
  4. Executes those Effects.

Important: normal Conditions use AND logic. That means if there are several, all of them must be met.

KEY CONCEPTS
Targets

Targets are the IDs that connect pieces to each other or to specific furniture items.

  • In a Trigger, they can be the furniture items it watches and also the Effects it fires.
  • In a Condition, they are usually the furniture items it checks.
  • In an Effect, they are usually the furniture items it acts upon.
Trigger: Step on furniture
Targets: ID_carpet_origin;ID_effect_teleport
Stack

A stack is, in practice, the set of Conditions and Effects that are linked to respond to an activation.

  • A Trigger fires a chain.
  • That chain finds related conditions and effects.
  • That group is the stack that gets executed.
Execute stacks

It's not a Trigger or a Condition. It's a special Effect that calls other Effects you put in its Targets.

Trigger: Click furniture
Effect A: Execute stacks
Targets of A: ID_message;ID_toggle;ID_tp

Very useful for grouping multiple actions, reusing blocks and better organizing complex mechanics.

Delay

Delay is the wait time before executing a Circuit. It's measured in ticks and each tick lasts approximately 600 ms.

  • 0 = immediate
  • 1 = ~0.6 seconds
  • 2 = ~1.2 seconds
  • 5 = ~3 seconds
  • 10 = ~6 seconds
Variables in messages

Message and whisper Effects allow the use of dynamic variables.

  • {username} = name of the user who triggered the Circuit
  • {roomname} = current room name
  • {roomusers} = number of users in the room
  • {online} = total number of users online
  • {result} = last die or wheel result
  • {score} = user's accumulated score
  • {points} = points awarded in the last action
Welcome {username}, right now there are {roomusers} people in {roomname}
{username} rolled the die and got: {result} | Total score: {score}
{username} earned {points} points! Accumulated total: {score}
Zones (Areas)

Several Conditions allow defining a rectangular zone on the map. They are configured with 4 coordinates: two opposite corners of the rectangle.

Parameter: X1,Y1,X2,Y2
Example: 5,10,8,15

In the visual editor you can drag to select the zone directly on the map. The selected tiles are shown in green.

The order of the corners doesn't matter. The system automatically normalizes which is the minimum and which is the maximum.

Dice and scoring system

The system allows rolling dice, wheels and other interactive furniture automatically. Each roll generates a result and accumulates points per user.

  • The "Activate furniture" Effect rolls the die automatically.
  • The result is saved in {result} and can be used in messages.
  • The score accumulates in {score} by adding each roll.
  • Reset timer clears all scores and results.

Dice show 1 to 6 visually. The wheel goes from 0 to 36.

Private vs public message

The "Message" Effect has a private mode and a public mode.

  • Bool disabled (default): the message is sent as a whisper only to the user who triggered the Circuit.
  • Bool enabled: the message is sent as a broadcast to the entire room. Everyone sees it.
Broadcast example:
[Circuit] {username} rolled the die and got: {result}
> All users in the room see this message.
AVAILABLE TRIGGERS
1. Step on furniture

Activates when a user steps on a specific furniture item.

Typical uses: portals, traps, checkpoints, puzzle starts.

2. Leave furniture

Activates when the user stops stepping on a furniture item.

Close doors on exit, deactivate zones, reset a mechanic.

3. Click furniture

Activates when the user clicks on a furniture item.

Buttons, levers, switches and manual mechanisms.

4. Enter room

Activates when a user enters the island.

Welcome, access control, quick tutorial and initial ambiance.

5. Say word

Activates when the user says a specific word or phrase.

Secret doors, event commands, riddles and passwords.

6. State change

Activates when a furniture item changes state or animates. Includes dice, wheels and any furniture with toggle.

When a die or wheel activates, this Trigger automatically saves the result and accumulates the user's score.

It's the base for any dice mechanic: the result is saved in {result} and the sum in {score}.

7. Repeater

Activates automatically on a periodic basis.

Moving obstacles, living decoration and automatic events.

8. Long repeater

Same as the repeater, but slower.

Long cycles, ambiance and less aggressive mechanisms.

9. Leave room

Activates when a user leaves the room.

Farewells, state cleanup and exit logic.

10. Object steps on object

Activates when a furniture item moves to the same tile as another target furniture item.

Detect that an object reached where another is. Very useful for push-piece puzzles.

11. Collision between items

Activates when two specific furniture items end up on the same tile. Both must be in the Targets.

Mechanics where two specific objects must meet.

12. Furniture reaches position

Activates when a target furniture item reaches a specific X,Y coordinate.

Parameter: X,Y
Example: 5,3
13. Timer

Visible countdown. Users see a HUD with the remaining seconds. It fires once when it reaches zero.

Delay = duration in ticks
Parameter = HUD label

Perfect for timed rounds, minigames and timed events.

14. User near user

Activates when a user walks to a tile adjacent to another user (8 directions).

Ideal for contact mechanics like hot potato, tag, contagion and proximity.

15. Furniture hits wall

Activates when a moving furniture item hits the edge of the map or a wall.

Useful for detecting when an object reached the limit and needs to bounce, stop or change direction.

NORMAL AND SPECIAL CONDITIONS
1. Furniture with users

Passes if all target furniture items have at least one user on top.

2. Furniture without users

Passes if none of the target furniture items have users on top.

3. Trigger on furniture

Passes if the user who activated the Trigger is on top of one of the target furniture items.

4. Trigger not on furniture

Passes if the user who activated the Trigger is not on top of those furniture items.

5. Users in range

This condition checks the total number of users in the room and verifies if it's within a range.

min,max
1,5
2,2
10,50
6. Users out of range

Does the opposite. Passes when the number of users is below the minimum or above the maximum.

7. Is owner

Passes if whoever activated the Trigger is the island owner.

8. Is not owner

Passes if whoever activated the Trigger is not the owner.

9. On whitelist

Passes if the user is on the island's whitelist.

10. Not on whitelist

Passes if the user is not on the whitelist.

11. Has badge

Passes if the user has a specific badge. You can use the badge's numeric ID or its exact title.

Parameter: 299
or: Summer champion
12. Doesn't have badge

Passes if the user doesn't have that badge. Same format as the previous one.

13. Furniture at position

Passes if all target furniture items are at the indicated X,Y coordinate.

Parameter: X,Y
Example: 5,3
14. Furniture on furniture

Passes if all target furniture items are on the same tile. Needs at least 2 furniture items in Targets.

Useful for verifying that multiple puzzle pieces are together.

15. Has effect

Passes if the user has an active specific visual effect (potion).

Parameter: Potion ID
Example: 5

Key for mechanics like hot potato, where you need to know who has the effect.

16. Step counter

Counts how many different users have stepped on the furniture. Only passes when the indicated number is reached.

Parameter: required amount
Example: 3

When the number is reached, the counter resets. If you don't set a parameter, it defaults to needing 2 users.

17. User in zone

Passes if the user is inside a rectangular zone defined by two corners.

Parameter: X1,Y1,X2,Y2
Example: 5,10,8,15

In the editor you can drag directly on the map to select the zone.

Bool disabled = active user only
Bool enabled = any user
18. User not in zone

Passes if the user is outside the defined zone. It's the inverse of "User in zone".

Parameter: X1,Y1,X2,Y2
Bool disabled = active user only
Bool enabled = any user
19. Furniture in zone

Passes if the target furniture items are inside the rectangular zone.

Parameter: X1,Y1,X2,Y2
Bool disabled = all must be inside
Bool enabled = at least one
20. Furniture not in zone

Passes if the target furniture items are outside the zone. Inverse of "Furniture in zone".

Parameter: X1,Y1,X2,Y2
Bool disabled = all outside
Bool enabled = at least one outside
21. Die result

Passes if the last die or wheel result matches any of the indicated values.

Parameter: comma-separated values
Example: 3,5,6

Bool enabled = invert (passes if it's NOT any of those values). Very useful for filtering lucky numbers or penalizing certain results.

22. Score in range

Passes if the user's accumulated score is within the specified range.

Parameter: min,max
Example: 10,50
Min only: 10 (no upper limit)

Bool enabled = invert (passes if OUTSIDE the range). Ideal for rewarding when reaching X points or blocking actions until enough are earned.

Random and Unseen

Random picks an Effect at random and can repeat the same one several times in a row.

Unseen picks one that hasn't come up in the current round and resets when all have been shown.

Unseen stores that information in the room's temporary memory, not in the database.

AVAILABLE EFFECTS
1. Message

Sends a message to the user with [Circuit] prefix.

Bool disabled = private whisper
Bool enabled = broadcast to entire room

Supports variables: {username}, {roomname}, {roomusers}, {online}, {result}, {score}.

2. TP to furniture

Teleports the user to one of the target furniture items.

On arrival it can trigger other step-on-furniture Triggers.

3. Change state

Toggles the state of the target furniture items.

4. Move or rotate

Moves and/or rotates target furniture items. Configurable with direction and rotation type.

Directions: Random, Left-Right, Up-Down,
Up, Right, Down, Left,
TP Random, diagonals...
Rotation: Clockwise, Counter-Clockwise, Random
5. Kick user

Expels the user from the room.

CEOs and the island owner cannot be kicked by this effect.

6. TP to room

Teleports the user to another room.

For normal users, validation depends on permissions and whitelist.

7. Reset timer

Resets all repeaters and timers in the room. Also clears {result} and {score} for all users.

Includes Repeater, Long repeater, Timer, scores and die results.

8. Execute stacks

Executes other Effects or Triggers you put in its Targets.

If the target is a Trigger, it executes its full stack with conditions. If it's an Effect, it executes it directly.

9. Give item

Delivers an item from the catalog to the user.

Reserved for staff.

10. Change direction

Changes the rotation of target furniture items. Can set an exact rotation or toggle between two values.

11. Chase

Makes a furniture item follow the nearest user continuously.

Ideal for enemies, smart obstacles and escape mechanics.

12. Flee

Makes a furniture item flee from the nearest user continuously.

Opposite of Chase. Useful for scared pets or hunting puzzles.

13. Whisper

Sends a message to the user without the [Circuit] prefix.

More immersive for ambiance and narrative. Supports: {username}, {roomname}, {roomusers}, {result}, {score}.

14. Visual effect

Applies or removes a visual effect (potion) on the user. The entire room sees it.

Parameter: Potion ID
Bool: enabled = remove effect

Some effects are banned for security reasons (IDs 11 and 12).

15. Block walking

Prevents the user from walking for a period of time.

Duration is measured in ticks (~0.6s per tick). Perfect for traps.

16. Change Keko

Changes the user's Keko appearance inside the room. It's only visual, it's not saved to the account.

Parameter: Figure ID (1-11)
Bool: enabled = restore original

Perfect for event costumes, themed zones and temporary transformations.

17. Position furniture

Moves the target furniture items to an exact X,Y coordinate.

Parameter: X,Y
Example: 5,10

Unlike Move/rotate, here you specify the exact destination position.

18. Hide/Show furniture

Makes target furniture items disappear or reappear visually.

Bool disabled = hide
Bool enabled = show

It's only visual. The furniture items are not deleted from the database. They reappear when the room reloads.

19. TP to position

Teleports the user to a specific X,Y coordinate.

Parameter: X,Y
Example: 5,3

Doesn't allow TP to blocked tiles or outside the map. On arrival it can trigger step-on-furniture Triggers.

20. Transfer effect

Removes a visual effect from the current user and passes it to the nearest adjacent user.

Parameter: Potion ID
Example: 5

Only works if the user has the effect and someone is next to them. Key for hot potato.

21. Change furniture color

Changes the colors of the target furniture items.

Parameter: Color1|Color2
Example: 259D1DE42A3C|45,18,62

Bool enabled = save to DB
Bool disabled = visual only

The separator is | because Color2 uses commas internally. Visual mode resets when the room reloads.

22. Activate furniture

Activates an interactive furniture item automatically. If the furniture is a die, it rolls it. If it's a wheel, it spins it.

Dice (1-6) | Wheel (0-36)
Parameter: cooldown in seconds
Example: 3 (wait 3s between uses)

When activated, the result is saved in {result} and added to the user's {score}. This allows creating board games, scoring competitions and chance mechanics.

If you don't set a cooldown or set it to 0, it can be activated without limit.

23. Show ranking

Displays a floating ranking board over a furniture item with current scores. The top 3 are highlighted in gold, silver and bronze.

Parameter: title|period|max
Example: Ranking|session|10

Periods:
  session = this game only
  weekly  = weekly (DB)
  monthly = monthly (DB)
  global  = all-time (DB)

Bool enabled = persist to DB

Shows up to 50 entries with scroll. Can be dragged and minimized.

Session data is cleared with Reset timer. Weekly, monthly and global are saved to the database.

24. Give points

Adds (or subtracts) a fixed amount of points to the user who activated the circuit.

Parameter: points to give
Simple example: 5
Example with message: 5|+{points} pts!
Variables: {username} {score} {points}
Bool = notify the user

Works with any trigger: step on furniture, say word, click, enter room, etc. Points accumulate in {score} and are displayed with Ranking (23).

Use negative values to subtract points (e.g.: -3). Resets with "Reset timer" (effect 7).

25. Drop rain

Makes collectible drops appear on the floor. Users pick them up by walking over them and earn points automatically.

Parameter:
  visual|points|mode|interval|max|msg
Example: 1|5|walk|5|3|+{points}!

visual = drop appearance
points = points per drop
interval = seconds between spawns
max = simultaneous drops
msg = message on pickup

ExtraString1 = spawn zone (X1,Y1,X2,Y2). If not defined, they fall on any walkable tile. Supports {username}, {score}, {points}.

26. Action by score

Executes an action on the player with the highest score, lowest score or all who have points.

Parameter: who|action|value

Who: top / bottom / all
Action: tp / kick / msg

Examples:
  top|tp|10,5  (TP the best)
  bottom|kick|Eliminated!
  all|msg|Round over!

Perfect for rewarding winners at the end of a round or eliminating the worst. Kick protects CEOs and island owners.

Important things about repeaters

There are Effects that are blocked when they come from a Repeater to prevent spam or abuse. This especially affects message, teleport, kick, give item, visual effect and add points.

The Timer doesn't have this restriction because it only fires once. Drop rain isn't blocked either (it needs continuous spawns).

DICE AND SCORING SYSTEM

The dice system allows creating games of chance, scoring competitions and mechanics based on random results. It works with three key pieces:

1. Activate furniture (Effect 22)

Rolls the die (or spins the wheel) automatically. Generates a random number and saves it.

2. State change (Trigger 6)

Fires when the die changes. Saves the result in {result} and adds it to {score}.

3. Die result (Condition 21)

Filters by specific values. Only lets through if a specific number came up.

{result} — Last result

Every time a die is rolled or a wheel is activated, the result is saved in {result}. It only stores the last value.

Die: 1, 2, 3, 4, 5 or 6
Wheel: 0 to 36

{result} is cleared with Reset timer. If nobody has rolled, it appears empty.

{score} — Accumulated score

Each roll adds its result to the user's {score}. It's individual: each player has their own {score}.

Roll 1: result 3 → score = 3
Roll 2: result 5 → score = 8
Roll 3: result 2 → score = 10

{score} is cleared with Reset timer for all users.

Complete flow of a dice game
  1. The owner clicks the start button → Reset timer clears scores and results.
  2. A player says "roll" → Activate furniture rolls the die automatically.
  3. The die changes state → State change fires, {result} is saved and added to {score}.
  4. A broadcast Message announces: "{username} got {result} | Total: {score}".
  5. If you want to reward a specific number, Die result filters (e.g.: only 6).
  6. When the Timer ends, the end of the round is announced.
SCOREBOARD SYSTEM

The scoreboard system allows creating real-time rankings. Players see a floating table with names, scores and positions. It works with four main pieces:

1. Add points (Effect 24)

Awards points to the user. They can be given for stepping on furniture, saying words, collecting drops or any other Trigger.

2. Drop rain (Effect 25)

Makes collectible objects appear. Picking them up by walking over them earns the user points automatically.

3. Show scoreboard (Effect 23)

Shows the floating ranking table. Can be updated in real time every time someone scores.

4. Action by score (Effect 26)

Executes actions on the best, worst or all players based on their ranking position.

Scoreboard periods
  • session — This game only. Lives in memory and is cleared with Reset timer.
  • weekly — Weekly ranking. Saved to the database.
  • monthly — Monthly ranking. Saved to the database.
  • global — All-time ranking. Saved to the database.

For weekly/monthly/global you need to enable the scoreboard's Bool to persist scores.

How the scoreboard looks
  • Appears as a floating panel above the furniture item.
  • Shows up to 50 entries with scroll if there are more than 10.
  • 1st place: gold background.
  • 2nd place: silver background.
  • 3rd place: bronze background.
  • Can be dragged and minimized.

The title and maximum number of entries are configured in the Effect's parameter.

Ways to give points

Automatic with dice: Every time a die or wheel is rolled with Activate furniture, the result is automatically added to {score}.

Manual with Add points: Effect 24 allows giving a fixed amount of points for any action (step, click, say word...).

Collecting drops: Effect 25 (Drop rain) gives points every time a user picks up a drop by walking over it.

ZONE SYSTEM

Zones allow defining rectangular areas on the map for use in Conditions. You can check if a user or furniture item is inside or outside a zone.

Parameter format
X1,Y1,X2,Y2
Top-left corner and
bottom-right corner.

Example: 3,3,12,12
(10x10 tile zone)
Visual selection

In the editor, when configuring a zone Condition a button appears to select. When pressed, you can drag directly on the map.

Tiles are painted green while you drag. When released, the coordinates are saved.

Available zone Conditions
  • 17. User in zone — is the user inside the area?
  • 18. User not in zone — is the user outside the area?
  • 19. Furniture in zone — is the furniture inside the area?
  • 20. Furniture not in zone — is the furniture outside the area?

User conditions have a Bool to choose between checking only the one who activated the Trigger or anyone in the room.

What zones are for
Combat arenas VIP zones Game borders Stage areas Position checking Movement limiting Safe zones Capacity control
EASY-TO-UNDERSTAND EXAMPLES
Simple welcome
Trigger: Enter room
Effect: Message
Text: Welcome {username}
VIP door
Trigger: Step on furniture
Condition: On whitelist
Effect: TP to furniture
Trap
Trigger: Step on tile
Effect 1: Message
Effect 2: Block walking
Effect 3: TP with delay
Random wheel
Trigger: Click button
Special condition: Random
Effect 1: Message small prize
Effect 2: Message medium prize
Effect 3: Message large prize
Non-repeating sequence
Trigger: Click button
Special condition: Unseen
Effect 1: TP destination A
Effect 2: TP destination B
Effect 3: TP destination C
Group of actions
Trigger: Click lever
Effect: Execute stacks
Targets: message, toggle, teleport
Position puzzle
Trigger: Furniture reaches position
Parameter: 5,3
Condition: Furniture at position (5,3)
Effect: Message "Correct piece!"
Effect: Change state (open door)
Costume zone
Trigger: Step on furniture (zone entrance)
Effect: Change Keko (figure 3)

Trigger: Leave furniture (zone exit)
Effect: Change Keko (restore)
Badge door
Trigger: Step on furniture
Condition: Has badge (299)
Effect: TP to furniture (secret zone)

If they don't have the badge:
Effect: Message "You need the badge"
Quick die
Trigger: Click furniture (die)
Effect: Activate furniture (die)
Effect: Message
  "{username} got {result}"
Verify zone
Trigger: Step on furniture
Condition: User in zone (3,3,10,10)
Effect: Message "You are inside
  the game zone"
Dice game
Trigger: Say word "roll"
Effect 1: Activate furniture (die)
Effect 2: Message (broadcast)
  Text: {username} got {result}
  Has: {score} points
Lucky die
Stack A:
Trigger: Say word "luck"
Effect: Activate furniture (die)

Stack B:
Trigger: State change (die)
Condition: Die result (6)
Effect: Message "PRIZE! You got 6!"
Effect: Give item (prize)
Restricted zone
Trigger: Step on furniture (entrance)
Condition: User in zone (5,10,8,15)
Condition: On whitelist
Effect: TP to furniture (VIP zone)

If not met:
Effect: Message "No access"
Bouncing obstacle
Trigger: Repeater
Effect: Move or rotate (Right)

Trigger: Furniture hits wall
Effect: Move or rotate (Left)
> The obstacle goes back and forth between walls
Collaborative door
Trigger: Step on furniture (platform)
Condition: Step counter (3)
Effect: Change state (open door)
Effect: Message "3 people
  stepped, door opened!"
Dice competition
Stack A: Start round
Trigger: Click furniture (button)
Effect: Reset timer
Effect: Message "New round!"

Stack B: Each player rolls
Trigger: Say word "roll"
Effect: Activate furniture (die)
Effect: Message (broadcast)
  "{username}: {result} | Total: {score}"
Quick scoreboard
Trigger: Click furniture (board)
Effect: Show scoreboard
  Parameter: Ranking|session|10
> Displays a floating ranking
> with game scores
Points for stepping
Trigger: Step on furniture (star)
Effect: Add points
  Parameter: 10|+{points} points!
> The user earns 10 points
> and sees a confirmation message
Basic drops
Trigger: Click furniture (button)
Effect: Drop rain
  visual: 1 | points: 5
  interval: 4 | max: 3
> Drops appear every 4 seconds
> Pick them up by walking over them
Reward the winner
Trigger: Click furniture (end button)
Condition: Is owner
Effect: Action by score
  Parameter: top|msg|You're the champion!
Effect: Action by score
  Parameter: top|tp|15,3
Score door
Trigger: Step on furniture (door)
Condition: Score in range (50,999)
Effect: TP to furniture (VIP zone)
Effect: Message "Access by score!"

If they don't reach 50:
Effect: Message "You need 50 pts"
Monthly ranking
Trigger: Enter room
Effect: Show scoreboard
  Parameter: Tournament|monthly|20
  Bool: enabled (save to DB)
> The ranking persists between sessions
> Resets automatically each month
ADVANCED EXAMPLE: HOT POTATO
Hot Potato

A classic minigame where a visual effect passes from player to player when they get close. When time runs out, whoever has the effect is eliminated.

Piece 1: Start the round
Trigger: Click furniture (start button)
Effect 1: Visual effect (potion 5)
  > Gives the effect to whoever clicks
Effect 2: Reset timer
  > Resets the timer
Piece 2: Pass the potato
Trigger: User near user
Condition: Has effect (5)
Effect: Transfer effect (5)
  > Removes the effect and gives it
  > to the adjacent user
Piece 3: Time's up
Trigger: Timer (30 ticks)
  > Visible countdown
  > Fires when it reaches zero
Effect: Execute stacks
  > Targets: ID of the call stacks
  > that has the kick logic
Piece 4: Eliminate the loser
Effect: Execute stacks
  > Runs for each user
Condition: Has effect (5)
  > Only passes if they have the potato
Effect: Kick user
  > Eliminates whoever has the effect
Effect: Message
  > "{username} had the potato!"

The key is that Execute stacks checks each user in the room individually. This way the "Has effect" Condition finds exactly who has the potato and only that person gets kicked.

ADVANCED EXAMPLE: DICE GAME WITH SCORING
Dice game with accumulated scoring

A minigame where players roll dice by turns. Each roll adds points and at the end of the round you see who has the most. Uses {result} for the last roll and {score} for the accumulated total.

Stack A: Start new round
Trigger: Click furniture (start button)
Effect 1: Reset timer
  > Clears previous scores
  > and resets the timer
Effect 2: Message (broadcast)
  > "New dice round!
  >  Say 'roll' to play"
Stack B: Roll the die
Trigger: Say word "roll"
Effect 1: Activate furniture
  > Targets: die ID
  > The die animates and generates result
Effect 2: Message (broadcast, Bool ON)
  > "{username} got {result}
  >  Has {score} points"
Stack C: Filter special numbers
Trigger: State change (die)
Condition: Die result (6)
  > Only if a 6 came up
Effect: Message (broadcast)
  > "{username} got 6! BONUS!"
Effect: Visual effect (potion 5)
  > Gives them a celebration effect
Stack D: Time's up
Trigger: Timer (50 ticks)
  > ~30 seconds of play
Effect: Message (broadcast)
  > "Time! Whoever has the most
  >  points in {score} wins!"

Optional: use result Condition
to reward the best

The key is that Reset timer clears {score} and {result} for everyone. Each "Activate furniture" generates a new {result} and adds it to the {score} of the user who activated it. {score} keeps accumulating roll after roll until the next Reset.

ADVANCED EXAMPLE: THE FLOOR IS LAVA
The Floor is Lava

A survival minigame where safe platforms keep disappearing. Players must jump between them to avoid falling into the "lava". If they step off the platforms or stay on one that disappears, they're eliminated.

Piece 1: Start the round
Trigger: Click furniture (start button)
Condition: Is owner
Effect 1: Reset timer
  > Clears everything for new round
Effect 2: Message (broadcast)
  > "The Floor is Lava!
  >  Stay on the platforms!"
Effect 3: Execute stacks
  > Targets: show all platforms
  > (restore map)
Piece 2: Platforms disappear
Trigger: Repeater (every 5 ticks)
Special condition: Random
Effect 1: Hide furniture (platform A)
Effect 2: Hide furniture (platform B)
Effect 3: Hide furniture (platform C)
  > Each cycle a random platform
  > disappears
Piece 3: Detect fall
Trigger: Repeater
Condition: User not in zone
  Parameter: 3,3,15,15
  > Zone where the platforms are
Effect: Kick user
Effect: Message (broadcast)
  > "{username} fell into the lava!"
Piece 4: End of game
Trigger: Timer (60 ticks)
  > ~36 seconds of play
Effect: Message (broadcast)
  > "Time! The survivors win!"
Effect: Execute stacks
  > Restores all platforms
  > (Hide/Show with Bool ON)

The key is using Hide/Show furniture with Random so platforms disappear unpredictably. Use multiple zones if the platforms don't form a perfect rectangle.

ADVANCED EXAMPLE: CHEST GAME
Chest Game (Treasure Hunt)

Several chests scattered around the room. Clicking one opens it and it may contain a prize, a trap or be empty. Only one has the real treasure. Each round the chests are shuffled.

Piece 1: Open a chest
Trigger: Click furniture (chest 1)
Effect: Change state (open chest)
Effect: Execute stacks
  > Targets: prize logic

(Repeat for each chest)
Piece 2: Random prize
Special condition: Random
Effect 1: Message "+50 points!"
  + Add points (50)
Effect 2: Message "Trap!"
  + Block walking (5 ticks)
Effect 3: Message "Empty..."
Effect 4: Message "TREASURE!"
  + Add points (200)
  + Visual effect (celebration)
Piece 3: Live scoreboard
Trigger: Click furniture (any chest)
Effect: Show scoreboard
  Parameter: Treasures|session|10
  > Updates every time
  > someone opens a chest
  > Shows live ranking
Piece 4: Reset round
Trigger: Click furniture (reset button)
Condition: Is owner
Effect: Reset timer
  > Clears scores
Effect: Execute stacks
  > Closes all chests
  > (Change state to closed)
Effect: Message (broadcast)
  > "Chests reset!"

Use Random so each chest is unpredictable. The scoreboard shows in real time who is winning. You can use Unseen instead of Random so the same prize doesn't repeat.

ADVANCED EXAMPLE: DROP RAIN
Drop Rain (Competitive Collection)

Collectible drops appear on the floor automatically. Players compete to collect the most by walking over them. The scoreboard shows who is winning in real time.

Piece 1: Activate the rain
Trigger: Click furniture (start button)
Condition: Is owner
Effect 1: Reset timer
Effect 2: Drop rain
  visual: 1 (chest)
  points: 5 per drop
  interval: 3 seconds
  max: 5 drops at once
  zone: 3,3,15,15
  msg: +{points} points!
Effect 3: Message (broadcast)
  > "Collect the drops!"
Piece 2: Ranking and finish
Trigger: Long repeater
Effect: Show scoreboard
  Parameter: Collection|session|10
  > Updates periodically

Trigger: Timer (50 ticks)
Effect: Message (broadcast)
  > "Time! Let's see who won"
Effect: Action by score
  Parameter: top|msg|Winner!
Effect: Show scoreboard
  Parameter: Final|session|10

Drops appear on their own on walkable tiles within the defined zone. They're collected automatically when stepped on. Each drop adds points to the user's {score}.

ADVANCED EXAMPLE: TOURNAMENT WITH SCOREBOARD
Tournament with persistent ranking

A tournament system where scores are saved between sessions. The weekly or monthly ranking persists in the database, so players can return and keep accumulating points.

Piece 1: Give points for activity
Trigger: Step on furniture (checkpoint)
Effect: Add points
  Parameter: 10|+{points} pts!

Trigger: Say word "completed"
Condition: User in zone (5,5,10,10)
Effect: Add points
  Parameter: 50|Challenge completed!
  +{points} points!
Piece 2: Monthly scoreboard
Trigger: Click furniture (ranking board)
Effect: Show scoreboard
  Parameter: March Tournament|monthly|20
  Bool: enabled (save to DB)
  > Persists between sessions
  > Resets each month

Trigger: Enter room
Effect: Show scoreboard
  Parameter: March Tournament|monthly|10
  > Shows on entry
Piece 3: Reward the best
Trigger: Click furniture (reward button)
Condition: Is owner
Effect: Action by score
  Parameter: top|msg|You're the champion!
Effect: Action by score
  Parameter: top|tp|15,3
  > TP to winner's podium
Piece 4: Penalize the worst
Trigger: Click furniture (eliminate button)
Condition: Is owner
Effect: Action by score
  Parameter: bottom|kick|Eliminated!
  > Kicks the one with lowest score
Effect: Message (broadcast)
  > "The last one has been eliminated!"

Use monthly or weekly for recurring tournaments. The ranking resets automatically with each new period. Use global for a permanent ranking that never resets.

ADVANCED EXAMPLE: OBSTACLE COURSE WITH SCORING
Obstacle course with scoreboard

A race with checkpoints that give points, traps that take them away and a scoreboard showing who's in the lead. Combines movement, zones and scoring.

Checkpoints give points
Trigger: Step on furniture (checkpoint 1)
Effect: Add points
  Parameter: 10|Checkpoint! +{points}
Effect: TP to furniture (next zone)

Trigger: Step on furniture (checkpoint 2)
Effect: Add points
  Parameter: 20|Checkpoint! +{points}

Trigger: Step on furniture (finish)
Effect: Add points
  Parameter: 100|FINISH! +{points}!
Effect: Message (broadcast)
  > "{username} reached the finish
  > with {score} points!"
Traps and ranking
Trigger: Step on furniture (trap)
Effect: Add points
  Parameter: -5|Trap! -{points} pts
Effect: Block walking (3 ticks)
Effect: TP to position (start)

Trigger: Long repeater
Effect: Show scoreboard
  Parameter: Race|session|10

Trigger: Timer (100 ticks)
Effect: Action by score
  Parameter: top|msg|WINNER!
Effect: Message (broadcast)
  > "Race finished!"

Each checkpoint gives more points than the previous one to reward progress. Traps subtract points and send back to the start. The scoreboard updates automatically.

ADVANCED EXAMPLE: COMBAT ZONE
Combat zone with obstacles

A minigame where players must dodge obstacles inside a zone. If an obstacle touches them or they leave the zone, they're eliminated.

Piece 1: Limit zone
Trigger: Repeater
Condition: User not in zone
  Parameter: 3,3,12,12
  > Defines the play area
Effect: Kick user
  > If someone leaves, eliminated
Effect: Message
  > "You left the zone!"
Piece 2: Moving obstacles
Trigger: Repeater
Effect: Move or rotate (Random)
  > Targets: the obstacle furniture

Trigger: Furniture hits wall
Effect: Move or rotate (opposite dir.)
  > The obstacle bounces

Combine zones with moving obstacles to create survival arenas. Use "Furniture in zone" to verify that obstacles don't leave the play area.

ADVANCED EXAMPLE: RANKING WITH DICE
Dice game with live ranking

Each player says "roll" to throw a die. The ranking updates automatically every 5 seconds showing who is winning.

Piece 1: Roll die
Trigger: Say word "roll"
Effect: Activate furniture
  Targets: the die
  > Rolls and adds to {score}
Piece 2: Live ranking
Trigger: Repeater (5 ticks)
Effect: Show ranking
  Parameter: Dice|session|10
  > Updates each cycle
  > showing who is winning
Piece 3: Reset and persist
Trigger: Timer (300s)
Effect 1: Show ranking
  Parameter: Winners|monthly|10
  Bool: enabled (save to DB)
Effect 2: Reset timer
  > Clears session scores
Effect 3: Broadcast message
  > "New round!"

Session ranking is cleared with Reset timer. For permanent competitions use "monthly" or "global" with Bool enabled to save to the database. Global results accumulate points forever.

HOW TO TEST IF SOMETHING WORKS
Recommended method
  1. First test a Trigger with a single simple Effect.
  2. Then add a Condition if needed.
  3. Then add delays or chains.
  4. Finally test Random, Unseen or Execute stacks.
Quick test for Execute stacks
Trigger: Click furniture
Effect A: Execute stacks
Targets of A: ID_message;ID_toggle;ID_tp
Effect B: Message
Effect C: Change state
Effect D: TP to furniture
Quick test for Unseen

Set up 3 different messages with Unseen. If you activate the Trigger 3 times, all 3 should appear without repeating. On the fourth, the round can start over.

COMMON MISTAKES AND BEST PRACTICES
Nothing happens
  • Check that the correct Trigger is configured.
  • Check that Targets point to the right things.
  • Check that the room is an island.
  • Check that the Condition isn't blocking.
Effect doesn't act on expected furniture

Check the Targets of the Effect itself.

Random or Unseen seem off

If there's only one possible Effect, you won't notice any difference.

Unseen seems to forget

The room, server or that specific Circuit may have been reset.

Repeater doesn't launch certain Effect

It may be blocked by the system's anti-spam protection.

Transfer effect doesn't work
  • The user must actually have the active effect.
  • There must be another user on an adjacent tile.
  • The potion ID must not be 11 or 12.
Hidden furniture reappears on reload

Hide/Show is only visual. When the room reloads, everything is restored.

Color change doesn't save

If Bool is disabled, the change is visual and is lost on reload. Enable it to save to the database.

Best practices for publishing an island with Circuits
  • Give the user feedback with messages or visual changes.
  • Don't fill the entire island with repeaters.
  • Use small delays to create rhythm.
  • Reserve kicks for very clear cases.
  • Test in parts before connecting everything.
  • Use Random for surprise and Unseen for variety without repetition.
  • Use Execute stacks to better organize complex mechanics.
  • For timed minigames, test the Timer alone first before linking it with everything else.
QUICK FAQ
Is the visual effect seen only by the user or the whole room

The entire room sees it.

Users in range counts only in one zone

No. It counts users in the entire room.

Random remembers previous results

No. It can repeat.

Unseen remembers previous results

Yes, but in the room's temporary memory, not in the database.

Execute stacks also launches triggers

It can launch both direct Effects and full Triggers (with their Conditions).

Kick can remove anyone

No. There are protections for certain ranks and for the island owner.

TP to furniture can trigger another Trigger on arrival

Yes. This allows very powerful chains.

Does the scoreboard save between sessions

Depends on the period. Session only lives in memory. Weekly, monthly and global are saved to the database if you enable the Bool.

Can you subtract points

Yes. Use Add points with a negative value. Example: -5 subtracts 5 points from the user's {score}.

Drops fall anywhere

By default yes, on any walkable tile. You can limit the spawn zone with ExtraString1 (X1,Y1,X2,Y2).

Action by score only affects one person

Depends. With "top" only the best, with "bottom" only the worst, with "all" everyone who has points. You can combine several to reward and punish in the same round.

Score in range Condition

Condition 22 allows checking if the user's {score} is between two values. Ideal for unlocking zones or rewarding when reaching a certain goal.

What is {points}

{points} shows the points awarded in the last action (Add points or collect drop). It's different from {score}, which shows the accumulated total.

Does the Timer repeat on its own

No. It fires only once when it reaches zero. To restart it use Reset timer.

Does Change Keko change the user's account

No. It's only visual inside the room. On exit they recover their real appearance.

Does hiding furniture delete it from the island

No. It only hides it visually. It still exists and reappears when reloading.

Does Transfer effect work at any distance

No. It only works with adjacent users (1 tile distance, 8 directions).

How many players does hot potato need

Minimum 2. Works better with 3 or more so the potato can move between several players.

Difference between Move/rotate and Position furniture

Move/rotate moves in a direction (up, down, random...). Position furniture sends directly to an exact X,Y coordinate.

How dice scoring works

{score} accumulates by adding each die result. If a user rolls 3, then 5, then 2, their {score} will be 10. Reset timer sets everything to zero.

{result} only shows the last result, not the sum.

How to select a zone

When configuring a zone Condition, the editor shows a button to select an area. When pressed, you can drag on the map to mark the tiles.

Selected tiles are shown in green. When released, the coordinates are saved automatically.

Activate furniture does nothing

Check that the Effect's Targets point to the correct die or furniture. If it has a cooldown, wait for the time to pass. The user must be in the room.

{result} appears empty

If nobody has rolled a die yet, {result} is empty and {score} is 0. Make sure the "Activate furniture" Effect runs before the message that uses those variables.

Reset timer clears scores

Yes. Reset timer clears {result}, {score} for all users, and also resets repeaters and timers. Use it to start clean rounds.

User in zone only checks the activator

By default yes. If you enable the Bool, it checks if any user in the room is in the zone, not just the one who triggered it.

Difference between Activate furniture and State change

"Activate furniture" is an Effect that GENERATES the action (rolls the die). "State change" is a Trigger that REACTS when a furniture changes (when the die has been rolled). They complement each other.

How to make a message visible to the whole room

In the "Message" Effect, enable the Bool. With Bool enabled, the message is sent to all users in the room as a broadcast, not just to whoever activated the Circuit.

The ranking doesn't appear

Check that the Target points to a visible furniture item in the room. The ranking is positioned above the target furniture. If there's no score data, it shows "No scores".

Difference between session, monthly and global

Session: memory only, cleared with Reset timer. Monthly: saved to DB per month, accumulates only within the current month. Global: saved to DB forever, accumulates points indefinitely.

The step counter resets

Yes, when the required number is reached it resets automatically. If you set 3, it needs 3 different users. When all 3 arrive, it activates and counts from 0 again.

What happens when furniture hits a wall

The "Furniture hits wall" Trigger fires. You can use that to change the furniture's direction and create a bounce effect.

CLOSING

Circuits are not just a technical system. Used well, they turn a normal island into an interactive experience.

The best way to build something great is to first think about what you want to happen and then translate it into Triggers, Conditions and Effects.

If you design with clarity, rhythm and good connections, users won't see just automations: they'll see a living room.