{"name":"doFSM","operator":null,"title":"doFSM","type":"command","url":"https://community.bistudio.com/wiki/doFSM","revid":377167,"updated":"2026-01-01T10:44:05Z","groups":["Unit Control"],"status":"ok","replaced_by":[],"games":[{"game":"arma1","name":"Armed Assault","version":"1.00"},{"game":"arma2","name":"Arma 2","version":"1.00"},{"game":"arma2oa","name":"Arma 2: Operation Arrowhead","version":"1.50"},{"game":"tkoh","name":"Take On Helicopters","version":"1.00"},{"game":"arma3","name":"Arma 3","version":"0.50"}],"since":{"game":"arma1","name":"Armed Assault","version":"1.00"},"arma3_since":"0.50","branch":null,"locality":{"argument":null,"effect":null,"server_exec":false},"exec":null,"description":"Orders a unit to process command defined by FSM file (silently).\n\nUnlike with execFSM where *_this* is passed to the FSM, the following parameters are passed when using doFSM/commandFSM:\n\n_leader: leader of subgroup with this command\n_destination: command destination/position\n_target: command target\n_units: list of all persons in subgroup","syntaxes":[{"syntax":"unit doFSM [fsmName, position, target]","since":null,"effect":null,"exec":null,"params":[{"name":"unit","type":"Object or Array of Objects","optional":false,"default":null,"description":null,"types":["Object","Array"],"since":null,"text":"unit: Object or Array of Objects"},{"name":"fsmName","type":"String","optional":false,"default":null,"description":null,"types":["String"],"since":null,"text":"fsmName: String"},{"name":"position","type":"Position","optional":false,"default":null,"description":null,"types":["Position"],"since":null,"text":"position: Position"},{"name":"target","type":"Object","optional":false,"default":null,"description":null,"types":["Object"],"since":null,"text":"target: Object"}],"returns":{"type":"Nothing","types":["Nothing"],"description":null,"text":"Nothing"},"form":"binary","operator":null,"left":{"text":"unit","types":["Object","Array"]},"right":{"text":"[fsmName, position, target]","types":["Array"]}}],"examples":[{"text":"```sqf\n_soldierOne doFSM [\"move.fsm\", position player, player];\n```","code":["_soldierOne doFSM [\"move.fsm\", position player, player];"]},{"text":"```sqf\nunits player doFSM [\"move.fsm\", position player, player];\n```","code":["units player doFSM [\"move.fsm\", position player, player];"]}],"multiplayer":null,"problems":null,"aliases":[],"see_also":["FSM","FSM Editor Manual","commandFSM","completedFSM","execFSM","getFSMVariable","setFSMVariable","unitReady"],"notes":[],"categories":["ArmA: Armed Assault: New Scripting Commands","ArmA: Armed Assault: Scripting Commands","Arma 2: Operation Arrowhead: Scripting Commands","Arma 2: Scripting Commands","Arma 3: Scripting Commands","Command Group: Unit Control","Introduced with Armed Assault version 1.00","Scripting Commands","Take On Helicopters: Scripting Commands"]}