Tuesday, 10 April 2012

Signals, Triggers and Logic

Just while we’re busy developing new content for the game, here’s a quick insight of how the trigger, signal and logic system works!


Right at the root of the system are the Triggers. When set off, they send a signal to any connected deployables, triggering a network of traps or whatever nice surprise you might have in store for your enemies. Here is the line-up of the triggers we have so far:

· Lever - emits a signal when set to the on position.

· Pressure - emits a signal when a character steps onto it.

· Proximity - emits a signal when at least one character is within a radius.

· Line - emits a signal when its beam is blocked by a character or another building.

· Pulse - periodically turns on and off with a customisable wait and sleep time.


To modify the signal received from a trigger you can use Logic buildings, enabling you to create more advanced systems. Here is a series of logic deployables we have so far (you might recognise these as common programming conditional if statements):

· Logic AND - emits a signal only when all inputs are on.

· Logic NAND - emits a signal only when none of the inputs are on.

· Logic OR - emits a signal if any of the inputs are on.

· Logic NOT - emits a signal when the input signal is off (inverted).


In addition to the deployables system there are small nodes called Terminals, that can be dragged from anything with a signal output, which are used to extend and distribute signals around. Terminals don’t delay or modify a signal so they’re simply for keeping things tidy and organised.

So that’s it for the basics of the signal system, there will be more signal buildings to come as the need presents itself.

On another note, here are the answers to a few questions we received over the last week...

“What about the quantity of scrap metal you can carry? Can you just carry around infinite metal or is there any storage system?”
At the moment, the idea is that you keep a master pool of metal in a similar fashion to an RTS, any income will be added to the total count from wherever you get it.

“What's the difference/benefits between the two types of movers [conveyor and pickup launcher]?”
Right now we are unsure if there are any, we are tied between the aesthetic of conveyors and the efficiency of launchers.

Conveyors have more overhead than launchers due to the need to have a whole mesh draw call and trigger box for each one just to move an item over a small distance. However, it does look pretty. Launchers on the other hand are very efficient and precise both mechanically and in code but we’re not sure whether or not it would be a good thing if the method of moving items requires them bouncing around the screen in all directions.

Feel free to ask us any questions you might have about Odonata, via twitter/email/blog comments. We welcome more questions since they help us to refine our ideas and may even bring up some problems we haven’t considered yet.


  1. What about the camera? Will it be 4 views, free view or static?

  2. Will there be a friendly fire mode? aka will your own traps harm you? I'm guessing that the lever can only be used by the player, but is there a way to set the proximity and pressure triggers, to be activated by the player only/enemies or both?

    Best of luck!

  3. Just want to say that it looks fantastic and I can't wait for more. Please update the blog often!

  4. im guessing the beta tester waiting list isnt small so i better sign up quickly

  5. May I suggest an XOR (exclusive or) logic gate? Active when at least one is active but inactive when all are active

  6. This is awesome :) Im so pumped to see this development. Reminds me of Chips Challenge (and Chucks challenge a game Im making) although with a whole different twist to it, economy, and incredibly smart usage of logic gates.

    Keep up the amazing work!