Gorilla
Support Home Game Builder Components Guide

Game Builder Components Guide

  • Overview
  • Prefabs
  • Animated Sprite
  • Renderable (Visual)
  • Sprite
  • Text
  • Quad
  • Ellipse
  • Gradient
  • Particles
  • Hotspot
  • Button
  • Audio
  • Audio
  • Background Audio
  • Positioning
  • Container
  • Start Position
  • Start Offscreen
  • Response Handling
  • Click Response
  • Click To Continue
  • Collate Responses
  • Compound Responses
  • Keyboard Response
  • Text Entry
  • Animation
  • Animator
  • Trigger - Animate
  • Physics
  • Collider
  • Collider Cage
  • Control
  • Lifetime
  • Afterlife
  • Multiplayer - Advance Player
  • Multiplayer - Advance
  • Multiplayer
  • Start Invisible
  • Show Response
  • Trigger - Active
  • Trigger - Enabled
  • Trigger - Response Window
  • Screen
  • Scorer
  • Scorer (Multi)
  • Time Limit
  • Save Data
  • Save Response
  • Save Accuracy
  • Save Reaction Time
  • Advance - Accuracy
  • Advance - Response
  • Compound Responses
  • Collate Responses
  • Jump To Row
  • Jump To Spreadsheet
  • Change Difficulty - Spreadsheet
  • Change Difficulty - Staircase
  • Set Field on Start
  • Screen Feedback Time
  • Randomisation
  • Choose Spreadsheet Public ID
  • Randomise Blocks
  • Randomise Trials
  • Randomise Between Columns
  • Randomise Between Columns (Multi)
  • Randomise Within Column
  • Select Randomised Subset
  • Deprecated
  • Save Data On Response

Overview


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

Animated Sprite


This prefab consists of a sprite and an animator, allowing you to add animations to your sprite.

Components: Sprite, Animator

Sprite


Render a sprite, which is an image that has been loaded into the game engine.

CONFIGURATION

Texture

The image to use for this sprite


Size

The size of this sprite


Origin

The origin of this sprite

Text


Render text on the screen.

Samples that use this component:

Wisconsin Card Sorting game

Tutorials that use this component:

Delayed Reward (Go / No Go)

CONFIGURATION

Text

The text to display


Text Colour

The color of the text


Text Size (px)

The size of the text


Stroke Colour

The color of the text's stroke


Stroke Thickness

The thickness of the text's stroke, in pixels


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.


Max Width

The maximum width to restrict this text to (text will be wrapped to fit)


Origin

The origin of the text

Quad


Render a simple quad (rectangle) with a solid color.

Samples that use this component:

Wisconsin Card Sorting game

CONFIGURATION

Colour

The color of the quad


Radius

The border radius of the quad, in pixels. Use zero for sharp corners.


Size

The size of the quad


Origin

The origin of the quad

Ellipse


Draw an ellipse of a specific size and color.

CONFIGURATION

Colour

The colour of the ellipse


Size

The size of the ellipse


Origin

The origin of the ellipse

Gradient


Draw a gradient from one colour to another

CONFIGURATION

From

The color to start from


To

The color to interpolate to


Direction

The direction of the gradient


Size

The size of the gradient


Origin

The origin of the gradient

Particles


Configure particle effects. These are useful for things like fire, explosions, rain and so on.

Samples that use this component:

Wisconsin Card Sorting game

Flanker game

Urn Task Game (Game Builder)

CONFIGURATION

Image

The texture to use for this particle system


Angle

The angle to emit particles at


Size

The size range for particles, as a proportion of the natural size of the image (where 1 is the natural size, 1.5 is 150% of the natural size, etc). Many effects look better if the particles vary in size a little


Speed

The speed particles should move, in pixels per second


Duration (ms)

How long each particle should live for, in ms


Fade

The point in a particle's lifetime that it should start to fade out. Should be between 0 (fade immediately) and 1 (don't fade). A value of 0.5 would mean to start fading halfway through its lifetime.


Spin

If set, the number of complete revolutions to make every second


Rate

