Support Home Task Builder 2 How To Guide

How To: Task Builder 2

  • Overview
  • What is a Task?
  • Creating a new Task
  • Displays
  • Introduction
  • Designing your displays
  • Building your displays
  • Screens
  • Screen Editor
  • Adding objects
  • Configuring components
  • Spreadsheets
  • Spreadsheets
  • Editing spreadsheets
  • Binding to the spreadsheet
  • Spreadsheet randomisation
  • Using multiple spreadsheets
  • Metadata
  • Scoring
  • Scoring correct answers
  • Stimuli
  • Stimuli
  • Settings
  • Manipulations
  • Spreadsheet Manipulations
  • Store
  • Lookahead
  • Subsystems
  • Metrics
  • Customisation
  • Multiplayer
  • Advanced Techniques
  • Branching participants
  • Eye Tracking
  • Putting your Task online
  • Sending Tasks to participants
  • Scripts
  • Scripts

Overview


Task Builder 2 allows you to create behavioural tasks incorporating text, image, video, or audio stimuli, and collect participants' responses in a variety of ways (touch, mouse, keyboard, etc.) You can use prefabricated objects (prefabs), build your own out of fully customisable components, or any combination of the two. There is a very high degree of flexibility on the design of displays which you have complete control over!

Importantly, you do not have to touch a single line of code. The majority of classic behavioural experiments can be built in Task Builder 2.

Read on to see what each part of the tool does, and follow our step-by-step guide to build your first task and learn the tools quickly.


What is a Task?


Tasks are part of your experiment that allow you to collect psychological / cognitive data you are interested in.

In Task Builder 2 you create tasks using blocks of trials that can include text image, video or audio stimuli. Participants' response can be collected in a variety of ways, such as keyboard, mouse click, button press and more! The Task Builder automatically records Reaction Time Data.

You are also able to provide feedback to users based on their response accuracy or reaction times during a task.

You can read more about the available components you can use to build your task in our Task Builder 2: Components Guide.


Creating a new Task


A new Gorilla Task can be created within a Project by clicking the '+Create' button in the top-right corner and selecting Tasks/Questionnaires and choosing Task Builder 2:

A screenshot of the Create Menu, Task Builder 2 has been selected.

Then, you can enter a name for your new Task and press 'Create'. When choosing a name for your Task, try to make it something unique and memorable - a name you would easily associate with the Task contents.

You will use this name to identify your Task in your project. It is also the name people will see if you collaborate or send your Task with someone, so its important that they would be able to recognise it easily too!

Once created, you will be directed to the Task Structure view, where you can start building your displays.

You can rename your Task at any time, or add a description, by clicking on the 'Actions' menu and selecting 'Name/Description'.


Introduction


The Displays tab is where you configure all the different screens used in your task. A Display is simply a sequence of screens. A Display can be a single screen (which might suffice for a simple instructions or debrief screen), but more commonly will be several screens in sequence (e.g. Fixation, Stimuli Presentation, Response):

Schematic example of three screens in sequence in a display: Fixation, Stimulus, Response

Displays are modelled on the screen sequence diagrams often used in academic papers, so it can be helpful to think of them in the same way:

Examples of screen sequence diagrams reproduced in academic papers showing progression of stimuli in a trial

Designing your displays


A good first step when starting to build your task is to break it down into individual displays. The exact breakdown is up to you, but a common approach would be something like Instructions, Practice, Trial, Debrief:

Schematic example of four displays set up for a task: Instructions, Practice, Trial, and Debrief. The Instructions display contains one screen with some text. The Practice display contains four screens: Fixation, Stimulus, Response, and Feedback. The Trial display contains three screens: Fixation, Stimulus, and Response. The Debrief display contains one screen called Explanation featuring a graphic and some text.

Obviously your real task will have likely have lots of trials, each with different stimuli, but you don't need to worry about that just yet. You just need to design the screen layout that you want to use for your trials. Later, you will use a spreadsheet to control which stimulus is shown for each trial.

It's often helpful to get the basic building blocks of your task in place first, and then come back afterwards and fill in the details - we call this process 'Storyboarding'.

Building your displays


Creating a new display


Start by clicking New Display on the right:

Screenshot of a new task in Task Builder 2, showing the New Display button at the top right.

Give your display a name, and click OK. You should now see your display with a single screen created for you.


Reordering displays


Click and drag the six dots at the top-left of each display to reorder them:

Screenshot of a Task Builder 2 task with two displays, showing how clicking and dragging at the top-left of each display allows you to reorder them.

Renaming or removing displays


Use the down arrow at the top of your display to rename or remove it:

Screenshot of a display in Task Builder 2 showing the display menu, containing options Rename and Remove.

Editing a screen


Click on a screen within a display to edit it:

Screenshot of a display in Task Builder 2, showing clicking on a screen within a display.

Adding a new screen


To add more screens to a display, click ' New Screen' to the right of the existing screens:

Screenshot of a display in Task Builder 2, showing the New Screen button to the right of the existing screens.

Reordering screens


Click and drag the six dots at the top-left of each screen to reorder them:

Screenshot of a display in Task Builder 2 with multiple screens, showing how clicking and dragging at the top-left of each screen allows you to reorder them.

Copying, pasting, renaming, or removing screens


Use the down arrow at the top of each screen to open the screen menu. From here, you can copy, paste, rename, or remove the screen:

Screenshot of a screen within a display in Task Builder 2 showing the screen menu, containing options Copy Screen, Paste Screen, Rename, and Remove.

Screen Editor


When you first open a screen for editing, you will see a menu prompting you to choose a template or start from a blank screen:

Screenshot of the Screen Template dialogue in Task Builder 2, showing options to select a blank screen, instructions screen, or two way forced choice. Additional options are to add scoring and a time limit.

The Instructions Screen template is pre-populated with some text and a continue button. The Two Way Forced Choice template is pre-populated with an image and two text response buttons. You can also choose whether to add scoring and/or a time limit to your screen. If you're not sure yet, you can always add or remove these components later!

Once you select an option and click Confirm, you will be taken to the screen editor. The screen editor is split into three sections:

Screenshot of the screen editor in Task Builder 2, showing the three sections: Screen Preview on the left, Object List in the middle, and Object Editor/Screen Tab/Debug Tab on the right.

Screen Preview


The Screen Preview (the large panel on the left highlighted in yellow) shows you a live preview of your screen.

