English Version ___________________________________________________________________________________________________________________ Deary-Liewald 4-Choice Reaction Time Task (DLC) - keyboard- ___________________________________________________________________________________________________________________ Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com) for Millisecond Software, LLC Date: 09-25-2025 last updated: 09-26-2025 by K. Borchert (katjab@millisecond.com) for Millisecond Software, LLC Script Copyright © 09-26-2025 Millisecond Software ___________________________________________________________________________________________________________________ BACKGROUND INFO ___________________________________________________________________________________________________________________ This script implements the Deary-Liewald 4-Choice Reaction Time Task (DLC). The DLC is a basic 4-choice reaction time task. Reference: Deary, I. J., Liewald, D., & Nissan, J. (2011). A free, easy-to-use, computer-based simple and four-choice reaction time programme: The Deary-Liewald reaction time task. Behavior Research Methods, 43(1), 258–268. https://doi.org/10.3758/s13428-010-0024-1 ___________________________________________________________________________________________________________________ TASK DESCRIPTION ___________________________________________________________________________________________________________________ Participants will see 4 white boxes. At random intervals an 'X' appears in one of them. As soon as they see the X, they are asked to press the response key that corresponds to the location of the X. ___________________________________________________________________________________________________________________ DURATION ___________________________________________________________________________________________________________________ the default set-up of the script takes appr. 2 minutes to complete ___________________________________________________________________________________________________________________ DATA OUTPUT DICTIONAIRY ___________________________________________________________________________________________________________________ The fields in the data files are: (1) Raw data file: 'XXX_raw*.iqdat' build: The specific inquisit version used (the 'build') that was run computer.platform: the platform the script was run on (win/mac/ios/android) computer.touch: 0 = device has no touchscreen capabilities; 1 = device has touchscreen capabilities computer.hasKeyboard: 0 = no external keyboard detected; 1 = external keyboard detected display.refreshRate: vertical refreshrate of the current monitor (in Hz) date, time: date and time script was run subject: with the current subject id group: with the current group id 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. ageCohort: the entered age cohort 0 = <18 1 = 18-25 2 = 26-44 3 = 45-60 4 = 61-80 5 = >80 //parameter setting: minTargetDelayMS: the minimum target delay (in ms) (delay=onset after trialBegin) maxTargetDelayMS: the maximum target delay (in ms) (delay=onset after trialBegin) minRT: the minimum valid response time (in ms); measured from onset of target maxRT: the maximum valid response time (in ms); measured from onset of target trialCounter: tracks the number of trials run during the current block sampledTargetDelay: the sampled targetDelay actualTargetDelay: the actual targetDelay (the closest to the nearest refreshinterval) location: 1,2,3,4 (boxes from left to right) response: the response of participant (scancode of response button) responseText: the pressed key corrResp: the correct response key correct: correctness of response 1 = correct response key pressed AND response time within specified range (response was not greater than maxRT) 0 = otherwise latency: response latency (in ms); measured from: start of trial rt: response latency (in ms); measured from: onset of target Note: early responses (rt < minRT) are tracked BUT are not valid responses => they do NOT end a trial (so accidentally pressing a response key does not end the trial, but the script tracks how often this happens) validRT: 0 = the final rt is invalid (rt > parameters.maxRT) 1 = valid final rt targetTimestamp: the timestamp (elapsedTime of script in ms) of the last target respTimestamp: the responseTimestamp (elapsedTime of script in ms) of the last response eResp: 0 = no early response was detected during the current trial 1 = at least one early response was detected during the current trial early trial = faster than minRT after target onset eRespCounter: tracks the number of early responses during the current block (rt < minRT) Note: excessive early responding might be considered a red flag slowRespCounter: tracks number of invalid rts during the current block (rt > maxRT) (2) Summary data file: 'xxx_summary*.iqdat' inquisit.version: inquisit version run computer.platform: the platform the script was run on (win/mac/ios/android) computer.touch: 0 = device has no touchscreen capabilities; 1 = device has touchscreen capabilities computer.hasKeyboard: 0 = no external keyboard detected; 1 = external keyboard detected display.refreshRate: vertical refreshrate of the current monitor (in Hz) 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) ageCohort: the entered age cohort 0 = <18 1 = 18-25 2 = 26-44 3 = 45-60 4 = 61-80 5 = >80 trialCounter: the number of testtrials run propCorrect: prop correct responses errors: number of errors made eRespCounter: tracks the number of early responses during the test block (rt < minRT) Note: excessive early responding might be considered a red flag slowRespCounter: tracks number of invalid rts during the test block (rt > maxRT) //Percentile Evaluation: based on Deary et al (2011), Appendix1 //Assumption: based on default settings (40 test trials with target delays 1000-3000ms, external keyboard) //Note: even though Deary et al (2011) provide this data, they do NOT consider them norms. //"We do not provide norms, and neither should we. We envisage slight between-study differences in overall levels of reaction times, based on their hardware" Deary et al (2011, p.365) percentileNote: depends on ageCohort: Group 0,5: "no empirical data available for this age group"; Group 2: "based on intrapolated data" //intrapolated by Millisecond Software as the means of the data of the adjacent age cohorts => interpret with extra caution Group 1,3,4: "based on empirical data" //Deary et al (2011), Appendix1 meanCorrRTPercentile: "< 25" //meanCorrRT falls below the 25th percentile (faster than 75% of the age cohort) "within range" //value falls between the 25th and 75th percentile "> 75" //meanCorrRT falls above the 75th percentile (slower than 75% of the age cohort) "NA": no comp data available sdCorrRTPercentile: "< 25" //sdCorrRT falls below the 25th percentile (less rt variability than 75% of the age cohort) "within range" // value falls between the 25th and 75th percentile "> 75" //sdCorrRT falls above the 75th percentile (more rt variability than 75% of the age cohort) "NA": no comp data available errorPercentile: "< 25" //number of errors falls below the 25th percentile (fewer errors than 75% of the age cohort) "within range" // value falls between the 25th and 75th percentile "> 75" //number of errors falls above the 75th percentile (more errors than 75% of the age cohort) "NA": no comp data available //corr RT medianCorrRT: median response time (in ms) of correct responses meanCorrRT: mean response time (in ms) of correct responses sdCorrRT: standard deviation of correct response times (in ms) skewCorrRT: skewness of the distribution of correct response times Note: uses Excel algorithm suggested interpretation: -0.5 <= skew <=0.5 -> fairly symmetrical 0.5 < |skew| <= 1 -> moderately skewed |skew| > 1 -> highly skewed kurtosisCorrRT: measure of kurtosis of the distribution of correct response times (measure of the "tailedness" or "outlyingness" of a data distribution compared to the normal distribution) Note: uses Excel algorithm Suggested Interpretation: ~0: The distribution's tails are similar to those of a normal distribution > 0: The distribution is "heavy-tailed," meaning there are more extreme values (outliers) than in a normal distribution (more peaked) < 0: The distribution is "light-tailed," meaning there are fewer extreme values or outliers than in a normal distribution (flatter) (same for incorrectRTs/totalRTs) ___________________________________________________________________________________________________________________ EXPERIMENTAL SET-UP ___________________________________________________________________________________________________________________ (1) Keyboard Check (optional, see editable parameters): This script can be set to only run on devices with external keyboards (2) Practice: 8 practice trials (editable), with errorfeedback for 500ms (3) Test: 40 trials (editable), no errorfeedback (4) Norms*: collects age information and compares response times to published data (Deary et al, 2011, Appendix1) Trial Sequence: -> 4 white boxes (horizontal midline) -> target (X) appears in randomly selected box 1000-3000ms after trialOnset (randomly determined delay) -> X stays on until response (C,V,N,M) Each trial concludes with a valid response (rt measured from onset of target >= minRT). Script also notes if participants make anticipatory/early responses. //////////////////////////////// //Norms* //////////////////////////////// Percentile Evaluation: based on Deary et al (2011), Appendix1 Even though Deary et al (2011) provide this data, they do NOT consider them norms. "We do not provide norms, and neither should we. We envisage slight between-study differences in overall levels of reaction times, based on their hardware" Deary et al (2011, p.365) Deary et al (2011) report the percentile info for three age cohorts: 18-25; 45-60; 61-80 (Note: ages 26-44 are missing) The data of these three cohorts suggest strong (linear) age trajectories for each measure (mean,sd,errors). Thus, the 'percentile' data of missing age group '26-44' were intrapolated by Millisecond Software as the means of the data points of the adjacent age cohorts. ___________________________________________________________________________________________________________________ STIMULI ___________________________________________________________________________________________________________________ provided by Millisecond Software - can be edited under section 'Editable Stimuli' ___________________________________________________________________________________________________________________ INSTRUCTIONS ___________________________________________________________________________________________________________________ provided by Millisecond Software - can be edited in script 'dlc_instructions_inc.iqjs' ___________________________________________________________________________________________________________________ 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: / runKeyboardCheck = false //true = device is screened for an external keyboard //false = no external keyboard check is conducted //design / nPracticeTrials = 8 //number of practice trials to run -> Deary et al (2011) / nTestTrials = 40 //number of test trials to run -> Deary et al (2011) //UI: / widthPct = 10% //proportional width of the squares (relative to canvas width) / gapPct = 5% //the prop gap btw. squares (relative to canvas width) //timing parameters / minTargetDelayMS = 1000 //the minimum delay of the target X (in ms; relative to trialOnset) / maxTargetDelayMS = 3000 //the maximum delay of the target X (in ms; relative to trialOnset) / minRT = 0 //the fastest response time (in ms; relative to target onset) that should be considered a valid response (and will end a trial) / maxRT = 5000 //the slowest response time (in ms; relative to target onset) that should be considered a valid response (that could end in a correct) //responseKeys: / respKey1 = "C" / respKey2 = "V" / respKey3 = "N" / respKey4 = "M"