Return to the Iowa Gambling Task (Modified) page
___________________________________________________________________________________________________________________	

							IOWA GAMBLING TASK - Modified Version
___________________________________________________________________________________________________________________	

last updated:  03-13-2020 by K. Borchert (katjab@millisecond.com) for Millisecond Software, LLC
Script Copyright © 03-13-2020 Millisecond Software

___________________________________________________________________________________________________________________
BACKGROUND INFO 	
___________________________________________________________________________________________________________________	
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 Software script "IowaGamblingTask.iqx" 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 .

___________________________________________________________________________________________________________________
TASK DESCRIPTION	
___________________________________________________________________________________________________________________	
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).

___________________________________________________________________________________________________________________	
DURATION 
___________________________________________________________________________________________________________________	
the default set-up of the script takes appr. 5 minutes to complete

___________________________________________________________________________________________________________________	
DATA FILE INFORMATION 
___________________________________________________________________________________________________________________	
The default data stored in the data files are:

(1) Raw data file: 'modifiedigt_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
script.sessionid:				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

values.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)	
										
values.cardoffered: 			number of cards offered so far
		
parameters.defaultresponse: 	if no response occurs, 	defaultresponse = 
										1 => 'Pass' response
										2 => 'Play' response
										
values.targetdeck:				the current targetdeck with an arrow
values.deckCategory:			"advantageous" vs. "disadvantageous"

response:						the participant's response
								scancode of response button: 30 = A (take); 38 = L (pass); 0 = noresponse
								
								
values.responseCategory:		1 = pass; 
								2 = play (if no response is given values.responseCategory evaluates to the defaultresponse)
									
latency: 						the response latency in ms; measured from onset of trial
values.forcedwins1-		
values.forcedwins4:				current number of guaranteed wins that will occur when participant decides to 'play' per deck

values.gain/values.loss/values.netchange:  trial gain/trial loss/net win
expressions.feedback:			feedback that participant received

				

(2) Summary data file: 'modifiedigt_summary*.iqdat' (a separate file for each participant)

computer.platform:				the platform the script was run on (win/mac/ios/android)
script.startdate:				date script was run
script.starttime:				time script was started
script.subjectid:				assigned subject id number
script.groupid:					assigned group id number
script.sessionid:				assigned session id number
script.elapsedtime:				time it took to run script (in ms); measured from onset to offset of script
script.completed:				0 = script was not completed (prematurely aborted); 
								1 = script was completed (all conditions run)
							
					
					
values.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)							
							
values.currenttotal:			the running total for participant																					

expressions.percent_advantageSelect:Percentage of play-response to Advantageous decks across blocks
expressions.percent_disadvantageSelect:Percentage of play-response to Disadvantageous decks across blocks
expressions.NET_total: 						difference score of '% Advantage-DeckSelectionions' and '% Disadvantage-DeckSelectionions' (overall performance measure, across blocks)

values.percent_advantageSelect_1:			Percentage of play-response to Advantageous decks in block1 (20 trials)
values.percent_disadvantageSelect_1:		Percentage of play-response to Disadvantageous decks in block1 (20 trials)
values.NET1: 								difference score of 'values.percent_advantageSelect_1' and 'values.percent_disadvantageSelect_1' in block1

values.percent_advantageSelect_2:			Percentage of play-response to Advantageous decks in block2 (20 trials)
values.percent_disadvantageSelect_2:		Percentage of play-response to Disadvantageous decks in block2 (20 trials)
values.NET2: 								difference score of 'values.percent_advantageSelect_2' and 'values.percent_disadvantageSelect_2' in block2

values.percent_advantageSelect_3:			Percentage of play-response to Advantageous decks in block3 (20 trials)
values.percent_disadvantageSelect_3:		Percentage of play-response to Disadvantageous decks in block3 (20 trials)
values.NET3: 								difference score of 'values.percent_advantageSelect_3' and 'values.percent_disadvantageSelect_3' in block3

values.percent_advantageSelect_4:			Percentage of play-response to Advantageous decks in block4 (20 trials)
values.percent_disadvantageSelect_4:		Percentage of play-response to Disadvantageous decks in block4 (20 trials)
values.NET4: 								difference score of 'values.percent_advantageSelect_4' and 'values.percent_disadvantageSelect_4' in block4

values.percent_advantageSelect_5:			Percentage of play-response to Advantageous decks in block5 (20 trials)
values.percent_disadvantageSelect_5:		Percentage of play-response to Disadvantageous decks in block5 (20 trials)
values.NET5: 								difference score of 'values.percent_advantageSelect_5' and 'values.percent_disadvantageSelect_5' in block5

values.percent_advantageSelect_6:			Percentage of play-response to Advantageous decks in block6 (20 trials)
values.percent_disadvantageSelect_6:		Percentage of play-response to Disadvantageous decks in block6 (20 trials)
values.NET6: 								difference score of 'values.percent_advantageSelect_6' and 'values.percent_disadvantageSelect_6' in block6

___________________________________________________________________________________________________________________	
EXPERIMENTAL SET-UP 
___________________________________________________________________________________________________________________	
* 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 randomly assigned a (permanent) screen location. 
* 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)

___________________________________________________________________________________________________________________
STIMULI
___________________________________________________________________________________________________________________
provided by Millisecond Software
(images can simply be replaced by images with the same name)

___________________________________________________________________________________________________________________	
INSTRUCTIONS 
___________________________________________________________________________________________________________________
provided by Millisecond Software - can be edited under section Editable Instructions

___________________________________________________________________________________________________________________	
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:

/playkey:							the play key ("A"); left response key
/passkey:							the pass key ("L"); right response key

/decisiontime :						time participant has to decide (default: 4000ms)
/defaultresponse:					if no response occurs, 	defaultresponse = 1 => 'Pass' response
																defaultresponse = 2 => 'Play' response

/number_forcedwins1-				sets the number of definite wins for each deck that occur during the initial trials for that deck
/number_forcedwins4						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
										(Note: numbers are taken from Cauffman et al (2010), Table 2)

/startamount:						the startamount (default: $2000)