In the bar across the top, the first four buttons can be used to click between different screen dimensions to see how your screen will look at those resolutions. Hover over each icon to see what device it represents. The in-editor preview tests four 'common' resolutions: Large Montor (1920 x 1080); Small Monitor (1280 x 1024); Laptop (1440 x 900); Tablet (1024 x 768). These are just the common measurements and won't be indicative of all possible devices. The previews can be used as a guide to make sure things will approximately display correctly. Therefore, for most participants, if it looks okay in these previews it should be okay for them. However, you should continue to test and pilot your experiment across different devices and use all of the available screen space when creating your task. For more information, have a look at the Device Preview Tutorial.

The Play and Reload buttons allow you to preview the sequence of events on your screen from start to finish. Press Play to preview the screen, and Reload to start the preview again from the start. Clicking the Play button again will take you back to edit mode, where you can make further changes to your screen.

The Grid button lets you toggle the positioning grid between large, small, and off. For more information on the grid, see our Task Builder 2 Positioning and Layout Guide.

The final button, View Source, allows you to view the underlying code that controls the objects and components on the screen. If you prefer, you can edit the source directly to add or edit objects or components and adjust their settings, instead of using the graphical user interface. The Source also provides an easy way to copy entire Screens from one Task to another: simply click 'View Source' on the screen you want to copy from, select all text in the Source, and copy. Then create a new Screen in the task you want to copy to, click 'View Source' on that screen, and paste. Clicking 'Back to Tools' at the top-left of the Source will return you to the standard view of the Screen Editor.


Object List


The Object List (the middle panel highlighted in blue) shows a list of all the objects on your screen. Depending on whether you started with a blank screen or a template, this list will either be empty or will contain some pre-populated objects.

You can reorder objects in the Object List by clicking and dragging them up and down. This controls the front-to-back order in which visual components of objects are displayed on the screen. Objects placed higher in the list will be displayed behind objects placed lower in the list.

The panel on the right highlighted in green has three functions, depending on which tab above it is selected in red: OBJECTS, SCREEN, or DEBUG.


Object Editor


When OBJECTS is selected, this panel functions as the Object Editor. Clicking on an object in the Object List will open its configuration options and components here:

Screenshot of the screen editor in Task Builder 2, showing the object editor. The 'Image' object is selected, and its configuration settings appear in the object editor.

Screen Tab


When SCREEN is selected, this panel functions as the Screen Tab. Here, you can add special components to implement things that apply to the entire screen, like adding a timelimit to the screen, accuracy scoring, or saving responses to use later in your task or experiment:

Screenshot of the screen editor in Task Builder 2, showing the screen tab. The screen tab contains Scorer and Save Response components.

Some screen events happen in a pre-determined order - see our Response Processing Guide for more information. Within those constraints, screen components are executed in top-to-bottom order. You should therefore add your screen components in the order in which you want them to happen during the task.


Debug Tab


When DEBUG is selected, this panel functions as the Debug Tab. The Debug tab will automatically open when you press the Play button above the Screen Preview. Here, you can select specific trials of your task to show on the screen preview using the dropdown menus. Press Play to preview the sequence of events on your screen (including non-visible events like responses). You can also preview what the screen will show for a given player when using Multiplayer. You can see a video example of using the Debug tab, along with more information about the sequence of events on screens, in our Response Processing Guide.

Screenshot of the debug tab in the screen editor in Task Builder 2, showing a preview of row 4 of Spreadsheet1. The stimuli for this row are shown on the screen preview, and all events on the screen (Screen Starting, Response Received, Response Processed, Screen Responses Complete, Screen Finished) are shown in the debug tab in the order in which they occurred.

Adding objects


Click the Add Object button to add a new object to your screen:

Screenshot of the screen editor in Task Builder 2, showing the Object List. The Add Object button is highlighted.

This will open the Object Builder menu:

Screenshot of the Object Builder in Task Builder 2, showing a browsable menu and a search box for finding components to add to a new object.

Objects consist of one or more Components. You can combine components together to create the behaviour you want. You can also use Prefabs, such as 'Audio with play button' in the screenshot above. Prefabs are pre-made bundles of 2 or more components that work together to create specific functionality. For example, the Image Response prefab consists of 3 components: Image, Click Response, and Border - Hover. These work together to display an image which produces a response when clicked on, with a border whose colour changes when the image is hovered over. Read more about how the Object-Component System enables greater flexibility when implementing your tasks.

Use the search box on the top left of the Object Builder to search for components and prefabs to add to your object. You can also browse the categories to the right of the search box (Stimuli, Response, etc.) to bring up lists of relevant components and prefabs. Finally, clicking one of the dark buttons at the top of the Object Builder will immediately create an object that fulfils a frequently used function (e.g., Image, Continue Button, Fixation, etc.). For a full list of components and their settings, see the Task Builder 2 Components Guide.

You can combine prefabs and components flexibly to create the functionality you want. For example, you could start with an Image Response prefab, then swap in an Image - Hover component to turn this into an Image Response Button where the image changes when hovered over:

Note: One restriction to combining components is that each object can contain only one visual component (e.g. Image, Button, Text). If you try to add a visual component (or a prefab containing a visual component) to an object that already contains a visual component, the Object Builder will swap in the new visual component and swap out the old one. For example, in the video above, the original Image component is swapped out for the Image - Hover component. If you need to combine multiple visual components (e.g. an Image with some Text), you will have to add these to your screen as separate objects.

In the Object panel on the right of the Object Builder, you can rename your object using the Object Name field. You can also remove components by clicking the bin icon on the right of each component:

Screenshot of the Object Builder in Task Builder 2, showing the Object panel on the right. 'Hover Image Response' has been entered in the Object Name field. The bin icon to the right of the Click Response component is highlighted.

Once you are happy with the object you have built, click 'Done'. This will return you to the Screen Editor. Your new object will now appear in the Object List, and its components and configuration settings will appear in the Object Editor on the right.

Sometimes, the order in which you add different objects to one screen matters. For objects with visual components, their top-to-bottom order determines the back-to-front order in which they will be displayed on the screen. For an example, have a look at the Hotspot component. For Screen components, their top-to-bottom order determines the sequential order in which they will be executed, with components higher in the list being executed earlier (with some constraints - see our Response Processing Guide for more information).

If your object includes a visual component, it will be placed by default in the centre of the screen. You can move it by clicking and dragging, or by changing the x and y Position values under the visual component in the Object Editor. By default, these Position values refer to positions in the grid where the centre is x = 0 and y = 0. To control placement in pixels or percentage of screen space, add an Advanced Positioning component. For more information on positioning your objects, see our Task Builder 2 Positioning and Layout Guide.

You can create a copy of an object by clicking the Duplicate button at the top-right of the Object Editor:

