Logic: Difference between revisions

From Wubbypedia
Content added Content deleted
(Added Logic Category.)
m (Made blue colour more suitable for dark mode.)
Line 16: Line 16:
<tab name="Block Touch Detector">[[File:Block_touch_detectorpreview.png|300px]]<br>
<tab name="Block Touch Detector">[[File:Block_touch_detectorpreview.png|300px]]<br>
Emits a signal when touched by an unanchored block or gear debris.<br>
Emits a signal when touched by an unanchored block or gear debris.<br>
<span style="color:teal;">Output: The part that touched it.</span><br>
<span style="color:#72aacc;">Output: The part that touched it.</span><br>
Configurations:<br>
Configurations:<br>
* Activation Time: How long it activates for. Default is 1<br>
* Activation Time: How long it activates for. Default is 1<br>
Line 25: Line 25:
<tab name="Click Block">[[File:Click_blockpreview.png|300px]]
<tab name="Click Block">[[File:Click_blockpreview.png|300px]]
Emits a signal when clicked on.<br>
Emits a signal when clicked on.<br>
<span style="color:teal;">Output: The player that clicked it.</span><br>
<span style="color:#72aacc;">Output: The player that clicked it.</span><br>
Configurations:<br>
Configurations:<br>
* Activation Time: How long it activates for. Default is 1.<br>
* Activation Time: How long it activates for. Default is 1.<br>
Line 32: Line 32:
<tab name="Frame Loop Block">{{Notice|This block is Admin+.}}[[File:Frame_loop_blockpreview.png|300px]]<br>
<tab name="Frame Loop Block">{{Notice|This block is Admin+.}}[[File:Frame_loop_blockpreview.png|300px]]<br>
Emits a signal everytime the server calculates a physics frame.<br>
Emits a signal everytime the server calculates a physics frame.<br>
<span style="color:teal;">Output: the deltaTime between the frames.</span><br>
<span style="color:#72aacc;">Output: the deltaTime between the frames.</span><br>
{{Notice|deltaTime is the time (in milliseconds) the server took calculating a physics frame.}}</tab>
{{Notice|deltaTime is the time (in milliseconds) the server took calculating a physics frame.}}</tab>
<tab name="Humanoid State Block">[[File:Humanoid_state_blockpreview.png|300px]]<br>
<tab name="Humanoid State Block">[[File:Humanoid_state_blockpreview.png|300px]]<br>
Emits a signal when a humanoid changes to the specified state.<br>
Emits a signal when a humanoid changes to the specified state.<br>
<span style="color:teal;">Output: The player's username.</span><br>
<span style="color:#72aacc;">Output: The player's username.</span><br>
Configurations:<br>
Configurations:<br>
* Activation Time: How long it activates for. Default is 1.<br>
* Activation Time: How long it activates for. Default is 1.<br>
Line 43: Line 43:
<tab name="Key Input Block">[[File:Key_input_blockpreview.png|300px]]<br>
<tab name="Key Input Block">[[File:Key_input_blockpreview.png|300px]]<br>
Emits a signal when a player presses the selected key or mobile button.<br>
Emits a signal when a player presses the selected key or mobile button.<br>
<span style="color:teal;">Output: The player's username.</span><br>
<span style="color:#72aacc;">Output: The player's username.</span><br>
Configurations:<br>
Configurations:<br>
* Activation Time: How long it activates for. Default is 1.<br>
* Activation Time: How long it activates for. Default is 1.<br>
Line 54: Line 54:
<tab name="NPC Event Block">[[File:Npc_event_blockpreview.png|300px]]<br>
<tab name="NPC Event Block">[[File:Npc_event_blockpreview.png|300px]]<br>
Emits a signal once an NPC does the selected NPC event.<br>
Emits a signal once an NPC does the selected NPC event.<br>
<span style="color:teal;">Output: The NPC's NPC Block.</span><br>
<span style="color:#72aacc;">Output: The NPC's NPC Block.</span><br>
Configurations:<br>
Configurations:<br>
* Activation Time: How long it activates for. Default is 1.<br>
* Activation Time: How long it activates for. Default is 1.<br>
Line 60: Line 60:
<tab name="Player Chatted Block">[[File:Player_chatted_blockpreview.png|300px]]<br>
<tab name="Player Chatted Block">[[File:Player_chatted_blockpreview.png|300px]]<br>
Emits a signal every time a player chats.<br>
Emits a signal every time a player chats.<br>
<span style="color:teal;">Output: Either the player's username or what they said depending on the "Output Type" setting.</span><br>
<span style="color:#72aacc;">Output: Either the player's username or what they said depending on the "Output Type" setting.</span><br>
Configurations:<br>
Configurations:<br>
* Activation Time: How long it activates for. Default is 1.<br>
* Activation Time: How long it activates for. Default is 1.<br>
Line 66: Line 66:
<tab name="Player Event Block">[[File:Player_event_blockpreview.png|300px]]<br>
<tab name="Player Event Block">[[File:Player_event_blockpreview.png|300px]]<br>
Emits a signal when the selected player event is triggered.<br>
Emits a signal when the selected player event is triggered.<br>
<span style="color:teal;">Output: The player's username.</span><br>
<span style="color:#72aacc;">Output: The player's username.</span><br>
Configurations:<br>
Configurations:<br>
* Activation Time: How long it activates for. Default is 1.<br>
* Activation Time: How long it activates for. Default is 1.<br>
Line 77: Line 77:
<tab name="Player Touch Detector">[[File:Player_touch_detectorpreview.png|300px]]<br>
<tab name="Player Touch Detector">[[File:Player_touch_detectorpreview.png|300px]]<br>
Emits a signal when a Player/NPC touches this block.<br>
Emits a signal when a Player/NPC touches this block.<br>
<span style="color:teal;">Output: The player's username. (If Detect is set to "NPC" it always outputs the NPC Block)</span><br>
<span style="color:#72aacc;">Output: The player's username. (If Detect is set to "NPC" it always outputs the NPC Block)</span><br>
Configurations:<br>
Configurations:<br>
* Activation Time: How long it activates for. Default is 1.<br>
* Activation Time: How long it activates for. Default is 1.<br>
Line 84: Line 84:
<tab name="Prompt Block">[[File:Prompt_blockpreview.png|300px]]<br>
<tab name="Prompt Block">[[File:Prompt_blockpreview.png|300px]]<br>
Emits a signal when it's Proximity Prompt has been triggered.<br>
Emits a signal when it's Proximity Prompt has been triggered.<br>
<span style="color:teal;">Output: The player's username.</span><br>
<span style="color:#72aacc;">Output: The player's username.</span><br>
Configurations:
Configurations:
* Activation Time: How long it activates for. Default is 1.
* Activation Time: How long it activates for. Default is 1.
Line 92: Line 92:
<tab name="Shop Event Block">[[File:Shop_event_blockpreview.png|300px]]<br>
<tab name="Shop Event Block">[[File:Shop_event_blockpreview.png|300px]]<br>
Emits a signal when the specified item name is bought.<br>
Emits a signal when the specified item name is bought.<br>
<span style="color:teal;">Output: The player's username.</span><br>
<span style="color:#72aacc;">Output: The player's username.</span><br>
Configurations:
Configurations:
* Activation Time: How long it activates for. Default is 1.
* Activation Time: How long it activates for. Default is 1.
Line 98: Line 98:
<tab name="Tap Input Block">[[File:Tap_input_blockpreview.png|300px]]<br>
<tab name="Tap Input Block">[[File:Tap_input_blockpreview.png|300px]]<br>
Emits a signal when a player presses a mouse button.<br>
Emits a signal when a player presses a mouse button.<br>
<span style="color:teal;">Output: The player's username.</span><br>
<span style="color:#72aacc;">Output: The player's username.</span><br>
Configurations:
Configurations:
* Activation Time: How long it activates for. Default is 1.
* Activation Time: How long it activates for. Default is 1.
Line 123: Line 123:
<tabs>
<tabs>
<tab name="AND Gate">Checks whether if both inputs are active. <span style="color:gray;">(they do not check if the values are the same)</span>
<tab name="AND Gate">Checks whether if both inputs are active. <span style="color:gray;">(they do not check if the values are the same)</span>
<span style="color:teal;">Input: 2 values (any)<br>
<span style="color:#72aacc;">Input: 2 values (any)<br>
Output: Bool</span>
Output: Bool</span>
</tab>
</tab>
<tab name="BOOL SETTER Gate">Sets a BOOL STORAGE to the set bool value.
<tab name="BOOL SETTER Gate">Sets a BOOL STORAGE to the set bool value.
<span style="color:teal;">Input: none<br>
<span style="color:#72aacc;">Input: none<br>
Output: none</span>
Output: none</span>
* Value: The Bool Value to set a BOOL STORAGE to.</tab>
* Value: The Bool Value to set a BOOL STORAGE to.</tab>
<tab name="BOOL STORAGE Gate>Stores a bool value
<tab name="BOOL STORAGE Gate>Stores a bool value
<span style="color:teal;">Input: Bool<br>
<span style="color:#72aacc;">Input: Bool<br>
Output: Stored Value</span>
Output: Stored Value</span>
* Delay Before Output: Seconds to wait before outputting.
* Delay Before Output: Seconds to wait before outputting.
Line 137: Line 137:
* Value: The stored value.</tab>
* Value: The stored value.</tab>
<tab name="BOOL SWITCH Gate">Inverts / Switches the value of a BOOL STORAGE Gate (false becomes true and vice versa)
<tab name="BOOL SWITCH Gate">Inverts / Switches the value of a BOOL STORAGE Gate (false becomes true and vice versa)
<span style="color:teal;">Input: none<br>
<span style="color:#72aacc;">Input: none<br>
Output: none</span>
Output: none</span>
</tab>
</tab>
<tab name="BREAK VECTOR Block">Gets a specified axis of a [https://create.roblox.com/docs/reference/engine/datatypes/Vector3 Vector3]
<tab name="BREAK VECTOR Block">Gets a specified axis of a [https://create.roblox.com/docs/reference/engine/datatypes/Vector3 Vector3]
<span style="color:teal;">Input: Vector3<br>
<span style="color:#72aacc;">Input: Vector3<br>
Output: Number (none if Input is not a vector3)</span>
Output: Number (none if Input is not a vector3)</span>
* Axis: The axis to get from the input.</tab>
* Axis: The axis to get from the input.</tab>
<tab name="BUILD VECTOR Block">Combines the X, Y, and Z Properties to form a Vector3.
<tab name="BUILD VECTOR Block">Combines the X, Y, and Z Properties to form a Vector3.
<span style="color:teal;">Input: any (Number if gate uses {INPUT})<br>
<span style="color:#72aacc;">Input: any (Number if gate uses {INPUT})<br>
Output: Vector3</span>
Output: Vector3</span>
* X: The X Axis of the Vector3
* X: The X Axis of the Vector3
Line 152: Line 152:
<tab name="CHANGE SIGNAL Block">{{Notice|The Property can be changed in the "Types" Tab in Properties}}
<tab name="CHANGE SIGNAL Block">{{Notice|The Property can be changed in the "Types" Tab in Properties}}
Changes the signal into the selected property.<br>
Changes the signal into the selected property.<br>
<span style="color:teal;">Input: any (Ignored)<br>
<span style="color:#72aacc;">Input: any (Ignored)<br>
Output: any</span>
Output: any</span>
* Selected Property: The property type to change into.</tab>
* Selected Property: The property type to change into.</tab>
<tab name="DELAY Gate">Delays the signal by X seconds. (equivalent of <code>wait()</code>)
<tab name="DELAY Gate">Delays the signal by X seconds. (equivalent of <code>wait()</code>)
<span style="color:teal;">Input: any<br>
<span style="color:#72aacc;">Input: any<br>
Output: any (same as Input)</span>
Output: any (same as Input)</span>
* Delay: The amount of time to delay.
* Delay: The amount of time to delay.
* Ignore Deactivation: Determines if the gate will stop its signal when the previous gate stopped sending its signal</tab>
* Ignore Deactivation: Determines if the gate will stop its signal when the previous gate stopped sending its signal</tab>
<tab name="GET BLOCK PROPERTY">Gets a property of the specified block.
<tab name="GET BLOCK PROPERTY">Gets a property of the specified block.
<span style="color:teal;">Input: any (Block if Destination is not set)<br>
<span style="color:#72aacc;">Input: any (Block if Destination is not set)<br>
Output: any (The type of the retrieved property)</span>
Output: any (The type of the retrieved property)</span>
* Property Name: The property to retrieve.
* Property Name: The property to retrieve.
* Destination: The block to get the properties from.</tab>
* Destination: The block to get the properties from.</tab>
<tab name="GET GAME PROPERTY Gate">Gets a property of the world.
<tab name="GET GAME PROPERTY Gate">Gets a property of the world.
<span style="color:teal;">Input: any (Type Needed Differs)<br>
<span style="color:#72aacc;">Input: any (Type Needed Differs)<br>
Output: any (The type of the retrieved property)</span>
Output: any (The type of the retrieved property)</span>
* Property Name: The property to retrieve.
* Property Name: The property to retrieve.
Line 175: Line 175:
* TotalColoredBlocks: Requires a color as input.</tab>
* TotalColoredBlocks: Requires a color as input.</tab>
<tab name="GET NPC PROPERTY Gate">Gets a property of the specified NPC Block.
<tab name="GET NPC PROPERTY Gate">Gets a property of the specified NPC Block.
<span style="color:teal;">Input: any (NPC Block if no Destination is set)<br>
<span style="color:#72aacc;">Input: any (NPC Block if no Destination is set)<br>
Output: any (The type of the retrieved property)</span>
Output: any (The type of the retrieved property)</span>
* Property Name: The property to retrieve.
* Property Name: The property to retrieve.
* Destination: The NPC Block to get the properties from.</tab>
* Destination: The NPC Block to get the properties from.</tab>
<tab name="GET PLAYER PROPERTY Gate">Gets a property of the specified player.
<tab name="GET PLAYER PROPERTY Gate">Gets a property of the specified player.
<span style="color:teal;">Input: Player Username<br>
<span style="color:#72aacc;">Input: Player Username<br>
Output: any (The type of the retrieved property)</span>
Output: any (The type of the retrieved property)</span>
* Property Name: The property to retrieve.</tab>
* Property Name: The property to retrieve.</tab>
<tab name="GET STAT Gate">Gets the stat of the specified player.
<tab name="GET STAT Gate">Gets the stat of the specified player.
<span style="color:teal;">Input: Player Username<br>
<span style="color:#72aacc;">Input: Player Username<br>
Output: Number</span>
Output: Number</span>
* Stat Name: The stat to retrieve.</tab>
* Stat Name: The stat to retrieve.</tab>
<tab name="IF Gate">Checks if the inputted value is the same as Value
<tab name="IF Gate">Checks if the inputted value is the same as Value
<span style="color:teal;">Input: any<br>
<span style="color:#72aacc;">Input: any<br>
Output: Bool</span>
Output: Bool</span>
* Check Type: How the value is compared.
* Check Type: How the value is compared.
Line 194: Line 194:
* Value: The value to compare the Input to.</tab>
* Value: The value to compare the Input to.</tab>
<tab name="LOOP THROUGH EVERYONE Gate">When Powered, The gate will loop through every player in the world.
<tab name="LOOP THROUGH EVERYONE Gate">When Powered, The gate will loop through every player in the world.
<span style="color:teal;">Input: any<br>
<span style="color:#72aacc;">Input: any<br>
Output: Player Username</span>
Output: Player Username</span>
* Active Time: How long each loop takes. (seconds)
* Active Time: How long each loop takes. (seconds)
Line 200: Line 200:
* Loop Type: Determines if it loops through NPCs or Players.</tab>
* Loop Type: Determines if it loops through NPCs or Players.</tab>
<tab name="MATH Gate">Does a math operation on the Input.
<tab name="MATH Gate">Does a math operation on the Input.
<span style="color:teal;">Input: Number<br>
<span style="color:#72aacc;">Input: Number<br>
Output: Number</span>
Output: Number</span>
* Math Order: Determines if the Input is before the Value and vice versa.
* Math Order: Determines if the Input is before the Value and vice versa.
Line 208: Line 208:
* Value: The value to calculate the Input with.</tab>
* Value: The value to calculate the Input with.</tab>
<tab name="NOT Gate">Inverts or "Flips" the signal.
<tab name="NOT Gate">Inverts or "Flips" the signal.
<span style="color:teal;">Input: any<br>
<span style="color:#72aacc;">Input: any<br>
Output: Bool (true/false)</span>
Output: Bool (true/false)</span>
</tab>
</tab>
Line 215: Line 215:
An example would be creating a Random Number Generator (RNG).}}
An example would be creating a Random Number Generator (RNG).}}
Sets the value of a NUMBER STORAGE Gate<br>
Sets the value of a NUMBER STORAGE Gate<br>
<span style="color:teal;">Input: any (Number if using Input)<br>
<span style="color:#72aacc;">Input: any (Number if using Input)<br>
Output: none</span>
Output: none</span>
* Disable Output: Determines if a connected NUMBER STORAGE outputs its value after this gate output.
* Disable Output: Determines if a connected NUMBER STORAGE outputs its value after this gate output.
* Value: The value to store the NUMBER STORAGE.</tab>
* Value: The value to store the NUMBER STORAGE.</tab>
<tab name="NUMBER STORAGE Gate">Stores a number value.
<tab name="NUMBER STORAGE Gate">Stores a number value.
<span style="color:teal;">Input: Number<br>
<span style="color:#72aacc;">Input: Number<br>
Output: Number</span>
Output: Number</span>
* Delay Before Output: Seconds to wait before outputting.
* Delay Before Output: Seconds to wait before outputting.
Line 227: Line 227:
<tab name="OR Gate">{{Notice|This gate will pass any input it receives to its output.}}
<tab name="OR Gate">{{Notice|This gate will pass any input it receives to its output.}}
If 1 or more signals are connected to this gate, this gate will fire.<br>
If 1 or more signals are connected to this gate, this gate will fire.<br>
<span style="color:teal;">Input: any<br>
<span style="color:#72aacc;">Input: any<br>
Output: any</span>
Output: any</span>
</tab>
</tab>
Line 238: Line 238:
* Finish index: the ending number the repeater will use</tab>
* Finish index: the ending number the repeater will use</tab>
<tab name="SET STAT Gate">Sets the stat of the input and outputs the stat's value
<tab name="SET STAT Gate">Sets the stat of the input and outputs the stat's value
<span style="color:teal;">Input: Player Username<br>
<span style="color:#72aacc;">Input: Player Username<br>
Output: Number</span>
Output: Number</span>
* Operation Type: Set, add or subteact the stat value.
* Operation Type: Set, add or subteact the stat value.
Line 244: Line 244:
* Value: The new value to set (or add / subtract) the stat.</tab>
* Value: The new value to set (or add / subtract) the stat.</tab>
<tab name="TEXT EDITING Gate">Sets the value of the connected TEXT STORAGE.
<tab name="TEXT EDITING Gate">Sets the value of the connected TEXT STORAGE.
<span style="color:teal;">Input: any<br>
<span style="color:#72aacc;">Input: any<br>
Output: none (String if Next Gate Type is Normal)</span>
Output: none (String if Next Gate Type is Normal)</span>
* Next Gate Type: Decides if it can go through only a TEXT STORAGE or any gate.
* Next Gate Type: Decides if it can go through only a TEXT STORAGE or any gate.
Line 251: Line 251:
* Value: The value to set a TEXT STORAGE to. (Output if Next Gate Type is Normal)</tab>
* Value: The value to set a TEXT STORAGE to. (Output if Next Gate Type is Normal)</tab>
<tab name="TEXT INPUT Gate">Brings up a dialog box on the Input's screen and outputs the response.
<tab name="TEXT INPUT Gate">Brings up a dialog box on the Input's screen and outputs the response.
<span style="color:teal;">Input: any<br>
<span style="color:#72aacc;">Input: any<br>
Output: String</span>
Output: String</span>
* Cancel Button Disabled: Decides of if the Cancel / X Button shows up.
* Cancel Button Disabled: Decides of if the Cancel / X Button shows up.
Line 257: Line 257:
* Input Size: Changes the dialog's size.</tab>
* Input Size: Changes the dialog's size.</tab>
<tab name="TEXT STORAGE Gate">Stores a text value that can be edited using a TEXT EDITING Gate.
<tab name="TEXT STORAGE Gate">Stores a text value that can be edited using a TEXT EDITING Gate.
<span style="color:teal;">Input: TEXT EDITING Signal<br>
<span style="color:#72aacc;">Input: TEXT EDITING Signal<br>
Output: String</span>
Output: String</span>
* Delay Before Output: Seconds to wait before outputting.
* Delay Before Output: Seconds to wait before outputting.
Line 263: Line 263:
* Value: The stored value.</tab>
* Value: The stored value.</tab>
<tab name="TRIPLE MATH Gate">Special variant of the MATH Gate that uses vectors (x, y. z).
<tab name="TRIPLE MATH Gate">Special variant of the MATH Gate that uses vectors (x, y. z).
<span style="color:teal;">Input: Number<br>
<span style="color:#72aacc;">Input: Number<br>
Output: Number</span>
Output: Number</span>
* Operation type: Decides what to do with the X, Y and Z numbers.
* Operation type: Decides what to do with the X, Y and Z numbers.
Line 270: Line 270:
* Z: Z of the vector.</tab>
* Z: Z of the vector.</tab>
<tab name="XOR Gate">Takes multiple signals and produces an output if the number of true inputs are odd.
<tab name="XOR Gate">Takes multiple signals and produces an output if the number of true inputs are odd.
<span style="color:teal;">Input: any (Multiple)<br>
<span style="color:#72aacc;">Input: any (Multiple)<br>
Output: Bool</span>
Output: Bool</span>
</tab>
</tab>

