Support Home Task Builder 2 Components Guide

Task Builder 2 Components Guide

  • Overview
  • Prefabs
  • Change Blindness
  • Clickable Hotspot
  • Continue Button
  • Early Exit Button
  • Fixation (prefab)
  • Image Response
  • Reading (Paced)
  • Reading (Self-Paced, Keyboard)
  • Reading (Self-Paced, Mouse)
  • Text Button Response
  • Components
  • Stimuli
  • Audio
  • Background Audio
  • Display Receipt
  • Fixation Cross
  • Hotspot
  • HTML
  • Image
  • Image - Hover
  • Image Sequence
  • Markdown Text
  • Reading
  • Text
  • Video
  • Video Feed
  • Responses
  • Audio Recording (Beta)
  • Button
  • Canvas Painting
  • Click Painting
  • Click Response
  • Keyboard Response
  • Mouse Button Response
  • Palette
  • Single Number Entry
  • Single Text Entry
  • Video Recording (Beta)
  • Form Fields
  • Dropdown
  • Multiple Choice
  • Number Entry
  • Rating Scale
  • Slider
  • Text Entry
  • Feedback
  • Feedback
  • Show Response
  • Appearance
  • Background Color
  • Background Color - Hover
  • Border
  • Border - Hover
  • Text Color
  • Text Color - Hover
  • Control
  • Click To Activate
  • Click To Continue
  • Countdown
  • Draggable
  • Dropzone
  • Dropzone Count
  • Fixation Timing
  • Key To Continue
  • Progress Bar
  • Section Countdown
  • Space To Continue
  • Start in Location
  • Trigger - Active
  • Trigger - Enabled
  • Trigger - Response
  • Trigger - Response Window
  • Trigger - Visible
  • Layout
  • Advanced Positioning
  • Overlay
  • Screen
  • Advance - Accuracy
  • Advance - Continue
  • Advance - Response
  • Advance - Time Limit
  • Branch
  • Change Difficulty - Spreadsheet
  • Change Difficulty - Staircase
  • Collate Responses
  • Compound Responses
  • Early Exit
  • Effort
  • Eye Tracking (Webgazer)
  • Jump To Row
  • Jump To Spreadsheet
  • Mousetracking
  • Increase Progress
  • Save Accuracy
  • Save Data
  • Save Reaction Time
  • Save Response
  • Section Time Limit
  • Set Field on Start
  • Scorer
  • Scorer (Multi)
  • Screen Feedback Time
  • Screen Recording (Beta)
  • Switch
  • Time Limit
  • Wait For Time Limit
  • Randomisation
  • Choose Spreadsheet Public ID
  • Random Assignment per Trial
  • Randomise Trials
  • Randomise Blocks
  • Randomise Between Columns
  • Randomise Between Columns (Multi)
  • Randomise Within Column
  • Select Randomised Subset
  • Multiplayer
  • Chat Box
  • Multiplayer
  • Advance - Multiplayer
  • Advance - Multiplayer Player
  • Video Chat
  • Deprecated
  • Delay Onset
  • Save Data On Response

Overview


In Task Builder 2, you add functionality to your task by adding Objects. Objects consist of one or more components. You can combine components flexibly within an object to achieve the behaviour you want. You can also use prefabs, which are prefabricated objects with two or more components that fulfil a frequently used function.

This page lists each prefab and the components it contains, and each component and how it works. Browse the list on the side to find the prefab or component you're interested in using.

Change Blindness


This prefab creates a simple change blindness setup with two images presented sequentially on a loop with a mask between them.

Components: Image Sequence

Clickable Hotspot


This prefab creates an invisible interactive area of the screen that produces a response when clicked on.

Components: Hotspot, Click Response

Continue Button


This prefab creates a button that advances the screen when clicked on.

Components: Button, Click To Continue

Early Exit Button


This prefab creates a button that the participant can click on to exit the task.

Components: Button, Click Response, Early Exit

Fixation


This prefab creates a fixation cross with configurable timings.

Components: Fixation Timing, Fixation Cross

Image Response


This prefab creates an image with a border colour that changes when hovered over, and that produces a response when clicked on.

Components: Image, Border - Hover, Click Response

Reading (Paced)


This prefab creates a paced reading setup where each segment is presented for 250 ms, presentation is cumulative, and segments are masked until presented.

Components: Reading

Reading (Self-Paced, Keyboard)


This prefab creates a self-paced reading setup where the participant presses the space bar to display the next segment. Presentation is cumulative, and segments are masked until presented.

Components: Reading, Keyboard Response

Reading (Self-Paced, Mouse)


This prefab creates a self-paced reading setup where the participant clicks the left mouse button to display the next segment. Presentation is cumulative, and segments are masked until presented.

Components: Reading, Mouse Button Response

Text Button Response


This prefab creates some text with a border colour that changes when hovered over, and that produes a response when clicked on.

Components: Text, Border - Hover, Click Response

Audio


The audio component allows you to play a single audio file.

First, upload your audio file(s) by going to the Stimuli tab and clicking 'Add Stimuli'. On the Audio component, use the 'choose...' button to select one specific audio file to play on this screen, or vary audio files from trial to trial by binding the Audio Clip setting to the spreadsheet. You can also vary audio files between conditions by binding to Manipulations, or play different audio files based on previous responses by binding to the Store.

For some information about file size and supported formats, have a look at the information in our Technical Checklist. You can read some more information about autoplaying Audio in our Troubleshooting guide.

Adding this component to your task will automatically add an audio test before the task begins. This checks whether participants are able to hear sound on their device. To turn this audio check off, go to Subsystems in the Settings tab on the left-hand sidebar and toggle the Audio subsystem off.

Pro Tip

You can make other actions on the screen happen when your audio file starts or finishes. To do this, add a Trigger component to the same object as your Audio component, and select AudioStart or AudioFinish in the Trigger dropdown. You can see this in action in our Loop audio file example, where a Trigger - Active component is used to start playing an audio file again each time it finishes.

Samples that use this component

Audio Transcription

Auditory Sentence Predictability Task

Alternate Task Switching - Gives the participant audio feedback

CONFIGURATION

Audio File

The audio file to play. Use the 'choose...' button to select one specific audio file to play, or click the binding icon to have the audio file change in different trials (by binding to the Spreadsheet), in different conditions (by binding to a Manipulation), or based on previous responses (by binding to the Store).


Play Automatically

If you toggle on this setting, the audio will start playing automatically at the start of the screen. If you do not toggle on this setting, there are a few ways you can activate the audio, for example, via the Trigger Active component. This way you can trigger audio on some event rather than automatically on start. This is helpful, for example, for an audio feedback scenario.


Auto Advance

If set, advance the screen when the audio finishes playing. When you don't have the Auto Advance option turned on, you can advance the screen using a different component, for example, a Click to Continue or just a Click or Keyboard Response.


Always Finish

If set, this setting will ensure that the audio file finishes playing before the screen advances. It is helpful in scenarios when you want to ensure the whole audio clip is played, even after participant submits a response that normally advances the screen. For example, if the screen should advance when participant clicks on an object with a Click To Continue component, the 'Always Finish' setting will ensure that the screen won't immediately move on and cut the audio off, but instead wait for the audio file to finish playing in full before advancing the screen.


Show Controls

Toggle this setting on to enable the standard audio controls (allowing the participant to control play, pause, and seek). If controls are enabled, the Max Plays setting below will not apply.


Max Plays

Maximum number of times this audio clip can be played. This does not apply if the Show Controls setting is toggled on.

Background Audio


The Background Audio component allows you to play audio in the background of a task. Use this component to start or stop the current background audio.

First, upload your audio file(s) by going to the Stimuli tab and clicking 'Add Stimuli'. On the Background Audio component, use the 'choose...' button to select one specific audio file to play, or vary audio files from trial to trial by binding the Audio setting to the spreadsheet. You can also vary audio files between conditions by binding to Manipulations, or play different audio files based on previous responses by binding to the Store.

For some information about file size and supported formats, have a look at the information in our Technical Checklist. You can read some more information about autoplaying Audio in our Troubleshooting guide.

Adding this component to your task will automatically add an audio test before the task begins. This checks whether participants are able to hear sound on their device. To turn this audio check off, go to Subsystems in the Settings tab on the left-hand sidebar and toggle the Audio subsystem off.

Once started, the background audio will continue to play until it is stopped. This means that you do not need to add a Background Audio component to every screen where you want it to play, just to the screen where you want it to start. The background audio does not loop automatically: once the entire file has played, it will just stop (even if you haven't included the stop setting in your task). If you stop the background audio and then start it again later in the task, it will start playing again from the beginning.

Samples that use this component

Digit Span Text Entry (Background Music)

CONFIGURATION

Audio

The audio file to play. Use the 'choose...' button to select one specific audio file to play, or click the binding icon to have the audio file change in different trials (by binding to the Spreadsheet), in different conditions (by binding to a Manipulation), or based on previous responses (by binding to the Store).


Action

Use this setting to decide whether to start or stop the background audio. If you just want the audio to stop, you don't need to add a file into the 'Audio' setting above.

Display Receipt


The Display Receipt component allows you to display the "receipt" from a preceding Gorilla Shopbuilder task. It is bound to a Store Field of the same name used in the Shopbuilder task.

Tutorial that uses this component

Displaying Receipt

CONFIGURATION

Receipt field

The store field where the receipt has been saved. Unless specified otherwise in your shopbuilder task, this will be 'shopping_cart'


Text Size (px)

The size of the text, in pixels. By default, it is set to size 18.


Autoscale

If set, scale the text according to the size of the screen.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Fixation Cross


The Fixation Cross component allows you to display a pre-made fixation cross. Use a Fixation Timing component to control the timings of the fixation before, during, and after its display.

Samples that use this component

Stop Signal Task (used together with the Fixation Timing component)

CONFIGURATION

Size (px)

Size of the fixation cross. By default, this is set to 120.


Autoscale

If set, scale the text according to the size of the screen.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Hotspot


With the hotspot component, you are able to make an invisible area of the screen interactable. It can be used with components like Click Response to generate responses and is useful for overlaying on top of other visual objects. It is helpful if you don't want to make an entire object (for example, text or image) interactable, but only a specific area on the screen, for example, part of an image. In most cases you'll also want to use a hotspot in conjunction with the Overlay component, so that the size and position of the hotspot is set relative to the size and position of the object it's attached to. This can be crucial when participants have different screen sizes or devices which makes an image/text appear bigger/smaller, so that you can keep the hotspot in the same location relative to the part of stimulus that should be interactable.

Sometimes, the order in which you add objects to your screen affects their functioning. Here is an example with the Hotspot component:

You want to have two Objects: Object 1) with a Text component saying 'Click here' and want to use Object 2) with a Hotspot component combined with Click Response component, to make an area where people can click and which will be marked as a response. Now, if you place your Hotspot first on the Objects list, so the most in the background, behind the 'Click here' text, and have the Text object second on the list, so in front of the hotspot, your hotspot won't work. However, it will work if it is put second on the Objects list, so in front of the Text component so that it covers the Text, you can click on the text to respond and the component will work.

Samples that use this component

Visual Search Click on Location

UI/UX Prototype Navigation Task

Tutorials that use this component

Triggering videos to start playing

CONFIGURATION

Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

HTML


The HTML component is a fully customisable component which allows you to insert your own HTML content into a task. You can use it to add custom formatting to text or images, or to embed videos. For example, you can use the Embed option on a YouTube video to reveal the HTML. This can be copied and pasted into Gorilla's HTML component to present a YouTube video to your participants.

The HTML component doesn't include any default formatting from Gorilla, so text will not be automatically centered as it is in the Text component and the Markdown Text component.

Samples that use this component

Audio Transcription (HTML formatted text)

Misinformation Effect (Embedded YouTube video)

CONFIGURATION

HTML

The HTML to display.


CSS

CSS to load. If you have a lot of formatting you want to apply to your HTML content, it might be best to consider adding it separately through the CSS configuration.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Image


The Image component allows you to display an image on the screen.

First, upload your image file(s) by going to the Stimuli tab and clicking 'Add Stimuli'. On the Image component, use the 'choose...' button to select one specific image file to show on this screen, or vary images from trial to trial by binding the Image setting to the spreadsheet. You can also vary images between conditions by binding to Manipulations, or show different images based on previous responses by binding to the Store.

For some information about file size and supported formats, have a look at the information in our Technical Checklist.

Samples that use this component

Relational Reasoning

Wisconsin Card Sorting Task

Positive Mood Induction Task

CONFIGURATION

Image

The image to display. Use the 'choose...' button to select one specific image to display, or click the binding icon to have the image change in different trials (by binding to the Spreadsheet), in different conditions (by binding to a Manipulation), or based on previous responses (by binding to the Store).


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Image - Hover


The Image-Hover component allows you to display an image on the screen which changes when hovered over, and/or once all responses have been received.

First, upload your image file(s) by going to the Stimuli tab and clicking 'Add Stimuli'. On the Image - Hover component, use the 'choose...' buttons to select specific normal, hover, and complete image files to show on this screen, or vary images from trial to trial by binding these settings to the spreadsheet. You can also vary images between conditions by binding to Manipulations, or show different images based on previous responses by binding to the Store.

For some information about file size and supported formats, have a look at the information in our Technical Checklist.

Samples that use this component

Hebb Learning

CONFIGURATION

Image Normal

The image to display. Use the 'choose...' button to select one specific image to display, or click the binding icon to have the image change in different trials (by binding to the Spreadsheet), in different conditions (by binding to a Manipulation), or based on previous responses (by binding to the Store).


Image Hover

The image to show when Image Normal is hovered over. As above, you can choose this directly or bind it to the Spreadsheet, a Manipulation, or the Store.


Image Complete

The image to show once the screen is complete and all responses have been received. This is useful in conjunction with Feedback to show the participant which option they chose. As above, you can choose this directly or bind it to the Spreadsheet, a Manipulation, or the Store.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Image Sequence


The Image Sequence component allows you to display a set of images that appear in sequence at the same location on the screen. For each image in the sequence, you can select an image and then a display time for that image.

First, upload your image file(s) by going to the Stimuli tab and clicking 'Add Stimuli'. On the Image Sequence component, use the 'choose...' buttons to select one specific sequence of images to show on this screen, or vary image sequences from trial to trial by binding the Image settings to the spreadsheet. You can also vary image sequences between conditions by binding to Manipulations, or show different image sequences based on previous responses by binding to the Store.

For some information about file size and supported formats, have a look at the information in our Technical Checklist.

Toggling on the 'Loop sequence' setting will make the sequence of images repeat until something else advances the screen (e.g. a Click Response). This setting is useful for Change Blindness tasks. The Change Blindness prefab implements a classic Change Blindness setup, using the Image Sequence component to present two images sequentially on a loop with a mask between them.

Samples that use this component

Change Blindness

CONFIGURATION

Sequence Images

The sequence of images to display. The sequence must have at least one image and display time set. You can add as many additional images as you like by clicking the Add button.


Image

The image to display at the current position in the sequence. Use the 'choose...' button to select one specific image to display, or click the binding icon to have the image change in different trials (by binding to the Spreadsheet), in different conditions (by binding to a Manipulation), or based on previous responses (by binding to the Store).


Display time (ms)

How long to display the current image in the sequence.


Loop sequence

Toggle this setting on to loop the image sequence. When the sequence finishes, the display of images will start from the beginning again, looping repeatedly until the screen advances.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Markdown Text


The Markdown Text component allows you to display Markdown-formatted text on the screen.

For example, you can use # before text to create a heading, or insert <br/><br/> between lines of text to create a paragraph break. You can also use HTML within a Markdown Text object to add custom styling.

Type text directly into the Raw Text box, or vary text from trial to trial by binding the Raw Text setting to the spreadsheet. You can also vary text between conditions by binding to Manipulations, or show different text based on previous responses by binding to the Store.

You can also incorporate values from the Spreadsheet, Manipulations, or Store fields within the text you type in the Raw Text box by using the syntax ${spreadsheet:ColumnName}, ${manipulation:ManipulationName}, or ${store:FieldName}.

For more information on how to use Markdown, have a look at our Markdown Guide.

Samples that use this component

Digit Span Text Entry

Navon Global Precedence

N-Back Task (2-Back)

Comprehension Task

Other resources

Running total with live update

CONFIGURATION

Raw Text

Markdown-formatted text to display.

You can enter the text you want to display directly. Alternatively, you can click the binding icon to have the text change in different trials (by binding to the Spreadsheet), in different conditions (by binding to a Manipulation), or based on previous responses (by binding to the Store). Or, you can combine both by entering text and using the syntax ${spreadsheet:ColumnName}, ${manipulation:ManipulationName}, or ${store:FieldName} to incorporate values from the Spreadsheet, Manipulations, or the Store.

In all cases, you can apply formatting to the text using Markdown.


Text Size (px)

The base size of the text, in pixels. By default, it is set to size 18.


Autoscale

If set, scale the text according to the size of the screen.


H Align

Horizontal alignment. Use this to align the text to the left, center, or right of its bounding box.


V Align

Vertical alignment. Use this to align the text to the top, middle, or bottom of its bounding box.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Reading


The Reading component allows you to create paced and self-paced reading tasks.

You can customise where and how segments are displayed and revealed, whether or not segments are masked until revealed, and how long segments are presented for. You can also use the Reading (Paced), Reading (Self-Paced, Keyboard), and Reading (Self-Paced, Mouse) prefabs to quickly create reading paradigms with commonly used settings.

CONFIGURATION

Content

The text content to be read on this screen. By default, the text you enter here will be divided into segments based on spaces - you can change this using the Delimiter setting (available under Show Additional Settings).


Presentation

Select whether you want segments of text to be presented cumulatively or individually.

Progressive = the currently displayed segments will remain on the screen when revealing the next segment.

Isolated = only one segment will be displayed at a time.


Content layout

Select whether you want the current segment to be displayed in its original position within the full text content, or in a fixed position (for example, at the centre of the screen). Both options will obey the H Align and V Align settings.

Relative = the current segment will be displayed in its original position within the full text content on the screen.

Absolute = the current segment will be displayed in the fixed position specified in the Position setting.


Mask

(Only available if Content Layout is set to Relative)

Select whether you want segments that are not currently revealed to be masked.

None = no mask: the text colour of segments that are not currently revealed will match the default background colour (white), making them invisible.

Letter Mask = segments that are not currently revealed will be shown as a number of Xs matching the number of letters in the segment.