The number of particles to emit per second


Burst

If set, the amount of time to emit for before stopping. Useful for one-off impulses like explosions.


Gravity

If set, the strength of gravity on the particles.


Origin

The origin of this particle system

Hotspot


Special renderable that is not visible, but can be used to define regions of the screen. Use in conjunction with Click Responses, Colliders etc when you need to define a region of screen space without using a visible component (like text or a sprite). Unlike in Task Builder 2 where you need an Overlay component to set relative sizing, in Game Builder you can just make the sizing relative to a parent container.

CONFIGURATION

Size

The size of the hotspot


Origin

The origin of the hotspot

Button


Add a simple text button. This is useful in conjunction with the Click To Continue component for advancing instruction screens.

Samples that use this component:

Iowa Gambling Game

Categorisation Game

Tutorials that use this component:

Delayed Reward (Go / No Go)

CONFIGURATION

Text

The text to display on the button


Text Size (px)

The size of the text on the button


Text Color

The color of the text on the button


Text Color Active

The color of the text on the button when the button is hovered or pressed


Background Color

The background color of the button


Background Color Active

The background color of the button when the button is hovered or pressed


Padding

The amount of padding around the text on the button


Radius

The radius of the rounded corners of the button. Use 0 for sharp corners, and larger values for smoother ones


Origin

The origin of this sprite

Audio


The audio component allows you to play audio files.

CONFIGURATION

Audio

The audio asset to play.


Play On Start

Whether to play at the start of the screen


Advance

If set, advance the screen when the audio finishes playing


Always Finish

If set, delay the screen advancing until the audio finishes playing

Background Audio


The Background Audio component allows you to play audio in the background. You can upload the audio file within your component or via the Stimuli tab. Use this component to start or stop the current background audio. Once started, the background audio will continue to play until it is stopped (you don't need to put this on each screen where you want the background audio to play; just on the screen or display where you want it to start). For some information about file size and supported formats, have a look at the information on the Web Audio Zone page from our Task Builder 1.

Samples that use this component

Digit Span Text Entry (Background Music) (Task Builder 2)

CONFIGURATION

Audio

The audio file to play in the background. If you want the audio to change, depending on different screens, you can bind this to a value in your Spreadsheet. If you want to set up a Manipulation in your Experiment Tree, you can bind this to a value for a Manipulation. If you want to play an audio which has previously been written to the Store, you can bind this to a value from your Store.


Action

Use this setting to decide whether to start or stop the background audio. Please note that the Background Audio doesn't loop automatically, so when the entire file has played, it will just stop (even, if you haven't included the stop setting in your task). If you just want the audio to stop, you don't need to add a file into the 'Audio' setting above.

Container


Provides a contain to contain child objects in. Child objects will be positioned relative to the position of their container. Containers can have a size, which in turn allows child objects to express their sizes and positions as proportions of their parent container's size.

Alternatively, if a container's size is set to zero, it is treated as a point. Child objects can still be positioned relative to the container. This is useful for situations where child objects simply need to be placed relative to one another, and moved or animated as a group.

Samples that use this component:

Wisconsin Card Sorting game

Prisoner's dilemma

CONFIGURATION

Size

The size of this container. Can be express in percentages of the parent's size.


Origin

The origin of this container. Can be express in percentages of the parent's size.

Start Position


When the screen starts, positions the object in this position. This is useful for objects which are meant to start in one place and then animate to their 'natural' place later.

Note that to have an object start offscreen and then animate on, consider using the Start Offscreen component.

CONFIGURATION

Spawnpoint

The name of the object to start at

Start Offscreen


Set this object to start off the screen. This will set the local position of the object such that it is just offscreen on the selected side. You can then animate it back to its origin to have it slide onscreen.

This is useful for objects which you want to start offscreen and then animate on. Rather than placing them offscreen and then animating them on (which is annoying, as generally you want to be able to fine-tune them in their 'onscreen' position), it's easier to add this component and then simply animate them back to their origin point.

Samples that use this component:

Prisoner's dilemma

Urn Task Game (Game Builder)