Revision as of 15:23, 10 April 2024

Logic (WIP, HIRING)

This page is a work-in-progress and may contain user notes.
You can help by finishing it.

Warning

This page explains advanced features, some players may not understand everything in this page.

Wubby Logic is the second-most important thing in your Wubby worlds, They can do mostly anything such as:

  • Changing block colors
  • Moving blocks / platforms
  • Custom NPC movement

Here are some useful links for wiring:
Easings.net | Contains most easing types with directions.

Input

Notice!

Using a parallel wiring block helps reduce the chances of these blocks not firing correctly.

Input parts are blocks that cannot be connected to in wiring, only connect to. The Input tab is clearly separated from the Special tab, as the line between them is thicker.

These are blocks that are used to power wiring systems. They do not receive wiring inputs, and can only output.


Emits a signal when touched by an unanchored block or gear debris.
Output: The part that touched it.
Configurations:

  • Activation Time: How long it activates for. Default is 1
  • Anchor Type: Decides what blocks get detected. Default is NonAnchored
  • Color To Filter: When filter color is true, only blocks with this color will trigger it. Default is pearl.
  • Filter Color: Whether if this block will only trigger when a block with the specified color touches it. Default is false.
  • Use Activation Time: If set to true, the block will stop outputting when (Activation Time) passed, if set to false, it will stop outputting when the block stops touching it. Default is true.

