FF SUITEArma 3 addons

Producers, gates, consumers, server revalidation

Eden interaction circuits internals

A no-script puzzle system. Nodes are synchronized editor modules; direction comes from named input IDs; the ACE action appears only when the circuit evaluates true, and the server re-checks before writing state.

FF_Utils 6 related functions

1. Graph model

Every node is a module with a nodeId. A downstream node lists upstream IDs in inputIds. interactionInputs resolves each ID against directly synchronized neighbours and rejects missing, duplicated or ambiguous IDs. That is why a cycle or a forgotten sync line keeps the action unavailable instead of producing a random result.

2. Producers

SourceReads
playerItemExact class and count in the interacting player's inventory.
containerItemDirect cargo of the synchronized container, not nested containers.
objectVariableBoolean (or numeric equality) variable on the synchronized object.
missionVariableBoolean in missionNamespace; broadcast it for multiplayer.

Circuits check conditions; they never consume or transfer items.

3. Gates

AND, OR, NOT and XOR. OR and XOR exist so alternate keys or routes can open the same door without extra scripting.

4. Consumers

A consumer is synchronized to one or more target objects and to its inputs. It creates an ACE action on each target when the circuit passes. On use the client calls the server, which validates the curator/owner relationship, distance, liveness and the full circuit again — interactionExecute refuses anything that fails. Only then does it broadcast the completion variable, optionally with a numeric value, and drive an animation source.

5. Patterns

  • Fuse panel: container producer (fuse) → consumer on the panel writing RUN.
  • Chained logic: producer on the panel reading RUN → gate → another consumer.
  • Three-position lever: three consumers writing -1 / 0 / 1 to SWITCH; producers read numeric equality.
  • Late joiners: consumers re-broadcast their action setup to all clients, so a player joining mid-mission sees the same interaction.

Related functions

↑ Back to top