Screenshot of the Object Editor in Task Builder 2, with the object Image selected. The Duplicate button at the top-right of the Object Editor is highlighted.

You can also copy and paste an object's properties and components into another existing object by using the three-dots menus in the Object Editor. On the object you want to copy, click the three-dots menu and select 'Copy'. Then click on the object you want to paste into, and select 'Paste' from the three-dots menu. Note that this will overwrite any existing components and settings on that Object.

You can even copy and paste objects across tasks! Simply open each task in a separate tab, use the three-dots menu to copy the object you want to copy, and then paste in the copied object using the three-dots menu on the object you want to replace.

Configuring components


Click on an object in the Object List to configure its components:

Screenshot of the Screen Editor in Task Builder 2, with the object Image selected. The settings and components of the selected object are shown in the Object Editor panel.

The settings available will depend on the components that the object has. You can find a full list of components and their settings in the Task Builder 2 Components Guide.

Click the Add Component button to add a component to an object:

Screenshot of the Screen Editor in Task Builder 2, with the object Image selected. The settings and components of the selected object are shown in the Object Editor panel. The Add Component button under the list of components in the Object Editor is highlighted.

This will reopen the Object Builder. Search or browse for a component, and then click Add to add it to your object. Click Done when you are happy with the component(s) you have added:

Screenshot of the Object Builder in Task Builder 2. The user has searched for 'border' in the search box and has clicked 'Add' next to the Border - Hover component to add this component to the Image object. The Done button on the right is highlighted.

To remove a component, go to the three-dots menu at the top right of the component and select 'Remove Component':

Screenshot of the Object Editor in Task Builder 2, showing the components of the Image object. The three-dots menu at the top right of the Border - Hover component is highlighted. The menu is open, showing the options 'Copy Component' and 'Remove Component'.

You can also use the three-dots menu to copy a component by selecting 'Copy Component'. Click the object where you want to paste your copied component and select 'Paste' from the three-dots menu at the top of the object:

The exact effect this has will vary depending on the components the object already has. If the object already has a component of the same type (e.g., you are pasting a Markdown Text component into an object that already has a Markdown Text component), then the settings from the pasted component (e.g. text) will overwrite the settings of the existing component. If the object already has a component that is not the same type, but fulfils the same function (e.g., you are pasting an Image component into an object that already has a visual component, such as Text), then the pasted component will replace the existing component. Otherwise, the pasted component will simply be added to the object's list of components, as in the video example above.

In the Object List, drag objects up and down the list to reorder them. This controls the back-to-front display ordering of visual components. Visual components of objects that are lower in the Object List will be displayed in front of visual components of objects that are higher in the Object List:

Similarly, you can drag components within an object up and down to reorder them. This has no effect beyond visually organising your components in an order that makes sense to you.

Spreadsheets


What is the spreadsheet?


In Gorilla, the Spreadsheet drives the task. Consequently, you will always need a spreadsheet even for the simplest task.

The order that your displays are shown to participants in is defined in the spreadsheet. Each row represents a time step in the task. One column specifies the display that participants should see, and the remaining columns define the stimuli and other settings that are used in that display. The task will progress through each row in the spreadsheet one after the other until the task is complete.

For example, consider the task storyboard from earlier:

Schematic example of four displays containing screens set up for a task: Instructions, Practice, Trial, and Debrief

Let's say that we want to show the instructions first, then do three practice trials, twenty real trials, and then the debrief at the end. Each of the practice trials and real trials uses different stimuli. Your spreadsheet may then look like the following:

Schematic example of a spreadsheet set up to control the task with the displays in the previous image

When defining your screens, there are many configuration settings (e.g. which image to display or what the correct answer is) which you can set to be controlled by a specific spreadsheet column. We call this process binding - you bind certain settings to the spreadsheet so that they take their value from the row that we're currently on. You can find more information about how to do this in the Binding to the spreadsheet section.


Editing spreadsheets


To create a spreadsheet, click the New Spreadsheet button:

Screenshot of the Spreadsheets tab in Task Builder 2. The New Spreadsheet button at the top right is highlighted.

Enter a name and click Create. You will then have the choice of launching the Spreadsheet Builder, or alternatively starting with an empty spreadsheet, a file upload, or copying one of your existing spreadsheets:

Screenshot of the New Spreadsheet display in the Spreadsheets tab in Task Builder 2

Creating an empty spreadsheet

If you create an empty spreadsheet, by default it will contain only a single column, which is the display.

Use the corner menu to reorder existing columns or add a new column. You can also use either this menu or the '+ Add Row' button at the bottom of the spreadsheet to add a new row:

Screenshot of the Spreadsheet tab in Task Builder 2, with corner menu options 'Reorder Columns', 'Add Column', and 'Add Row'

Click on a spreadsheet cell to edit it:

Screenshot of a spreadsheet with one cell, highlighting that you can click the cell to edit its contents

In the display column, enter the name of one of your displays:

Screenshot of a spreadsheet with one cell in the display column, being edited to enter the word 'Instructions'

The cell will show a green background if it matches either a display name or one of your stimuli:

Screenshot of a spreadsheet with one cell highlighted in green, showing it matches the name of one of the task displays

This makes mistakes easy to spot:

Screenshot of a spreadsheet. Cell containing 'Trial' is not highlighted in green, since it does not match any display

While being able to specify a few rows directly in the spreadsheet editor is useful for getting things up and running quickly or fixing individual cells, it is generally easier to download a template spreadsheet and perform larger-scale edits in your spreadsheet editor of choice (e.g. Excel). You might find it helpful to first use the Spreadsheet Builder to create the basic structure of your spreadsheet.

Using the Spreadsheet Builder

To use the Spreadsheet Builder, click 'Launch Spreadsheet Builder' from the New Spreadsheet screen, or click the 'Open Spreadsheet Builder' button at the top of the spreadsheet tab:

Screenshot of the opening screen of the Spreadsheet Builder, with a + button to add the first block of trials

Click the button to add a block to your task. Select a display and enter the number of times it should be repeated:

Screenshot of the 'Select a display' dialogue in the Spreadsheet Builder, with dropdown menu 'Display' and text field 'Count'

For example, if you want to add a block of 10 trials to your task, you should select the Trial display and enter 10 in the Count box.

If you have already set up binding to the spreadsheet on any screens in this display, the Spreadsheet Builder will detect this and display the relevant rows and columns for you to fill in. In this example, the Trial display includes a screen that binds an Image component to the Stimulus column in the spreadsheet:

Screenshot of a Trial block in the Spreadsheet Builder, showing the Stimulus column for filling in with stimulus filenames