Emits a signal when clicked on.
Output: The player that clicked it.
Configurations:

  • Activation Time: How long it activates for. Default is 1.
  • Max Distance: How far you can click this block. Default is 32.
  • Toggleable: Whether if this block acts like a switch. Default is true.
Notice!

This block is Admin+.


Emits a signal everytime the server calculates a physics frame.
Output: the deltaTime between the frames.

Notice!

deltaTime is the time (in milliseconds) the server took calculating a physics frame.


Emits a signal when a humanoid changes to the specified state.
Output: The player's username.
Configurations:

  • Activation Time: How long it activates for. Default is 1.
  • State: The block fires when a humanoid enters this state. Default is Landed.
  • Use Activation Time: If this is off, then the block will only stop firing once the humanoid exits the state. Default is true.

Emits a signal when a player presses the selected key or mobile button.
Output: The player's username.
Configurations:

  • Activation Time: How long it activates for. Default is 1.
  • Input Detection Type: Determines if the block will fire if the input ended, or started.
  • Use Activation Time: When this is off, the block will only stop firing once the player releases the key. This can only be turned off if the "Input Detection Type" is set to "InputStarted", otherwise this setting will be forced.
  • Key: The key which the player has to press/release to trigger the block. Default is LeftShift.
  • Mobile Button Enabled: If this is on, touchscreen players will get a button on their screen that activates the block.
  • Mobile Button Position: The UDIM2 position (possibly scale) of the mobile button on a players screen if "Mobile Button Enabled" is on.
  • Mobile Button Text: What the text on the block's mobile button will be if "Mobile Button Enabled" is on.

