___________________________________________________________________________________________________________________ *Whack-a-mole: go/nogo task for children* *keyboard version with 1 response* ___________________________________________________________________________________________________________________ Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com) for Millisecond Software, LLC Date: 03-04-2021 last updated: 09-27-2024 by K. Borchert (katjab@millisecond.com) for Millisecond Software, LLC Script Copyright © 09-27-2024 Millisecond Software ___________________________________________________________________________________________________________________ BACKGROUND INFO ___________________________________________________________________________________________________________________ This script implements an Inquisit implementation of the 'Whack-a-mole' task, a go/nogo task for children, published at: http://fablab.yale.edu/page/assays-tools Project downloaded: WackAMole.zip The Inquisit implementation of this script is based on e-prime script 'WackTheMole2.0_Go_NoGo.es' The downloaded project comes with two 'whack-a-mole' e-prime scripts as well as several information files. - 'mole_agree.html' (included with this script as well) - please read - 'Mole_Instrux.pdf' (additional verbal instructions) - 'Mole_Parameters.pdf' (see below under Task Description) Millisecond Software was given permission to include this task in the Millisecond Library by Dr. BJ Casey. ___________________________________________________________________________________________________________________ TASK DESCRIPTION ___________________________________________________________________________________________________________________ The following information is provided by 'Mole_Parameters.pdf' (downloaded with original eprime script package): Wack-A-Mole Task • Wack the Mole (WTM) is a version of the Go/NoGo paradigm, a response inhibition task (Casey et al, 1997). • WTM is designed to examine how parametrically manipulating preceding context (the number of Go trials) affects inhibition of a preponent response (NoGo trials). (Durston et al, 2002) • As the number of Go trials increases, the salience of the “go” response increases. Thus, increasing Go trials is expected to increase the conflict between the two responses and require greater cognitive control. Task design • Subjects are asked to press a button in response to visually presented stimuli (a mole), but to avoid responding to a less frequent non-target (an eggplant). • The task consists of four runs, which lasted on average 2 min and 21 seconds each. Each run contains an average total of 53 trials, with an average of 42 go trials, resulting in an average of 12 NoGo trials per run. • The type of NoGo trial (with 1-7 preceding Go trials) was weighted such that more Go trials preceded NoGos in the first and last runs. The order of presentation of the different types of NoGo trials was pseudorandomized. Stimulus duration was 1500 milliseconds. The interstimulus interval is 5 seconds. References: Casey, B. J., Trainor, R. J., Orendi, J. L., Schubert, A. B., Nystrom,L. E., Giedd, J. N., Castellanos, F. X., Haxby, J. V., Noll, D. C., Cohen, J. D., Forman, S. D., Dahl, R. E., & Rapoport, J. L. (1997). A developmental functional MRI study of prefrontal activation during performance of a Go-No-Go task. Journal of Cognitive Neuroscience, 9, 835–847. Durston, S., Tottenham, N. T., Thomas, K. M., Davidson, M. C., Eigsti, I. M., Yang, Y., Ulug, A. M., Casey, B. J. (2003) Differential patterns of striatal activation in young children with and without ADHD. Biological Psychiatry, 15, 871-878. ___________________________________________________________________________________________________________________ DURATION ___________________________________________________________________________________________________________________ the default set-up of the script takes appr. 12 minutes to complete ___________________________________________________________________________________________________________________ DATA OUTPUT DICTIONARY ___________________________________________________________________________________________________________________ The fields in the data files are: (1) Raw data file: 'whackamole_keyboard_raw*.iqdat' (a separate file for each participant)* build: The specific Inquisit version used (the 'build') that was run computer.platform: the platform the script was run on (win/mac/ios/android) date, time: date and time script was run subject, group: with the current subject/groupnumber session: with the current session id blockCode, blockNum: the name and number of the current block (built-in Inquisit variable) trialCode, trialNum: the name and number of the currently recorded trial (built-in Inquisit variable) Note: trialNum is a built-in Inquisit variable; it counts all trials run; even those that do not store data to the data file such as feedback trials. Thus, trialNum may not reflect the number of main trials run per block. run: practice, 1, 2, 3, 4 routine: n1, n2, n3, n4, n5 (the routine the current trial is run under) condition: g1-g5: numbers the go trials in the current routine ng1-ng5: numbers the nogo trial after the last go trial count iti: intertrial interval duration (in ms) response: the participant's response (scancode of response buttons) 57 = spacebar 0 = no response correct: accuracy of response: 1 = correct response; 0 = otherwise latency: the response latency (in ms); measured from: onset of image stimulusItem: the presented stimuli in order of trial presentation (2) Summary data file: 'whackamole_keyboard_summary*.iqdat' (a separate file for each participant)* inquisit.version: Inquisit version run computer.platform: the platform the script was run on (win/mac/ios/android) startDate: date script was run startTime: time script was started subjectId: assigned subject id number groupId: assigned group id number sessionId: assigned session id number elapsedTime: time it took to run script (in ms); measured from onset to offset of script completed: 0 = script was not completed (prematurely aborted); 1 = script was completed (all conditions run) goTrials: number of go trials run across all routines across all 4 test runs hits: number of hits across all routines across all 4 test runs hitRate: hitrate across all routines across all 4 test runs missRate: miss rate across all routines across all 4 test runs meanHitRT: mean hit response time (in ms) across all routines across all 4 test runs noGoTrials: number of nogo trials run across all routines across all 4 test runs commissions: number of commission errors (spacebar press for nogo trials) across all routines across all 4 test runs faRate: commission/false alarm rate across all routines across all 4 test runs corrRejectRate: correct rejection rate across all routines across all 4 test runs (= not responding in nogo trials) meanCommissionRT: mean commission response time (in ms) across all routines across all 4 test runs zHitRate: z-score of the hitRate zFaRate: z-score of the falseAlarm/commission rate Note: *Adjustments to z-scores as recommended by: Gregg, A. & Sedikides, C. (2010). Narcissistic Fragility: Rethinking Its Links to Explicit and Implicit Self-esteem, Self and Identity, 9:2, 142-161 (p.148) => Adjustments are made if the FArate (hitRate) = 0 (increased to 0.005) or 1 (decreased to 0.995)* dPrime: Computes d' (parametric measure of discriminability btw. signals and noise) => Range (in this script): -5.1516586840152740479 <= dprime <= 5.1516586840152740479 (=perfect performance) => The higher the value, the better signals (go stims) were distinguished from noise (nogo stims) (d' = 0: chance performance; negative d-primes: participant treated nontargets as targets and targets as nontargets) c: c-criterion in signal detection:The absolute value of c provides an indication of the strength of the response bias/response style negative: participant more likely to report that signal (go stims) is present (liberal response style); may favor faster responding in speed-accuracy trade-off response paradigms positive: favoring caution (conservative response style) ###by routine: n1, n2, n3, n4, n5 goTrialsN1: number of go trials run for n1-routine across all 4 test runs hitsN1: number of hits for n1-routine across all 4 test runs hitRateN1: hitrate for n1-routine across all 4 test runs missRateN1: miss rate for n1-routine across all 4 test runs meanHitRTN1: mean hit response time (in ms) for n1-routine across all 4 test runs noGoTrialsN1: number of nogo trials run for n1-routine across all 4 test runs commissionsN1: number of commission errors (spacebar press for nogo trials) for n1-routine across all 4 test runs faRateN1: commission/false alarm rate for n1-routine across all 4 test runs corrRejectRateN1: correct rejection rate for n1-routine across all 4 test runs (= not responding in nogo trials) meanCommissionRTN1: mean commission response time (in ms) for n1-routine across all 4 test runs zHitRateN1: z-score of the N1-hitRate zFaRateN1: z-score of the N1-falseAlarm/commission rate dPrimeN1: Computes d' (parametric measure of discriminability btw. signals and noise) for N1 trials cN1: the response bias/response style for N1 trials (same for all routines run) * separate data files: to change to one data file for all participants (on Inquisit Lab only), go to section "DATA" and follow further instructions ___________________________________________________________________________________________________________________ EXPERIMENTAL SET-UP ___________________________________________________________________________________________________________________ The default setup of this script uses 5 different 'routines' that differ in the number of go trials that precede one nogo trial: n1: 1 go trial -> 1 nogo trial n2: 2 go trials -> 1 nogo trial n3: 3 go trials -> 1 nogo trial n4: 4 go trials -> 1 nogo trial n5: 5 go trials -> 1 nogo trial Note: routines 'n0,'n6', and 'n7' also included in this script but they are currently not run by default setup (1) Practice: - runs 3 routines in sequence: n2, n4, n1 (10 trials total: 7 go, 3 nogo trials) - participants receive feedback after each response (2) Test: 4 runs (in fixed sequence) - routines run by each run can be edited under section "Editable Lists" - !if the number of routines run is changed, edited the expt-element at the end of the script accordingly! Run1: - runs 13 routines (n1,n3,n1,n3,n3,n1,n5,n2,n5,n3,n5,n4,n5) in random order => 54 trials total (41 go: 13 nogo trials) - participants receive feedback after each response Run2: - runs 14 routines (n2,n3,n3,n5,n5,n1,n5,n1,n5,n1,n4,n3,n2,n2) in random order => 56 trials total (42 go: 14 nogo trials) - participants receive feedback after each response Run3: - runs 14 routines (n5,n5,n4,n1,n2,n5,n5,n1,n4,n1,n1,n3,n3,n1) in random order => 55 trials total (41 go: 14 nogo trials) - participants receive feedback after each response Run4: - runs 14 routines (n3,n3,n1,n5,n4,n3,n5,n3,n3,n1,n5,n1,n1,n3) in random order => 55 trials total (41 go: 14 nogo trials) - participants receive feedback after each response Routine Count across the 4 runs: n1: 15 n2: 5 n3: 15 n4: 5 n5: 15 (Note: in this script summary variables by 'routine' are calculated for n1, n3, and n5 routines) Trial Sequence (default timing based on e-prime script; can be edited under section Editable Parameters): Go Trial (Mole): - Mole image presented for max. 1800ms - feedback for: 300ms - empty hole for iti duration (variable): iti = 2000ms (parameters.totalTrialDuration) - RT (Note: for noresponses, the RT is the max. stimulusduration = 1800) => total duration: 2300ms Nogo Trial (Vegetable) - Vegetable image presented for max. 1300ms (Note: the duration of the vegetable is shorter by 500ms) - feedback for: 300ms - empty hole for iti duration (variable): iti = 2000ms (parameters.totalTrialDuration) - RT (Note: for noresponses, the RT is the max. stimulusduration = 1300) => total duration: 2300ms ___________________________________________________________________________________________________________________ STIMULI ___________________________________________________________________________________________________________________ taken from original e-prime script 'WackTheMole2.0_Go_NoGo.es' http://fablab.yale.edu/page/assays-tools (converted to png files) ___________________________________________________________________________________________________________________ INSTRUCTIONS ___________________________________________________________________________________________________________________ taken from original e-prime script 'WackTheMole2.0_Go_NoGo.es' http://fablab.yale.edu/page/assays-tools ___________________________________________________________________________________________________________________ EDITABLE CODE ___________________________________________________________________________________________________________________ check below for (relatively) easily editable parameters, stimuli, instructions etc. Keep in mind that you can use this script as a template and therefore always "mess" with the entire code to further customize your experiment. The parameters you can change are: //timing parameters / startDuration = 500 //the empty hole duration (in ms) at start of each run (default: 500ms) / totalTrialDuration = 2000 //the duration (in ms) of the trial (excluding the feedback durations) //=> duration of stims + intertrial interval (presentation of empty hole) / moleDuration = 1800 //mole duration in ms (= response timeout) (default: 1800ms, see eprime script) / vegetableDuration = 1300 //vegetable duration in ms (= response timeout) (default: 1300ms, see eprime script) / hitFeedbackDuration = 300 //the duration (in ms) for the feedback image presented after a hit / crFeedbackDuration = 300 //the duration (in ms) for the feedback after a correct rejection / errorFeedbackDuration = 300 //the duration (in ms) for error feedback //sizing parameters: / imageSize = 40% //the proportional size (relative to canvas height) of the mole images //response key: / goKey = " " //the go key (here: spacebar)