You can either fill in the relevant details here, or finish blocking out your spreadsheet in the Spreadsheet Builder and then download the spreadsheet to fill in offline and re-upload.

Once you have finished adding blocks to your spreadsheet, click 'Done' at the top right.

Uploading a pre-made spreadsheet

To upload a pre-made spreadsheet, click 'Upload from File' and then 'Create' from the New Spreadsheet screen:

Screenshot of the New Spreadsheet screen. 'Upload From File' is selected, and the 'Create' button is highlighted

To download a template spreadsheet first, create an empty spreadsheet or use the Spreadsheet Builder, then use the 'Download File' button at the top of the spreadsheet tab:

Screenshot of an empty spreadsheet containing columns 'display' and 'Stimulus'. 'Download File' at the top is highlighted

Edit the file locally, and then upload it using the Upload File button:

Screenshot of an empty spreadsheet containing columns 'display' and 'Stimulus'. 'Upload File' at the top is highlighted

To rename or remove a column in your spreadsheet, click the pencil button in the column header:

Screenshot of the column menu in the Spreadsheet tab, showing options 'Rename Column' and 'Remove Column'

To add a column to your spreadsheet, use the corner menu at the top-left of the spreadsheet and select 'Add Column'. A column will automatically be added whenever you bind a setting on one of your screens to the spreadsheet (see next section on binding to the spreadsheet). You can also add columns by downloading your spreadsheet, adding the column in Excel or similar, and re-uploading your spreadsheet. This is the best way to add metadata columns, such as information about trial types that is useful for analysis but not required for the functioning of the task itself.

Binding to the spreadsheet


When you set up your Screens, you have the option to bind certain settings - for example, images, text, and correct answers - to the spreadsheet. This means that this information will be populated from the spreadsheet. This is useful for things that you want to vary from trial to trial.

Bindable settings will have a link button - click this to open the binding window:

Screenshot of the Image setting of an Image component in Task Builder 2. The link icon (binding button) is highlighted

You can bind settings to various different sources, as explained in our Binding Guide, but most of the time you'll be using the spreadsheet. Ensure Spreadsheet is selected at the top of the binding window. Then pick the column you want to bind to. Early on you'll likely be creating new columns, but once created, they'll appear in the dropdown list:

Screenshot of binding to a new spreadsheet column called 'Stimulus' in the binding window in Task Builder 2

Click Bind to apply the binding. Your setting will change to show that it's now bound - the green S indicates that it is bound to the spreadsheet:

Screenshot of the Image setting of the Image component after binding. It now reads 'Stimulus' with a green S

To change your binding, click the link button again. You can then unbind the setting, or change it to be bound to a different value.

Instead of using the binding icon, you can also use the notation ${spreadsheet:myColumn} within a Markdown Text component. You just need to replace 'myColumn' with the relevant name of the spreadsheet column.

Finally, if you go back to the spreadsheet tab, you'll see that your new column now appears:

Screenshot of an empty spreadsheet with two columns: 'display' and 'Stimulus'

You would then fill in this column with the appropriate data: for example, filenames of the stimuli that you want your bound component to display on each trial. You can see an example of this at the end of the Stimuli section of this guide.

You can find more information about binding to the spreadsheet in our Binding Guide.

Spreadsheet randomisation


Adding spreadsheet randomisation

To add randomisation to your spreadsheet, click the 'Add Randomisation' button at the top of the spreadsheet tab:

Screenshot of a spreadsheet. The 'Add Randomisation' button is highlighted

A Randomiser panel will appear on the right. Click 'Add Component' to add a randomisation component. You can find more information about the different types of randomisation and how to implement them below.

Once you have added your randomisation component(s), you can preview how your randomised spreadsheet might look for one participant by clicking the Preview Randomisation button (dice icon) at the top of the spreadsheet tab:

Screenshot of the Randomiser panel with 'Randomise Trials' component. The dice button is highlighted

Gorilla will show you one possible randomised version of the spreadsheet under the constraints you have selected:

Screenshot of a randomisation preview in the Spreadsheet in Task Builder 2

You can view more possible randomised versions by repeatedly clicking the Preview Randomisation button. When you have finished previewing, click the Stop Randomisation Preview button to return to displaying your original spreadsheet:

Screenshot of a randomisation preview. The Stop Randomisation Preview button in the Randomisation panel is highlighted

Copying, pasting, and removing spreadsheet randomisation

To copy a randomisation component, click the three-dots menu to the right of the specific component and select Copy Component:

Screenshot of the Randomise Trials component, showing menu options 'Copy Component' and 'Remove Component'

To paste a randomisation component, click the three-dots menu at the top of the Randomiser tab and select 'Paste Component'. This enables you to copy randomisation settings from one task to another:

Screenshot of the menu at the top-right of the Randomiser tab, showing options 'Add Component' and 'Paste Component'

To remove a randomisation component, click the three-dots menu to the right of the specific component and select Remove Component. To remove all randomisation from your spreadsheet, click the 'Remove Randomisation' button (bin icon) at the top of the spreadsheet tab:

Screenshot of the 'Remove Randomisation' button in the Randomisation panel

Please note: If you have several different randomisation components, the order in which you add them to your randomiser will matter. Randomisation for these components will be applied from the top of the list to the bottom, so that the first component in the list will be taken into account first. For this reason, if you are using Randomise Blocks and Randomise Trials, the former should precede the latter.


Randomisation Types

You can apply various types of randomisation to your task by adding relevant spreadsheet randomisation components. See a list of randomisation components with their documentation and samples in the Components Guide, under the Randomisation section. You can add as many randomisation components as you wish and combine their functionalities for more complex randomisation.


Randomise Trials

Use the Randomise Trials component. This will randomise sets of rows in your spreadsheet, where the sets are defined by having matching values in the selected column.

To set up this type of randomisation, create an additional column in your spreadsheet. Leave this column blank for any rows that you do not want to be randomised. Enter matching values in any rows that you want to be treated as a set for the purposes of randomisation. For example, if you want to randomise easy and hard trials independently, create a column that defines these trial types, entering one value in all rows that belong to easy trials (e.g., 'easy') and a different value in all rows that belong to hard trials (e.g., 'hard'). Then, select this column in the dropdown when you configure your randomisation component.

For example, imagine you want to present participants with alternating easy and hard trials. Trial 1 should always be easy, trial 2 should always be hard, trial 3 should always be easy, etc. However, you want the order of the specific easy and hard trials within these constraints to be randomised so that the exact stimuli is shuffled. The screenshot below shows how you would set this up using a Difficulty column that defines trial type and a Randomise Trials component:

