The GameDriver Recorder is used to help build test scripts. The Recorder captured mouse and keyboard input and enables you to input additional events during recording.

Getting Started

To view the recorder editor window go to GameDriver Recorder.

User Interface

Record/StopPressing Record will put the Editor into play mode if it isn’t already there. 

Save: Prompts for a file location to save the generated code.

HierarchyPath: Choose Relative or Absolute path for the generated code.

Help: Links to this document.

Clear: Clear the current recorded event list.

Add EventWhen pressed the option selected in the Event Selected will be added.

Event Selector: From here you can select from all available events

Quick Buttons for commonly used event types, visit the API for more information about functionality. Some event types require you to select a gameObject in the Unity hierarchy window.

Direct recording might not always be accurate. In such cases, Quick Buttons can be handy. For example, if a button click action is not aligning correctly while running the recorded code, you can get more precise control by using ClickObject to ensure the same behavior on every run.

The Code Preview area shows a log of events as they are recorded…

Within the code preview window, you can select and copy items to the clipboard. 

NOTE: Code preview will automatically scroll as events are entered. However, after around 500 events this stops working due to limitations to the Unity editor controls.

With the HierarchyPath REPL section, you can run queries and it will highlight found Game Objects.

  1. Help Button: Documentation help for the HierarchyPath query language.

  2. Query field: Enter a HierarchyPath string here. Press enter to perform a search.

  3. Search results: Displays how many items are found by the query.

How To Record a session

  1. Press the Record button to start a recording session. Unity will enter play mode if not already or alternatively play the game to a point where the recording has to be captured and then start the recorder. 

  2. Any events performed during the session such as Mouse Clicks, Drags, Scrolls, Keyboard inputs, and any other supported inputs will be recorded and displayed in the code preview section in real time.

  3. Press the Stop button and it will end the recording session. 

  4. Press the Save button to save the recorded events to a file. Or select and highlight areas in the code preview area that you can copy and paste into your code.

Recording XR inputs

XR References section can be used to preserve the player (HMD and controller) position and orientation at the start of recording. References can be added one at a time manually or dragged and dropped as a group of game objects.

Once the references are set up as required, press the record button and perform any action in the game such as moving or interacting with objects. The test script code will be auto-generated by the recorder in real time.

Fine-tune recorder thresholds to find the right value of frames, position, and rotation preferences for the recorder.

Threshold values can be set in gdio.unity_agent.config.txt which can be found in the Asset directory GDIO\Resources\config\.

Limitations : The XR Recorder currently only supports action-based inputs, so if your project doesn't use this approach, it most likely won't support recording XR inputs. Broader support is in development and will be available in a future release of GameDriver.


Here is a tentative list of features we are considering. If you have anything you would like added, please contact us at

  • Recording and replay of real-time input paths

  • Pause/Resume buttons

  • Resuming recorded events between recording sessions

  • Hotkey for Start/Stop/Pause/Resume, quick events    

  • Additional event types

  • Saving comments in the recording

  • Autosave to specified script source

  • Code preview with syntax highlighting

  • Copy source to clipboard

  • HiearchyPath expands parent upon search