Emits a signal once an NPC does the selected NPC event.
Output: The NPC's NPC Block.
Configurations:

  • Activation Time: How long it activates for. Default is 1.
  • Event: The NPC Event to detect.

Emits a signal every time a player chats.
Output: Either the player's username or what they said depending on the "Output Type" setting.
Configurations:

  • Activation Time: How long it activates for. Default is 1.
  • Output Type: Determines if the block will output the players chat message or their username when its fired. Default is "Message".

Emits a signal when the selected player event is triggered.
Output: The player's username.
Configurations:

  • Activation Time: How long it activates for. Default is 1.
  • Event: The Player Event to detect.

All player events

  • PlayerJoined - Triggers when a player joins the world
  • PlayerLeft - Triggers when a player leaves the world
  • PlayerRespawned - Triggers when a player respawns
  • PlayerKills - Triggers when a player kills another player

Emits a signal when a Player/NPC touches this block.
Output: The player's username. (If Detect is set to "NPC" it always outputs the NPC Block)
Configurations:

  • Activation Time: How long it activates for. Default is 1.
  • Detect: A dropdown menu with the items: Players, NPCs, Everything.
  • Use Activation Time: When this is off, the block will only stop firing once the Player/NPC stops touching the block.

Emits a signal when it's Proximity Prompt has been triggered.
Output: The player's username.
Configurations:

  • Activation Time: How long it activates for. Default is 1.
  • Hold Duration: Amount of time to trigger the prompt. Default is 0.5
  • Key: Key to hold when triggering the prompt. Default is E.
  • Toggleable: Whether if this block acts like a switch. Default is true.

