Condo I/O! How To Get Started

What is Condo IO?

Condo IO stands for Condo Input and Output. It’s a powerful set of tools and integration with items that allow items to connect with each other and preform actions based on gameplay events.

At bare minimum: Press Button → Open Door

How Do You Use It?

Condo IO will be embedded into items for you automatically.

You can connect items in two ways:

The Connector Tool

  • Part of the Tower Glove, this tool will allow you to click on two items and form a connection. By default, the Connector Tool will pick the most common input/output events for you.

Item Properties → Connections

  • You can then further edit item interactions by editing items and going to Connections (or click on the Connections tab in the item properties menu).


Overview

Condo IO is is a feature that does not require any programming knowledge to create various creations such as puzzle maps, adventure stories, organization tools (such as turning off all lights in a room), and eventually custom games all within your Condo or Condo Workshop maps.

The tools are designed to be easy to understand, intuitive, and straight forward.


The Basics

Connector Tool

  • Part of the Tower Glove that allows you to quickly connect items together

Connecting items together

  • Items having Inputs and Outputs
    • Button (OnPressed)Door (Toggle)

Persistent Connections

  • Items connecting regardless of events, such as:
    • Camera ~ Mediaplayer → Camera Feed Displaying on Mediaplayer Screen

Delayed Events

  • You are able to time events: ButtonOpen Door (0 seconds), Turn On Lights (2 seconds)

Connection Editor

  • Edit connections directly within the item property menu (right click > Connections)

Core Inputs

  • These are inputs that ALL items have, regardless if they have any editable properties to begin with
    • ButtonCanvasHide
    • ButtonCanvasUnhide
      Note: Hiding an item will disable both visuals and collisions.

Logic Modules

  • Relay
    • Organize IO events by grouping them into a single Relay
  • Random
    • Selects a random output from a preset number of output events (up to 32 outputs)
  • Toggle
    • A logic item that calls two separate outputs that get toggled between when activated. Useful for toggling multiple things on/off. Will call Off on load. This is a boolean
  • Counter
    • A counter that counts a number then fires off when its max or min is reached. Can be reset to restart the count. Counter can optionally save its value persistently. You can Add, Subtract, and even Multiply and Divide the counter
  • Timer
    • A timer that keeps track of time passed. Can be adjusted to loop, select random times between min/max, pause/unpause

Volumes

  • Trigger Volume
  • Damage/Heal Volume
  • Push Volume
  • Blocking Volume
  • Gravity Volume
  • Player Movement Volume
  • Size Volume
  • Teleport Volume
  • Button Volume
  • Comment Volume

Input Items - Items players can interact with to have things happen

  • Button (with various shapes)
  • Canvas Button
  • Hidden Button
  • Keypad
  • Lever
  • Physics Object Slot - Takes a physics object when you put it into it (can be filtered by name)
  • Trigger Volume

Built-In Item Events & Variables

Many items that have interactions such as Doors come with events you can hook into, such as Door > OnOpened

  • Doors: OnOpened, OnClosed, Open, Close, Lock, Unlock
  • Buttons: OnPressed
  • Lights: Turn On, Turn Off, OnTurnedOn, OnTurnedOff, Set Intensity, Set Color
  • Fireworks: OnIgnite, OnLaunch
  • Food: OnBite, OnConsumed
  • Damagable items such as Balloons, Bell, etc.
  • Media Player: OnMediaStarted, OnMediaEnded
  • Physics: OnPickedUp, OnDropped, OnDamaged
  • Special: Spin To Win, Dice, Bed

Items also have Variables you can change.

  • Button → Set URL on Canvas
  • Button → Set Color on Light
  • Button → Set Time on Timer

Extras

IO items are infinite

  • IO items have no Unit cost, you will not have to go to the stores to place down Volumes or Buttons or Logic

Organization Tools

  • You can rename items to a custom name to help with IO
  • You can also color Relays and IO nodes

IO Items

  • Custom Spawn Point

Future Updates

We plan to release Condo IO features in rolling updates
In order of importance…


  • Mover Module (for moving items and creating moving platforms)

  • Workshop Sound Packs

  • Default Properties: Hidden, Interactive Permissions
  • Saving a Default state of an item

  • Additional Input items (buttons, etc.)
  • Additional Logic items
  • Additional Volumes such as Post Processing Volume, Day/Night Volume
  • Keys for Doors

  • Custom Condo Currency
    • Can be used for puzzle maps, awarding players for being on your condo, etc. It is persistently saved to the Condo data itself.
  • Pickups (weapon, health)
  • Sensors
    • Sensing when a player has done an action (i.e. OnDeath, OnChatMessage, etc.)
  • NPCs Enemy/Friends
  • NPC Waypoints

  • Player Stats: Lives / Deaths / Points / Team

  • Cameras (for cinematics)
  • Map Optimization Volumes, Snapshot Loader, Workshop Map Portal (linking workshop map levels)
  • Layer system - Ability to assign a layer to items with the ability to toggle on/off the items within a layer

  • Gameplay Rules

  • Physics toggle for items
    • Physics modifiers

  • Custom Objectives

  • HUD/FX effects
  • Items designed for puzzles
  • And More!

We’re excited to continue to add new ways to create interactive experiences within your Condo, and by extension, open up new types of level creation tools using the Condo system within Tower Unite.


Example Use Cases

Automatic Lights, only when room door is open:
We suggest using Relays. Relays allow you to combine many actions into one spot for quicker editing in the future.

  • Door (OnOpened)
    DoorRelay1Fire

  • Door (OnClosed)
    DoorRelay2Fire

  • Relay1 (OnFired)
    Light1 TurnOn
    Light2 TurnOn
    Light3 TurnOn
    Light4 TurnOn

  • Relay2 (OnFired)
    Light1 TurnOff
    Light2 TurnOff
    Light3 TurnOff
    Light4 TurnOff


Locked Door, Key Unlocks

  • Spawn a Door
  • Edit the Door and set Locked to enabled. This will prevent players from opening the door with use.
  • Spawn a Physics Item Slot
  • Connect the Physics Item Slot to the Door (using the Connection Tool) and set the action to Open
  • The Physics Item Slot will now open the door once a physics item is slotted into it
  • Note: Physics Item Slot also has a key matching system based on the key’s name. You can use this to make it so specific keys only slot into the physics item slot. You can also hide the Physics Item Slot from being visible in its settings.

This post will be continuously updated as we build on these features.

23 Likes

Is support for scripting planned? As in using an interpreted language. Given that TU follows GMod’s legacy, you could use Lua.

3 Likes

No.

1 Like