LogicBlock

Troubleshooting

Avoid restart loops and update safely from earlier reference systems.

Troubleshooting

Restarting a List Creates a Loop

When an instruction runs over time, such as continuously rotating a GameObject, add a Wait 1 Frame instruction before restarting the list. Without the wait, the list can restart immediately and create an infinite loop that freezes the Unity editor or game.

Editing References on a Prefab

You cannot edit references in Run Instruction Block List or Run Conditions Block List on a prefab asset unless you open the prefab in Prefab Mode or have an instance in the scene. Unity blocks this editing to avoid conflicts with the reference system.

Updating from 1.0.5 or Earlier

LogicBlock 1.0.6 changed how references work. Before updating:

  1. Back up your project.
  2. Uninstall LogicBlock.
  3. Install LogicBlock again from the Unity Package Manager.
  4. Restart Unity.

New references created after 1.0.6 no longer link their values together. LogicBlock tries to keep existing reference values, but some projects may need values assigned again. Old linked references from 1.0.5 are not changed automatically.

Before creating new references, inspect the GameObjects with the Run Instruction or Condition List instruction at least once. This runs the compatibility check. If references are missing, unload and load the scene again without saving first.

To unlink a shared reference value, change the property type on the last reference.

Visual Scripting

The entries below are copied from the package definitions. Use the child pages to browse them by type.

Instructions

Attach Prop (InstructionCharacterAttachPropLogicBlock)

  • Title: Attach Prop
  • Description: Attaches a prefab or instance Prop onto a Character's bone
  • Category: Characters/Visuals/Attach Prop (LogicBlock)
  • Parameters:
  • Character - The character target
  • Type - Whether to attach the prop as a prefab or instance
  • Prop - The prefab or instance object that is attached to the character
  • Handle - The Handle reference that contains bone and offset info
  • Keywords: Characters, Add, Grab, Draw, Pull, Take, Object
  • Source: LogicBlock/Runtime/Instructions/InstructionCharacterAttachPropLogicBlock.cs

Run Conditions Block (InstructionRunBlockConditionList)

  • Title: Run Conditions Block
  • Description: Runs a conditions list from a Block
  • Category: LogicBlock/Run Conditions Block List
  • Parameters:
  • Conditions List - The conditions list to run from the Block
  • Target - The GameObject to use as the target
  • Instance Block - If true, instances the conditions list to support running the same block concurrently
  • Keywords: Execute, Condition, Branch, Asset, Block, ScriptableObject
  • Source: LogicBlock/Runtime/Instructions/InstructionRunBlockConditionsList.cs

Run Instruction Block (InstructionRunBlockInstructionList)

  • Title: Run Instruction Block
  • Description: Runs an instruction list from a Block
  • Category: LogicBlock/Run Instruction Block List
  • Parameters:
  • Instruction List - The instruction list to run from the Block
  • Target - The GameObject to use as the target
  • Instance Block - If true, it instances the instruction list to support running same block at the same time
  • Keywords: Execute, Action, Run, Asset, Block, ScriptableObject
  • Source: LogicBlock/Runtime/Instructions/InstructionRunBlockInstructionList.cs

Run Random Block List (InstructionRunRandomBlockList)

  • Title: Run Random Block List
  • Description: Runs a random instruction list, conditions list, or either from a Block
  • Category: LogicBlock/Run Random Block List
  • Parameters:
  • Block - The Block that contains the lists
  • Mode - Choose whether to run a random instruction list, conditions list, or either
  • Target - The GameObject to use as the target
  • Keywords: Execute, Random, Action, Condition, Branch, Block, List
  • Source: LogicBlock/Runtime/Instructions/InstructionRunRandomBlockList.cs

Stop Conditions Block (InstructionStopBlockConditionList)

  • Title: Stop Conditions Block
  • Description: Stops a running conditions list from a Block
  • Category: LogicBlock/Stop Conditions Block List
  • Parameters:
  • Conditions List - The conditions list to stop from the Block
  • Instance Block - If true, stops the list running on a tracked Block instance
  • Instance Target - The GameObject that owns the Block instance tracker
  • Keywords: Cancel, Pause, Stop, Condition, Branch, Block, Instance
  • Source: LogicBlock/Runtime/Instructions/InstructionStopBlockConditionList.cs

