Return to the Ultimatum Game page
						
									       ULTIMATUM GAME
SCRIPT INFO

Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com) for Millisecond Software LLC
Date: 10-30-2012
last updated: 08-15-2016 by K.Borchert (katjab@millisecond.com) for Millisecond Software LLC

Script Copyright © 08-15-2016 Millisecond Software


BACKGROUND INFO

											*Purpose*
This script implements a version of the Ultimatum Game. It is inspired by:

Harle, K.M, & Sanfey, A.G. (2010). Effects of approach and withdrawal motivation
on interactive economic decisions, Cognition & Emotion, 24:8, 1456-1465.

											  *Task*
Two players play a game in which a sum of money (default: $10) has to be split. One player acts as proposer 
and proposes a split;  the other player acts as responder and either accepts or rejects the offer. 
If the responder accepts the offer, the money is split as proposed. If the responder rejects the offer, 
neither one will get any money. In this script, the participant plays with the computer.

Note: Harle & Sanfey (2010) had their participants play the game only as responders.

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

(1) Raw data file: 'UltimatumGame_raw*.iqdat' (a separate file for each participant)

build:							Inquisit build
computer.platform:				the platform the script was run on
date, time, subject, group:		date and time script was run with the current subject/groupnumber 
blockcode, blocknum:			the name and number of the current block
/role:							1 = Player is Responder; 2 = Player is Proposer
trialcode, trialnum: 			the name and number of the currently recorded trial
/ProposerGain:					contains the currently proposed split for the Proposer
/ResponderGain:					contains the currently proposed split for the Responder
/sum:							the total sum of money that gets divided (default: $10)
response:						the participant's response
/outcome:						will be set to either "ACCEPTED" or "REJECTED"
latency: 						the response latency in ms
/participanttotal:				contains the total of money the participant has won
/computertotal:					contains the total of money the computer has won

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

script.startdate:				date script was run
script.starttime:				time script was started
script.subjectid:				subject id number
script.groupid:					group id number
script.elapsedtime:				time it took to run script (in ms)
computer.platform:				the platform the script was run on
/completed:						0 = script was not completed (prematurely aborted); 1 = script was completed (all conditions run)

/roletoplay:					1 = participant plays the responder (default)
								2 = participant plays the proposer
								3 = the script plays a customized order of responder-proposer trials
									!!!Go to LISTS-> CUSTOM ORDER and follow instruction to customize the order of list.roleorder and list.respondergain_custom
/sum:									the total sum of money that gets divided (default: $10)
/computerdecisionrule:			1 = computer accepts all offers
								2 = computer accepts no offers
								3 = computer accepts all offers that >= parameters.minacceptoffer
								4 = computer accepts all offers that are at least 0.5* parameters.sum ("the fair proposal") and rejects all
											offers that are lower than parameters.minacceptoffer (if parameters.minacceptoffer < 0.5* parameters.sum).
											For parameters.minacceptoffer <= offers < 0.5 * parameters.sum, the computer decides on a random basis (default)
											list.randomchoice controls the random behavior (default: p=2/3 accepts offer; p = 1/3 rejects offer)
/minacceptoffer:				is the minimum value at which an offer may be accepted by the computer (if parameters.computerdecisionrule > 2) (default = 3)
/proposalpresentationtime:		the time the proposal is presented on screen in ms (default: 10000ms)
/makeproposaltime:				the time to make the proposal in ms (default: 10000ms)
/seepartnerpic:					the time the picture of the current partner is presented  in ms (default: 4000ms)
/waitforproposaltime:			the time the participant has to wait until "partner" aka computer makes the proposal  in ms (default: 10000ms)
										!!!if set to 0, the proposal will immediately follow the presentation of the picture
										!!! set to (example) = rand(2000, 10000) to achieve a less predictable waiting period
/seeoutcome:					the time the outcome of the game is presented  in ms (default: 4000ms)	
/participanttotal:				contains the total of money the participant has won
/computertotal:					contains the total of money the computer has won



EXPERIMENTAL SET-UP
By default 2x8 games/trials are run by block.UG_responder
To change, go to 
a) section Editable Parameters
b) section BLOCKS -> and follow further instructions
!!! list.respondergain contains 16 proposal items from Harle & Sanfey (2010). Harle & Sanfey (2010)
divided the 16 games randomly into 2 blocks. 