Screenshot of the Randomiser panel with 'Randomise Trials' component, with 'Difficulty' selected

Clicking the Preview Randomisation button shows one possible randomisation of the spreadsheet under these constraints:

Screenshot of randomisation preview showing easy and hard trials independently shuffled

You can see an example of using Randomise Trials in the Audio Transcription Task in our Task Builder 2 Samples Project .


Randomise Blocks

Use the Randomise Blocks component. This will randomise the order of blocks of rows in your spreadsheet. To apply this randomisation type, you will need to create a column that defines your blocks. In this column, fill in the same number in all rows that belong to the same block. For example, fill in a 1 for all rows in block 1, a 2 for all rows in block 2, a 3 for all rows in block 3, etc. Then, select this column in the dropdown when you configure your randomisation component. This will cause the order of blocks to be shuffled, but the order of the trials within each block to be preserved (or alternatively, controlled by another randomisation component).

Screenshot of the Randomiser panel with 'Randomise Block' component. 'Block' is selected in the Column dropdown

Clicking the Preview Randomisation button shows one possible randomisation of the spreadsheet under these constraints:

Screenshot of a randomisation preview showing shuffling of block order

Randomise Trials within Randomised Blocks

Use both the Randomise Trials component and the Randomise Blocks component. This will allow you to have multiple randomised blocks, with randomised trials within those blocks.

To apply this randomisation type, firstly set up a block randomisation: create a column that defines your blocks and fill in this column with the same number in all rows that belong to the same block. For example, fill in a 1 for all rows in block 1, a 2 for all rows in block 2, a 3 for all rows in block 3, etc. Then, select this column in the dropdown of the Randomise Blocks component. This will cause the order of blocks to be shuffled.

Next, to randomise the trials within the randomised blocks, create one more additional column in your spreadsheet, let's call it 'randomise_trials'. Leave this column blank for any rows that you do not want to be randomised, such as an instruction row. Enter matching values in any rows that you want to be treated as a set of trials for each block. For example, if block 1 should contain randomised easy trials, put 'easy' in all the rows for block 1; if block 2 should contain randomised medium trials, put 'medium' in all the rows for block 2, and if block 3 should contain randomised hard trials, put 'hard' in all the rows for block 3. Then, select the 'randomise_trials' column in the dropdown of the Randomise Trials component.

This way, you will have three randomised blocks with randomised trials within those blocks.

Screenshot of the Randomiser panel with 'Randomise Blocks' and 'Randomise Trials' components. 'blocks' is selected in the Column dropdown for the 'Randomise Blocks' component, and 'randomise_trials' is selected in the Column dropdown for the 'Randomise Trials'component.

Clicking the Preview Randomisation button shows one possible randomisation of the spreadsheet under these settings:

Screenshot of a randomisation preview showing shuffling of block order and shuffling of the order of trials within blocks.

Randomise Within Column

Use the Randomise Within Column component. This will randomise the contents of one column, independently of all other columns. For example, applying Randomise Within Column to the Stimulus column will randomise the assignment of stimuli to trials, while keeping all other trial information as specified in the original spreadsheet:

Screenshot of the Spreadsheet tab in Task Builder 2, showing a spreadsheet with 12 rows and 2 columns: 'display' and 'Stimulus'. On the right, the Randomiser panel contains one component, 'Randomise Within Column'. 'Stimulus' is selected in the Column dropdown.

Clicking the Preview Randomisation button shows one possible randomisation of the spreadsheet under these constraints. Rows that are empty in the selected column will not be randomised:

Screenshot of a randomisation preview showing the order of non-empty cells in the Stimulus column being shuffled

You can see an example of using Randomise Within Column in the Picture Superiority Effect task in our Task Builder 2 Samples Project .


Randomise Between Columns

Use the Randomise Between Columns component. This will randomise content between two or more columns, on a per-row basis. For example, if you have three consistent response button options across your trials, but want to randomise the order in which these appear from trial to trial, you could do this using the following setup:

Screenshot of a 'Randomise Between Columns' component. 'button1', 'button2', and 'button3' are selected as columns

Clicking the Preview Randomisation button shows one possible randomisation of the spreadsheet under these constraints:

Screenshot a randomisation preview showing the contents of button1, button2, and button3 columns being shuffled on each row

You can see an example of using Randomise Between Columns in the 2D Mental Rotation task in our Task Builder 2 Samples Project .

If you wish to randomise content between multiple sets of columns, e.g. randomise content between columns A and B, and between columns C and D, then use a variation of this component - Randomise Between Columns (Multi).


Select Randomised Subset

Use the Select Randomised Subset component. This will select a randomised subset of rows in the spreadsheet, based on constraints you define. For example, imagine your spreadsheet contains a total of 6 easy and 6 hard trials, but you only want to present a random subset of 3 easy and 3 hard trials to each participant. To do this, you would add two subsets: Column = Difficulty, Value = easy, Number = 3; and Column = Difficult, Value = hard, Number = 3, as shown in the following screenshot:

Screenshot of a 'Select Randomised Subset' component with 2 Subsets defined as described in the text above

Clicking the Preview Randomisation button shows one possible randomisation of the spreadsheet under these constraints:

Screenshot of a randomisation preview showing 3 randomly selected easy trials and 3 randomly selected hard trials

You can see an example of using Select Randomised Subset in the Navon Global Precedence task in our Task Builder 2 Samples project .


Choose Spreadsheet - Public ID

Use the Choose Spreadsheet Public ID component. In tasks where you have multiple spreadsheets, this component will allow you to assign participants to a spreadsheet based on their Public ID. This randomisation is designed to work with recruitment policies that allow you to define a set of participant Public IDs, such as Email Shot, Email ID and Supervised.

For example, in the Prisoner's Dilemma task , there are three different spreadsheets that we would like to use.

A screenshot of the spreadsheets tab in TB2. Multiple spreadsheets have been uploaded, and the Choose Spreadsheet - Public ID component has also been added.

The Choose Spreadsheet - Public ID component has been added to the randomisation tab. In this example, any participants with a Public ID that matches 'T' will be assigned to the 8Trials spreadsheet; participants with Public IDs matching 'B' will be assigned to the blabbermouth spreadsheet; public IDs that match 'S' will be assigned to the silent spreadsheet.

You can see an example of how this has been set up in the experiment when using Supervised recruitment in the screenshot below:

A screenshot of the participants tab in the experiment, where the Public IDs have been assigned to match the randomisation component.

You can see an example of using Choose Spreadsheet - Public ID in the Prisoner's Dilemma task in our Task Builder 2 Samples project .