Stop Instruction Block (InstructionStopBlockInstructionList)

  • Title: Stop Instruction Block
  • Description: Stops a running instruction list from a Block
  • Category: LogicBlock/Stop Instruction Block List
  • Parameters:
  • Instruction List - The instruction list to stop from the Block
  • Instance Block - If true, stops the list running on a tracked Block instance
  • Instance Target - The GameObject that owns the Block instance tracker
  • Keywords: Cancel, Pause, Stop, Action, Block, Instance
  • Source: LogicBlock/Runtime/Instructions/InstructionStopBlockInstructionList.cs

Properties

Get properties

Block Animation Reference (BlockGetAnimationReference)
  • Title: Block Animation Reference
  • Description: An animation clip reference from a Block
  • Category: LogicBlock/Block Animation Reference
  • Type: Animation
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetAnimationReference.cs
Block Audio Reference (BlockGetAudioReference)
  • Title: Block Audio Reference
  • Description: An audio clip reference from a Block
  • Category: LogicBlock/Block Audio Reference
  • Type: Audio
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetAudioReference.cs
Block Bool Reference (BlockGetBoolReference)
  • Title: Block Bool Reference
  • Description: A boolean reference from a Block
  • Category: LogicBlock/Block Bool Reference
  • Type: Bool
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetBoolReference.cs
Block Color Reference (BlockGetColorReference)
  • Title: Block Color Reference
  • Description: A color reference from a Block
  • Category: LogicBlock/Block Color Reference
  • Type: Color
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetColorReference.cs
Block Direction Reference (BlockGetDirectionReference)
  • Title: Block Direction Reference
  • Description: A direction (Vector3) reference from a Block
  • Category: LogicBlock/Block Direction Reference
  • Type: Direction
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetDirectionReference.cs
Block GameObject Reference (BlockGetGameObjectReference)
  • Title: Block GameObject Reference
  • Description: A GameObject reference from a Block
  • Category: LogicBlock/Block GameObject Reference
  • Type: GameObject
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetGameObjectReference.cs
Block Material Reference (BlockGetMaterialReference)
  • Title: Block Material Reference
  • Description: A material reference from a Block
  • Category: LogicBlock/Block Material Reference
  • Type: Material
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetMaterialReference.cs
Block Number Reference (BlockGetNumberReference)
  • Title: Block Number Reference
  • Description: A number reference from a Block
  • Category: LogicBlock/Block Number Reference
  • Type: Decimal
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetNumberReference.cs
Block Position Reference (BlockGetPositionReference)
  • Title: Block Position Reference
  • Description: A position (Vector3) reference from a Block
  • Category: LogicBlock/Block Position Reference
  • Type: Position
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetPositionReference.cs
Block Rotation Reference (BlockGetRotationReference)
  • Title: Block Rotation Reference
  • Description: A rotation (Quaternion) reference from a Block
  • Category: LogicBlock/Block Rotation Reference
  • Type: Rotation
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetRotationReference.cs
Block Scale Reference (BlockGetScaleReference)
  • Title: Block Scale Reference
  • Description: A scale (Vector3) reference from a Block
  • Category: LogicBlock/Block Scale Reference
  • Type: Scale
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetScaleReference.cs
Block Scene Reference (BlockGetSceneReference)
  • Title: Block Scene Reference
  • Description: A scene build index reference from a Block
  • Category: LogicBlock/Block Scene Reference
  • Type: Scene
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetSceneReference.cs
Block Sprite Reference (BlockGetSpriteReference)
  • Title: Block Sprite Reference
  • Description: A sprite reference from a Block
  • Category: LogicBlock/Block Sprite Reference
  • Type: Sprite
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetSpriteReference.cs
Block String Reference (BlockGetStringReference)
  • Title: Block String Reference
  • Description: A string reference from a Block
  • Category: LogicBlock/Block String Reference
  • Type: String
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetStringReference.cs
Block Texture Reference (BlockGetTextureReference)
  • Title: Block Texture Reference
  • Description: A texture reference from a Block
  • Category: LogicBlock/Block Texture Reference
  • Type: Texture
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/BlockGetTextureReference.cs
Block Handle Reference (BlockGetHandleReference)
  • Title: Block Handle Reference
  • Description: A handle reference from a Block
  • Category: LogicBlock/Block Handle Reference
  • Type: Handle
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Handle/BlockGetHandleReference.cs
Handle Asset (GetHandleInstance)
  • Title: Handle Asset
  • Description: A direct reference to a Handle asset
  • Category: Handles/Handle Asset
  • Type: Handle
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Handle/GetHandleInstance.cs
PropertyGetHandle (PropertyGetHandle)
  • Title: Not specified
  • Description: Not specified
  • Category: Not specified
  • Type: Handle
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Handle/PropertyGetHandle.cs
PropertyTypeGetHandle (PropertyTypeGetHandle)
  • Title: Not specified
  • Description: Not specified
  • Category: Not specified
  • Type: Handle
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Handle/PropertyTypeGetHandle.cs
Block Item Reference (BlockGetItemReference)
  • Title: Block Item Reference
  • Description: An Item reference from a Block asset's runtime storage
  • Category: LogicBlock/Block Item Reference
  • Type: Item
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Inventory/BlockGetItemReference.cs
Block Loot Table Reference (BlockGetLootTableReference)
  • Title: Block Loot Table Reference
  • Description: A loot table reference from a Block
  • Category: LogicBlock/Block Loot Table Reference
  • Type: LootTable
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Inventory/BlockGetLootTableReference.cs
Block Runtime Item Reference (BlockGetRuntimeItemReference)
  • Title: Block Runtime Item Reference
  • Description: A runtime item reference from a Block
  • Category: LogicBlock/Block Runtime Item Reference
  • Type: RuntimeItem
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Inventory/BlockGetRuntimeItemReference.cs
Block Melee Weapon Reference (BlockGetMeleeWeaponReference)
  • Title: Block Melee Weapon Reference
  • Description: A weapon melee reference from a Block
  • Category: LogicBlock/Block Melee Weapon Reference
  • Type: Weapon
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Melee/BlockGetMeleeWeaponReference.cs
Block Shield Reference (BlockGetShieldReference)
  • Title: Block Shield Reference
  • Description: A shield reference from a Block
  • Category: LogicBlock/Block Shield Reference
  • Type: Shield
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Melee/BlockGetShieldReference.cs
Block Skill Reference (BlockGetSkillReference)
  • Title: Block Skill Reference
  • Description: A skill reference from a Block
  • Category: LogicBlock/Block Skill Reference
  • Type: Skill
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Melee/BlockGetSkillReference.cs
PropertyGetBlockListReference (PropertyGetBlockListReference)
  • Title: Not specified
  • Description: Not specified
  • Category: Not specified
  • Type: BlockListReference
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/PropertyGetBlockListReference.cs
Block Quest Reference (BlockGetQuestReference)
  • Title: Block Quest Reference
  • Description: A quest reference from a Block
  • Category: LogicBlock/Block Quest Reference
  • Type: Quest
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Quests/BlockGetQuestReference.cs
Block Shooter Weapon Reference (BlockGetShooterWeaponReference)
  • Title: Block Shooter Weapon Reference
  • Description: A weapon shooter reference from a Block
  • Category: LogicBlock/Block Shooter Weapon Reference
  • Type: Weapon
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Shooter/BlockGetShooterWeaponReference.cs
Block Attribute Reference (BlockGetAttributeReference)
  • Title: Block Attribute Reference
  • Description: An attribute reference from a Block
  • Category: LogicBlock/Block Attribute Reference
  • Type: Attribute
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Stats/BlockGetAttributeReference.cs
Block Formula Reference (BlockGetFormulaReference)
  • Title: Block Formula Reference
  • Description: A formula reference from a Block
  • Category: LogicBlock/Block Formula Reference
  • Type: Formula
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Stats/BlockGetFormulaReference.cs
Block Stat Reference (BlockGetStatReference)
  • Title: Block Stat Reference
  • Description: A stat reference from a Block
  • Category: LogicBlock/Block Stat Reference
  • Type: Stat
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Stats/BlockGetStatReference.cs
Block Status Effect Reference (BlockGetStatusEffectReference)
  • Title: Block Status Effect Reference
  • Description: A status effect reference from a Block
  • Category: LogicBlock/Block Status Effect Reference
  • Type: StatusEffect
  • Parameters: None specified
  • Keywords: None specified
  • Source: LogicBlock/Runtime/Properties/Get/Stats/BlockGetStatusEffectReference.cs

Set properties

None.