Emits a signal when the specified item name is bought.
Output: The player's username.
Configurations:

  • Activation Time: How long it activates for. Default is 1.
  • Item Name: The item to detect a purchase on.

Emits a signal when a player presses a mouse button.
Output: The player's username.
Configurations:

  • Activation Time: How long it activates for. Default is 1.
  • Input Detection Type: Determines if the block will fire if the input ended, or started.
  • Key: What mouse button is being interacted with.
  • Use Activation Time: When this is off, the block will only stop firing once the Player stops giving inputs. (Will be turned On if Input Detection Type is "InputEnded")

Logic

These are blocks that allow a player with build permissions to add extra functionality to their world, these examples include:

  • Ctrl to sprint
  • E to activate ability

and etc.

Notice!

An input is where the gate recieves a signal from a wire connected to it. An output is where the gate sends a signal to a wire connected from it.

"true" = active signal

"false" = inactive signal

This is known as a bool

Warning

Gate descriptions are in-progress and may be incorrect, if you find any incorrect circuits please use the wiki feedback form.

Checks whether if both inputs are active. (they do not check if the values are the same)

Input: 2 values (any)
Output: Bool

Sets a BOOL STORAGE to the set bool value.

Input: none
Output: none

  • Value: The Bool Value to set a BOOL STORAGE to.