Block Mask = segments that are not currently revealed will be covered with a black block.

Block Mask (include spaces) = segments that are not currently revealed, and any spaces between them, will be covered with a black block.


Pacing Type

Select whether you want segment presentation to be paced or self-paced.

Paced = you specify how long each segment displays for.

Self-Paced = the participant manually advances to the next segment.


Pacing speed (ms)

(Only available if Pacing Type is set to Paced)

Set how long you want each segment to be displayed for. After the specified time has expired, the next segment of text will be displayed.


Self-Pacing criteria

(Only available if Pacing Type is set to Self-Paced)

Set the Response value that should trigger the next segment of text to display. For example, you can add a Keyboard Response or Mouse Button Response component to your task: the value you enter into this setting should then equal the Response returned by that component. You can see an example of this setup by adding a Reading (Self-Paced, Keyboard) or Reading (Self-Paced, Mouse) prefab to your task.


Minimum speed (ms)

(Only available if Pacing Type is set to Self-Paced)

Set the minimum length of time a segment of text must be displayed for. Responses received before this time will not trigger the next segment to display until the minimum time has expired.


Maximum speed (ms)

(Only available if Pacing Type is set to Self-Paced)

Set the maximum length of time a segment of text can be displayed for. Once this time expires, the next segment of text will be automatically displayed.


Text Size (px)

Set the size of the text, in pixels. Default: 30.


H Align

Horizontal alignment. Use this to align the text to the left, center or right of its bounding box.


V Align

Vertical alignment. Use this to align the text to the top, middle or bottom of its bounding box.


Delimiter

Select the character that marks the boundary between individual segments of the reading content. Default: space.


Finished Response

Set the response value you want to record when all reading content on the screen has been displayed. Default: content_finished.

This response value will be recorded in the Response column in your data. You can also optionally use it to make something else happen in the task once all reading content has been displayed: for example, automatically advance the screen using an Advance - Response component, or reveal a Continue Button using a Trigger - Visible component.


Font Family

Select the font family you want to use to display the reading text.

Default = Gorilla's default font (Inter var).

Monospaced = A monospaced font, where all letters occupy the same width.

Text


The Text component allows you to display unformatted text on the screen. If you want to display formatted text, use the Markdown Text component instead.

Type text directly into the Text box, or vary text from trial to trial by binding the Text setting to the spreadsheet. You can also vary text between conditions by binding to Manipulations, or show different text based on previous responses by binding to the Store.

Samples that use this component

N-Back Task (with binding to the Spreadsheet)

Alternate Task Switching (on the instructions and debrief screen)

CONFIGURATION

Text

Text to display.

You can enter the text you want to display directly. Alternatively, you can click the binding icon to have the text change in different trials (by binding to the Spreadsheet), in different conditions (by binding to a Manipulation), or based on previous responses (by binding to the Store).


Text Size (px)

The size of the text, in pixels. By default, it is set to size 18.


Autoscale

If set, scale the text according to the size of the screen.


H Align

Horizontal alignment. Use this to align the text to the left, center, or right of its bounding box.


V Align

Vertical alignment. Use this to align the text to the top, middle, or bottom of its bounding box.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Video


The Video component allows you to display a video on the screen.

First, upload your video file(s) by going to the Stimuli tab and clicking 'Add Stimuli'. On the Video component, use the 'choose...' button to select one specific video file to show on this screen, or vary video files from trial to trial by binding the Video setting to the spreadsheet. You can also vary video files between conditions by binding to Manipulations, or show different video files based on previous responses by binding to the Store.

For some information about file size and supported formats, have a look at the information in our Technical Checklist. You can read some more information about autoplaying Video in our Troubleshooting guide.

To embed a video from an external source such as YouTube, use the Embed option on the video to reveal the HTML, then copy and paste this into an HTML component.

Pro Tip

You can make other actions on the screen happen when your video file starts or finishes. To do this, add a Trigger component to the same object as your Video component, and select VideoStart or VideoFinish in the Trigger dropdown. You can see this in action in our Loop audio file example, where a Trigger - Active component is used to start playing an audio file again each time it finishes.

Samples that use this component

Hebb Learning with Video break

Tutorials that use this component

Triggering videos to start playing

CONFIGURATION

Video

The video to display. Use the 'choose...' button to select one specific video file to display, or click the binding icon to have the video file change in different trials (by binding to the Spreadsheet), in different conditions (by binding to a Manipulation), or based on previous responses (by binding to the Store).

By default, the video is set to be inactive at the start of the screen, which means that it won't automatically start playing. To make the video play from screen start, add a Trigger - Active component to the same object as your Video component, set the Trigger to Screen Start, and the Action to Activate.


Controls

Whether or not to enable the standard video controls (allowing the participant to control play, pause, fullscreen mode and others). If controls are enabled, the Max Plays and Auto Advance settings below will not apply.


Muted

Whether to play the video muted.

Toggling this setting on can help with getting videos to autoplay successfully. Autoplay means that, when instructed to, Gorilla will try and play the video without any direct action from the participant. Usually, browsers will prevent this from happening on videos that have audio. So, if you had a video unmuted, and set to play from the start or after a fixed amount of time using Trigger - Active, the browser may block it from playing. However, if you have the video set to be muted, then Gorilla triggering the video to play (rather than the participant) should be allowed.


Max Plays

Maximum number of times this video can be played. This does not apply if Controls are active.


Auto Advance

If set, advance the screen when the video finishes playing. This does not apply if Controls are active.


Restart on Deactivate

If the video receives a deactivate command, it will default to pausing the video in place. When then given an activate command, it will resume where the participant left off. When this setting is switched on, it will instead restart the video from the beginning.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Video Feed


The Video Feed component allows you to show the participant the live feed from their webcam, without actually capturing video recordings. To record video from the participant's webcam, use the Video Recording component.

Adding this component to your task will automatically add a camera check before the task begins. The camera test shows the participant the visual feed from their camera, and allows them to select which camera they want to use. To view this setting, go to Subsystems in the Settings tab on the left-hand side of the Task Builder. The Camera subsystem must be enabled for this component to function - do not toggle it off unless you have removed all components that require it from your task!

CONFIGURATION

Stream Audio

Toggle this setting on to stream audio from the participant's microphone as well as video from their webcam.


Hide Feed

Toggle this setting on to hide the video feed. The "active" light on the participant's webcam will still turn on, indicating that the camera is active.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Audio Recording (Beta)


The Audio Recording component allows you to record audio from your participants by using the participant's microphone. The Audio Recording component is useful when you need to record a participant's voice as part of a task. This is especially useful in language studies. You can record up to 20 minutes for a single recording.

Adding this component to your task will automatically add 1) a microphone check and 2) a recording check before the task begins. The microphone test shows the participant the volume of their microphone and allows them to select which microphone they want to use. The recording test records some audio from the microphone and plays it back to the participant so they can confirm the microphone is recording correctly. To view these settings, go to Subsystems in the Settings tab on the left-hand side of the Task Builder. The Microphone and Recording subsystems must be enabled for this component to function - do not toggle them off unless you have removed all components that require them from your task!

By default, the Audio Recording component will start recording as soon as the screen starts. To disable this behaviour, you will need to add a Trigger - Active component set to deactivate the Audio Recording component on Screen Start. You can then add a second Trigger to activate the Audio Recording component when you want recording to start -- for example, after a certain amount of time has elapsed, or on receiving a Click Response from the participant.

Once you download your audio recordings, these will appear in webm format. If you need them in any other format, any audio processing software will be able to help you with that.

Warning

If Audio Recording and Video Recording components are added to the same screen, they will conflict with each other and could disrupt recording. This means currently you cannot have both Audio Recording and Video Recording components on the same screen. If you need to record both video and audio, add only a Video Recording component - by default this will record audio too.

Samples that use this component

Audio Naming Task (Audio Recording is triggered to start automatically on screen start)

Picture Naming Task (Audio Recording is triggered to start via button)

CONFIGURATION

File Prefix

A custom prefix to use as part of the filename for the audio recording.


Recording Buffer (ms)

Adds additional recording time as a buffer to the end of the recording. If you find the end of a participant's response is being cut off, increase this value. Defaults to 250 ms if left empty.


Pro Tip

Accessing audio files (in preview mode):

When previewing a task, your audio files can be accessed via a URL placed in the metrics. After the preview has finished, download the data and find the URL in this file.


Accessing audio files (in full experiment):

When running a full experiment, all of the audio files can be accessed from the 'Download Experiment Data' button on your Experiment's Data page. The zip folder with all your metrics data will include an 'Uploads' folder, containing all of your audio files.

Participant recordings are labelled using the format: [Experiment ID]-[Experiment Version]-[Participant Private ID]-[Tree Node Key]-[Schedule ID]-[the recording file prefix]-[Trial Number]-[Screen Counter].[File Type]. More details on these values can be found in the Data Columns Guide.


Getting speech onset times:

Sometimes, you need to get the speech onset latency estimates for recorded audio files. The automated tool Chronset could help you doing this for several audio files at once.

Button


The Button component adds a standard HTML button. You'll need to add another component to this object to make it do anything, for example, the Click To Continue component or the Response component. If you are just looking for a standard Continue Button, you can find it in the prefabs.

Samples that use this component

Prisoner's Dilemma

Alternate Task Switching

Tutorials that use this component

Triggering videos to start playing

Other resources

Adding a back button

CONFIGURATION

Label

The label to display on the button.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Canvas Painting


The canvas painting component defines an area of the screen participants can paint on like a canvas. This could be single, or multiple, full brush strokes. You can have a single fixed colour, or add a Palette component as another object on the screen to offer a range of colour options.

You can choose to save the data as an image just containing the painting, or an image with the background element (image/video) saved as well. You can optionally choose to collect additional data with detailed time and coordinate information for each stroke.

If you want participants to be able to erase their painting and start again, you can instruct them to refresh the page. This will take them back to the same screen, but with a blank canvas.

Samples that use this component

Nine-dots Problem Task

Drawing Test Battery

CONFIGURATION

Recording Mode

The recording mode indicates how the canvas painting data should be saved. 'Canvas' will save an image of the painted Canvas only. 'Canvas and background' will include the object specified by the background target setting


Create text data file

Toggle whether or not you want to collect additional data from the Canvas Painting component. If toggled on, a text box will appear where you can specify a prefix for the filename of this additional data file.

This file will contain the following data:

Column Definition
Timestamp Start and end times of each segment and stroke.
Type The type of data in the current row. zone = gives the coordinates, width, and height of an object on the screen; stroke_start = gives the timestamp and coordinates at which the current stroke started; segment_end = gives the timestamp and coordinates at which the current segment ended, as well as the segment's duration and speed; stroke_end = gives the timestamp and coordinates at which the current stroke ended, as well as the stroke's duration and speed; summary = gives the stroke count and average stroke speed for the current screen.
Name For zone rows only. The name of the object whose coordinates are given in this row.
Unique ID For zone rows only. The ID of the object whose coordinates are given in this row.
X Normalised X-coordinate normalised as a proportion of the Gorilla stage. 0 is on the left.
Y Normalised Y-coordinate normalised as a proportion of the Gorilla stage. 0 is at the bottom.
W Normalised For zone rows only. The width of the object in this row, normalised as a proportion of the Gorilla stage.
H Normalised For zone rows only. The height of the object in this row, normalised as a proportion of the Gorilla stage.
X Raw Raw X-coordinate in pixels. 0 is on the left of the screen.
Y Raw Raw Y-coordinate in pixels. 0 is at the top of the screen.
Segment duration Duration of the most recently completed segment in milliseconds.
Segment speed Speed of the most recently completed segment, in number of pixels per millisecond.
Stroke duration Duration of the most recently completed stroke in milliseconds.
Stroke speed Speed of the most recently completed stroke, in number of pixels per millisecond.
Stroke count Number of strokes in total in the current screen.
Average stroke speed Average speed of strokes in the current screen.

Text data file prefix

(Only available if Create text data file is toggled on) Specify a custom prefix to use as part of the filename for the text data file.


Colour Mode

Controls the colouring mode. Single means only one colour will be available and is automatically applied to the brush. Palette means a Palette component can be used to allow multiple colours to be available


Brush Width (px)

The width of the brush in pixels.


Brush Colour

If the Colour Mode is set to Single, this setting controls the colour of the brush.


Brush Opacity (%)

Control how opaque or transparent the colour appears (in both Colour Modes). 0 = full transparency, 100 = full opacity.


Background Target

If the Recording Mode is set to Canvas and Background, this settings allows you to choose which background object should be included.


File Prefix

File Prefix - a custom prefix to use as part of the filename for the canvas painting image.


Player

The player that can interact with this canvas when in Multiplayer mode.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Pro Tip

Accessing canvas images and text data files (in preview mode):

When previewing a task, your canvas images and text data files can be accessed via a URL placed in the metrics. After the preview has finished, download the data and find the URL in this file.

Accessing canvas images and text data files (in full experiment):

When running a full experiment, all of the canvas images and text data files can be accessed from the 'Download Experiment Data' button on your Experiment's Data page. The zip folder with all your metrics data will include an 'Uploads' folder, containing all of your canvas images and text data files.

Participant recordings are labelled using the format: [Experiment ID]-[Experiment Version]-[Participant Private ID]-[Tree Node Key]-[Schedule ID]-[the recording file prefix]-[Trial Number]-[Screen Counter].[File Type]. More details on these values can be found in the Data Columns Guide.

Click Painting


The click painting component defines an area of the screen participants can place painted dots on. This could be a single dot or multiple dots. You can have a single fixed colour, or add a Palette component as another object on the screen to offer a range of colour options.

You can choose to collect the data just as x,y coordinates of the clicks, or as a full image containing the painted dots. This image can additionally include the background element (image/video) as well.

Pro Tip

Understanding Click Painting Coordinates

When Recording Mode is set to Coordinates, the coordinates of each click will be given in the Response column of your data. Each click will generate two rows of data: one containing the raw coordinates, and one containing normalised coordinates.

Raw coordinates: These will appear in the format {"x":x-coordinate,"y":y-coordinate}. Raw coordinates represent distance in pixels from the origin, which is at the top-left corner of the click painting area (i.e., the y-axis is inverted).

Normalised coordinates: These will appear in the format Normalised: {"x":normalised-x-coordinate,"y":normalised-y-coordinate}. Normalised coordinates are bounded between 0 and 1. They represent distance from the origin as a proportion of the click painting area's width and height. The origin is the top-left corner of the click painting area (i.e., the y-axis is inverted). (0.5,0.5) is the middle of the click painting area, and (1,1) is the bottom-right of the click painting area.

Samples that use this component

Spot the Difference

CONFIGURATION

Recording Mode

The recording mode indicates how the click painting data should be saved. 'Coordinates' will save only the coordinates of a click to the metrics - no image will be uploaded. 'Canvas' will save an image of the painted Canvas only. 'Canvas and background' will include the object specified by the background target setting below.


Colour Mode

Controls the colouring mode. Single means only one colour will be available and is automatically applied to the brush. Palette means a Palette component can be used to allow multiple colours to be available.


Brush Width (px)

The width of the brush in pixels.


Brush Colour

If the Colour Mode is set to Single, this setting controls the colour of the brush.


Brush Opacity (%)

Control how opaque or transparent the colour appears (in both Colour Modes). 0 = full transparency, 100 = full opacity.


Background Target

If the Recording Mode is set to Canvas and Background, this setting allows you to choose which background object should be included.


File Prefix

File Prefix - a custom prefix to use as part of the filename for the click painting image.


Player

The player that can interact with this canvas when in Multiplayer mode.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Pro Tip

Accessing click painting images (in preview mode):

When previewing a task, your click painting images (either with or without the background) can be accessed via a URL placed in the metrics. After the preview has finished, download the data and find the URL in this file.

Accessing click painting images (in full experiment):

When running a full experiment, all of the click painting images can be accessed from the 'Download Experiment Data' button on your Experiment's Data page. The zip folder with all your metrics data will include an 'Uploads' folder, containing all of your click painting images.

Participant recordings are labelled using the format: [Experiment ID]-[Experiment Version]-[Participant Private ID]-[Tree Node Key]-[Schedule ID]-[the recording file prefix]-[Trial Number]-[Screen Counter].[File Type]. More details on these values can be found in the Data Columns Guide.

If the recording mode is set to Coordinates, it will not create an extra data file. Instead, the recorded coordinates will be an additional column in the participant's data.

Click Response


The Click Response component can be added to an object and allows you to trigger a response when this object is clicked on. You can find it implemented in the prefabs Image Response and Text Button Response.

Samples that use this component

2D Mental Rotation

Hebb Learning

Navon Global Precedence

Stroop Task - Mobile Version

Wisconsin Card Sorting game

Tutorials that use this component

Triggering videos to start playing

CONFIGURATION

Response

The response to submit when this object is clicked on. You can then optionally score participants' responses as correct or incorrect by setting a Scorer in the Screen tab.


Tag

The tag for this response.


Change cursor to pointer

If toggled on, the mouse cursor for this object will be changed to a pointer.


Click here for more information about response tagging.

Keyboard Response


The Keyboard Response component can be used to trigger responses based on keyboard presses.

This component should be added to the screen where you want your participant to respond.

Samples that use this component

Alternate Task Switching

Dot Probe

N-Back Task (2-Back)

Whole Sentence Reading Task

Flanker Game

Categorisation Game

CONFIGURATION

Mappings

Set of Keys to listen for and Responses to record. Each key you want to listen for can be bound to a response. The response field can be left empty or used to score participants' answers as correct or incorrect, for example, by setting a Scorer in the Screen tab.


Tag

Tag for this response.


Enforce Key Release

If set, Gorilla will require that target keys are released before the screen advances. While this may reduce the impact of participants holding down the key (intentionally or otherwise), it can increase the length of time that the screen is visible for. If screen timing must be tightly controlled, this setting should be left inactive.


Metric on Key Release

If set, Gorilla will trigger an additional metric on key release. This metric will have _keyup appended to the existing response value.


Click here for more information about response tagging.

Mouse Button Response


The Mouse Button Response component enables you to collect responses via the participant's left or right mouse buttons.

Samples that use this component

Categorisation Task - Mouse Response

CONFIGURATION

Mappings

Set of mouse buttons to listen for. Left and right mouse button can both be bound to a response you define. You can then optionally score participants' responses as correct or incorrect by setting a Scorer in the Screen tab.


Tag

Tag for this response.


Click here for more information about response tagging.

