Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com), Millisecond
Created: January 14, 2013
Last Modified: January 11, 2025 by K. Borchert (katjab@millisecond.com), Millisecond
Script Copyright © Millisecond Software, LLC
This script implements a version of the Competitive Reaction Time Task which is based on the Taylor Competitive Reaction Time task (Taylor, 1967). The current script incorporates features from the following studies:
Bushman, B. J. (1995). Moderating role of trait aggressiveness in the effects of violent media on aggression. Journal of Personality and Social Psychology, 69, 950-960.
Anderson, C.A. & Dill, K.E. (2000). Video Games and Aggressive Thoughts, Feelings, and Behavior in the Laboratory and in Life. Journal of Personality and Social Psychology, 78, 772-790.
Denson, T.F., von Hippel, W., Richard I. Kemp, R.I. & Teo, L.S. (2010). Glucose consumption decreases impulsive aggression in response to provocation in aggressive individuals. Journal of Experimental Social Psychology, 46, 1023–1028.
10 minutes
Participants are told that they play a game with a second player (in reality the co-player is the computer). The goal is to be faster to press the mouse button if a target square turns from yellow to red. The 'loser' has to endure a blast of white noise. Before the participant gets to play, she is asked to select the intensity of the blast to be delivered to co-player (0-10). The duration of the blast is held constant in this script.
Script: CompetitiveReactionTimeTask.iqjs offers the possibility to set both intensity and duration Script: CompetitiveReactionTimeTask_Duration offers the possibility to set duration of blast with a constant intensity
• 25 rounds/trials, stage 0 = trial 1; stage 1 = trial 2 - trial 9; stage 2 = trial 10 - 17; stage 3 = trial 18 - trial 25
• by default different editable values and lists govern the intensity the computer chooses for those different stages;
-> change values under EDITABLE CODE -> Editable Values
-> change lists under EDITABLE CODE -> Editable Lists
(A) TRIAL SET-UP
25 trials = 25 trial sequences; each trial sequence consists of 8 steps
1. trial.start
presents the UI of the game; lasts for a random amount of time (EDITABLE CODE -> Editable Lists)
2. trial.intensity
let's participants set the intensity of the blast
3. trial.ready
let's participants select the ready-button
4. trial.target_wait
target sits there being green for a random amount of time (EDITABLE CODE -> Editable Lists),
presumably because participants have to be both ready before the yellow square should be presented.
'Ready' button turns purple.
5. trial.target_yellow
target box turns yellow for a random amount of time (EDITABE CODE -> Editable Lists) = warning signal
6. trial.target_red
target box turns red; waits for participant's mouse click/touch; waits a random amount of time to reveal the
outcome (EDITABLE CODE -> Editable Lists) to pretend the computer has to wait for 2 responses
7. trial.outcome
reveals who won, delivers the blast (if participant lost), lasts as long as set parameters.blastdurationMS;
reveals the setting the co-players have chosen under certain circumstances
8. trial.end
continues to show the setting the co-player chose until the settings have been displayed for a set amount of time
(EDITABLE CODE -> Editable Values)
(B) INTENSITY SETTINGS
1) Intensity is set by selecting a level 0-10 of an Intensity Meter. Once the intensity is selected, the meter
turns gray including the selected level. Exception: if intensity = 0 is selected, the 0 level turns yellow
instead of gray to highlight the non-aggressive choice
2) Once selected, no changes can be made
3) The audio file that delivers the blast in this script was created in Audacity: White noise with Amplitude 1, 2s long
!!!The audio file can easily be replaced under EDITABLE CODE -> Editable Stimuli
4) the volume of the audio file is adjusted in Inquisit
Instructions are provided by Millisecond. They are not original to any of the studies.
See crrt_instructions.iqjs
This script computes blastintensity and duration separately (as well as overall) for
- stage 0 (first trial; Denson et al (2010) used first trial aggression as main DV)
- stage 1 (trial 2-9)
- stage 2 (trial 10-17)
- stage 3 (trial 18-25)
File Name: CompetitiveReactionTimeTask_Intensity_summary*.iqdat
| Name | Description |
|---|---|
| inquisit.version | Inquisit version number |
| computer.platform | Device platform: win | mac |ios | android |
| startDate | Date the session was run |
| startTime | Time the session was run |
| subjectId | Participant ID |
| groupId | Group number |
| sessionId | Session number |
| elapsedTime | Session duration in ms |
| completed | 0 = Test was not completed 1 = Test was completed |
| blastDurationMS | Sets the constant blastduration (default: 1000ms); Max = 2000 (determined by length of provided sound.blast) |
| firstIntensity | Stores the intensity selected for the first round/trial |
| maxWinLatency | Maximum latency (in ms) that allows player to win the current game; any reaction times above => lose (even if it was a predetermined 'win' trial) default: 700ms |
| meanBlastIntensity | Mean blastintensity (includes all 25 trials) |
| meanBlastIntensity1 | Mean blastintensity of stage 1 (trial 2 - trial 9) |
| meanBlastIntensity2 | Mean blastintensity of stage 2 (trial 10 - trial 17) |
| meanBlastIntensity3 | Mean blastintensity of stage 3 (trial 18 - trial 25) |
| meanrtIntensity | Mean latency (in ms) of setting intensity (includes all 25 trials) |
| meanrtReady | Mean latency (in ms) of selecting Ready button (all trials) |
| meanrtTarget | Mean latency (in ms) of target response when target turns red (all trials) |
File Name: competitivereactiontimetask_intensity_raw*.iqdat
| Name | Description |
|---|---|
| build | Inquisit version number |
| computer.platform | Device platform: win | mac |ios | android |
| date | Date the session was run |
| time | Time the session was run |
| subject | Participant ID |
| group | Group number |
| session | Session number |
| blockCode | Name of the current block |
| blockNum | Number of the current block |
| trialCode | Name of the current trial |
| trialNum | Number of the current trial |
| trialCount | Custom trialCounter |
| blastDurationMS | Sets the constant blastduration (default: 1000ms); Max = 2000 (determined by length of provided sound.blast) |
| volume | Records the volume with which the blast has to be delivered |
| win | 1 = participant wins; 2 = participant loses |
| blastIntensity | Stores the current intensity selected by participant |
| feedbackIntensity | Stores the current feedback intensity (intensity chosen by 'co-player') |
| rtIntensity | Stores the current latency (in ms) for selecting intensity |
| rtReady | Stores latency (in ms) to select ready button |
| rtTarget | Stores latency to (in ms) of target response when target turns red |
The procedure can be adjusted by setting the following parameters.
| Name | Description | Default |
|---|---|---|
| blastDurationMS | Sets the constant blastduration ; Max = 2000 (determined by length of provided sound.blast) | 1000ms |
| firstOutcomePredetermined | 1 = first trial outcome (win/loss) is set by experimenter 0 = should be randomly determined IF firstoutcome_predetermined = 1 (default) | |
| firstwin | 1 = participant wins first trial (default) 2 = participant loses first trial | |
| showCoplayersettings | 1 = only show co-player settings for losing trials (default) 2 = always show co-player settings | |
| maxWinLatency | Maximum latency that allows player to win the current game; any reaction times above => lose (even if it was a predetermined 'win' trial) default: 700ms | |
| revealDuration | How long each participant sees parameter settings of 'co-player' | 4000ms |
| timerDuration | Amount of time a timer is presented on the screen to alert participants that game starts soon |