Stores a bool value

Input: Bool
Output: Stored Value

  • Delay Before Output: Seconds to wait before outputting.
  • Save Value: ??? (presumably decides whether value is saved on world restart)
  • Value: The stored value.
Inverts / Switches the value of a BOOL STORAGE Gate (false becomes true and vice versa)

Input: none
Output: none

Gets a specified axis of a Vector3

Input: Vector3
Output: Number (none if Input is not a vector3)

  • Axis: The axis to get from the input.
Combines the X, Y, and Z Properties to form a Vector3.

Input: any (Number if gate uses {INPUT})
Output: Vector3

  • X: The X Axis of the Vector3
  • Y: The Y Axis of the Vector3
  • Z: The Z Axis of the Vector3
Notice!

The Property can be changed in the "Types" Tab in Properties

Changes the signal into the selected property.
Input: any (Ignored)
Output: any

  • Selected Property: The property type to change into.
Delays the signal by X seconds. (equivalent of wait())

Input: any
Output: any (same as Input)

  • Delay: The amount of time to delay.
  • Ignore Deactivation: Determines if the gate will stop its signal when the previous gate stopped sending its signal
Gets a property of the specified block.

Input: any (Block if Destination is not set)
Output: any (The type of the retrieved property)

  • Property Name: The property to retrieve.
  • Destination: The block to get the properties from.