Palette


The Palette component provides a set of colours for a user to select from. It can be used alongside either the Canvas Painting component or the Click Painting component, enabling participants to change the colour of their paintbrush.

A screenshot of the Palette Component.
Warning

The Palette component needs to be added to your task as a separate object. Do not add the Palette component to the same object as your Canvas Painting or Click Painting components!

Samples that use this component

Emotional Body Mapping

Gorilla Drawing with Palette

CONFIGURATION

Colour Options

The set of colours available to the participant. Use the colour slider or choose an RGB, HSL or HEX code to define a colour. If binding to the spreadsheet, the easiest is to use HEX codes (with or without the # at the beginning of the code), but you can also use RGB codes in the format: rgb(0,0,0).


Painting Target

The object containing the painting component.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Single Number Entry


The Single Number Entry component lets you trigger responses from a number input. Once the input is complete, participants need to click the Submit button for their answer to be saved. Optionally, you can also allow participants to submit their answer by pressing the Enter key by toggling on the 'Submit on Enter Key' setting.

You can also use the Single Number Entry component to accept multiple sequential responses. Just toggle on the 'Clear On Submit' setting, add another method of advancing the screen (e.g., a Continue Button), and add the corresponding Advance component to the Screen tab (e.g., Advance - Continue).

This component is similar to the Number Entry component. While the Single Number Entry component can submit its own response, triggering a response during the screen, the Number Entry component only has its response triggered at the end of the screen.

Samples that use this component

Digit Span Number Entry

Maths Test

Other resources

Running total with live update

CONFIGURATION

Label

Text to show left of the number input, for example if you want to add instructions.


Button

Text to show on the submit button.


Text Size (px)

Size (in pixels) of all text in this component.


Autoscale

If set, scale the text according to the size of the screen.


Tag

The tag for this response.


Use Limits

Turn this on to only allow numbers in a specific range.


Minimum

Minimum allowed value for number.


Maximum

Maximum allowed value for number.


Initial Value (Optional)

The number you want to be displayed in the input box at screen start. If left blank, the input box will start empty.


Submit On Enter Key

If set, the response will be submitted when the participant presses Enter.


Clear On Submit

If set, once the response is submitted, the contents of the input box will be cleared.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Click here for more information about response tagging.

Single Text Entry


The Single Text Entry component lets you trigger responses from a text input. Once the input is complete, participants need to click the Submit button for their answer to be saved. Optionally, you can also allow participants to submit their answer by pressing the Enter key by toggling on the 'Submit on Enter Key' setting.

You can also use the Single Text Entry component to accept multiple sequential responses. Just toggle on the 'Clear On Submit' setting, add another method of advancing the screen (e.g., a Continue Button), and add the corresponding Advance component to the Screen tab (e.g., Advance - Continue).

This component is similar to the Text Entry component. While the Single Text Entry component can submit its own response, triggering a response during the screen, the Text Entry component only has its response triggered at the end of the screen.

Samples that use this component

Picture Superiority Effect

Real Effort Number Counting Task

Remote Associates Test

Vocabulary Learning and Testing Task

Primacy & Recency Task (using Clear on Submit to allow multiple sequential responses)

CONFIGURATION

Label

Label to show next to the text input field. This can be used as reminder for participants of what they are supposed to enter.


Button

Label to show on the submit button.


Text Size (px)

Size (in px) of all text in this component, including button and label.


Autoscale

If set, scale the text according to the size of the screen.


Tag

The tag for this response.


Initial Text (Optional)

The text you want to be displayed in the text box at screen start. If left blank, the text box will start empty.


Submit On Enter Key

If set, the response will be submitted when the participant presses Enter.


Clear On Submit

If set, once the response is submitted, the contents of the text box will be cleared.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Click here for more information about response tagging.

Video Recording (Beta)


The Video Recording component allows you to create video files of your participants, via their webcam. By default, video recordings will also include audio from the participant's microphone.

Adding this component to your task will automatically add 1) a microphone and camera check and 2) a recording check before the task begins. The microphone and camera test shows the participant the volume of their microphone and the visual feed from their camera, and allows them to select which microphone and camera they want to use. The recording test records some audio and video from the microphone and camera and plays it back to the participant so they can confirm the microphone and camera are recording correctly. To view these settings, go to Subsystems in the Settings tab on the left-hand side of the Task Builder. If you wish to record silent video only, with no audio, you can toggle off the Microphone subsystem. The Camera and Recording subsystems, however, must be enabled for this component to function - do not toggle them off unless you have removed all components that require them from your task!

By default, the Video Recording component will start recording as soon as the screen starts. To disable this behaviour, you will need to add a Trigger - Active component set to deactivate the Video Recording component on Screen Start. You can then add a second Trigger to activate the Video Recording component when you want recording to start -- for example, after a certain amount of time has elapsed, or on receiving a Click Response from the participant.

Warning

We are aware of two current issues that can affect the Video Recording zone:

  1. If Video Recording and Audio Recording components are added to the same screen, they will conflict with each other and could disrupt recording. This means currently you cannot have both Video Recording and Audio Recording components on the same screen. If you need to record both video and audio, add only a Video Recording component - by default this will record audio too.

  2. In the Safari browser, the Video Recording component will sometimes fail to upload recordings at the end of a task, causing the task to get stuck on the final screen. We are investigating this issue; in the meantime, we advise that you test your video recording task thoroughly across browsers, and consider screening out participants using the affected browser.

Samples that use this component

Facial Expression Task

CONFIGURATION

File Prefix

A custom prefix to use as part of the filename for the video recording. This is useful for identifying the different video recording files in your metrics.


Recording Buffer (ms)

Recording buffer - adds additional recording time as a buffer to the end of the recording. If you find the end of a participant's response is being cut off, increase this value. Defaults to 250 ms if left empty.


Pro Tip

Accessing video files (in preview mode):

When previewing a task, your video files can be accessed via a URL placed in the metrics. After the preview has finished, download the data and find the URL in this file.

Accessing video files (in full experiment):

When running a full experiment, all of the video files can be accessed from the 'Download Experiment Data' button on your Experiment's Data page. The zip folder with all your metrics data will include an 'Uploads' folder, containing all of your video files.

Participant recordings are labelled using the format: [Experiment ID]-[Experiment Version]-[Participant Private ID]-[Tree Node Key]-[Schedule ID]-[the recording file prefix]-[Trial Number]-[Screen Counter].[File Type]. More details on these values can be found in the Data Columns Guide.

Multiple Choice


The Multiple Choice component allows the participant to choose from a list of pre-defined options. If multiple answers are allowed, the options will be presented as a checklist. If only one option can be chosen by participants, they will be displayed as radio buttons.

This component is a passive response component. This means that the response itself will not advance the screen. You will need to add another component, such as a Continue Button or a Time Limit, to submit the response and advance the screen. Passive responses are not evaluated until after the screen is ready to advance. This means you cannot use a passive response to determine which screen a participant gets sent to in a Branch component.

CONFIGURATION

Use separate Responses and Labels

Toggle this setting on to specify separate labels (displayed to the participant) and responses (shown in your data).


Options

Add the list of options you wish to provide for this question.


Allow multiple answers

If set, allow multiple answers to be selected using checkboxes. By default, only a single answer can be selected using radio buttons.


Allow 'Other'

If set, adds an "Other" option to the list, with a conditional text box response when selected.


'Other' option label

Label for your "Other" option, which participants will see.


Randomise Order

Toggle this setting on to randomise the order of multiple choice options.


Required

Toggle this setting on to force the participant to select an option from the multiple choice options before continuing.


Tag

Tag for this response.


Text Size (px)

The size of the text, in pixels.


Autoscale

If set, scale the text according to the size of the screen.


V Align

Vertical alignment. Use this to align the multiple choice options to the top, middle or bottom of their bounding box.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Number Entry


The Number Entry component allows a participant to enter a number into a text box.

This component is a passive response component. This means that the response itself will not advance the screen. You will need to add another component, such as a Continue Button or a Time Limit, to submit the response and advance the screen. Passive responses are not evaluated until after the screen is ready to advance. This means you cannot use a passive response to determine which screen a participant gets sent to in a Branch component.

For an active response alternative to the Number Entry (Passive) component, use Single Number Entry.

By default, the Number Entry component will auto-snap (i.e. place the flashing cursor in the number entry box) so that participants can start typing on screen start without having to click on the box. To disable this behaviour, you will need to add a Trigger - Active component set to deactivate the Number Entry component on Screen Start.

Tutorials that use this component

Form Fields

CONFIGURATION

Use Limits

Turn this on to only allow numbers in a specific range.


Minimum

Minimum allowed value for number.


Maximum

Maximum allowed value for number.


Required

Toggle this setting on to force the participant to enter something into the text field before continuing.


Tag

Tag for this response.


Text Size (px)

The size of the text, in pixels. By default, it is set to size 18.


V Align

Vertical alignment. Use this to align the number entry box to the top, middle or bottom of its bounding box.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Rating Scale


The Rating Scale component adds one set of Likert-style choices, from which participants can pick a single option.

This component is a passive response component. This means that the response itself will not advance the screen. You will need to add another component, such as a Continue Button or a Time Limit, to submit the response and advance the screen. Passive responses are not evaluated until after the screen is ready to advance. This means you cannot use a passive response to determine which screen a participant gets sent to in a Branch component.

Samples using this component

Auditory Sentence Predictability Task

Tutorials that use this component

Form Fields

CONFIGURATION

Use separate Responses and Labels

Toggle this setting on to specify separate labels (displayed to the participant) and responses (shown in your data).


Options

Set of options to show in the scale. Use label for the rating words/numbers you want participants to see and choose from. Use value to indicate what value the response will have if the participant selects that option.


Left Label

The label that will be shown to the left of the scale.


Right Label

The label that will be shown to the right of the scale.


Required

Toggle this setting on to force the participant to choose an option from the rating scale before continuing.


Tag

Tag for this response.


Text Size (px)

The size of the text, in pixels. By default, it is set to size 18.


V Align

Vertical alignment. Use this to align the rating scale to the top, middle or bottom of its bounding box.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Slider


The Slider component lets you add a simple slider. The participant can drag the slider to a value within the range you set. The range defaults to 0 - 100.

The start position of the slider handle defaults to the middle of the slider. When using the 'Fixed Start Position' setting, the slider handle will start at the position specified by 'Starting value'. When using the 'Random Start Position' setting, the slider handle will start at a random position between the 'Starting value (min)' and 'Starting value (max)'.

To show the participant a slider without allowing them to respond -- for example, to present them with a reminder of their previous response -- use the Trigger - Enable component to disable the slider on screen start.

This component is a passive response component. This means that the response itself will not advance the screen. You will need to add another component, such as a Continue Button or a Time Limit, to submit the response and advance the screen. Passive responses are not evaluated until after the screen is ready to advance. This means you cannot use a passive response to determine which screen a participant gets sent to in a Branch component.

Samples that use this component

Willingness to Pay Task

Tutorials that use this component

Form Fields

CONFIGURATION

Minimum Value

Sets the minimum value on the slider. The default value is 0.


Maximum Value

Sets the maximum value on the slider. The default value is 100.


Fixed Start Position

Toggle this setting on to specify a fixed start position for the slider handle. By default, the slider handle will start in the middle of the range.


Starting value

When using Fixed Start Position, sets the start position for the slider handle.


Random Start Position

Toggle this setting on to randomise the start position for the slider handle.


Starting value (min)

When using Random Start Position, sets the minimum starting value. The actual value will be between this and the maximum starting value.


Starting value (max)

When using Random Start Position, sets the maximum starting value. The actual value will be between this and the minimum starting value.


Add Labels

Toggle this setting on to add labels to the ends of the slider.


Left-side label

When using Add Labels, defines the label to display to the left end of the slider.


Right-side label

When using Add Labels, defines the label to display to the right end of the slider.


Label Alignment

When using Add Labels, sets the horizontal alignment of the labels. Center = labels will be center-aligned; Inner = labels will be aligned to the side facing the slider; Outer = labels will be aligned to the side facing away from the slider.


Required

Toggle this setting on to force the participant to move the slider before continuing.


Tag

Tag for this response.


Text Size (px)

The size of the text, in pixels. By default, it is set to size 18.


V Align

Vertical alignment. Use this to align the slider to the top, middle or bottom of its bounding box.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Show tooltip

Toggle this setting on to show the current value above the slider in a tooltip (speech bubble).


Hide handle until click

Toggle this setting on to hide the slider handle until the participant first clicks the slider.


Step Size

Sets the step size for the slider. You can enter a whole number or a decimal value.


Allow Keyboard controls

Toggle this setting on to allow the participant to use the left/right arrow keys on the keyboard to move the slider handle.


Continuous Polling

Toggle this setting on to allow the slider to be continuously polled. This will create a row in your data at a set interval containing the current slider value (if the value has changed since the last interval).


Polling Interval (ms)

When using Continuous Polling, sets the polling interval to be used - the time between slider values being recorded. The minimum this can be set to is 500ms.

Text Entry


The Text Entry component allows a participant to enter text into a text box.

This component is a passive response component. This means that the response itself will not advance the screen. You will need to add another component, such as a Continue Button or a Time Limit, to submit the response and advance the screen. Passive responses are not evaluated until after the screen is ready to advance. This means you cannot use a passive response to determine which screen a participant gets sent to in a Branch component.

For an active response alternative to the Text Entry component, use Single Text Entry.

By default, the Text Entry component will auto-snap (i.e. place the flashing cursor in the text entry box) so that participants can start typing on screen start without having to click on the box. To disable this behaviour, you will need to add a Trigger - Active component set to deactivate the Text Entry component on Screen Start.

Samples that use this component

Audio Transcription

UI/UX Prototype Navigation Task

CONFIGURATION

Number of Rows

How many rows tall the input box should be.


Initial Text (Optional)

Initial text to be displayed in the text field. If left blank, the text field will initially be empty.


Log each keypress

Toggle this setting on to log the reaction time and the current contents of the Text Entry box each time a key is pressed. These will be included in your downloaded data as an 'Action' response type.


Required

Toggle this setting on to force the participant to enter something into the text field before continuing.


Tag

Tag for this response.


Text Size (px)

The size of the text, in pixels. By default, it is set to size 18.


V Align

Vertical alignment. Use this to align the text to the top, middle or bottom of its bounding box.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Feedback


The Feedback component enables you to show an image that indicates if the participant's response was correct or incorrect. By default, a green tick will be shown if the response was correct, and a red cross if it was incorrect. You can also use your own feedback images via the Use Images setting.

For the Feedback component to function, you will first need to add a Scorer or Scorer (Multi) component to the Screen tab to define correct responses.

Samples that use this component

Stop Signal Task

Posner Cueing Task

Implicit Attitudes Test (IAT) - pictures and words

Vocabulary Learning and Testing Task

Alternate Task Switching - Uses custom Feedback images and audio feedback

Tutorials that use this component

Feedback

CONFIGURATION

Text Size (px)

Size of the feedback symbol.


Autoscale

If set, scale the text according to the size of the screen.


Duration (ms)

How long to show the feedback for. Leave empty to show until the end of the screen.


Use Images

Whether to use images instead of the standard symbols.


Correct

Image to use for a correct response.


Incorrect

Image to use for an incorrect response.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Show Response


This component can be used to display the current response. This is useful for tasks like Digit Span where you want the participant to be able to see the response they have given so far.

This component is designed to be used with a Text component. Any response with a response type of Response or Action will be set as the content of the text component. You can use it in conjunction with Collate Responses or Compound Responses to show the response that the participant has entered so far.

This is a purely visual component - if you want to save a response to the store to use later, consider using Save Response.

Samples that use this component

Sentence Generation Task

Anagram Task

Tutorials that use this component

Collating Responses

CONFIGURATION

Required Tags

Only responses with the set tags will be displayed. All other responses will be ignored. If unset, all responses will be shown.

Background Color


The Background Color component allows you to change the background colour for individual objects.

This component can also change the screen background colour, if you add it to an object with a blank Text component and adjust the object size to cover the entire screen. The easiest way to do this is to set both the x and y Size settings on the object to 100. This will ensure the object is much bigger than the 24 x 18 grid of the Gorilla stage, and so it will cover the screen on all devices.

To ensure it appears behind other items on the screen, place the object with the background colour component at the top of the object list. It is best to add this component during the final stages of your task design, since once you have added it, you will not be able to see the visual setup of your displays at a glance in the main Displays view.

Samples that use this component

Delay Discount Task

Magnitude Comparison Task (Grey Background)

CONFIGURATION

Background Color

