SendMsgTo - Playable This is an example playable to use SendMessage to call any function on a game object from TimeLine. This opens up many possibilities for using TimeLine in unique ways. There is also a commented out code example for directly manipulating script variables from within TimeLine on the GameObject. Hope this helps. Usage - sendMsgTo - Cube (GameObject) sendMsg - ChangeInt (Function Name) intValue - 7 Code (CSharp): using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Playables; using UnityEngine.Timeline; public class SendMsgTo : BasicPlayableBehaviour { public ExposedReference<GameObject> sendMsgTo; private GameObject _sendMsgTo; public string sendMsg; //public string sendMsg2; public int intValue; public override void OnGraphStart(Playable playable) { _sendMsgTo = sendMsgTo.Resolve(playable.GetGraph().GetResolver()); } public override void OnBehaviourPlay(Playable playable, FrameData info) { if (_sendMsgTo != null) { _sendMsgTo.SendMessage (sendMsg, intValue, SendMessageOptions.DontRequireReceiver); //_sendMsgTo.GetComponent<Test> ().diag = sendMsg2; } } public override void OnBehaviourPause(Playable playable, FrameData info) { } } Code (CSharp): using System.Collections; using System.Collections.Generic; using UnityEngine; public class Test : MonoBehaviour { public bool test; public int secs = 5; public float rec; public int times; public string diag; // Use this for initialization void Start () { } // Update is called once per frame void Update () { } public void ChangeInt(int i) { secs = i; times++; } }