Gets a property of the world.

Input: any (Type Needed Differs)
Output: any (The type of the retrieved property)

  • Property Name: The property to retrieve.
  • Value: ??

Depending on the chosen property the Input may need to be a specific type.

  • NumPlayersOnTeam: Requires a team name as input.
  • IsPlayerOnServer: Requires a username as input.
  • TotalColoredBlocks: Requires a color as input.
Gets a property of the specified NPC Block.

Input: any (NPC Block if no Destination is set)
Output: any (The type of the retrieved property)

  • Property Name: The property to retrieve.
  • Destination: The NPC Block to get the properties from.
Gets a property of the specified player.

Input: Player Username
Output: any (The type of the retrieved property)

  • Property Name: The property to retrieve.
Gets the stat of the specified player.

Input: Player Username
Output: Number

  • Stat Name: The stat to retrieve.
Checks if the inputted value is the same as Value

Input: any
Output: Bool

  • Check Type: How the value is compared.
  • Keep Activation: Determines if the gate will stop its signal when the previous gate stopped sending its signal
  • Value: The value to compare the Input to.
When Powered, The gate will loop through every player in the world.

Input: any
Output: Player Username

  • Active Time: How long each loop takes. (seconds)
  • Delay: How long to wait for another loop. (seconds)
  • Loop Type: Determines if it loops through NPCs or Players.