CONFIGURATION

Side

The side of the screen you want this object to start on

Click Response


Trigger a response when this object is clicked on.

Samples that use this component:

Relational Reasoning (Task Builder 2)

Wisconsin Card Sorting game (Game Builder)

Urn Task Game (Game Builder)

Tutorials that use this component:

Delayed Reward (Go / No Go)

CONFIGURATION

Response

The response to trigger


Tag

The tag for this response

Click To Continue


Advance to the next screen when activated.

Samples that use this component:

Primacy and Recency

Memory Intrusion game

Urn Task Game (Game Builder)

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.

To advance the screen, a Time Limit or Continue Button (such as 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.

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.

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 (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 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.

Keyboard Response


Trigger responses based on keyboard presses.

Samples that use this component:

Flanker game

Categorisation Game

Tutorials that use this component

Tutorial: Trigger - Enabled

CONFIGURATION

Mappings

Set of keys to listen for. Each key you want to listen for can be bound to a response.


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

Text Entry


Trigger responses from a text input.

Samples that use this component:

Primacy and Recency

CONFIGURATION

Placeholder

Label to show above text input.


Text Size (px)

The size of the text on the button


Input Width

The radius of the rounded corners of the button. Use 0 for sharp corners, and larger values for smoother ones


Button Text

Label to show on submit button.


Button Text Color

The color of the text on the button


Button Text Color Active

The color of the text on the button when the button is hovered or pressed


Button Background Color

The background color of the button


Button Background Color Active

The background color of the button when the button is hovered or pressed


Padding

The amount of padding around the text on the button


Radius

The radius of the rounded corners of the button. Use 0 for sharp corners, and larger values for smoother ones


Tag

The tag for this response


Origin

The origin of this sprite

Animator


Add animation to an object. You can then use the Animation Editor to create animation clips.

The documentation for individual animations is located here:

Game Builder Animation Reference Guide

CONFIGURATION

Play On Start

If set, play this animation automatically at the start of the screen


Animation

List of animation clips. Configure them in the Animation Editor

Trigger - Animate


Trigger animations on this object. You can configure animations to play at the start of the screen, after an amount of time, or when a response is recived.

Samples that use this component:

Wisconsin Card Sorting game

Prisoner's dilemma

Tutorials that use this component:

Delayed Reward (Go / No Go)

CONFIGURATION

Triggers

List of triggers

Collider


Attach a collider to this object. The collider will take the same shape as the renderable attached to this object. It will collide with other colliders, and can be constrained with the use of a Collider Cage.

CONFIGURATION

Padding

If set, add an amount of padding (in pixels) to the size of the collider

Collider Cage


Constrain all objects with colliders to the bounds of this object's renderable. This is useful for creating an area that objects with colliders cannot fall out of or be dragged out of.

Lifetime


Set an amount of time for an object to live. When the time expires, it will die. Use for objects which should only exist for a certain amount of time (e.g. effects) and combine with an Afterlife component to create chain reactions.

CONFIGURATION

Duration (ms)

Amount of time this object should live for, in ms

Afterlife


Spawn an object when this object dies. This can be used to daisy-chain effects together, e.g. add it to a firework to spawn an explosion when it dies.

CONFIGURATION

Spawn

The spawnable to spawn

Multiplayer - Advance 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

Multiplayer - Advance


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')

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.

CONFIGURATION

Player

The player to show this object for.

Start Invisible


Set this object to be invisible at the start of the screen. Useful for objects which should start hidden and appear later, controlled by an animation.

Samples that use this component:

Prisoner's dilemma

Primacy and Recency

Tutorials that use this component:

Delayed Reward (Go / No Go)

Show Response


Displays the most recent response. Requires a text component to actually display it.

Trigger - Active


The Trigger - Active component lets you control the activity state (activated or deactivated) of an object. You can configure this 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).

Samples that use this component

Dot Probe (Task Builder 2)

CONFIGURATION

Triggers

List of triggers, which can change the activity state of the object. For example: Screen Start, Time Elapsed, Click, Response, Response Accuracy, Response Tag, Response Time. For each trigger, you will have several different configurations, but some will be in common. You can decide whether to trigger the activity state of the current object or another one, whether you want it to activated or deactivated and whether you want a time limit for the activation/deactivation.

Trigger - Enabled


Control the state (enabled or disabled) of this object. You can configure this 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.).

