{"name":"getUnitMovesInfo","title":"getUnitMovesInfo","type":"command","url":"https://community.bistudio.com/wiki/getUnitMovesInfo","revid":379161,"updated":"2026-10-21T20:23:17Z","groups":["Animations"],"status":"ok","games":{"arma3":"2.18"},"since":"arma3 2.18","arma3_since":"2.18","locality":{"argument":"global"},"description":"Returns various information about the unit moves (primary animation) and gestures (masked animation)\n\n> [!NOTE]\n> Up until Arma 3 v2.20 this command only worked for a man unit, and other units such as animals couldn't use this command. As of Arma 3 v2.22 animals are supported as well.","syntaxes":[{"syntax":"getUnitMovesInfo unit","params":[{"name":"unit","type":"Object","type_expr":"Object"}],"returns":{"type":"Array","type_expr":"Array","description":"format:\n- 0 - moveProgress: Number - move progress in range 0-1 - 1 - moveTime: Number - move elapsed time (`move progress * move duration`) - 2 - moveDuration: Number - move duration in seconds - 3 - moveFactor: Number - move blend factor - 4 - rtmStep: Vector3D - rtm step (how many meters the unit will move after finishing the animation) - 5 - gestureProgress: Number - gesture progress in range 0-1 - 6 - gestureTime: Number - gesture elapsed time (`gesture progress * gesture duration`) - 7 - gestureDuration: Number - gesture duration in seconds - 8 - gestureFactor: Number - gesture blend factor","text":"Array format:\n\n- 0 - moveProgress: Number - move progress in range 0-1\n- 1 - moveTime: Number - move elapsed time (`move progress * move duration`)\n- 2 - moveDuration: Number - move duration in seconds\n- 3 - moveFactor: Number - move blend factor\n- 4 - rtmStep: Vector3D - rtm step (how many meters the unit will move after finishing the animation)\n- 5 - gestureProgress: Number - gesture progress in range 0-1\n- 6 - gestureTime: Number - gesture elapsed time (`gesture progress * gesture duration`)\n- 7 - gestureDuration: Number - gesture duration in seconds\n- 8 - gestureFactor: Number - gesture blend factor"},"form":"unary","right":{"text":"unit"}},{"syntax":"unit getUnitMovesInfo index","params":[{"name":"unit","type":"Object","type_expr":"Object"},{"name":"index","type":"Number","description":"index of property from the main syntax","type_expr":"Number"}],"returns":{"type":"Anything","type_expr":"Anything","description":"Value of the requested property, or Nothing if index is invalid. See the main syntax."},"form":"binary","left":{"text":"unit"},"right":{"text":"index"}}],"examples":[{"text":"```sqf\n// Getting the move velocity of the animation\nprivate _animInfo = getUnitMovesInfo player;\n// velocity = displacement / time\nprivate _animVelocity = _animInfo # 4 vectorMultiply -1 / _animInfo # 2;    // -1 is because man model is reversed\n                                                                            // so the rtm animation moves \"backwards\"\n```","code":["// Getting the move velocity of the animation\nprivate _animInfo = getUnitMovesInfo player;\n// velocity = displacement / time\nprivate _animVelocity = _animInfo # 4 vectorMultiply -1 / _animInfo # 2;\t// -1 is because man model is reversed\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// so the rtm animation moves \"backwards\""]},{"text":"```sqf\ngetUnitMovesInfo player params [\n    \"_moveProgress\",\n    \"_moveTime\",\n    \"_moveDuration\",\n    \"_moveFactor\",\n    \"_rtmStep\",\n    \"_gestureProgress\",\n    \"_gestureTime\",\n    \"_gestureDuration\",\n    \"_gestureFactor\"\n];\n```","code":["getUnitMovesInfo player params [\n\t\"_moveProgress\",\n\t\"_moveTime\",\n\t\"_moveDuration\",\n\t\"_moveFactor\",\n\t\"_rtmStep\",\n\t\"_gestureProgress\",\n\t\"_gestureTime\",\n\t\"_gestureDuration\",\n\t\"_gestureFactor\"\n];"]}],"see_also":["switchMove","switchGesture","moveTime","gestureState","animationState","vehicleMoveInfo"]}