Does a math operation on the Input.

Input: Number
Output: Number

  • Math Order: Determines if the Input is before the Value and vice versa.
  • Operation Type: The operation to do.
  • Next Gate Type: Determines if the output needs to go through a NUMBER STORAGE to complete an operation.
  • Disable Output: Determines if a connected NUMBER STORAGE outputs its value after this gate output.
  • Value: The value to calculate the Input with.
Inverts or "Flips" the signal.

Input: any
Output: Bool (true/false)

Notice!

Use <minimumNumber>, <maximumNumber> as the value to randomly generate a number between <minimumNumber> and <maximumNumber>.

An example would be creating a Random Number Generator (RNG).

Sets the value of a NUMBER STORAGE Gate
Input: any (Number if using Input)
Output: none

  • Disable Output: Determines if a connected NUMBER STORAGE outputs its value after this gate output.
  • Value: The value to store the NUMBER STORAGE.
Stores a number value.

Input: Number
Output: Number

  • Delay Before Output: Seconds to wait before outputting.
  • Save Value: ??? (presumambly decides whether value is saved on world restart)
  • Value: The stored value.
Notice!

This gate will pass any input it receives to its output.

If 1 or more signals are connected to this gate, this gate will fire.
Input: any
Output: any

Repeatedly sends a signal, How it's sent depends on the loop type.
  • Activation time: how long the signal will last until it loops back again.
  • Delay: how long to wait before the next loop starts
  • Loop Type: How the repeater will behave.
  • Increment: The Increment to use when in enumerating or repetition mode (eg if increment is 2 then the loop would be like 2, 4, 6,...).
  • Start index: the starting number the repeater will use
  • Finish index: the ending number the repeater will use
Sets the stat of the input and outputs the stat's value

Input: Player Username
Output: Number

  • Operation Type: Set, add or subteact the stat value.
  • Stat name: The stat name to set.
  • Value: The new value to set (or add / subtract) the stat.
Sets the value of the connected TEXT STORAGE.

Input: any
Output: none (String if Next Gate Type is Normal)

  • Next Gate Type: Decides if it can go through only a TEXT STORAGE or any gate.
  • Disable Output: Determines if a connected TEXT STORAGE outputs its value after this gate output.
  • Operation Type: Decides what to do with the value.
  • Value: The value to set a TEXT STORAGE to. (Output if Next Gate Type is Normal)
Brings up a dialog box on the Input's screen and outputs the response.

Input: any
Output: String

  • Cancel Button Disabled: Decides of if the Cancel / X Button shows up.
  • Input Position: Changes the dialog's position.
  • Input Size: Changes the dialog's size.
Stores a text value that can be edited using a TEXT EDITING Gate.

Input: TEXT EDITING Signal
Output: String

  • Delay Before Output: Seconds to wait before outputting.
  • Save Value: ??? (presumambly decides whether value is saved on world restart)
  • Value: The stored value.
Special variant of the MATH Gate that uses vectors (x, y. z).

Input: Number
Output: Number

  • Operation type: Decides what to do with the X, Y and Z numbers.
  • X: X of the vector.
  • Y: Y of the vector.
  • Z: Z of the vector.
Takes multiple signals and produces an output if the number of true inputs are odd.

Input: any (Multiple)
Output: Bool