Last Modified: January 26, 2023 by K. Borchert (katjab@millisecond.com), Millisecond
Script Copyright © Millisecond Software, LLC
This sample script implements a version of the modified Iowa Gambling Task as described in:
Cauffman, E., Shulman, E.P, Steinberg, L., Claus, E., Marie T. Banich, M.T., Sandra Graham, S., & Jennifer Woolard, J. (2010). Age Differences in Affective Decision Making as Indexed by Performance on the Iowa Gambling Task. Developmental Psychology, Vol. 46, No. 1, 193–207.
This script builds on the original Millisecond script "IowaGamblingTask.iqjs" based on
Bechara A., Damasio A. R., Damasio H., Anderson S. W. (1994). Insensitivity to future consequences following damage to human prefrontal cortex. Cognition, 50, 7-15 .
5 minutes
Participant are presented 4 decks of cards. One of the deck of cards has a yellow arrow above it. Participants have to decide to 'play' this deck of cards to possibly win some money or pass up the opportunity (to make sure to not lose any money already won). If they decide to play they can win money, lose money, or neither lose nor win money. If they pass, they neither lose nor win money. The goal is to win as much money as possible. The 4 different decks are attached with different win probabilities: 2 of the decks have higher wins and even higher losses (being disadvantageous overall) and 2 decks have lower wins but even lower losses (being advantageous overall).
• The game is set up to play 6 blocks of 20 trials (5 trials per deck) => 30 trials per deck total
• A deck is randomly selected for each trial.
• The four decks are assigned a (permanent) screen location by groupnumber (4 different groups).
• By default, in this script the win/loss probabilities assigned are aligned with the model of "once played,
cards are NOT returned to the deck" (therefore turning probabilities into actual frequencies)
provided by Millisecond
(images can simply be replaced by images with the same name)
provided by Millisecond - can be edited under section Editable Instructions
File Name: modifiedigt_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 |
| deckOrderGroup | The experimental deck group (1-4) the subject was randomly assigned to (refers to order of the advantageous (deck3, deck4) and disadvantegeous (deck 1, deck2) decks on the screen) group1: deck1(D), deck2(D), deck3(A), deck4(A) group2: deck4(A), deck1(D), deck2(D), deck3(A) group3: deck3(A), deck4(A), deck1(D), deck2(D) group4: deck2(D), deck3(A), deck4(A), deck1(D) |
| currentTotal | The running total for participant |
| percentAdvantageSelect | Percentage of play-response to Advantageous decks across blocks |
| percentDisadvantageSelect | Percentage of play-response to Disadvantageous decks across blocks |
| netTotal | Difference score of '% Advantage-DeckSelectionions' and '% Disadvantage-DeckSelectionions' (overall performance measure, across blocks) |
| percentAdvantageSelect1 | Percentage of play-response to Advantageous decks in block1 (20 trials) |
| percentDisadvantageSelect1 | Percentage of play-response to Disadvantageous decks in block1 (20 trials) |
| net1 | Difference score of 'percent_advantageSelect_1' and 'percent_disadvantageSelect_1' in block1 |
| percentAdvantageSelect2 | Percentage of play-response to Advantageous decks in block2 (20 trials) |
| percentDisadvantageSelect2 | Percentage of play-response to Disadvantageous decks in block2 (20 trials) |
| net2 | Difference score of 'percent_advantageSelect_2' and 'percent_disadvantageSelect_2' in block2 |
| percentAdvantageSelect3 | Percentage of play-response to Advantageous decks in block3 (20 trials) |
| percentDisadvantageSelect3 | Percentage of play-response to Disadvantageous decks in block3 (20 trials) |
| net3 | Difference score of 'percent_advantageSelect_3' and 'percent_disadvantageSelect_3' in block3 |
| percentAdvantageSelect4 | Percentage of play-response to Advantageous decks in block4 (20 trials) |
| percentDisadvantageSelect4 | Percentage of play-response to Disadvantageous decks in block4 (20 trials) |
| net4 | Difference score of 'percent_advantageSelect_4' and 'percent_disadvantageSelect_4' in block4 |
| percentAdvantageSelect5 | Percentage of play-response to Advantageous decks in block5 (20 trials) |
| percentDisadvantageSelect5 | Percentage of play-response to Disadvantageous decks in block5 (20 trials) |
| net5 | Difference score of 'percent_advantageSelect_5' and 'percent_disadvantageSelect_5' in block5 |
| percentAdvantageSelect6 | Percentage of play-response to Advantageous decks in block6 (20 trials) |
| percentDisadvantageSelect6 | Percentage of play-response to Disadvantageous decks in block6 (20 trials) |
| net6 | Difference score of 'percent_advantageSelect_6' and 'percent_disadvantageSelect_6' in block6 |
File Name: modifiedigt_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, group, | With the current subject/groupnumber |
| 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 |
| deckOrderGroup | The experimental deck group (1-4) the subject was randomly assigned to (refers to order of the advantageous (deck3, deck4) and disadvantegeous (deck 1, deck2) decks on the screen) group1: deck1(D), deck2(D), deck3(A), deck4(A) group2: deck4(A), deck1(D), deck2(D), deck3(A) group3: deck3(A), deck4(A), deck1(D), deck2(D) group4: deck2(D), deck3(A), deck4(A), deck1(D) |
| cardoffered | Number of cards offered so far |
| defaultResponse | Parameter: if no response occurs, defaultresponse = 1 => 'Pass' response 2 => 'Play' response |
| targetDeck | The current targetdeck with an arrow |
| deckCategory | "advantageous" vs. "disadvantageous" |
| response | The participant's response scancode of response button: 30 = A (take); 38 = L (pass); 0 = noResponse |
| responseCategory | 1 = pass 2 = play (if no response is given responseCategory evaluates to the defaultresponse) |
| latency | The response latency in ms; measured from onset of trial forcedwins1- |
| forcedwins4 | Current number of guaranteed wins that will occur when participant decides to 'play' per deck |
| gain/loss/netchange | Trial gain/trial loss/net win |
| feedback | Feedback that participant received |
The procedure can be adjusted by setting the following parameters.
| Name | Description | Default |
|---|---|---|
| playKey | The play key ("A"); left response key | |
| passKey | The pass key ("L"); right response key | |
| decisionTime: | Time participant has to decide | 4000ms |
| defaultResponse | If no response occurs, defaultresponse = 1 => 'Pass' response defaultresponse = 2 => 'Play' response | |
| numberForcedwins1:- | Sets the number of definite wins for each deck that occur during the initial trials for that deck | |
| numberForcedwins4 | Example number_forcedwins1 = 2 => the first play trial for deck 1 that participant can lose is on the third play trial of deck 1 number_forcedwins1 = 8 => the first play trial for deck 1 that participant can lose is on the ninth play trial of deck 1 => guarantees the number of guaranteed win play trials from each deck at the beginning ( numbers are taken from Cauffman et al (2010), Table 2) | |
| startAmount | The startamount | $2000 |