Tutorials that use this component

Tutorial: Trigger - Enabled

CONFIGURATION

Triggers

List of triggers, which can enable the object it's applied to. For example: Screen Start, Time Elapsed, Click. For each trigger, you will have several different configurations, but some will be common to all.

Trigger - Response Window


By default, Gorilla is listening for responses as soon as the screen starts. On your Screen tab, set the Screen Manager Response Window to 'Manual' and 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, for example. This is useful if you don't want to start counting reaction times while, for example, an image or text is displayed.

Samples that use this component

Flanker

CONFIGURATION

Triggers

List of triggers, which can open the Response Window of the screen. For example: Screen Start, Time Elapsed, Click. For each trigger, you will have several different configurations, but some will be common to all.

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.

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

Samples that use this component:

2D Mental Rotation (Task Builder 2)

Wisconsin Card Sorting Task (Task Builder 2)

Random Number Recall (Task Builder 2)

Prisoner's dilemma (Game Builder)

Memory Intrusion game (Game Builder)

Tutorials that use this component:

Scoring Tutorial (Task Builder 2)

CONFIGURATION

Correct Answer

Correct answer. Responses matching this will be considered correct.

Scorer (Multi)


The Scorer (Multi) component allows you define multiple correct answers. This could allow participants to choose one of multiple correct answers, or choose all correct answers presented on a screen. 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.

The accuracy of responses given via Click Response and other Response components can be recorded using the Scorer (Multi) component.

Samples that use this component:

Sentence Generation Task (Task Builder 2)

CONFIGURATION

Answer

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

Time Limit


Set a time limit for the screen, after which it will advance automatically.

Samples that use this component:

Primacy and Recency

CONFIGURATION

Time Limit (ms)

Time limit - how long the screen will last before advancing automatically


Non Response

If set, will trigger a response with this value, rather than just a TimedOut response. Use for e.g. go/no-go paradigms to define the 'no-go' response


Non Response Tag

Tag for non-response / no-go response

Save Data


The Save Data component can be used to add or update a value on 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.

This component replaces the previous Save Data on Response component.

Samples that use this component:

Iowa Gambling Game

Tutorials that use this component:

Tutorial: Delayed Reward (Go / No Go)

Tutorial: Trigger - Enabled

CONFIGURATION

Destinations

List of locations to save data to.

Criteria

Set the conditions under which the data should save to the store: Always, on a particular Response, on a particular Response Accuracy, or when Match Field is true.


Response: If Response is selected in the Criteria, 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: If Response is selected in the Criteria, determine whether Gorilla should only listen when that response is Correct or Incorrect. If Response Accuracy is selected in the Criteria, determine the accuracy regardless of the specific response received (Any, Correct, Incorrect, or Timed Out).

Filter: Only available when Response or Response Accuracy are selected in the Criteria. Use this toggle to create more complex logic using the additional Field, Condition, and Value settings.

Field: If Match Field is selected in the Criteria, select the field that contains the information you want to evaluate.

Comparison: If Match Field is selected in the Criteria, select the comparison you want to make between the Field and the Value.

Value: If Match Field is selected in the Criteria, specify the Value that you want to compare the Field to based upon the Comparison.


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.

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 match them separately with the Field configuration.

Samples that use this component:

Prisoner's Dilemma (Task Builder 2)

Tutorials that use this component:

Response Recap (Task Builder 2)

CONFIGURATION

Destinations

List of locations to save responses to.

  • Tag: Set a tag for the saved response.

  • Field: Choose a field in the store to save to.

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, as well as the total number of trials. 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 controlling the flow of the task with Change Difficulty - Staircase.

Samples that use this component

2D Mental Rotation (Task Builder 2)

Alternate Task Switching (Task Builder 2)