Random Assignment Per Trial

Use the Random Assignment Per Trial component. This will allow you to probabilistically populate the contents of a column or columns in your spreadsheet, based on percentages and values you define. For example, imagine your task is a game where you want there to be a 25% probability of winning on each trial. You could set this up by adding an assignment set for the game trials that fills in the value 'Win' 25% of the time and 'Lose' 75% of the time. (You can also bind these values and percentages to Manipulations, enabling you to assign participants to different win/lose probabilities at the experiment level.) You can see how this is set up in the following screenshot:

Screenshot of a 'Random Assignment Per Trial' component that sets up a 75\% Win probability

Clicking the Preview Randomisation button shows one possible version of the spreadsheet under these constraints:

Screenshot of a randomisation preview showing 4 Win trials and 8 Lose trials

You can see an example of using Random Assignment Per Trial in the Utility task in our Task Builder 2 Samples project .


Using multiple spreadsheets


You can add as many spreadsheets to your task as you wish. To add a new spreadsheet, click the 'New Spreadsheet' button at the top-right of the spreadsheet tab. Enter a name for your new spreadsheet, and click Create. You can then launch the Spreadsheet Builder, start with an empty spreadsheet, copy an existing spreadsheet, or upload a file.

The name of the spreadsheet you are currently viewing is displayed at the top of the Spreadsheets tab:

Screenshot of the Spreadsheet tab in Task Builder 2. The current spreadsheet, Spreadsheet1, is named in the top bar

To toggle which spreadsheet you are viewing, click the name of the current spreadsheet. This will open a dropdown menu containing all your spreadsheets for this task. Select the spreadsheet you want to view:

Screenshot of the spreadsheet menu with options 'Rename', 'Remove', and a list of available spreadsheets

You can also use this menu to rename or remove the spreadsheet you are currently viewing.

When you preview your task, you can select which spreadsheet you want to use. Simply click Preview at the top-right of the Task Builder 2 window and select the spreadsheet you want to use from the dropdown menu:

Screenshot of Task Preview dropdown spreadsheet menu, showing options 'Spreadsheet1' and 'test'

For more information on cases where you might want to use multiple spreadsheets, see our Task Builder 1 page on multiple spreadsheets.

Metadata


Gorilla requires content for the columns that components are bound to in the task, but you can also include additional Metadata in the spreadsheet. This could be information about trial types that is useful for analysis but not required for the functioning of the task itself. There is no limit to how many columns of metadata can be added to a task. The only restriction is that each column must have a different name, and contain content in at least one row. There are a couple of different use cases for metadata:

Use case 1: Data Analysis

The first use case for metadata columns is to help make data analysis easier once the experiment is complete. For example, have a look at the spreadsheet in the Thatcher Sample Task . Here, you can see the Orientation column in the spreadsheet. This column is not bound to any components in the task, it is there for purely informative purposes. In this case, it helps to identify the type of image presented to participants on each trial.

A screenshot of the spreadsheet from the Thatcher Task, showing the metadata column.

Use case 2: Spreadsheet Manipulations

The second use case for metadata columns is for spreadsheet manipulation configuration. As an example, have a look at the Misinformation Effect Task where a spreadsheet manipulation has been set up. Here, there are three spreadsheet columns containing different text.

A screenshot of the spreadsheet, showing three columns containing different text.

The Text component has been bound to a spreadsheet manipulation as shown below:

A screenshot of the Text component bound to the spreadsheet manipulation called Speed.

When the manipulations have been configured in the experiment tree, the content from the manipulation column will be shown to the participants. As the content from only one column will be shown, the other columns, by default, are metadata columns.

Pro Tip

Read more about analysing Gorilla Task Data in our Data Guide. You can view an example of using metadata columns in the context of a real experiment in this Gorilla Academy case study .

Scoring correct answers


It is common in many tasks to score responses given by participants as correct or incorrect. In Task Builder 2, a Scorer component is required to do this.

When creating a new screen in your display, there is an option to add Scoring directly from the Screen Template window. By clicking the 'Add Scoring' checkbox, a Scorer component will be added to the screen automatically.

A screenshot of the window displayed when a new screen is added to Task Builder2. The Add Scoring option is checked.

You can also manually add a Scorer component in the Screen Tab. The Scorer can be found under Response Handling components:

A screenshot of the Screen component menu in Task Builder 2, with the Scorer component selected.

In order to record responses as correct, the object must contain a Response Component such as Click Response or Keyboard Response. To record the response, the Response field of the component needs to be defined. In this example, we use a Click Response to choose whether a presented number is odd or even. The image below shows that when the word 'Odd' is clicked, the response will be recorded as Odd:

A screenshot of the Task Builder 2 screen. The screen shows the number 25 and text asking whether it is odd or even. The component on the right hand side record the Odd response as Odd and an arrow highlights this field.

This response name is then used to configure the correct answers in the Scorer settings. If you would like the correct answer to remain the same for all trials with this screen, you can simply type the correct answer into the Correct Answer field, as shown below:

A screeenshot of the scorer component in the Screen Tab of Task Builder 2. The correct answer is entered as Odd.

In the example above, when the response Odd is given it will always be marked as correct. However, if you would like the correct answer to vary dynamically trial-by-trial, click the link icon on the right and you can bind the correct answer to a column in the spreadsheet:

A screenshot of the binding window in Task Builder 2. A new column has been created called Answer.

Next, fill in the specified column in the spreadsheet with the correct answers for each trial:

A screenshot of the spreadsheet within Task Builder 2. The answer column is filled in with either Odd or Even responses for each row of the spreadsheet.

Finally, use the screen preview button and the debug window to check that responses are being recorded as correct and incorrect appropriately:

A screenshot of Task builder 2 in preview mode. The response Odd has been received and marked as correct within the Debug window on the right hand side.

You can read more about how to save correct answers to the Store later on in this guide.


Stimuli


Stimuli are any media files (images, audio, video, etc.) which you will present to participants during your task.

You can add, delete, and manage stimuli on the Stimuli tab. To add stimuli, click Add Stimuli at the top right:

Screenshot of the Stimuli tab in Task Builder 2. The 'Add Stimuli' button at the top right is highlighted

Browse to the files on your computer and select the stimuli you want to add. Once the stimuli have uploaded, you will see a preview of each stimulus. Stimuli are shown 10 to a page. To navigate between pages, use the arrows at the top of the Stimuli tab. Click 'Remove' next to a stimulus to delete it from your task:

Screenshot of the Stimuli tab in Task Builder 2. The 'Remove' button next to the stimulus audio_stim.mp3 is highlighted