Use the colour slider or choose an RGB, HSL or HEX code to define a colour. If binding to the spreadsheet, the easiest is to use HEX codes (with or without the # at the beginning of the code), but you can also use RGB codes in the format: rgb(0,0,0).


Opacity (%)

Control how opaque or transparent the colour appears. 0 = full transparency, 100 = full opacity. By using this setting on an object with a blank Text component, you can use the Background Color component to create a semi-transparent mask over your stimuli.

Background Color - Hover


The Background Color Hover component allows you to set the background colour for this object (which means not the whole screen) and change the colour when hovered over and/or when the screen has completed. If binding any of the settings below to the spreadsheet, the easiest is to use HEX codes (with or without the # at the beginning of the code), but you can also use RGB codes in the format: rgb(0,0,0).

Samples that use this component

Navon Global Precedence

Drawing Test Battery

CONFIGURATION

Normal

Normal background colour, which is shown by default, before the participant moves the mouse. Use the colour slider or choose an RGB, HSL or HEX code to define a colour.


Hover

Background colour to show when hovering over the object, before the screen is completed (for example, via a Click Response).


Selected

Background colour to show when the element has been interacted with.


Opacity (%)

Control how opaque or transparent the colour appears. 0 = full transparency, 100 = full opacity. By using this setting on an object with a blank Text component, you can use the Background Color - Hover component to create a semi-transparent mask over your stimuli.

Border


Display a coloured border around a visible element. If you want the border to change dynamically with the participant's mouse movements, consider using the Border - Hover component.

Samples that use this component

Wisconsin Card Sorting Task

CONFIGURATION

Border Color

The colour of the border. Use the colour slider or choose an RGB, HSL or HEX code to define a colour.


Border Size (px)

How thick the border is, in pixels.


Border Radius (px)

The radius of the border. Use 0 for sharp right-angled corners, and after that the radius of the border in pixels.

Border - Hover


Set the border colour for this object and change it when hovered over. If you don't want it to change, consider using the Border component instead.

Samples that use this component

Delay Discount Task

2D Mental Rotation

Sentence Generation Task

CONFIGURATION

Normal

Normal border colour, as shown by default. Use the colour slider or choose an RGB, HSL or HEX code to define a colour.


Hover

Border colour to use when the object is hovered over, before the screen is completed (for example, via a Click Response).


Selected

Border colour to use when the element has been interacted with.


Border Size (px)

How thick the border is, in pixels.


Border Radius (px)

The radius of the border. Use 0 for sharp right-angled corners, and after that the radius of the border in pixels.

Text Color


The Text Color component lets you set the colour of the text of an object. Most often, it is used with a Text or Markdown Text component. If you want the text colour to change when the text is hovered over, consider using the Text Color - Hover component.

Samples that use this component

Thatcher Task

CONFIGURATION

Text Color

Colour to set the text to. Use the colour slider or choose an RGB, HSL or HEX code to define a colour. If binding to the spreadsheet, the easiest is to use HEX codes (with or without the # at the beginning of the code), but you can also use RGB codes in the format: rgb(0,0,0).

Text Color - Hover


The Text Color - Hover lets you set the colour of the text of this object and makes it change when hovered over. If you want the text colour not to change when hovered over, consider using the Text Color component. If binding any of the settings below to the spreadsheet, the easiest is to use HEX codes (with or without the # at the beginning of the code), but you can also use RGB codes in the format: rgb(0,0,0).

Samples that use this component

Semantic Priming

CONFIGURATION

Normal

Normal text colour, which is shown by default, before the participant moves the mouse. Use the colour slider or choose an RGB, HSL or HEX code to define a colour.


Hover

Text colour to show when hovering over the object, before the screen is completed (for example, via a Click Response).


Complete

Text color to show when the screen is complete.

Click To Activate


When you add this component to an object, the participant can click on that object to activate it. This applies to audio and video stimuli, where 'activate' means 'start playing'. Use this component when you want the participant to click to play the audio or video, rather than it playing automatically at the start of the screen. For more ways of triggering audio and video to start playing - for example, after a defined amount of time has elapsed - see the Trigger - Active component.

For a video, simply create an object with a Video component and a Click to Activate component - the participant will be able to click the still image of the video to start it playing. For an audio clip, you'll also need to add a visual component for the participant to click, such as a Button.

Samples that use this component

Audio Transcription

Tutorials that use this component

Triggering videos to start playing

Click To Continue


You can add the Click to Continue component to an object to be able to advance to the next screen when the object is clicked on. This can be used together with a Button component, another visual component such as an image, or a Hotspot. If you want the click to be timed and scored as a response, consider using the Click Response component instead.

Samples that use this component

Digit Span Text Entry

Wisconsin Card Sorting Task

Primacy and Recency

Memory Intrusion game

Urn Task Game

Countdown


The Countdown component lets you display the remaining time for the screen, in seconds. Adding a Countdown component to your screen will automatically also add a Time Limit component to the Screen tab.

Samples that use this component

Alternate Task Switching

Cued Task Switching

Semantic Priming (Mobile Version)

Tutorials that use this component

Screen Timelimit and Countdown

CONFIGURATION

Text Size (px)

The size of the text, in pixels.


Autoscale

If set, scale the text according to the size of the screen.


H Align

Horizontal alignment. Use this to align the text to the left, center or right of its bounding box.


V Align

Vertical alignment. Use this to align the text to the top, middle or bottom of its bounding box.


Show Partial Time Remaining (ms)

This is helpful if you only want to display the countdown towards the end of the time limit of the screen. Use this to specify the amount, in ms, of the remaining time you want to display the countdown for.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Draggable


Allow this Object to be dragged around the screen. For full functionality, there needs to be at least one additional object on the screen with a Dropzone component to create areas that Draggable objects can be dragged onto to generate a response. The Draggable object should be placed at the highest layer (i.e. the bottom of the list of objects), otherwise it could get dragged behind other objects and no longer be available for participants to move.

The generated response will be a concatenation of the response in the Draggable component and the response in the Dropzone component. For example, if the Draggable has the response 'ItemA' and the Dropzone has the response 'ZoneB', then dragging the Draggable onto the Dropzone will generate a response with the value 'ItemAZoneB'

To allow participants to drag multiple objects or to let them change their mind before submitting their response, consider adding a Continue Button and an Advance - Response screen component.

Samples that use this component

Drag-and-Drop on Graph

Tutorial that uses this component

Drag and Drop

CONFIGURATION

Response

The response to submit when this object is clicked on.


Tag

The tag for this response.


Single Use

If set, this draggable can only be dragged once.


Drop in Place

If set, this draggable will be dropped where it lands, rather than moving to the centre of the dropzone.


Store Location

Set a Field in the Store to save the object name of the Dropzone where this draggable was dropped. Use this setting if you need to retrieve and use the name of the Dropzone later in the task or the experiment.

Dropzone


Allow objects with the Draggable component to be dropped on this object. Draggable objects will snap to this object when dragged nearby and, when released, will submit a response. Use multiple objects with the Dropzone component to allow multiple response options.

Samples that use this component

Drag-and-Drop on Graph

Tutorial that uses this component

Drag and Drop

CONFIGURATION

Response

The response to append to the draggable response when dropped in this dropzone


Tag

The tag for this response.


Single Occupant

If set, only one draggable can occupy this dropzone at once.


Restrict To Tag

If set, only allow draggables with this response tag into this dropzone


Store Occupant

Only available if Single Occupant setting is toggled on. Set a Field in the Store to save the Response of the Draggable that was dragged to this dropzone. Use this setting if you need to retrieve and use the name of the Draggable later in the task or the experiment.

Dropzone Count


When objects are dragged into or out of this dropzone, increment or decrement a field accordingly. Requires a Dropzone component on this object.

Samples that use this component

Dictator Game (Multiplayer)

CONFIGURATION

Counters

The set of counters to maintain

Fixation Timing


The Fixation Timing component controls the display of a fixation (hide, show, hide). Combine with a Fixation Cross for a quick and easy cross, or add an Image component to use a custom fixation image. The Fixation Timing component will automatically advance the screen once complete.

Samples that use this component

Stop Signal Task (used together with the Fixation Cross component)

Flanker Task (used together with the Fixation Cross component)

Levels of Processing Task

Naming Task

CONFIGURATION

Pre-display Time (ms)

Time between the start of the screen and the display of the fixation.


Display Time (ms)

Time to display the fixation for.


Post-display Time (ms)

Time between the end of the fixation display and the end of the screen.

Key To Continue


You can add the Key to Continue component to an object to be able to advance to the next screen when a certain key is pressed. If you want the key press to be timed and scored as a response, consider using the Key Response component instead.

Samples that use this component

Flanker

CONFIGURATION

Key

Which keyboard key to listen for. Use the words space, enter, backspace, up, down, left or right for those keys, or simply the letter of a regular key.

Progress Bar


The Progress Bar component lets you display a visual progress bar, to indicate a participant's progress through a set of trials, a task, or experiment.

Most commonly, this component is combined with an Increase Progress component on the Screen tab. The Progress Bar component visually displays the progress, while the Increase Progress component defines when progress should increase.

Alternatively, by toggling on the 'Use Custom field' setting and setting the Progress Field to an existing field in the Store, the Progress Bar can display other measures of progress such as the number of correct responses.

Samples that use this component

Relational Reasoning with Progress Bar

Primacy & Recency Task

Progress Bar across multiple Tasks

Tutorials that use this component:

Progress Tutorial

CONFIGURATION

Progress Maximum

The maximum value the progress field can take. For example, if you want to show the participant's progress through 20 trials, you should set this to 20.


Colour

Select the progress bar colour.


Use Custom field

Link the Progress Bar to a custom field in the Store. As an example, you could use the Save Accuracy component to save the total number of correct answers to a field called correct, and then set the Progress Field to correct. This would make the Progress Bar correspond to the number of correct answers.


Progress Field

The value to increment for this progress condition.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Section Countdown


The Section Countdown enables you to display the remaining time for an active Section Time Limit, in seconds or minutes:seconds. Like the Countdown component, which is used together with a Time Limit component for the Screen, the Section Countdown is used together with a Section Time Limit. The Section Time Limit can span over several screens, and its countdown can be used to indicate remaining time for the entire section.

Samples that use this component

Sentence Generation Task

Tutorials that use this component:

Section Time Limit with Countdown

CONFIGURATION

Text Size (px)

The size of the text, in pixels.


Autoscale

If set, scale the text according to the size of the screen.


H Align

Horizontal alignment. Use this to align the text to the left, center, or right of its bounding box.


V Align

Vertical alignment. Use this to align the text to the top, middle, or bottom of its bounding box.


Show Partial Time Remaining (ms)

This is helpful if you only want to display the countdown towards the end of the time limit section. Use this to specify the amount, in ms, of the remaining time you want to display the countdown for.


Format

Select the format you want to display the remaining time in. Choose from Seconds or Minutes:Seconds.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Space To Continue


You can add the Space to Continue component to an object to be able to advance to the next screen when the space bar is pressed. If you want the space bar press to be timed and scored as a response, consider using the Keyboard Response component instead.

Samples that use this component

Dot Probe

Flanker

Stroop Task

Start in Location


Find another object on the screen with a name matching our target. If found, start where that object starts, otherwise start in our natural place.

This can be useful if you use it in combination with the Draggable and Dropzone. For example, you could ask a participant to drag and drop a set of items, perhaps to put them into different categories, and you can save their position to the Store. Then, you could redisplay where they placed them by using this component on a different screen.

CONFIGURATION

Location

The location to start this object in.

Trigger - Active


The Trigger - Active component lets you control the activity state (activated or deactivated) of an object. You can configure this or another object to become active or be deactivated at the start of the screen, after an amount of time, or when a response is received. This is often used for delaying the onset of an object's functionality. While the Trigger - Enabled component relates to things that the participant can interact with, the Trigger - Active component relates to things that happen to the participant (e.g., audios and videos playing).

Pro Tip

You can also use the Trigger - Active component to "chain" audio or video files (i.e. make one start playing only once another has finished playing), or to loop the same audio or video file repeatedly. You can see this in action in our Loop audio file example.

Samples that use this component

Dot Probe

Auditory Sentence Predictability Task

Alternate Task Switching - Uses Trigger - Active to give audio feedback

Tutorials that use this component

Triggering videos to start playing (Task Builder 2)

CONFIGURATION

Trigger

The type of event or data for the trigger to monitor. When this event/data occurs, the trigger will take its action. Options:

  • Screen Start (triggers on the start of the screen),
  • Time Elapsed (triggers a specified time after screen start),
  • Click (triggers when the object this trigger is attached to is clicked on)
  • Response (triggers when a response is generated)
  • Response Accuracy (triggers when a response with a specified accuracy is generated)
  • Response Tag (triggers when a response with a specific tag is generated)
  • Reaction Time (triggers when a response with a reaction time in a specific range is generated)

Additional triggers are available only when the Trigger component is added to an object that includes an Audio or Video component:

  • AudioStart (triggers when the audio starts playing)
  • AudioFinish (triggers when the audio finishes playing)
  • VideoStart (triggers when the video starts playing)
  • VideoFinish (triggers when the video finishes playing)

Time (ms)

(When using Trigger: Time Elapsed) The length of time after screen start that must elapse before the trigger takes its action.


Response

(When using Trigger: Response) The response value that will cause the trigger to take its action. Default: (Any Response), meaning that any response value will cause the trigger to take its action.


Tag

(When using Trigger: Response Tag) The response tag that will cause the trigger to take its action.


Accuracy

(When using Triggers: Response, Response Tag, Response Accuracy) The accuracy value of the response that will cause the trigger to take its action. This can be set to "Correct", "Incorrect" or "Timed Out".


Condition

(When using Trigger: Reaction Time) The comparison operation (condition) to use when determining if the reaction time is in the desired range. This can be set to

  • Less than, <
  • Less than or equal to, <=
  • Equal to, =
  • Not Equal to, !=
  • Greater than, >
  • Greater than or equal to, >=

Threshold (ms)

(When using Trigger: Reaction Time) The reaction time value to compare to (using the comparison operation defined in the Condition setting above).


Include Actions

(When using Triggers: Response, Response Accuracy, Response Tag, Reaction Time) Toggle this setting on to include responses of the Action response type in the responses considered by the Trigger. Examples of the Action response type are the incremental responses logged by the Compound Responses component, or the continuously logged data from the Slider component when the 'Continuous Polling' setting is toggled on.


Filter

Toggle this setting on to run the Trigger's required event/data through additional filtering. This allows you to trigger an action only if additional criteria are satisfied. For example, you could look up the contents of a field in the Store and trigger the action only if that Field is equal to a certain value.


Field

(Only available if Filter is toggled on) The Store field to look at for the filter.


Condition

(Only available if Filter is toggled on) The comparison operation (condition) to use when determining if the store field satisfies the filtering criteria. This can be set to

  • Less than, <
  • Less than or equal to, <=
  • Equal to, =
  • Not Equal to, !=
  • Greater than, >
  • Greater than or equal to, >=

Value

(Only available if Filter is toggled on) The value to compare the Store field to (using the comparison operator defined in the Filter's Condition setting above).


Self Only

(When using Trigger: Response Accuracy) Toggle this setting on to restrict the responses considered by the Trigger to the responses generated by the object the Trigger is attached to.


Target

The object that should be targeted by the Trigger's action. Default: (Self), meaning that the Trigger will target the object it is attached to. By changing the Target, you can attach a Trigger to one object, but have it activate or deactivate another object.


Include Metric

Toggle this setting on to add a metric (= additional row of recorded data) to the participant's data file when the Trigger takes its action.


Metric

(Only available if Include Metric is toggled on) The value you want to record in the Response column of the participant's data when the Trigger takes its action.


Action

Select whether you want to Activate or Deactivate the object when the specified conditions are satisfied.

Trigger - Enabled


Control the state (enabled or disabled) of this object. You can configure this or another object to become enabled or disabled at the start of the screen, after an amount of time, or when a response is received. Often used for controlling whether an object's interactivity can be used. While the Trigger - Active component relates to things that happen to the participant, the Trigger - Enabled component relates to things that the participant can interact with (e.g., keyboard components, buttons, etc.).

Samples that use this component

Posner Cueing Task

Tutorials that use this component

Trigger - Enabled (Game Builder)

CONFIGURATION

Trigger

The type of event or data for the trigger to monitor. When this event/data occurs, the trigger will take its action. Options:

  • Screen Start (triggers on the start of the screen),
  • Time Elapsed (triggers a specified time after screen start),
  • Click (triggers when the object this trigger is attached to is clicked on)
  • Response (triggers when a response is generated)
  • Response Accuracy (triggers when a response with a specified accuracy is generated)
  • Response Tag (triggers when a response with a specific tag is generated)
  • Reaction Time (triggers when a response with a reaction time in a specific range is generated)

Additional triggers are available only when the Trigger component is added to an object that includes an Audio or Video component:

  • AudioStart (triggers when the audio starts playing)
  • AudioFinish (triggers when the audio finishes playing)
  • VideoStart (triggers when the video starts playing)
  • VideoFinish (triggers when the video finishes playing)

Time (ms)

(When using Trigger: Time Elapsed) The length of time after screen start that must elapse before the trigger takes its action.


Response

(When using Trigger: Response) The response value that will cause the trigger to take its action. Default: (Any Response), meaning that any response value will cause the trigger to take its action.


Tag

(When using Trigger: Response Tag) The response tag that will cause the trigger to take its action.


Accuracy

(When using Triggers: Response, Response Tag, Response Accuracy) The accuracy value of the response that will cause the trigger to take its action. This can be set to "Correct", "Incorrect" or "Timed Out".


Condition

(When using Trigger: Reaction Time) The comparison operation (condition) to use when determining if the reaction time is in the desired range. This can be set to

  • Less than, <
  • Less than or equal to, <=
  • Equal to, =
  • Not Equal to, !=
  • Greater than, >
  • Greater than or equal to, >=

Threshold (ms)

(When using Trigger: Reaction Time) The reaction time value to compare to (using the comparison operation defined in the Condition setting above).


Include Actions

(When using Triggers: Response, Response Accuracy, Response Tag, Reaction Time) Toggle this setting on to include responses of the Action response type in the responses considered by the Trigger. Examples of the Action response type are the incremental responses logged by the Compound Responses component, or the continuously logged data from the Slider component when the 'Continuous Polling' setting is toggled on.


Filter

Toggle this setting on to run the Trigger's required event/data through additional filtering. This allows you to trigger an action only if additional criteria are satisfied. For example, you could look up the contents of a field in the Store and trigger the action only if that Field is equal to a certain value.


Field

(Only available if Filter is toggled on) The Store field to look at for the filter.


Condition

(Only available if Filter is toggled on) The comparison operation (condition) to use when determining if the store field satisfies the filtering criteria. This can be set to

  • Less than, <
  • Less than or equal to, <=
  • Equal to, =
  • Not Equal to, !=
  • Greater than, >
  • Greater than or equal to, >=

Value

(Only available if Filter is toggled on) The value to compare the Store field to (using the comparison operator defined in the Filter's Condition setting above).


Self Only

(When using Trigger: Response Accuracy) Toggle this setting on to restrict the responses considered by the Trigger to the responses generated by the object the Trigger is attached to.


Target

The object that should be targeted by the Trigger's action. Default: (Self), meaning that the Trigger will target the object it is attached to. By changing the Target, you can attach a Trigger to one object, but have it enable or disable another object.


Include Metric

Toggle this setting on to add a metric (= additional row of recorded data) to the participant's data file when the Trigger takes its action.


Metric

(Only available if Include Metric is toggled on) The value you want to record in the Response column of the participant's data when the Trigger takes its action.


Action

Select whether you want to Enable or Disable the object when the specified conditions are satisfied.

Trigger - Response


This component allows you to produce a response for events on the screen that do not normally produce a response. For example, you can trigger a response when an Audio file finishes playing, when a certain amount of time has elapsed, or when a participant's reaction time was below or above a certain value.

Define the event that you want to produce the response by selecting an option from the Trigger dropdown. For example, to produce a response when an audio clip finishes playing, add a Trigger - Response component to the object containing your Audio component, and select AudioFinish from the Trigger dropdown. You can indicate what response should be produced in the Response field of the Trigger - Response component.

You can then use the generated response in other components, such as Jump to Row.

CONFIGURATION

Trigger

The type of event or data for the trigger to monitor. When this event/data occurs, the trigger will take its action. Options:

  • Screen Start (triggers on the start of the screen),
  • Time Elapsed (triggers a specified time after screen start),
  • Click (triggers when the object this trigger is attached to is clicked on)
  • Response (triggers when a response is generated)
  • Response Accuracy (triggers when a response with a specified accuracy is generated)
  • Response Tag (triggers when a response with a specific tag is generated)
  • Reaction Time (triggers when a response with a reaction time in a specific range is generated)

Additional triggers are available only when the Trigger component is added to an object that includes an Audio or Video component:

  • AudioStart (triggers when the audio starts playing)
  • AudioFinish (triggers when the audio finishes playing)
  • VideoStart (triggers when the video starts playing)
  • VideoFinish (triggers when the video finishes playing)

Time (ms)

(When using Trigger: Time Elapsed) The length of time after screen start that must elapse before the trigger takes its action.


Response

(When using Trigger: Response) The response value that will cause the trigger to take its action. Default: (Any Response), meaning that any response value will cause the trigger to take its action.


Tag

(When using Trigger: Response Tag) The response tag that will cause the trigger to take its action.


Accuracy

(When using Triggers: Response, Response Tag, Response Accuracy) The accuracy value of the response that will cause the trigger to take its action. This can be set to "Correct", "Incorrect" or "Timed Out".


Condition

(When using Trigger: Reaction Time) The comparison operation (condition) to use when determining if the reaction time is in the desired range. This can be set to

  • Less than, <
  • Less than or equal to, <=
  • Equal to, =
  • Not Equal to, !=
  • Greater than, >
  • Greater than or equal to, >=

Threshold (ms)

(When using Trigger: Reaction Time) The reaction time value to compare to (using the comparison operation defined in the Condition setting above).


Include Actions

(When using Triggers: Response, Response Accuracy, Response Tag, Reaction Time) Toggle this setting on to include responses of the Action response type in the responses considered by the Trigger. Examples of the Action response type are the incremental responses logged by the Compound Responses component, or the continuously logged data from the Slider component when the 'Continuous Polling' setting is toggled on.


Filter

Toggle this setting on to run the Trigger's required event/data through additional filtering. This allows you to trigger an action only if additional criteria are satisfied. For example, you could look up the contents of a field in the Store and trigger the action only if that Field is equal to a certain value.


Field

(Only available if Filter is toggled on) The Store field to look at for the filter.


Condition

(Only available if Filter is toggled on) The comparison operation (condition) to use when determining if the store field satisfies the filtering criteria. This can be set to

  • Less than, <
  • Less than or equal to, <=
  • Equal to, =
  • Not Equal to, !=
  • Greater than, >
  • Greater than or equal to, >=

Value

(Only available if Filter is toggled on) The value to compare the Store field to (using the comparison operator defined in the Filter's Condition setting above).


Self Only

(When using Trigger: Response Accuracy) Toggle this setting on to restrict the responses considered by the Trigger to the responses generated by the object the Trigger is attached to.


Include Metric

Toggle this setting on to add a metric (= additional row of recorded data) to the participant's data file when the Trigger takes its action.


Metric

(Only available if Include Metric is toggled on) The value you want to record in the Response column of the participant's data when the Trigger takes its action.


Emit Response

The response value to emit/send out when the Trigger takes its action.


Emit Response Type

The type of response. This can be Response, Action or Info. This allows you to control what other reactions this response can trigger.

Trigger - Response Window


By default, Gorilla is listening for responses as soon as the screen starts. You can use the Trigger - Response Window component to manually configure Gorilla to start listening for responses at a point you specify.

On your Screen tab, set the Screen Manager Response Window to 'Manual'. Then, in your Objects tab, use the Trigger - Response Window component to open the response window at a more suitable point in the screen. If a participant tries to respond before the response window is open, you'll still be able to see it in your metrics as 'too early', but it won't count as a genuine response and won't be scored as correct/incorrect or advance the screen. This is useful if you don't want to start counting reaction times while, for example, an image or text is displayed, or until an Audio file has finished playing.

Samples that use this component

Flanker

CONFIGURATION

Trigger

The type of event or data for the trigger to monitor. When this event/data occurs, the trigger will take its action. Options:

  • Screen Start (triggers on the start of the screen),
  • Time Elapsed (triggers a specified time after screen start),
  • Click (triggers when the object this trigger is attached to is clicked on)

Additional triggers are available only when the Trigger component is added to an object that includes an Audio or Video component:

  • AudioStart (triggers when the audio starts playing)
  • AudioFinish (triggers when the audio finishes playing)
  • VideoStart (triggers when the video starts playing)
  • VideoFinish (triggers when the video finishes playing)

Time (ms)

(When using Trigger: Time Elapsed) The length of time after screen start that must elapse before the trigger takes its action.


Filter

Toggle this setting on to run the Trigger's required event/data through additional filtering. This allows you to trigger an action only if additional criteria are satisfied. For example, you could look up the contents of a field in the Store and trigger the action only if that Field is equal to a certain value.


Field

(Only available if Filter is toggled on) The Store field to look at for the filter.


Condition

(Only available if Filter is toggled on) The comparison operation (condition) to use when determining if the store field satisfies the filtering criteria. This can be set to

  • Less than, <
  • Less than or equal to, <=
  • Equal to, =
  • Not Equal to, !=
  • Greater than, >
  • Greater than or equal to, >=

Value

(Only available if Filter is toggled on) The value to compare the Store field to (using the comparison operator defined in the Filter's Condition setting above).


Include Metric

Toggle this setting on to add a metric (= additional row of recorded data) to the participant's data file when the Trigger takes its action.


Metric

(Only available if Include Metric is toggled on) The value you want to record in the Response column of the participant's data when the Trigger takes its action.

Trigger - Visible


The Trigger - Visible component lets you control the visiblity of this or another object. You can configure the object to show or hide at the start of the screen, after an amount of time, or when a response is received. It is often used for implementing feedback, but can be handy for showing timed stimuli as well.

By default, all objects will be visible on screen start. To make an object invisible on screen start, add a Trigger - Visible component to the object, set the Trigger to Screen Start, and Visibility to Invisible. You can then add additional Triggers to make the object visible under the conditions you specify.

Pro Tip

To make an object appear when an audio or video file has finished playing, add a Trigger - Visible component to the object that contains your Audio or Video component. Under Trigger, select AudioFinish/VideoFinish. Under Target, select the object that you want to show when the audio or video finishes playing. Under Visibility, select Visible. Note that you will also need to add a trigger to set the relevant object to Invisible on screen start. You can see how to set this up in the Audio Transcription Task sample below.

Samples that use this component

Audio Transcription Task

2D Mental Rotation

Cued Task Switching

Flanker

N-Back Task (2-Back)

Dot Probe

Other resources

Delay feedback until next screen

CONFIGURATION

Trigger

The type of event or data for the trigger to monitor. When this event/data occurs, the trigger will take its action. Options:

  • Screen Start (triggers on the start of the screen),
  • Time Elapsed (triggers a specified time after screen start),
  • Click (triggers when the object this trigger is attached to is clicked on)
  • Response (triggers when a response is generated)
  • Response Accuracy (triggers when a response with a specified accuracy is generated)
  • Response Tag (triggers when a response with a specific tag is generated)
  • Reaction Time (triggers when a response with a reaction time in a specific range is generated)

Additional triggers are available only when the Trigger component is added to an object that includes an Audio or Video component:

  • AudioStart (triggers when the audio starts playing)
  • AudioFinish (triggers when the audio finishes playing)
  • VideoStart (triggers when the video starts playing)
  • VideoFinish (triggers when the video finishes playing)

Time (ms)

(When using Trigger: Time Elapsed) The length of time after screen start that must elapse before the trigger takes its action.


Response

(When using Trigger: Response) The response value that will cause the trigger to take its action. Default: (Any Response), meaning that any response value will cause the trigger to take its action.


Tag

(When using Trigger: Response Tag) The response tag that will cause the trigger to take its action.


Accuracy

(When using Triggers: Response, Response Tag, Response Accuracy) The accuracy value of the response that will cause the trigger to take its action. This can be set to "Correct", "Incorrect" or "Timed Out".


Condition

(When using Trigger: Reaction Time) The comparison operation (condition) to use when determining if the reaction time is in the desired range. This can be set to

  • Less than, <
  • Less than or equal to, <=
  • Equal to, =
  • Not Equal to, !=
  • Greater than, >
  • Greater than or equal to, >=

Threshold (ms)

(When using Trigger: Reaction Time) The reaction time value to compare to (using the comparison operation defined in the Condition setting above).


Include Actions

(When using Triggers: Response, Response Accuracy, Response Tag, Reaction Time) Toggle this setting on to include responses of the Action response type in the responses considered by the Trigger. Examples of the Action response type are the incremental responses logged by the Compound Responses component, or the continuously logged data from the Slider component when the 'Continuous Polling' setting is toggled on.


Filter

Toggle this setting on to run the Trigger's required event/data through additional filtering. This allows you to trigger an action only if additional criteria are satisfied. For example, you could look up the contents of a field in the Store and trigger the action only if that Field is equal to a certain value.


Field

(Only available if Filter is toggled on) The Store field to look at for the filter.


Condition

(Only available if Filter is toggled on) The comparison operation (condition) to use when determining if the store field satisfies the filtering criteria. This can be set to

  • Less than, <
  • Less than or equal to, <=
  • Equal to, =
  • Not Equal to, !=
  • Greater than, >
  • Greater than or equal to, >=

Value

(Only available if Filter is toggled on) The value to compare the Store field to (using the comparison operator defined in the Filter's Condition setting above).


Self Only

(When using Trigger: Response Accuracy) Toggle this setting on to restrict the responses considered by the Trigger to the responses generated by the object the Trigger is attached to.


Target

The object that should be targeted by the Trigger's action. Default: (Self), meaning that the Trigger will target the object it is attached to. By changing the Target, you can attach a Trigger to one object, but have it make another object visible or invisible.


Include Metric

Toggle this setting on to add a metric (= additional row of recorded data) to the participant's data file when the Trigger takes its action.


Metric

(Only available if Include Metric is toggled on) The value you want to record in the Response column of the participant's data when the Trigger takes its action.


Visibility

Select whether you want the object to become Visible or Invisible when the specified conditions are satisfied.


Duration (ms)

The length of time in milliseconds the altered visibility state should last for.


Respect Time Limit

(Only available if duration is set) If toggled on, the screen will advance as soon as it is ready, ignoring any remaining time on the trigger's Duration. If toggled off, the task will always wait for the trigger's Duration to elapse before advancing the screen. This allows you to use Trigger Visible to show feedback for a set duration after a response or a time limit that would normally end the screen.

Advanced Positioning


Use the Advanced Positioning component to define the size and position of objects in absolute pixels or as a percentage of the screen. Specifically, you can define size and position either:

  • in terms of the grid;
  • in terms of the percentage of the viewport size
    • Note: The viewport is the area of the window in which web content can be seen. For instance, for a monitor size 1280x1024 a viewport size can be 1280x863. Information about the participant's monitor size and participant's viewport size will both be included in the downloaded data;
  • in absolute pixels

The Advanced Positioning component only applies to the object this component is added to. If you wish to use the advanced positioning setting for multiple, or all, objects on the screen, you would need to add this component to each of the objects.

There is more information about how this component can be used in the Layout and Positioning Guide.

Samples that use this component:

Hebb Learning

CONFIGURATION

Unit

The unit to define size and position in. Select from Grid, Percent, or Pixels.

Overlay


Use this component to overlay this object on top of another object, and define its size and position relative to that other object, rather than the screen.

This is useful e.g. for placing Hotspots over images or videos

Samples that use this component

Visual Search Click on Location

UI/UX Prototype Navigation Task

Tutorials that use this component

Triggering videos to start playing

CONFIGURATION

Target

The object to define this object's size and position relative to.

Advance - Accuracy


This component controls how the screen advances when a response is received. By default, the screen will advance when the first response is received. This response can be any accuracy. When the Advance - Accuracy component is added to the screen, you can choose to only advance the screen when the first correct or incorrect response is received. In order for this to work, you would also need to add a Scorer component.

Samples that use this component:

Relational Reasoning

CONFIGURATION

Advance On

The response accuracy to advance the screen on.

Advance - Continue


This component controls how the screen advances. By default, the screen will advance when the first response is received. When the Advance - Continue component is added to the screen, the screen will only advance when a continue response is received, preventing other responses from advancing the screen.

You can also choose to allow time limits to also advance the screen, while still preventing responses from advancing the screen. You can do this by using an Advance - Time Limit component.

Advance - Response


The Advance - Response component controls how the screen advances when a response is received. By default, the screen will advance when the first response is received. You can use this component to only advance the screen when a specific response is received. You can directly enter this into the Response field of the component, or you can bind the response to the spreadsheet, if you want the response to vary trial by trial.

Alternatively, the Time Limit component or Click To Continue will continue to advance the screen when using this component.

Samples that use this component:

Visual Search Click on Location (only advance the screen once all items have been found)

Primacy & Recency Task (allow participant to submit multiple responses before continuing)

CONFIGURATION

Response

Choose the specific response that will trigger the screen to advance.

Advance - Time Limit


This component controls how the screen advances. By default, the screen will advance when the first response is received. When the Advance - Time Limit component is added to the screen, the screen will only advance when a time limit is reached, preventing responses from advancing the screen.

Branch


Use the Branch component to control the flow of screens within a display. You can branch participants based on their response, the accuracy of their response, or optionally filter by the value of a field in the store. The default is for participants to go through each screen of a display sequentially, like a slideshow. But with the Branch component, you can control the flow of screens and send participants to other screens within the display instead. This is useful when you want to branch participants to different feedback screens based on their response.

Warning

Responses from passive response components (Dropdown, Multiple Choice, Number Entry, Rating Scale, Slider, or Text Entry) cannot be used in a Branch component on the same screen. This is because passive responses are not evaluated until after the screen is ready to advance.

If you cannot use an active response component instead, use the following workaround. Save the response from the passive response component to the Store. Add an extra blank screen immediately after the screen where you collect the passive response. On the Screen tab of the blank screen, add a Time Limit component and set a short time limit. Then, add the Branch component and use the Filter setting to send the participant to different screens based on the response saved to the Store.

If a participant's answers meet the criteria for multiple branching Destinations, they will be sent to the first specified Destination for which they meet the criteria. You can reorder Destinations by dragging them up and down in the Destinations list within the Branch component to ensure your participants are branched to the appropriate screen.

Samples that use this component

Prisoner's Dilemma

UI/UX Prototype Navigation Task

Real Effort Number Counting Task

Conditional Feedback Task

Iowa Gambling Task

Tutorials that use this component

Screen Branching

Other resources

Adding a back button

Repeating incorrect trials

CONFIGURATION

Destinations

List of locations to branch participants to.

  • Criteria: Set the conditions under which participants should be branched.
    • Any Response (this includes responses from a Continue button, and 'timed out' responses triggered by a timelimit expiring)
    • Response Value - branch only when a particular response is received
    • Response Tag - branch only when a response with a particular tag is received
    • Response Accuracy - branch only when a response with a particular accuracy is received (correct, incorrect, or timed out)
  • Include Actions: Use this toggle to include actions that aren't technically responses (e.g., moving a slider multiple times before pressing Continue to submit the final response) in your criteria for branching.

  • Filter: Use this toggle to create more complex logic using the additional Field, Condition, and Value settings.

    • Field: Select the field that contains the information you want to evaluate.
    • Condition: Select the comparison you want to make between the Field and the Value.
    • Value: Specify the Value that you want to compare the Field to based upon the Condition.
  • Response: Only shown if Criteria = Response Value The value (= actual response content) of the responses you want to trigger branching. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Accuracy: Only shown if Criteria = Response Value/Response Accuracy Choose whether you want only correct, only incorrect, only timed out, or all responses to trigger branching.

  • Response Tag: Only shown if Criteria = Response Tag Choose the tag of the responses you want to trigger branching. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Screen: Choose the screen within the display to branch participants to if the criteria are met. If you want participants to be branched to the next row in the spreadsheet, set this to 'End Display'.

Change Difficulty - Spreadsheet


Use this component to change the difficulty of a task by switching to a different spreadsheet based on a set criteria. You can set conditions for when you would like the difficulty to increase or decrease, reset the accumulated 'score' when the difficulty changes, and whether you would like to preserve the participant's position within the spreadsheet or not.

In your data output, the Spreadsheet column will contain the name of the spreadsheet set at the experiment tree level (for example, by a manipulation). The spreadsheet name in this column will not change as the spreadsheet changes throughout the task. The Current Spreadsheet column will contain the name of the spreadsheet used for the current trial, and will change depending on what spreadsheet the participant is currently on.

Samples that use this component:

Memory Intrusion with Change Difficulty (Spreadsheet)

Tutorials that use this component:

Change Difficulty (Spreadsheet)

Other resources

Increasing task difficulty

CONFIGURATION

Minimum Trials

Use this to set how many trials a participant should complete before switching to another spreadsheet. Leave blank if Gorilla should start testing the switching conditions straight away and on each trial.


Conditions

An array of conditions to test in order to adjust the difficulty, by making the task harder or easier. You can add multiple conditions.

  • Value: Which value to use for comparison. This will usually be a field from the store e.g. using the Save Accuracy component to save Correct and Incorrect answers to a field in the store, and then using the name of that field here.

  • Condition: How to compare the store field to the threshold value. Choose the condition logic from the dropdown menu.

  • Threshold: The value that is tested according to the condition logic to change the difficulty.

  • Direction: If the condition is met, choose whether the difficulty should change to Easier or Harder.


Spreadsheets (easier to harder)

All spreadsheets for this task need to be added here, ordered from easiest to hardest.


When Changing Spreadsheet

A list of fields to update when changing spreadsheet. We often want to change difficulty based on accumulated scores, e.g. number of correct answers. When changing to a new difficulty, we often want to reset these values, as they now pertain to the previous difficulty level we were on.

Note that currently, percentage correct/incorrect cannot be reset. We recommend that you instead use number of correct/incorrect answers. Alternatively, you can save percentage correct/incorrect to a new field on each spreadsheet by specifying the field name in the spreadsheet and using advanced binding.

  • Set Field: Choose which field to update. This will often be the field which stores the score.

  • To Value: State the value which you would like the field to be set to when changing spreadsheets.


Spreadsheet Mode

When changing spreadsheet, Linked mode will preserve the row index between spreadsheets (so if you're on row 6 of SpreadsheetA, and need to go up to SpreadsheetB, you will jump to row 7 of SpreadsheetB). This is useful if you want to maintain a fixed length of trials, and all your difficulty spreadsheets are the same length. Alternatively, Separate mode will keep each spreadsheet's index separate, so if you're on row 6 of SpreadsheetA and need to go up to SpreadsheetB, you will start on row 1.

Change Difficulty - Staircase


Change the difficulty by "Staircasing" a field (or set of fields). Define start values, minimums, and maximums as well as step up and step down values for the fields. Different conditions can be defined for when the field should be adjusted and in which direction.

For example, you might want to adjust the time between two stimuli based on a participant's response time on the previous trial.

Samples that use this component:

Stop Signal Task

Other resources

Staircase with number of reversals

CONFIGURATION

Minimum Trials

Use this to set how many trials that this instance of the staircasing component needs to run before the staircasing implements. Leave blank if Gorilla should start testing the staircasing conditions straight away and on each trial.

For example if you want to step up/down based on the combined accuracy of the previous five trials you would set this to '5'. Then, every five trials, the staircase conditions will be tested.


Conditions

An array of conditions to test in order to adjust the staircase up or down. You can add multiple conditions.

  • Field: The name of the field that contains the values on which to test the staircase conditions e.g. using the Save Accuracy component you could save whether the answer was Correct or Incorrect to a field in the store and then use that field name here.
  • Condition: Drop-down menu containing condition logic.
  • Threshold: The value that is tested according to the condition logic.
  • Direction: If the condition is met, choose whether the staircase should Step Up or Step Down.

Step Parameters

Specify an array of step parameters with details on how to step them if the staircasing conditions are met. You can add multiple instances of Step Parameters.

  • Field to step: Here you can set the name of the field that should change based on the staircasing conditions. The field value will be updated when the staircasing steps up or down, and you can then use it elsewhere in your task or experiment.
  • Start Value: This is the starting value for your field before the first condition is met in the staircasing logic.
  • Step Up: How much the field value should increase when the 'Step Up' condition(s) is met.
  • Step Down: How much the field value should increase when the 'Step Down' condition(s) is met. Note the increase: this means that if you want the field value to decrease, you should enter a negative value here (e.g. -5 to decrease the field by 5).
  • Minimum: The lowest value to step down to.
  • Maximum: The highest value to step up to.

When Changing Step

List of fields to update when stepping up or down. We often want to change difficulty based on accumulated scores, e.g. number of correct answers. When changing to a new difficulty, we often want to reset these values, as they now pertain to the previously difficulty level we were on. You can add multiple instances of this setting.

Note that currently, percentage correct/incorrect cannot be reset. We recommend that you instead use number of correct/incorrect answers.

  • Set Field: The name of the field in the store that you want to change once the step change has been implemented.
  • To Value: The value that the field should be set to after stepping up or down.

Collate Responses


This component listens for individual responses and combines them together into a single response. You can set how many responses you would like to collate into a single response, and define the type of responses you would like the component to listen for. For example, if you have a series of Click Responses and a Keyboard Response, you might only want the Collate Responses component to listen for the Click Response tags. To advance the screen, a Time Limit or a Button with a Click to Continue component must also be added.

Collating responses is useful for trials where you want the participant to enter a sequence of responses (e.g. Digit Span, Trail Making) and, unlike Compound Responses, only capture the final one when they are finished.

Samples that use this component:

Anagram Task

Tutorials that use this component:

Collating Responses (Task Builder 2)

CONFIGURATION

Required Tags

Only responses with the set tags will be combined. All other responses will pass through (and be processed by other screen components normally). If unset, all responses will be combined.


Response Count

How many individual responses should make up a single response. Once the combined response incorporates this many responses, further responses will not be added (but the backspace option can be used to remove responses). If zero or blank, will allow any number of responses to be combined.


Joining Character

When combining responses, will join them using this character (e.g. if using a comma, the responses A and B will be combined as A,B). You can type in the character you want Gorilla to use when separating responses.


Backspace Response

Treat this response as a backspace character, and remove the most recent response from the list. Whenever this response is triggered, instead of that response being added to the collated response, the most recent response is removed. You could trigger this using the backspace key by adding a Keyboard Response Component and choosing the backspace key. Then, set the response of this key, for example 'back', and then set the Backspace Response in the Collate Response component to match this. You could set this up in the same way using clickable images, too, ensuring the click response matches the Backspace Response.


Tag

Tag for the final response that is submitted.

Compound Responses


This component will combine individual responses into a single, combined response. You can set how many responses you would like to combine, and define the type of responses you would like the component to listen for. For example, if you have a series of Click Responses and a Keyboard Response, you might only want the Collate Responses component to listen for the Click Response tags. Compound Responses, unlike Collate Responses, captures all responses you have defined. Once the Response Count has been reached, by default the screen will automatically advance.

The Compound Response component is useful for trail-making tasks and creating on-screen keyboards, for example.

Samples that use this component:

Sentence Generation Task

CONFIGURATION

Required Tags

Only responses with the set tags will be combined. All other responses will pass through (and be processed by other screen components normally). If unset, all responses will be combined.


Response Length

The maximum number of responses that can be combined together into a single response. Once this maximum is reached, no further responses will be added.


Joining Character

When combining responses, will join them using this character (e.g. if using a comma, the responses A and B will be combined as A,B). You can type in the character you want Gorilla to use when separating responses.


Backspace Response

Treat this response as a backspace character, and remove the most recent response from the list. Whenever this response is triggered, instead of that response being added to the compound response, the most recent response is removed. You could trigger this using the backspace key by adding a Keyboard Response Component and choosing the backspace key. Then, set the response of this key, for example 'back', and then set the Backspace Response in the Compound Response component to match this. You could set this up in the same way using clickable images, too, ensuring the click response matches the Backspace Response.

Early Exit


The Early Exit component allows you to break the normal flow of the task spreadsheet by allowing the task to end immediately when certain criteria are satisfied. For example, this can be used in combination with a Text Button Response, and when participants press this button, they will exit the task and progress to the next Node in the Experiment Tree.

Samples that use this component

Visual Search with Early Exit

Other resources

Ending tasks after incorrect responses

CONFIGURATION

Early Exit Conditions

List of criteria to trigger an early exit.

  • Criteria: Set the conditions under which participants should exit.
    • Any Response (this includes responses from a Continue button, and 'timed out' responses triggered by a timelimit expiring)
    • Response Value - exit only when a particular response is received
    • Response Tag - exit only when a response with a particular tag is received
    • Response Accuracy - exit only when a response with a particular accuracy is received (correct, incorrect, or timed out)
  • Include Actions: Use this toggle to include actions that aren't technically responses (e.g., moving a slider multiple times before pressing Continue to submit the final response) in your criteria for an early exit.

  • Filter: Use this toggle to create more complex logic using the additional Field, Condition, and Value settings.

    • Field: Select the field that contains the information you want to evaluate.
    • Condition: Select the comparison you want to make between the Field and the Value.
    • Value: Specify the Value that you want to compare the Field to based upon the Condition.
  • Response: Only shown if Criteria = Response Value The value (= actual response content) of the responses you want to trigger an early exit. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Accuracy: Only shown if Criteria = Response Value/Response Accuracy Choose whether you want only correct, only incorrect, only timed out, or all responses to trigger an early exit.

  • Response Tag: Only shown if Criteria = Response Tag Choose the tag of the responses you want to trigger an early exit. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

Exit Field

Set the name of a Field in the Store to optionally save a value in the event of an early exit. You can then use this value later in the experiment, for example, to branch participants who exited the task early to a different node in the Experiment Tree.

Exit Value

The value to save in the Exit Field in the event of an early exit.

Effort


By using the Effort component, participants responses or actions can be collated into a measure of effort. Have a look at the example of the Effort Button in Task Builder 1, which works in the same way. In Task Builder 2, any response mechanism (Keyboard Response, Mouse Button Response, Click Response, etc.) can be used as a measure of effort. Set a threshold for the desired level of effort. When this threshold has been reached, the effort is marked as complete. The response given when effort is satisfed can be used in other components, such as Trigger - Active.

Samples that use this component:

Stroop Task

CONFIGURATION

Effort

The number of responses required before the effort is satisfied.


Field

A field in the store that should be used to hold the current effort value. This allows you to use the effort value elsewhere or link it to other components. If unset, the component will store the effort value temporarily only


Response

The value to set for the response when the effort threshold is reached. This will appear in the participant metrics. This could also be used as a trigger for other actions e.g. disabling a response component using Trigger - Active


Tag

The tag for the submitted response

Eye Tracking (Webgazer)


The Eye Tracking (Webgazer) component allows you to add basic eye tracking functionality to your task using a participant's webcam. The webcam is only used to track participants' eye movements and translate them into coordinates; no video or audio data is recorded.

First, set up calibration (see 'Calibration' section below). Then, add an Eye Tracking component in Record mode to the Screen tab of any screen(s) within the task where you want to track participants' eye movements.

Adding an Eye Tracking component to your task will automatically add a camera check before the task begins. The camera test shows the participant the visual feed from their camera, and allows them to select which camera they want to use.

Info

The Eye Tracking (Webgazer) component is built using Webgazer.js. It works by using a participant's webcam to detect a participant's face. It then uses prediction models to infer the participant's eye-gaze locations on the screen in real time. Please see the Webgazer team's publication page for advice on how to cite them.

To run Webgazer within Gorilla without disrupting display timing, we've needed to make some changes to the underlying code. (jsPsych identified the same issue and implemented a similar solution!) The Eyetracking (Webgazer) component is therefore based on a modified version of Webgazer, which we have made publically accessible on Github.


Calibration

Before recording eye tracking data, you need to calibrate the Eye Tracking component. To do this, add an Eye Tracking component in Calibrate mode to the Screen tab of an otherwise blank screen. Select the calibration settings you want to use. Then, insert the display containing this screen in your spreadsheet at the point(s) in the task where you want calibration to take place. It can be helpful to add a screen with video or text instructions before the calibration screen so the participant knows what to expect.

Pro Tip

Calibration Tips

Eye tracking via the browser is much more sensitive to changes in environment/positioning than lab-based eye tracking. To increase the chances of successful calibration, instruct your participants to ensure they are in a well-lit environment, to ensure that just one face is present in the central box on the screen, and to avoid moving their head during the calibration.

When previewing/testing your own task, you can get more insight into why calibration failures might be happening by toggling on the 'Show Predicted Gaze Dot' and 'Show Validation Plot' settings (see Configuration below). This will show a dot throughout calibration that indicates where the Eye Tracking component thinks you're looking, and a plot at the end showing the distribution of points it thought you were looking at during the validation phase for each calibration point.

The calibration check first shows the participant the feed from their camera with a black box superimposed on it, and asks the participant to move their face to the centre of the box. Once Webgazer recognises the participant's face, the box will turn green:

Screenshot of first phase of Webgazer calibration check, with participant's face centred in a green box

The participant will then be shown a series of red dots to fixate (calibration), then a series of green dots to fixate (validation). You can customise the colour of these dots in the calibration settings. If calibration is unsuccessful, the participant will see the message 'Calibration Unsuccessful' and a button allowing them to retry (until they reach the maximum number of failures you allow). If calibration is successful, the participant will see the message 'Calibration Successful' and a Next button taking them on to the task.

If you wish, instead of setting up your own calibration, you can have Gorilla automatically run a default calibration at the beginning of the task. To do this, go to Subsystems in the Settings tab on the left-hand sidebar and toggle on 'Enable Auto Calibrate'.

We recommend that you re-calibrate approximately every 10 trials or 3 minutes. This will help you to account for participant 'head-drift' or body repositioning which could affect gaze detection performance.

Warning

Eye tracking with Webgazer does not provide data with which you can reliably detect fixations, saccades, scan paths and blinks. Instead it provides estimates of gaze locations, with an associated confidence -- these can be used to create heatmaps of images, or percentage occupancy of areas of interest. To make this easier, edit the names of objects that correspond to ROIs to help you identify them in your data. We are unable to give support for data analysis, beyond identifying what the output data represents. You can find more information about eye tracking in Gorilla in our Eye Tracking Guide.

For more details on the data you can obtain from the Eye Tracking (Webgazer) component, see our full guide to eye tracking in Task Builder 2.

CONFIGURATION

Mode

Select 'Calibrate' on screens where you want to calibrate the eye tracking component. Select 'Record' on screens where you want to collect eye tracking data.


Collect Raw XY Data

Toggle this setting on to collect an additional data file containing the predicted gaze coordinates. For more information about the information contained in this file, see our TB2 eye tracking guide.

This setting is on by default; if you do not require the raw eye tracking data, you can toggle it off.


File Prefix

A custom prefix to use at the beginning of the filename for the detailed eye tracking file for this screen. This can make it easier to identify files from specific screens or trials.

If you leave the File Prefix setting blank, the data file will be named [calibration/collection]-[Trial Number]-[Screen Counter]. More details on these values can be found in the Data Columns Guide.


Calibration Targets

(Only available in Calibrate mode) The number of calibration points to use. Selecting 'Custom' allows you to define the coordinates of your own set of calibration points.


Custom Target Coordinates

(Only available in Calibrate mode when Calibration Targets is set to Custom) Enter the x and y coordinates of the calibration points you want to use. Coordinates should be entered as a percentage of screen width and height. The top left of the screen is 0,0.


Show Predicted Gaze Dot

(Only available in Calibrate mode) Toggle this setting on to show a red dot on the screen indicating the current predicted gaze location during calibration.


Show Validation Plot

(Only available in Calibrate mode) Toggle this setting on to show the validation plot after calibration. An example validation plot is shown below. The squares represent the points used for calibration, and the circles represent the variation in the detected gaze location for each point. The calibration data for each participant will also be included in your detailed eye tracking data, and you can use it to get an idea of the accuracy and reliability of your eye tracking data.

Screenshot of a validation plot shown after Eye Tracking (Webgazer) calibration

Failed Points Threshold

(Only available in Calibrate mode) Set the number of calibration points participants can fail and still pass calibration. For example, if you set this to 1, participants can fail 1 calibration point and still pass the overall calibration. If they fail more than 1 calibration point, overall calibration will fail and they will be prompted to retry (until reaching the maximum number of attempts you specify).


Max Calibration Attempts

(Only available in Calibrate mode) Set the maximum number of times calibration can be retried. If a participant fails calibration this number of times, they will be prompted to press a 'Finish' button and exit the task.


Calibration Failure Store Value

(Only available in Calibrate mode) Set the name of a Field in the Store where you want to save information about whether a participant failed this calibration. If this calibration is failed overall at any point (even if the participant succeeds on a retry), the field you specify will be set to the value of 1.


Enable Localisation

(Only available in Calibrate mode) Toggle this on if you want to display the default calibration messages in a language other than English.


Calibration successful localisation

(Only available in Calibrate mode when Enable Localisation is toggled on) Enter the text you want to show participants when their calibration is successful.


Calibration failed localisation

(Only available in Calibrate mode when Enable Localisation is toggled on) Enter the text you want to show participants when their calibration failed.


Calibration retry localisation

(Only available in Calibrate mode when Enable Localisation is toggled on) Enter the text you want to show participants on the button to retry calibration.


Calibration finish localisation

(Only available in Calibrate mode when Enable Localisation is toggled on) Enter the text you want to show participants on the button that appears when they have failed calibration the maximum number of times (as specified in the Max Calibration Attempts setting).


Calibration colour

(Only available in Calibrate mode) Select the colour you want to use for calibration points.


Validation colour

(Only available in Calibrate mode) Select the colour you want to use for validation points.


Gaze transition time (ms)

(Only available in Calibrate mode) Set the amount of time, in milliseconds, that the participant has to move their gaze to the next point before we start counting. Default: 1000 ms


Prediction frequency (ms)

(Only available in Calibrate mode) The interval of time, in milliseconds, between processed gaze prediction events while focused on a calibration/validation point. Default: 200 ms


Predictions per point

(Only available in Calibrate mode) The number of gaze predictions to collect on each calibration/validation point. Default: 10


Pro Tip

Accessing detailed eye tracking data files (in preview mode):

When previewing a task, your eye tracking data files can be accessed via a URL placed in the metrics. After the preview has finished, download the data and find the URL in this file.

Accessing detailed eye tracking data files (in full experiment):

When running a full experiment, all of the eye tracking data files can be accessed from the 'Download Experiment Data' button on your Experiment's Data page. The zip folder with all your metrics data will include an 'Uploads' folder, containing all of your eye tracking data files.

Eye tracking data files are labelled using the format: [Experiment ID]-[Experiment Version]-[Participant Private ID]-[Tree Node Key]-[Schedule ID]-[the file prefix]-[calibration/collection]-[Trial Number]-[Screen Counter].[File Type]. More details on these values can be found in the Data Columns Guide.

Jump to Row


The Jump to Row component is used to control the flow of participants through the spreadsheet. At the end of the current display, instead of progressing to the next row, participants will jump to a different row in the spreadsheet depending on their response or response accuracy. You can also optionally filter by the value of a field in the store.

The row that participants jump to can either be a specific, absolute row or a row relative to the current position i.e. going forward or back X rows.

Samples that use this component:

Sentence Generation Task

Real Effort Number Counting Task

Iowa Gambling Game

Other resources

Adding a back button

Store and re-display multiple responses from a single screen

CONFIGURATION

Destinations

List of criteria and rows to jump participants to.

  • Criteria: Set the conditions under which participants should jump to another spreadsheet row.
    • Any Response (this includes responses from a Continue button, and 'timed out' responses triggered by a timelimit expiring)
    • Response Value - jump only when a particular response is received
    • Response Tag - jump only when a response with a particular tag is received
    • Response Accuracy - jump only when a response with a particular accuracy is received (correct, incorrect, or timed out)
  • Include Actions: Use this toggle to include actions that aren't technically responses (e.g., moving a slider multiple times before pressing Continue to submit the final response) in your criteria for jumping to row.

  • Filter: Use this toggle to create more complex logic using the additional Field, Condition, and Value settings.

    • Field: Select the field that contains the information you want to evaluate.
    • Condition: Select the comparison you want to make between the Field and the Value.
    • Value: Specify the Value that you want to compare the Field to based upon the Condition.
  • Response: Only shown if Criteria = Response Value The value (= actual response content) of the responses you want to trigger jumping to row. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Accuracy: Only shown if Criteria = Response Value/Response Accuracy Choose whether you want only correct, only incorrect, only timed out, or all responses to trigger jumping to row.

  • Response Tag: Only shown if Criteria = Response Tag Choose the tag of the responses you want to trigger jumping to row. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Row Index: The row index to jump to. This can be absolute or relative i.e. +10 to go ten rows forward, or -10 to go ten rows back.

  • Relative to current row: Sets whether the row index should be interpreted as relative to the current row or not.

Jump to Spreadsheet


Use the Jump to Spreadsheet component to change the spreadsheet within a task. Instead of participants progressing to the next row in the current spreadsheet, they can change to a different spreadsheet depending on their response or response accuracy. You can also optionally filter by the value of a field in the store.

By default, progress in each spreadsheet is stored independently. When a participant switches to a spreadsheet they've never visited before, they will begin on the first row of that spreadsheet. If they switch to a spreadsheet they have been to before, they will continue on the next row of that spreadsheet. This behaviour can be overridden using the Always Return to Start or Match Current Row settings.

In your data output, the Spreadsheet column will contain the name of the spreadsheet set at the experiment tree level (for example, by a manipulation). The spreadsheet name in this column will not change as the spreadsheet changes throughout the task. The Current Spreadsheet column will contain the name of the spreadsheet used for the current trial, and will change depending on what spreadsheet the participant is currently on.

Tutorials that use this component:

Jump to Spreadsheet (Task Builder 2)

CONFIGURATION

Destinations

List of criteria and spreadsheets to jump participants to.

  • Criteria: Set the conditions under which participants should jump to another spreadsheet.
    • Any Response (this includes responses from a Continue button, and 'timed out' responses triggered by a timelimit expiring)
    • Response Value - jump only when a particular response is received
    • Response Tag - jump only when a response with a particular tag is received
    • Response Accuracy - jump only when a response with a particular accuracy is received (correct, incorrect, or timed out)
  • Include Actions: Use this toggle to include actions that aren't technically responses (e.g., moving a slider multiple times before pressing Continue to submit the final response) in your criteria for jumping to spreadsheet.

  • Filter: Use this toggle to create more complex logic using the additional Field, Condition, and Value settings.

    • Field: Select the field that contains the information you want to evaluate.
    • Condition: Select the comparison you want to make between the Field and the Value.
    • Value: Specify the Value that you want to compare the Field to based upon the Condition.
  • Response: Only shown if Criteria = Response Value The value (= actual response content) of the responses you want to trigger jumping to spreadsheet. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Accuracy: Only shown if Criteria = Response Value/Response Accuracy Choose whether you want only correct, only incorrect, only timed out, or all responses to trigger jumping to spreadsheet.

  • Response Tag: Only shown if Criteria = Response Tag Choose the tag of the responses you want to trigger jumping to spreadsheet. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Spreadsheet: The spreadsheet to jump to. By default, the participant will jump to the current progress they have in that spreadsheet. If they have never visited the spreadsheet before, that will be the first row.

  • Match Current Row: Whether to match the row of the current spreadsheet in the spreadsheet we are moving to. This will overwrite the current progress we have in the new spreadsheet. As this setting is incompatible with Always Return to Start (below), it will be hidden when that setting is on.

  • Always Return To Start: Whether to always return to the start of this spreadsheet. This will overwrite the current progress we have in the new spreadsheet. As this setting is incompatible with Match Current Row (above), it will be hidden when that setting is on.

Mousetracking


Track mouse coordinates throughout the screen.

A possible use case could be that you want to measure how much time participants spent with their mouse on image stimuli that were displayed on the screen. You can find an example of this situation in our Mousetracking tutorial. If you don't record coordinates (see setting below), Gorilla will provide the percentage and the exact time participants spent with their mouse on your object components (e.g. images, videos, buttons, etc.).

Samples that use this component

Mousetracking

CONFIGURATION

Record Coordinates

Whether to record a stream of all mouse coordinates in a separate file. This stores X,Y positions every time the mouse moves, and thus generates a lot of data. If you're only interested in which zones the mouse was over, or which quadrants of the screen the mouse was in, then you may not need this.


Pro Tip

If Record Coordinates is toggled on

Accessing coordinate recording files (in preview mode): When previewing a task, your coordinate recording files can be accessed via a URL placed in the metrics. After the preview has finished, download the data and find the URL in this file.

Accessing screen recording files (in full experiment): When running a full experiment, all of the coordinate recording files can be accessed from the 'Download Experiment Data' button on your Experiment's Data page. The zip folder with all your metrics data will include an 'Uploads' folder, containing all of your coordinate recording files.

Participant recordings are labelled using the format: [Experiment ID]-[Experiment Version]-[Participant Private ID]-[Tree Node Key]-[Schedule ID]-[the recording file prefix]-[Trial Number]-[Screen Counter].[File Type]. More details on these values can be found in the Data Columns Guide.

Increase Progress


Use the Increase Progress component to increment participants' progress based on participants' response or response accuracy. The progress can be displayed to participants by using a Progress Bar component component.

Use the Criteria setting to set the conditions under which progress should increase. The 'Any Response' setting includes responses from timeouts and Continue buttons. If you would like the Progress Bar to increase once per trial, give the responses tags, and use the Response Tag to increase the Progress.

Samples that use this component:

Relational Reasoning with Progress Bar

Primacy & Recency Task

Progress Bar across Multiple Tasks

Tutorials that use this component:

Progress Tutorial

CONFIGURATION
  • Criteria: Set the conditions under which progress should increase.
    • Any Response (this includes responses from a Continue button, and 'timed out' responses triggered by a timelimit expiring)
    • Response Value - increase progress only when a particular response is received
    • Response Tag - increase progress only when a response with a particular tag is received
    • Response Accuracy - increase progress only when a response with a particular accuracy is received (correct, incorrect, or timed out)
  • Include Actions: Use this toggle to include actions that aren't technically responses (e.g., moving a slider multiple times before pressing Continue to submit the final response) in your criteria for increasing progress.

  • Filter: Use this toggle to create more complex logic using the additional Field, Condition, and Value settings.

    • Field: Select the field that contains the information you want to evaluate.
    • Condition: Select the comparison you want to make between the Field and the Value.
    • Value: Specify the Value that you want to compare the Field to based upon the Condition.
  • Response: Only shown if Criteria = Response Value The value (= actual response content) of the responses you want to increase progress. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Accuracy: Only shown if Criteria = Response Value/Response Accuracy Choose whether you want only correct, only incorrect, only timed out, or all responses to increase progress.

  • Response Tag: Only shown if Criteria = Response Tag Choose the tag of the responses you want to increase progress. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.


Use Custom field

Set up a custom field in the Store for accessing the progress data. If used, make sure to use the equivalent setting in the progress bar component you want to display the progress in.

By default, progress accumulates throughout the entire experiment (i.e., across tasks). To have progress reset between tasks, you will need to toggle on 'Use Custom Field' on each Progress Bar and Increase Progress component that you have in your tasks and set this to a different Field for each task. This will ensure progress is tracked separately within each task.

If you want to track progress across the whole experiment, just use one Custom Field or toggle this off, but increase the Progress Maximum on the Progress Bar settings in every task to the total number of trials in the experiment. You can see how to set this up in the Progress Bar across Multiple Tasks sample linked above.


Progress Field

Set the field in the Store you want to use to track progress.

Save Accuracy


Use this component to save a variety of measures of accuracy to specific fields in the store. For example, you can save the number or percentage of correct and incorrect responses, or the number of consecutively correct or incorrect responses. You can also save the total number of trials by selecting Criteria = Any Response and Attribute = Total. You can then, for example, show participants their accuracy at the end of the task by binding a Text component to the same field in the store, or control the flow of the task with Change Difficulty - Staircase.

Samples that use this component

2D Mental Rotation

Alternate Task Switching

Cued Task Switching

Digit Span Number Entry

Dot Probe

Wason Selection Task (Four Card Problem)

Wisconsin Card Sorting Game

Tutorials that use this component

Scoring

Other resources

Ending tasks after incorrect responses

Increasing task difficulty

Repeating incorrect trials

CONFIGURATION

Destinations

List of locations to save accuracy measures to.

  • Criteria: Choose a criterion to select which responses you want to incorporate into your accuracy measure.
    • Any Response (this includes responses from a Continue button, and 'timed out' responses triggered by a timelimit expiring)
    • Response Value - select particular responses
    • Response Tag - select responses with a particular tag
    • Response Accuracy - select responses with a particular accuracy (correct, incorrect, or timed out)
  • Include Actions: Use this toggle to include actions that aren't technically responses (e.g., moving a slider multiple times before pressing Continue to submit the final response) in your accuracy measure.

  • Filter: Use this toggle to create more complex logic using the additional Field, Condition, and Value settings.

    • Field: Select the field that contains the information you want to evaluate.
    • Condition: Select the comparison you want to make between the Field and the Value.
    • Value: Specify the Value that you want to compare the Field to based upon the Condition.
  • Response: Only shown if Criteria = Response Value The value (= actual response content) of the responses you want to incorporate into your accuracy measure. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Accuracy: Only shown if Criteria = Response Value/Response Accuracy Choose whether you want to incorporate only correct, only incorrect, only timed out, or all responses into your accuracy measure.

  • Response Tag: Only shown if Criteria = Response Tag Choose the tag of the responses you want to incorporate into your accuracy measure. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Attribute: Choose a measure of accuracy from the dropdown list: Total, Percentage, or Consecutive.

  • Field: Save to a chosen field in the store.

Save Data


The Save Data component can be used to add or update a value in the Store when specific criteria are satisfied. This could be based on receiving a specific response, the accuracy of that response, or other fields within the Store.

For example, this can be used to award points for correct answers, and subtract points for incorrect answers. To award points based on response accuracy, a Scorer component will also be needed.

If you set up multiple Destinations within a single Save Data component, the order of these Destinations are important. Gorilla will run the Save Data logic from top to bottom. Therefore, you will need to make sure the Destinations that should be executed first are dragged to the top of the list in the component. You can see this in action in our Play multiple audio files example where we evaluate if all three audio files have been played before advancing the screen.

This component replaces the previous Save Data on Response component.

Samples that use this component

Visual Search Click on Location

Learning with Dropout (repeat incorrect trials)

Iowa Gambling Game

Tutorials that use this component

Displaying Score (Task Builder 2)

Delayed Reward (Go / No Go) (Game Builder)

Trigger - Enabled (Game Builder)

Other resources

Delay feedback until next screen

Ending tasks after incorrect responses

Repeating incorrect trials

Running total with live update

Store and re-display multiple responses from a single screen

CONFIGURATION

Destinations

List of locations to save data to.

  • Criteria: Set the conditions under which the data should save to the store.
    • Any Response (this includes responses from a Continue button, and 'timed out' responses triggered by a timelimit expiring)
    • Response Value - save data only when a particular response is received
    • Response Tag - save data only when a response with a particular tag is received
    • Response Accuracy - save data only when a response with a particular accuracy is received (correct, incorrect, or timed out)
  • Include Actions: Use this toggle to include actions that aren't technically responses (e.g., moving a slider multiple times before pressing Continue to submit the final response) in your criteria for saving data.

  • Filter: Use this toggle to create more complex logic using the additional Field, Condition, and Value settings.

    • Field: Select the field that contains the information you want to evaluate.
    • Condition: Select the comparison you want to make between the Field and the Value.
    • Value: Specify the Value that you want to compare the Field to based upon the Condition.
  • Response: Only shown if Criteria = Response Value The value (= actual response content) of the responses you want to trigger saving data. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Accuracy: Only shown if Criteria = Response Value/Response Accuracy Choose whether you want only correct, only incorrect, only timed out, or all responses to trigger saving data.

  • Response Tag: Only shown if Criteria = Response Tag Choose the tag of the responses you want to trigger saving data. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.


  • Operation: Select whether the value should be set, added or subtracted.

    • Value: Set the value to be added or subtracted. This can be entered directly into the component, bound to the spreadsheet or retrieved from the store.

      • Clamp: If the operation is 'Add' or 'Subtract', toggle this on to set an upper and/or lower limit for the updated value.

        • Min: If Clamp is toggled on, you can set a minimum limit for the value.

        • Max: If Clamp is toggled on, you can set a maximum limit for the value.


  • Field: Save to a chosen field in the store.

Save Reaction Time


Use this component to save participants' response reaction time to specific fields in the store. You can store the current, average, or total reaction time for all or selected responses. These measures can then be displayed to participants by binding a Text component to the field in the store. Also, the reaction time measure in the store can be used in combination with a Jump to Row component, for example, to control the flow of the task based on reaction time. Although we save reaction time to your data by default, you can use this component to save participants' reaction times to the Store so that they are available for use elsewhere in your task or Experiment Tree.

Samples that use this component:

Dot Probe

CONFIGURATION

Destinations

List of locations to save reaction time measures to.

  • Criteria: Choose a criterion to select which responses you want to save the reaction time for.
    • Any Response (this includes responses from a Continue button, and 'timed out' responses triggered by a timelimit expiring)
    • Response Value - select particular responses
    • Response Tag - select responses with a particular tag
    • Response Accuracy - select responses with a particular accuracy (correct, incorrect, or timed out)
  • Include Actions: Use this toggle to include actions that aren't technically responses (e.g., moving a slider multiple times before pressing Continue to submit the final response).

  • Filter: Use this toggle to create more complex logic using the additional Field, Condition, and Value settings.

    • Field: Select the field that contains the information you want to evaluate.
    • Condition: Select the comparison you want to make between the Field and the Value.
    • Value: Specify the Value that you want to compare the Field to based upon the Condition.
  • Response: Only shown if Criteria = Response Value The value (= actual response content) of the responses you want to save the reaction time for. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Accuracy: Only shown if Criteria = Response Value/Response Accuracy Choose whether you want to save reaction time for only correct, only incorrect, only timed out, or all responses.

  • Response Tag: Only shown if Criteria = Response Tag Choose the tag of the responses you want to save the reaction time for. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Attribute: Choose the reaction time measure you want to save from the dropdown list: Current, Average (Mean), or Total.

  • Field: Save to a chosen field in the store.

Save Response


Using this component, you can save a particular response to the store. This stored response can be retrieved later on within the same task, or within a different task later on in the experiment tree. Responses saved to the store using this component can be shown to participants later on. If there are several responses recorded on one screen, you can save all of them or individual ones, but you will need to save them to different Fields in the Store.

Samples that use this component:

Prisoner's Dilemma

Tutorials that use this component:

Show Recent Answer

Response Recap (Task Builder 2)

Other resources

Running total with live update

Showing previous responses

Store and re-display multiple responses from a single screen

CONFIGURATION

Destinations

List of locations to save responses to.

  • Criteria: Choose a criterion to select which responses you want to save.
    • Any Response (this includes responses from a Continue button, and'timed out' responses triggered by a timelimit expiring)
    • Response Value - select particular responses
    • Response Tag - select responses with a particular tag
    • Response Accuracy - select responses with a particular accuracy (correct, incorrect, or timed out)
  • Include Actions: Use this toggle to include actions that aren't technically responses (e.g., moving a slider multiple times before pressing Continue to submit the final response).

  • Filter: Use this toggle to create more complex logic using the additional Field, Condition, and Value settings.

    • Field: Select the field that contains the information you want to evaluate.
    • Condition: Select the comparison you want to make between the Field and the Value.
    • Value: Specify the Value that you want to compare the Field to based upon the Condition.
  • Response: Only shown if Criteria = Response Value The value (= actual response content) of the responses you want to save. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Accuracy: Only shown if Criteria = Response Value/Response Accuracy Choose whether you want to save only correct, only incorrect, only timed out, or all responses.

  • Response Tag: Only shown if Criteria = Response Tag Choose the tag of the responses you want to save. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Field: Save to a chosen field in the store.

Section Time Limit


The Section Time Limit component allows you to set a time limit for a section of a task or game. For example, this could be for a series of screens in a display, scenes in a game, or trials in a task.

Set the mode to 'Start' to begin the Section Time Limit. The duration of the time limit will be set here.

On another screen, add a Section Time Limit and set the mode to 'Check'. This will review the remaining time on the Section Time Limit. If the time limit expires, it will emit the set response with the chosen tag. This response can then be used in other screen components, such as Jump to Row, to control how the task behaves when the time limit expires.

Use the 'Pause' mode to pause the time limit on a screen. The time spent on this screen won't count towards the participant's time in the section.

You can use a Section Countdown component, in conjunction with a Section Time Limit in Check mode, to display the time remaining in the Section Time Limit.

Samples that use this component:

Sentence Generation Task

Tutorials that use this component:

Section Time Limit with Countdown

CONFIGURATION

Screen Timelimit Actions

The set of screen timelimit actions to run on this screen. These should be placed in the order you want them to run.


Mode

The Mode of operation for the component. Set to Start for a screen where the Section Timelimit should start running, Pause if you want to pause the timer, Check if you want to check if the timer has expired, and Stop if you want to stop the current section timelimit completely.


Time Limit (ms)

When using Start mode, how long the section will last in milliseconds.


Response

When using Check mode, the response value that should be generated when the Section Time Limit expires. Other components (such as Jump to Row) can listen for this response, triggering the desired behaviour for a Section Time Limit expiring.


Tag

When using Check mode, the tag for the response generated when the Section Time Limit expires.


Strict

When using Check mode, toggle this setting on to make the section time limit resolve as soon as the time limit expires. Otherwise, it will wait until the end of the current screen.

Set Field on Start


Initialise a field in the store on screen start. Allows you to give one or more fields in the store a value at the beginning of the screen. This is useful for setting a store field to a starting value before using it in staircasing with the Change Difficulty - Staircase component, for example. You can additionally control the starting value of the field with a spreadsheet or manipulation, for example.

Samples that use this component

Visual Search Click on Location

Other resources

Running total with live update

Stable random assignment

Store and re-display multiple responses from a single screen

CONFIGURATION

Field

The field to set.


Value

The value to set it to.

Scorer


The Scorer component is used to record participant responses as correct or incorrect. The accuracy of responses given via Click Response, Keyboard Response and other Response components can be recorded using the Scorer.

The correct answer can be entered directly into the Correct Answer field of the component. If the correct answer changes trial by trial, then the component can be bound to the spreadsheet. Once you have added scoring, you can use a Feedback component to present a green tick when correct, or red cross when incorrect.

By default, scoring is case-sensitive. To ignore case when scoring correct answers, toggle off the 'Case-sensitive' setting.

If you have multiple answers that are considered correct, use the Scorer (Multi) component instead.

Samples that use this component:

2D Mental Rotation

Wisconsin Card Sorting Task

Relational Reasoning

Stroop Task - Mobile Version

Memory Intrusion Game

Tutorials that use this component:

Scoring Tutorial (Task Builder 2)

Other resources

Delay feedback until next screen

Ending tasks after incorrect responses

Increasing task difficulty

Repeating incorrect trials

CONFIGURATION

Correct Answer

Correct answer. Responses matching this will be considered correct.


Case-sensitive

Toggle this setting off to ignore case when marking answers as correct or incorrect. By default, this setting is toggled on, meaning that only answers that match the content and case of the correct answer will be scored as correct.

Scorer (Multi)


The Scorer (Multi) component allows you define multiple correct answers. This could allow participants to choose one of multiple possible correct answers, or choose all correct answers presented on a screen, for example using Click Response components. On screens where you collect more than one response, it also allows you to define correct answers separately for different responses by using the 'And includes Tag' setting.

The correct answers can be entered directly into the Correct Answers field, where you can add as many as you want, or bound to the spreadsheet if the correct answers change trial by trial. Once you have added scoring, you can use a Feedback component to present a green tick when correct, or red cross when incorrect.

By default, scoring is case-sensitive. To ignore case when scoring correct answers, toggle off the 'Case-sensitive' setting. You can configure this separately for each defined correct answer.

If you only have one response on the screen, with only one answer that is considered correct, use the Scorer component instead.

Samples that use this component:

Sentence Generation Task (one response per screen, multiple correct answers)

Cloze Task (multiple responses on one screen, each with their own correct answer)

CONFIGURATION

Correct Answers

Correct answers. Responses matching any of these will be considered correct.


Case-sensitive

Toggle this setting off to ignore case when marking answers as correct or incorrect. By default, this setting is toggled on, meaning that only answers that match the content and case of the correct answer will be scored as correct.


And includes Tag

Select a response tag from the dropdown. The current Correct Answer will be defined as correct only for responses that have this tag.

Use this setting together with response tags to define different correct answers for different responses on the screen. You can see how to set this up in the Cloze Task sample linked above. Find out more about response tagging in our Response Processing Guide.

Screen Feedback Time


Adds an amount of time at the end of the screen (once all responses have been received and the screen is ready to advance). This is normally to allow any feedback to show for a bit longer, and avoid snap transitions to the next screen.

Samples that use this component

N-Back Task (2-Back)

Simon Task (Stimulus-Response Compatibility)

Urn Task Game

CONFIGURATION

Feedback Time (ms)

The amount of time to allow for feedback to display

Screen Recording (Beta)


Warning

This functionality is limited to desktop, Chromium based browsers - Chrome, Opera and Edge - due to restrictions implemented by the other browser vendors.

The Screen Recording component allows you to record the whole content of a participant's screen as a video file. Add the Screen Recording component on the Screen tab of the screen(s) within your task where you want to record the participant's screen.

By default, the video will be silent. If you want the screen recording to include audio from the participant's microphone, go to Subsystems in the Settings tab on the left-hand side of the Task Builder and toggle on the Microphone subsystem.

Adding this component to your task will automatically add a screen recording test before the task begins. This requests permission from the participant to share their screen with Gorilla. The participant will be asked to select a tab or window to record. This menu is generated by the browser; it isn't currently possible to alter it or automatically select the correct screen. Then, Gorilla will check whether the screen is recording by making a short recording and playing it back to the user in a box at the centre of the screen. To view this setting, go to Subsystems in the Settings tab on the left-hand side of the Task Builder. The Screen Recording (Beta) subsystem must be enabled for this component to function - do not toggle it off unless you have removed all components that require it from your task!

Screen sharing in this way adds a border to the screen. There will continually be a "Sharing this tab to app.gorilla.sc/research.sc" message at the top of the screen, with the option to Stop Sharing. It isn't possible to dismiss this message or border - this is a security feature controlled by the browser that Gorilla cannot override.

Though the screen will be shared throughout the whole task, the screen will only actually be recorded (saved to a video file) on screens that have the Screen Recording component. You may want to consider placing a visual indicator on these screens, so that the participant knows when their screen is being recorded.

If the participant chooses to stop screen sharing at any point, the recording will fail. Currently, there is no way for the Screen Recording component to check whether or not the participant is still screen sharing. This functionality may be added in future.

The recording will include the visual content of the screen and any interactions with it. The recording will end when the task advances to the next screen or the maximum recording time of 10 minutes is reached, whichever happens sooner.

Samples that use this component

Visual-Motor Drawing Task (with Screen Recording)

CONFIGURATION

File Prefix

A custom prefix to use as part of the filename for the screen recording.


Recording Buffer (ms)

Adds additional recording time as a buffer to the end of the recording. If you find the end of a participant's response is being cut off, increase this value. Defaults to 250 ms if left empty.


Pro Tip

Accessing screen recording files (in preview mode): When previewing a task, your screen recording files can be accessed via a URL placed in the metrics. After the preview has finished, download the data and find the URL in this file.

Accessing screen recording files (in full experiment): When running a full experiment, all of the screen recording files can be accessed from the 'Download Experiment Data' button on your Experiment's Data page. The zip folder with all your metrics data will include an 'Uploads' folder, containing all of your screen recording files.

Participant recordings are labelled using the format: [Experiment ID]-[Experiment Version]-[Participant Private ID]-[Tree Node Key]-[Schedule ID]-[the recording file prefix]-[Trial Number]-[Screen Counter].[File Type]. More details on these values can be found in the Data Columns Guide.

Switch


The Switch component allows the participant to switch to the corresponding Switch Node Task or Questionnaire in the experiment. You will need to include a Switch component (like this one) or a Switch Button in both the Tasks / Questionnaires tethered to the Switch Node, if you wish participants to be able to switch between the two.

You can set specific criteria in the Switch component, so that participants can only switch when certain conditions are met.

Samples that use this component:

Stroop (Switch Example)

Tutorials that use this component

Switching between Tasks

CONFIGURATION

Switch Conditions

List of criteria to trigger switching.

  • Criteria: Set the conditions under which participants should switch.
    • Any Response (this includes responses from a Continue button, and 'timed out' responses triggered by a timelimit expiring)
    • Response Value - switch only when a particular response is received
    • Response Tag - switch only when a response with a particular tag is received
    • Response Accuracy - switch only when a response with a particular accuracy is received (correct, incorrect, or timed out)
  • Include Actions: Use this toggle to include actions that aren't technically responses (e.g., moving a slider multiple times before pressing Continue to submit the final response) in your criteria for switching.

  • Filter: Use this toggle to create more complex logic using the additional Field, Condition, and Value settings.

    • Field: Select the field that contains the information you want to evaluate.
    • Condition: Select the comparison you want to make between the Field and the Value.
    • Value: Specify the Value that you want to compare the Field to based upon the Condition.
  • Response: Only shown if Criteria = Response Value The value (= actual response content) of the responses you want to trigger switching. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Accuracy: Only shown if Criteria = Response Value/Response Accuracy Choose whether you want only correct, only incorrect, only timed out, or all responses to trigger switching.

  • Response Tag: Only shown if Criteria = Response Tag Choose the tag of the responses you want to trigger switching. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

Time Limit


The Time Limit component allows you to add a time limit to your screen which will automatically advance a participant to the next screen in your display after a set amount of time. This can be used to limit the presentation time of stimuli, or control how long participants have to provide a response. You can show participants how long is left of the time limit by also adding a Countdown component.

You can also set up the Time Limit component to produce a response when the time limit is reached, using the 'Treat As Response' setting. This is useful for recording and scoring non-responses in Go/No Go tasks.

Samples that use this component

Audio Transcription

Cued Task Switching

Digit Span Number Entry

Dot Probe

Hebb Learning

Primacy and Recency

Tutorials that use this component

Screen Timelimit and Countdown

CONFIGURATION

Time Limit (ms)

How long the screen will last before advancing automatically.


Treat As Response

If set, will trigger a response when the time limit is reached, rather than just a TimedOut response.


Response

The response to send when the time limit is reached. Use for e.g. go/no-go paradigms to define the 'no-go' response.


Response Tag

Tag for non-response / no-go response.

Wait For Time Limit


The Wait For Time Limit component is designed to be used in combination with a Time Limit component to enable Go/No Go tasks. When this component is added to the screen, the screen will not advance automatically as soon as a response is received. Instead, it will wait for the remainder of the time limit, if there is one set, before advancing the screen.

Samples that use this component

Mackworth Clock Task

Spatial N-Back Task

Simon Task (Stimulus-Response Compatibility)

Choose Spreadsheet Public ID


This randomisation component allows you to assign participants to spreadsheets by matching their Public ID. To use this component, the task must have multiple spreadsheets, and you must use a recruitment policy where you define a set of Public IDs. For example, Email Shot, Email ID and Supervised policies are ideal policies for this randomisation.

Samples that use this component

Prisoner's Dilemma (Public ID)

Tutorials that use this component

Choose Spreadsheet (Public ID)

CONFIGURATION

Spreadsheets

Match

Enter the stem of the ID to match on. If any part of this is present in the Public ID, then participants will be assigned to that spreadsheet.

Spreadsheet

Choose from the dropdown, which spreadsheet participants should be assigned to for this Match condition.


For further information on randomisation, see our Advanced Spreadsheet randomisation guide.


Random Assignment per Trial


Randomly assign values to the cells in a column, based on set of probabilities/ratios (expressed as percentages). This could allow you to populate the Win/Lose distribution in a probablistic learning game, for example.

You can define multiple assignment sets, allowing you to make assignments to multiple columns in the spreadsheet.

First, you define the conditions for the assignment. This will either be a cell in a specific column being non-empty or having a specific value. Then, setup your assignments: a grouping of value/percentages where each value is an assignable value for a cell in the column appearing the given percentage of times throughout the column.

Samples that use this component

Utility Task

CONFIGURATION

Assignment Sets

A group of settings which indicate a unique assignment.


Condition Column

The column we should view when deciding if this row should be subject to a random assignment.


Condition Method

The method we should use. Not Empty indicates that the current cell of the Condition Column must have at least a value. Matches indicates it must have a specific value.


Condition Value

The specific value the cell must have. Only relevant when using the Matches Condition Method.


Assignment Column

The column we'll make random assignments to.


Assignments

The group of assignments: pairs of percentage/value data.


Value

The value to assign.


Ratio

In what percentage of rows the value should appear.


For further information on randomisation, see our Advanced Spreadsheet randomisation guide.


Randomise Trials


Randomise individual rows within a spreadsheet. This is the most common randomisation to make sure individual trials appear in a different order for each participant. A column is chosen, and all rows with matching values for that column are then randomise between each other.

Samples that use this component

Audio Transcription

Picture Superiority Effect

Random Number Recall

Visual Search

Flanker Game

Categorisation Game

CONFIGURATION

Column

Which column to randomise on.


For further information on randomisation, see our Simple Spreadsheet randomisation guide.


Randomise Blocks


Randomise whole blocks of trials within the spreadsheet. This can be useful for counterbalancing blocks of trials, so that one block of trials is not always the first one to be shown to participants.

A single column is chosen, and all continuous rows with the same value are considered to be a single block. The order of the blocks is then randomised.

Samples that use this component

Hebb Learning

CONFIGURATION

Column

Which column to randomise on.


For further information on randomisation, see our Simple Spreadsheet randomisation guide.


Randomise Between Columns


Randomise content between spreadsheet columns. When selecting two or more spreadsheet columns, the non-empty values between those columns will be randomised on a trial by trial basis. This can be useful when you have, for example, two images as stimuli, but you want them to appear simultaneously and randomly on the right or the left side of the screen.

Samples that use this component

2D Mental Rotation

Random Number Recall

Wisconsin Card Sorting Task

Other resources

Stable random assignment

CONFIGURATION

Column

Column containing content to be shuffled between other columns.


For further information on randomisation, see our Simple Spreadsheet randomisation guide.


Randomise Between Columns (Multi)

Randomise content between multiple sets of spreadsheet columns. Similar to the Randomise Between Columns component but allows you to define multiple sets of columns to randomise content between. For an individual set, when selecting two or more spreadsheet columns, the non-empty values between those columns will be randomised on a trial by trial basis.

Samples that use this component

There are currently no samples using this component.

CONFIGURATION

Chosen Columns

Set of columns containing content to be shuffled between other columns.


For further information on randomisation, see our Simple Spreadsheet randomisation guide.


Randomise Within Column

Randomise the content of an individual spreadsheet column. Multiple spreadsheet columns can be selected. For each column selected, all the non-empty contents of this column will be randomised between each other.

Samples that use this component

Picture Superiority Effect

CONFIGURATION

Columns to Randomise

A set of columns whose contents should be randomised, independently.


Column

A column to randomise the contents of.


For further information on randomisation, see our Simple Spreadsheet randomisation guide.


Select Randomised Subset


Select a randomised subset of a group of trials. Define a column and a value, that are used to indicate the set of trials to draw from and then a number to indicate the number of trials to select for the subset. For example, if you chose the column 'Display', the value 'trial' and the number 10, the script will collect all of the rows with the value 'trial' in the 'Display' column, shuffle them and then pick 10 and read them back into the spreadsheet. You can select multiple subsets by using the + symbol to add another set of options. Each subset must be contiguous and each subset must be distinct from other subsets.

Samples that use this component

Navon Global Precedence

CONFIGURATION

Column

Which column contains the target value defining the trial set.


Value

The value from the column that defines the trial set.


Number

The number of trials to be chosen for the subset.


For further information on randomisation, see our Advanced Spreadsheet randomisation guide.


Chat Box


This component allows multiple players to communicate with each other. Text one player sends via the chat box will appear to players in the same room.

To set this up, create a network data field in which to store the chat data.

Each response the participant gives will create a new line in their data, with the reaction time that their message is sent. The Response column will contain the text of that message.

To see the full conversation so far, look to the Network Store column.

In your Network Store column, you will see something like the following:

[{"speaker":6746720,"message":"text"}]
[{"speaker":6746720,"message":"text"},{"speaker":6746719,"message":"word"},{"speaker":6746720,"message":"text2"}]

For each message, first you will see the participant private ID, then, after the word “message” you will see the text the participant entered into the chat box. Messages will be displayed in order they were entered, with the most recent message (the one from the participant that entered the data row) coming last.

CONFIGURATION

Network Data Field

The network data field to store this chat log in.


Tag

The tag for this response.


Input Box Lines

Size of the chat box in number of lines of text.


Enable Reactions

Whether to allow participants to react to other participants' chat messages.


Thumbs Up

Only available if Enable Reactions is toggled on. Allow participants to send a thumbs-up reaction to other participants' chat messages.


Thumbs Down

Only available if Enable Reactions is toggled on. Allow participants to send a thumbs-down reaction to other participants' chat messages.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Multiplayer


This component, when added to an object, allows you to show the object to one of your players, but not the others. This is useful e.g. for response buttons where only one player is supposed to respond, and the other players are supposed to wait.

Note: This component alone doesn't allow one player to advance the screen. You would also need to add a screen component Advance - Multiplayer which allows you to determine who has control over advancing the screen. For example, you would set this component to Player A. Why we need it: As a default, multiplayer tasks will wait for a response from each Player before advancing the screen, therefore if you don't have the Advance - Multiplayer component, the screen will wait for Player B to also press something before the screen continues, and unless you have a continue button or another way to progress the screen for Player B, the Players will get stuck. You want Player A to control advancement so adding this component will ensure that action.

CONFIGURATION

Player

The player to show this object for.

Advance - Multiplayer


Control whether one player can advance the screen for all players, or whether all players need to complete the screen to advance. This component is added to the Screen.

CONFIGURATION

Required Players

Specify whether all players need to complete to advance ('All') or just one player ('First')

Advance - Multiplayer Player


Allow only a specific player to advance the screen. This component is added to the Screen.

CONFIGURATION

Player

Which player should advance the screen

Video Chat


Display video chat on the screen. This will broadcast the current player's video to other players, and show the video stream from other players.

Adding this component to your task will automatically add a microphone and camera check before the task begins. The microphone and camera test shows the participant the volume of their microphone and the visual feed from their camera, and allows them to select which microphone and camera they want to use. To view these settings, go to Subsystems in the Settings tab on the left-hand side of the Task Builder. The Camera and Microphone subsystems must be enabled for this component to function - do not toggle them off unless you have removed all components that require them from your task!

CONFIGURATION

Hide Current Player

Whether to hide the current player (so only the other players are shown).


Preserve Room Order

If toggled off, the participant's own video will appear first in order. If toggled on, videos will be displayed in an order that matches the order of players within the room.


Position

Position of the center of the bounding box, relative to the center of the container. You can change the x- and y-coordinates. By default, position is set in grid coordinates. To set position in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.


Size

Size of the bounding box. You can change the x- and y-coordinates. By default, size is set in grid coordinates. To set size in absolute pixels or as a percentage of the screen, add an Advanced Positioning component to the object.

Delay Onset


This funtionality is deprecated and will not appear unless previously set in a task.

Please use the Trigger - Visible or Trigger - Active components instead.

Delays the onset of this object. By default, all objects will be visible at the start of the screen. Adding this component allows you to control when they appear. This will also work with non-visual stimuli too (e.g. audio)

CONFIGURATION

Pre-display Time (ms)

Amount of time from the start of the screen to delay for before displaying.

Save Data On Response


This functionality is deprecated and will not appear unless previously set in a task.

Please use the Save Data component instead.

The Save Data on Response component can be used to add or update a value in the store when a particular response is triggered. For example, this can be used to award points for correct answers, and subtract points for incorrect answers. To award points based on response accuracy, a Scorer component will also be needed.

CONFIGURATION

Destinations

List of locations to save responses to.

  • Response: Set the response for the component to listen for. This can be entered directly into the component, or bound to the spreadsheet, a manipulation or the Store.

  • Accuracy: Choose accuracy of response from the dropdown menu

  • Operation: Select whether the value should be added or subtracted.

  • Value: Set the value to be added or subtracted. This can be entered directly into the component, bound to the spreadsheet or retrieved from the store.

  • Field: Save this to a chosen field in the store.