Trial Sequency:
a) Responder Game: modelled after Harle & Sanfey (2010)
- The Responder Game Sequence starts out with an instruction page that informs participants of their role.
- After pressing the Space Bar the picture of the current Proposer is presented for 4s (default)
- Afterwards an (optional) waiting screen is presented (not from Harle & Sanfey, 2010)
(to get rid off the waiting screen: set parameters.waitforproposaltime = 0 under 
VALUES-> EDITABLE PARAMETERS)
- After the waiting screen, the proposal is presented. The participant has 10s (default) to decide to 
accept the offer (default: "A" key) or reject it (default: "R"). The script is programmed in such a way
that no response during the 10s period is counted as a rejection.
- the last screen presents the outcome (Accepted/Rejected) of the proposal and updates the participant's
total
b) Proposer Game:
- The Proposer Game starts out with an instruction page that informs participants of their role.
- After pressing the Space Bar the picture of the current Responder is presented for 4s (default)
- Afterwards a screen comes up that asks the Proposer to fill in the sum for the proposer (self)
and responder (partner). By default, there are 10s given for this task. The participant is informed
that an incorrect split as well as no response at this point results in the proposal to give
all the money to the responder.
To change from a timeout set-up to one where the trial waits for a specific response from the participant
go to TRIALS -> PROPOSER GAME -> openended.makeproposal and delete /timeout
- After the proposal screen, a waiting screen is presented for a default of 10s
- the last screen presents the outcome (Accepted/Rejected) of the proposal and updates the participant's
total	

STIMULI
By default the script only provides a single picture of a responder/proposer. Harle & Sanfey (2010)
used 16 randomly sampled pictures.
To edit the default picture selection go to section Editable Stimuli -> item.partnerpictures

INSTRUCTIONS
The instructions are not originals and can be easily edited under section Editable Instructions.
Furthermore, to change the wording for several text stimuli used in the script,
go to Editable Stimuli.

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:

/roletoplay:							1 = participant plays the responder (default)
										2 = participant plays the proposer
										3 = the script plays a customized order of responder-proposer trials
										!!!Go to LISTS-> CUSTOM ORDER and follow instruction to customize the order of list.roleorder and list.respondergain_custom
/sum:									the total sum of money that gets divided (default: $10)
/computerdecisionrule:					1 = computer accepts all offers
										2 = computer accepts no offers
										3 = computer accepts all offers that >= parameters.minacceptoffer
										4 = computer accepts all offers that are at least 0.5* parameters.sum ("the fair proposal") and rejects all
											offers that are lower than parameters.minacceptoffer (if parameters.minacceptoffer < 0.5* parameters.sum).
											For parameters.minacceptoffer <= offers < 0.5 * parameters.sum, the computer decides on a random basis (default)
											list.randomchoice controls the random behavior (default: p=2/3 accepts offer; p = 1/3 rejects offer)
/minacceptoffer:						is the minimum value at which an offer may be accepted by the computer (if parameters.computerdecisionrule > 2)
										(default = 3)
/responsekeyAccept-responskeyReject:	default response keys
/NumberofResponderBlocks:				sets how often a block of responder games should run.
										By default, 2 responder blocks (each with 8 games, see Harle & Sanfey, 2010) are run
/reset:									dictates after how many blocks the items in list.respondergain are recyled. By default it will reset after 2 blocks
										!!!list.respondergain contains 16 items => enough items to run 2 blocks of responder games
										(these numbers are taken from Harle & Sanfey who ran 2 blocks of 8 trials and sampled randomly
										from 16 offers)
/NumberofProposerBlocks:				sets how often a block of proposer games should run.
										By default, 1 proposer block with 8 games is played.

Trial Presentation Times: 

/proposalpresentationtime:				the time the proposal is presented on screen in ms (default: 10000ms)
/makeproposaltime:						the time to make the proposal in ms (default: 10000ms)
/seepartnerpic:							the time the picture of the current partner is presented in ms (default: 4000ms)
/waitforproposaltime:					the time the participant has to wait until "partner" aka computer makes the proposal in ms (default: 10000ms)
										!!!if set to 0, the proposal will immediately follow the presentation of the picture
										!!! set to (example) = rand(2000, 10000) to achieve a less predictable waiting period
/seeoutcome:							the time the outcome of the game is presented in ms (default: 4000ms)


DEFAULT (COMPUTER) PROPOSALS:
The default computer proposals are governed by list.respondergain (and list.respondergain_custom if an
experimenter wishes to present a custom sequence of responder-proposer trials)
Go to section Editable Lists->list.respondergain and edit the default selection



Copyright © Millisecond Software. All rights reserved.
Contact | Terms of Service | Security Statement | Employment