You can search for specific stimuli by typing part of the filename in the Search box at the top left. You can also filter stimuli by type (image, audio, video, and document) using the Filter icons at the top of the Stimuli tab. Active filters are displayed in red, while inactive filters are displayed in black. Toggle whether a filter is active or inactive by clicking it.

There are two main ways to incorporate stimuli in your task. If you need the same stimulus to display for all trials and for all participants (e.g., on an instructions screen), create an object on that screen with the appropriate component (e.g., an Image component), and then use the 'choose...' dialogue to pick the stimulus you want to display:

If on the other hand you want the stimulus to change trial by trial, you will instead need to bind the component you have created to a column in the spreadsheet. You would then fill in this column with the filenames of the stimuli you want to show on each trial:

Screenshot of Stimulus column containing filenames of images to be displayed on each trial

Manipulations


Manipulations allow you to change settings on your task from within the experiment tree. You can use manipulations to implement between-participant conditions in your experiment. They can also be used as Spreadsheet Manipulations, for example, when participants should be assigned a set of stimuli from several possible sets.

Samples that use this feature

Spatial N-Back Task - Uses manipulations

Misinformation Effect Task - Uses spreadsheet manipulations


To add a manipulation, navigate to the task setting you want to manipulate. For example, imagine you want to use a manipulation to vary the time limit on a screen between participants. Go to the relevant screen and click the Screen tab to find the Time Limit component. Then click Bind (the link icon to the right of the Time Limit setting):

Screenshot of a Time Limit component. The Bind button (link icon to the right of the Time Limit setting) is highlighted

Click Manipulation. From the dropdown menu, select 'Create new...' Type a name for your manipulation into the box that appears:

Screenshot of binding to a new manipulation called 'TimeLimit' in the binding dialogue in Task Builder 2

Click Bind to apply the binding. Your setting will change to show that it's now bound - the blue M indicates that it is bound to a manipulation:

Screenshot of the Time Limit setting after binding, with the text 'TimeLimit' and a blue M icon

You can find more information about binding to manipulations, including how to configure manipulations in the Experiment Tree, in our Binding Guide.

To view all manipulations set up on your task, go to the Settings tab on the left and click Manipulations. Here, you can delete any manipulations you are no longer using by clicking the bin icon on the left of each manipulation. You can also add a description for your manipulation, set its Label and Key, define Options, and set up a default value.

Screenshot of the Settings tab, with Manipulations selected. Below are the settings for the TimeLimit manipulation

Label: This is the name of your manipulation, as it will appear in all configuration menus.

Description: Use this to add a description of your manipulation and its possible values.

Key: This is the name of your manipulation, as it will be referred to in Gorilla's underlying code. By default, the Key is identical to the Label. You will need to use the Key if you refer to your manipulation within a script.

Default: Use this to set a default value for your manipulation. This value will be used if you do not set a value manually within the Experiment Tree.

Options: Here, you can define options for the values of your manipulation. If you define options, these options will show up as a dropdown menu when you set up your Task in the Experiment Tree. If you do not define options, then you will enter the value of the manipulation in a free text field when you set up your Task in the Experiment Tree.

Spreadsheet Manipulations


Spreadsheet Manipulations are useful when you want to show participants different sets of stimuli. For example, if you want to show half of your participants one set of image stimuli and the other half a different set of images, you can use a spreadsheet manipulation to set this up. First, you need to open up the binding menu for the Image object, select Manipulation, toggle the Advanced Settings to be on, and then set the dropdown to 'Look for a spreadsheet column with that name'.

Screenshot of the advanced settings for a manipulation when binding, with the option 'Look for a spreadsheet column with that name'

In your Objects tab, you will see that you are using a Spreadsheet Manipulation when the green S and blue M are appearing in front of the Image setting.

Screenshot of the object settings for a spreadsheet manipulation with an image as stimulus

Now, you just need to finish setting up your manipulation in the Settings tab, as explained in Manipulations.

Store


The Store is a place to save participant data that you want to use later in the task or the experiment: for example, task responses and accuracy scores. Each piece of data that you save in the Store will be saved in a named Field, so that you can retrieve it and use it later. If you're already familiar with Task Builder 1, this is analogous to what was previously called embedded data.


Saving data to the Store


For example, imagine that you want to save participants' number of correct responses during a task. Navigate to the screen where you collect participants' responses and click the Screen tab. The first step would be to set up a Scorer component so that participants' responses can be marked as correct or incorrect. Once your Scorer component is set up with the correct answers, click Add Component, select Save Accuracy (under Response Handling), and click 'Choose':

Screenshot of adding a Save Accuracy component to the Screen tab

Click +Add next to Destinations. Use the Criteria and Attribute dropdown menus to select which aspect of participant accuracy you want to save. For example, to save the total number of correct answers, select Criteria = Response Accuracy, Accuracy = Correct, and Attribute = Total:

Screenshot of saving Accuracy data to Store fields

When you have selected an attribute, under 'Field', click 'Set...' Create a new Field, give it a name, and click 'Bind':

Screenshot of binding to a new Store field called 'Correct'

Repeat this for any other attributes of accuracy you want to save. In the screenshot below, the Save Accuracy component is set up to save the participant's number of correct responses in the Store field 'Correct', and the participant's total number of trials in the Store field 'Total' - the orange F indicates that each is bound to a field in the Store:

Screenshot of saving number correct to a Store field called Correct, and total trials to a Store field called Total

Retrieving data from the Store


Now, navigate to the screen where you want to retrieve and display the values of these Store fields.

There are two ways to retrieve fields from the Store and display their values on your task screen:

  1. Directly bind a component to a Store field. You can find how to do this in the Binding Guide.

  2. Incorporate Store fields within a Markdown text component. This is the easiest way to show participants their scores in a task. We explain how to do this below:

Add an object to your screen containing a Markdown Text component. In the component's Raw Text field, type the text you want to display to the participant. To incorporate a Store field, use the syntax ${store:myField}. For example, 'You scored ${store:Correct} out of ${store:Total}':

Screenshot of incorporating a participant's correct and total score into a Markdown Text component using the syntax above

If you preview the task, you can see how this will display to a specific participant:

Screenshot of the participant's view when previewing the task. Text reads: 'You scored 7 out of 10.'

To view all Store fields currently being saved in your task, go to the Settings tab on the left and click Store in the top bar:

Screenshot of the Settings tab with Store selected, showing Store fields with 'Local' switch set to off