Cued Task Switching (Task Builder 2)

Digit Span Text Entry (Task Builder 2)

Dot Probe (Task Builder 2)

Wisconsin Card Sorting game (Game Builder)

CONFIGURATION

Destinations

List of locations to save accuracy measures to.

  • Attribute: Choose a measure of accuracy from the dropdown list.

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

  • Tag: Set a tag for the stored responses.

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. 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 (Task Builder 2)

CONFIGURATION

Destinations

List of locations to save reaction time measures to.

  • Attribute: Choose the reaction time measure to save from the dropdown list.

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

  • Response: Choose the response that you want to save the reaction time of.

  • Tag: Set a tag for the saved reaction time.

  • Accuracy: Choose the accuracy for the component to listen for, from the dropdown list.

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. Alternatively, this component can be used to trigger the screen to advance when timed out by a Time Limit component or when a Continue Button is pressed.

Samples that use this component:

Relational Reasoning (Task Builder 2)

CONFIGURATION

Advance On

The response accuracy to advance the screen on.

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 repsonse 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:

Audio Naming Task (Task Builder 2)

CONFIGURATION

Response

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

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.

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 (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 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.

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.

To advance the screen, a Time Limit or Continue Button (such as 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.

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.

Jump to Row


The Jump to Row component is used to control the flow of participants through the spreadsheet. Instead of progressing to the next row, participants will jump to a different row in the spreadsheet depending on their response, response accuracy or 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 (Task Builder 2)

Iowa Gambling Game (Game Builder)

CONFIGURATION

Destinations

List of criteria participants need to meet in order to Jump to Row.

  • Criteria: Select the criteria, from the dropdown menu, participants must satisfy to Jump to Row.

  • 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, response accuracy, or the value of a field in the store. You can control if the participant returns to the start, or continues to the next row in the new spreadsheet.

Tutorials that use this component:

Jump to Spreadsheet (Task Builder 2)

CONFIGURATION

Destinations

List of criteria participants need to meet in order to Jump to Spreadsheet.

  • Criteria: Select the criteria, from dropdown menu, participants must satisfy to Jump to Spreadsheet.

  • Spreadsheet: The spreadsheet to jump to.

  • Return To Start: Whether to always return to the start of this spreadsheet. By default, if we have already performed some rows of the target spreadsheet, we will jump to the next row rather than returning to the start.

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.

Samples that use this component:

Memory Intrusion with Change Difficulty (Spreadsheet) (Task Builder 2)

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 or percentage correct. 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.

  • 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 (Task Builder 2)

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.


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 decrease when the 'Step Down' condition(s) is met.
  • Minimum: The lowest value to step down to.
  • Maximum: The highest value to step up to.

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.

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 or percentage correct. 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.

  • 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.

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.

CONFIGURATION

Field

The field to set


Value

The value to set it to

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) (Task Builder 2)

Urn Task Game (Game Builder)

CONFIGURATION

Feedback Time (ms)

The amount of time to allow for feedback to display

Choose Spreadsheet Public ID


This randomisation component allows you to assign participants to spreadsheets by matching their Public ID. To use this component, the game must have multiple spreadsheets, and you must use a recruitment policy where you define a set a list 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) (Task Builder 2)

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.

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 (Task Builder 2)

CONFIGURATION

Column

Which column to randomise on.

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 (Task Builder 2)

Picture Superiority Effect (Task Builder 2)

Random Number Recall (Task Builder 2)

Visual Search (Task Builder 2)

Flanker game (Game Builder)

Categorisation Game (Game Builder)

CONFIGURATION

Column

Which column to randomise on.

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 (Task Builder 2)

Random Number Recall (Task Builder 2)

Wisconsin Card Sorting Task (Task Builder 2)

CONFIGURATION

Column

Column containing content to be shuffled between other columns.

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.

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 (Task Builder 2)

CONFIGURATION

Columns to Randomise

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


Column

A column to randomise the contents of.

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 (Task Builder 2)

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.

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.

Tutorials that use this component:

Displaying Score (Task Builder 2)

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.