Here, you can view and change the names of your Store fields. You can also delete any Store fields you are no longer using by clicking the bin icon on the left of each one. Finally, you can toggle whether fields are stored locally to the task, or globally to the experiment. This distinction matters if you are using the same Task node multiple times within an Experiment Tree. If you want accuracy to be counted up separately for each version of the task, then you should select 'Local' for the relevant Store fields. By default, all fields are stored globally. This setting is appropriate for most cases.

You can see an example of saving participant accuracy to the Store and displaying it at the end of the task in the Digit Span Text Entry task in our Task Builder 2 Samples Project .

You can find more information about binding to the Store in our Binding Guide.

Lookahead


The Lookahead tab lets you control how much of your task is pre-loaded at any one time.

By default, only the next few trials will be pre-loaded. This strikes a balance between ensuring that the task does not take an unreasonable time to load at the start, and keeping loading time between trials to a minimum.

If you prefer, you can opt to pre-load more of your task in advance. This will result in a longer loading time at the start. Usually, this will not be necessary, but you may want to consider this option for tasks with very fast trial presentations or with relatively few stimuli.


Stimuli Loading


Progressive: This is the default setting. Stimuli will be loaded a few trials in advance of when they will be displayed.

Spreadsheet: All stimuli listed in the current spreadsheet will be pre-loaded at the start of the task. Note that if any stimuli do not appear in the spreadsheet (e.g. they are bound to Store fields), they will be loaded a few trials in advance of when they will be displayed, as per the default. The most common use case for this setting is in a task where you have multiple spreadsheets. Using this setting will pre-load all stimuli in the spreadsheet being used by the current participant, but will not slow down the task unduly by attempting to pre-load all stimuli from all spreadsheets.

Full: All stimuli uploaded to the task will be pre-loaded at the start, whether or not they are used in the task and/or listed in the current spreadsheet.


Lookahead


Progressive: This is the default setting. Task screens will be loaded a few trials in advance of when they will be displayed.

Full: All screens for the task will be pre-loaded at the start.

Subsystems


The Subsystems tab contains information on which subsystems are currently enabled for your task. Subsystems are features that make use of browser hardware (e.g. audio, microphone, camera, fullscreen, screen sharing) that often require some explicit permission for the user to activate, such as pressing F11 to enter full screen mode. Enabling a subsystem ensures that the system is correctly initialised and that any required permissions have been granted before starting your task.

When you add a component involving one of these subsystems (e.g. an Audio Clip) to your task, Gorilla will automatically enable the corresponding subsystem. You can visit this tab to disable a subsystem that you are no longer using in your task. For example, if your task previously used audio, but you have now deleted all Audio Clip components and no longer require this subsystem, you can disable it here to avoid participants being asked for permissions that are no longer required. You can also visit this tab to manually activate a subsystem. For example, if you are using a Screen Recording component and also want to record audio from the participant's microphone, you can do this by toggling on the Microphone subsystem.

Update (Jan 2024): Subsystem checks will now run only once per participant within an experiment. Previously, subsystem checks would run before every task that required that subsystem, and again if the page was reloaded, which was repetitive and frustrating for participants. Now, the initial subsystem check requiring user input will run once, at the beginning of the first task where that subsystem is enabled. Following this, when the participant enters another task or reloads the page, Gorilla will perform subsequent subsystem checks silently in the background; if these checks are successful, the participant will not have to repeat the full subsystem check.

For an example of a task with the Audio subsystem enabled, see the Audio Transcription task in our Task Builder 2 Samples Project .

Warning

For participants using the Safari browser, the fullscreen subsystem sometimes does not recognise when the participant has entered fullscreen mode. This means there is no way to progress the task beyond the initial screen when this subsystem is enabled. We are investigating this issue; in the meantime, we advise that you test your fullscreen task thoroughly across browsers, and consider either screening out participants using affected browsers or asking participants to trigger fullscreen mode manually.

Metrics


The Metrics tab can only be used in conjunction with scripting. Find out more in our guide to scripting in Task Builder 2.

Customisation


The Customisation settings allow you to change the base layout of your task. You can choose from the different Layout options to tailor the object positioning to certain device types.

There are four different Layouts you can choose from:

  • 4:3 Landscape. This is the default layout for tasks.
  • 16:9 Portrait: This is ideal for mobile devices in portrait.
  • 16:9 Landscape: This is ideal for mobvile devices in landscape.
  • 4:3 Portrait.
A screenshot of the Customisation Settings tab in Task Builder 2. The drop down is open to show the different Layout options available.

When you have selected a Layout setting, you will see the updated layout in the task structure. Have a look at the image below, which shows the difference between the 4:3 Default layout and the 16:9 Portrait Layout in Mobile Screen Preview:

A screenshot of two Task Builder 2 task screens. The left one is set to 4:3 Landscape layout, and the one on the right is set to 16:9 Portrait layout.

If you set up multiple versions of your task for different device-types, you can ensure participants see the correct version by using a Branch Node to branch participants according to their device. Have a look at our Example Experiment which shows how this can be achieved.


Multiplayer


This is where you can activate Multiplayer mode in your tasks, allowing several participants to take part interactively. Read more about Multiplayer in our Multiplayer Guide.

To enable Multiplayer on a task, tick the 'Enable Multiplayer' box. In the box that appears below, enter the number of players the task is designed for:

Screenshot of the box 'Enable Multiplayer' which is ticked. Under 'Number of players' below, 2 is entered into the text field

You will then be able to configure aspects of your task to display for one player or another by using the Multiplayer component. You can also use other Multiplayer-specific components, for example to manage how data are saved on the network. For more information, see our Multiplayer guide.

Branching participants


Sending participants to different screens based on their performance/response is a common requirement in behavioural experiments. In Gorilla's Task Builder 2, you can do this with our Branch screen component. For more in-depth information on how to achieve this, take a look at the Screen Branching tutorial.

Eye Tracking


Currently, the eye tracking component is only available in Task Builder 1, but it will be available in Task Builder 2 very soon!

In the meantime, have a look at our Eye Tracking 2 Zone for Task Builder 1. You can also check out our Eye Tracking analysis guide.


Sending Tasks to participants

To send a Task to participants, you need to add it to an Experiment.

The Experiment Tree is where you design your entire experiment, such as adding demographics Questionnaires and your reaction time Tasks into a single experimental flow. Within the Experiment Builder, you can select which Recruitment policy you would like to use, your Recruitment Target, and any Requirements you would like to implement. The Data tab is where you download the data you have collected from your participants.

You can find out more information on how to design and build your Experiments in our Experiment Builder: How-To guide.

Scripts


You can find our scripting documentation in our dedicated Scripting guides!