User Manual: Inquisit Flicker Paradigm for Change Blindness


___________________________________________________________________________________________________________________	

									FLICKER PARADIGM FOR CHANGEBLINDNESS
___________________________________________________________________________________________________________________

Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com) for Millisecond Software, LLC
Date: 02-11-2014
last updated:  02-22-2022 by K. Borchert (katjab@millisecond.com) for Millisecond Software, LLC

Script Copyright © 02-22-2022 Millisecond Software

___________________________________________________________________________________________________________________
BACKGROUND INFO 	
___________________________________________________________________________________________________________________	
This script implements a Flicker Paradigm to investigate the role of attention in Change Blindness based on:

Rensink, R.A., O'Regan, J.K. & Clark, J.J. (1997). TO SEE OR NOT TO SEE:
The Need for Attention to Perceive Changes in Scenes. Psychological Science, 8, 368-373.


NOTES: 
* This script runs with 6 example stimuli (ONLY intended for demonstration purposes). The original study ran with
48.
* the variable "interest level of change" (central vs. marginal) is not included in this script as the example
stimuli contain "marginal interest" changes only.
* this script runs 2 cue conditions (cue vs. no cue) either in a mixed design (default) or in a blocked
design. The script does not include an unreliable cue condition as tested by Rensink et al.


Millisecond Software thanks Dr. Rensink for sharing his example stimuli for this script!

___________________________________________________________________________________________________________________
TASK DESCRIPTION	
___________________________________________________________________________________________________________________	
Participants are presented "flickering" presentations of original and altered pictures for a maximum cycle of 1 min (default).
The task is to find the one difference between the two pictures. 
If participants find the difference they are instructed to press the Responsekey (original: Spacebar) and 
are asked to describe the change in detail in a textbox.

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

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

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

Note: by default, trial.savedata is the only trial that saves data to the raw data file

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. 
									
flicker_same:					the duration of the blank screen/flicker in between the 2 presentations of the original pictures (or altered pictures) (original: 80ms)
									Note: if set to 0 the presentation of the pictures appears continuous
										
changetype:						"location" (1), "presence/absence" (2), "color" changes (3) in the pictures
cuecondition:					1 = a cue is given; 2 = no cue is given
cue:							the currently presented cue
counttrials:					counts the number of trials 
count_cycles: 					counts the number of cycles started until a response occurs
currentpic:						the itemnumber of the currently presented (original/altered) pic
stimulus:						the image presented (StimA)


responsepoint:					determines the image in the response cycle (the cycle that participant made a positive response)
								that was presented when participant made response: 
								"StimA1", "flicker_AA", "StimA2", "flicker_AB", "StimB1",
								"flicker_BB", "StimB2", "flicker_BA" or "N/A" (if no response was given)
										
alternations:					determines the number of alternations between original and altered pictures until response occurs
								Note: each switch between originals and altered pictures as well as each switch between
								altered pictures and original pictures is counted as an alternation.
								=> for each completed cycle, participant go through 2 alternations;
								if the response occurs AFTER the change from original to altered pic in the last
								cycle, one more alternation is added to the count.
											
cycle_rt:						stores the combined trial latencies across the entire cycle until response occurs (in ms)
selectedChangeType:				the selected observed change type ('location', 'presence/absence', 'color', or empty)

ACC_changeType:					1 = the correct Change Type was selected
								0 = in any other case

currentChange:					contains the correct description of the change
changeDescription:				stores the openended textbox response in regard to the observed change

ACC_changeDescription:			"needs to be evaluated"
								Note: script does NOT evaluate the correctness of the entered response automatically.
								Each openended response needs to be evaluated manually.
									
changeReport_RT:				stores the time it took participant to work on the openended response until pressing the button (in ms)

repeatPractice:					0 = the practice round should not be repeated
								1 = the practice round should be repeated	

(2) Summary data file: 'FlickerParadigm_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)

runcuecondition:					by default, the cuecondition (cue vs. no cue) is run in a "mixed" design; to run the
									cuecondition in a blocked design, set value.runcuecondition = "blocked"
								
countPracticeRuns:					counts how often the practice round was repeated

count_ALL:							counts all test trials run
countNR_All:						counts all no responses
countresponses:				  		counts how often participants clicked the mouse/touched the screen to report the change

count_L:							number of LOCATION trials run 
countNR_L:							number of no responses in LOCATION trials
propCorrect_changeTypeSelections_L:	proportion correct selection of Change Type in LOCATION trials (based on responses made)
RT_corrSelections_L:				the mean latency (in ms) of cycles when participant selected the correct change in LOCATION trials

count_P:							number of PRESENCE trials run 
countNR_P:							number of no responses in PRESENCE trials
propCorrect_changeTypeSelections_P:	proportion correct selection of Change Type in PRESENCE trials (based on responses made)
RT_corrSelections_P:				the mean latency (in ms) of cycles when participant selected the correct change in PRESENCE trials

count_C:							number of COLOR trials run 
countNR_C:							number of no responses in COLOR trials
propCorrect_changeTypeSelections_C:	proportion correct selection of Change Type in COLOR trials (based on responses made)
RT_corrSelections_C:				the mean latency (in ms) of cycles when participant selected the correct change in COCATION trials

___________________________________________________________________________________________________________________	
EXPERIMENTAL SET-UP 
___________________________________________________________________________________________________________________	
3 (change types: location, color, presence/absence) x  2 (cue conditions: no cue, cue); tested within
Change types are tested by default in a mixed design. To run them in a blocked design: change parameters.runcuecondition (editable parameter).
If the conditions are run in a blocked design, the order of the cue conditions is determined randomly in this script.

Cues in this script alert participants to the type of change: color, location or the addition/removal of an object

(a) Blocks:
1. Practice: by default, the script runs as many practice trials as specified under parameters.max_numberoftrials_practice (default: 1)
and selects the stimuli randomly from item.practice_StimA.
		NOTE: Rensink et al ran 6 (=3 changetypes x 2 interest levels; interest levels are not tested in this script by default)
2. Flicker_MixedCue: by default, the script runs 6 trials
3. Flicker_Cue/Flicker_NoCue: by default, the script runs 3 trials per block (stimuli are randomly assigned to either one of them)

(b) Trial Sequences: 
1. cue-field screen: 3000ms
	-> the cue condition is selected at random
2. blank screen: 1000ms

3. Cycle: the selection of the individual pictures is random

original (240ms) -> flicker (80ms) -> original (240ms)-> flicker (80ms) -> altered (240ms) -> flicker (80ms) -> altered (240ms) -> repeat of cycle if noresponse
(maximum cycle duration: ~1 min)

Note: all durations are editable parameter. They can be changed under EDITABLE CODE -> Editable Values

4. Change Description: if a change was reported (by pressing Responsekey): 
	a) a forced-choice question with 3 answer choices asks participants to select the type of change observed 
	b) a textbox asks participants to describe the observed change in detail

___________________________________________________________________________________________________________________
STIMULI
___________________________________________________________________________________________________________________
The provided stimuli are example stimuli generously shared by Dr. Rensink under 
http://www2.psych.ubc.ca/~rensink/flicker/download/index.html

They are only intended for demonstration purposes. 
Substitute your own stimuli under EDITABLE CODE -> Editable Stimuli and follow instructions

___________________________________________________________________________________________________________________	
INSTRUCTIONS 
___________________________________________________________________________________________________________________	
The instructions used in this script are not original. They are provided by Millisecond Software in html-format.
To change the instructions, simply change the html files in a simple Text Editor (e.g. in 'Notepad' in Win or 'textEdit' in Mac)

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

/responsekey:							the response key (default: " " -> spacebar)

/cueboxheight:							height of the cuebox in percentage of canvas height (original: 10%)
/cueboxwidth:							width of the cuebox in percentage of canvas width (original: 30%)
/cuetextheight:							the height of the cue text in percentage of canvas height (original: 5%)

/picheight:								the height of the pictures in percentage of canvas height (original: 70%)

/cueduration:							the duration of the cue in ms (original: 3000ms)
/startscreenduration:					the duration of the start screen in ms (original: 1000ms)

/StimA_Duration:						the duration of the original picture in ms (original: 240ms)
											Note: the original picture is presented twice. If parameters.flicker_same = 0; 
											the presentation of the 2 original pictures appears continuous
/StimB_Duration:							the duration of the altered picture in ms (original: 240ms)
											Note: the altered picture is presented twice. If parameters.flicker_same = 0; 
											the presentation of the 2 altered pictures appears continuous

/flicker_same:							the duration of the blank screen/flicker in between the 2 presentations of the original pictures in ms (or altered pictures) (original: 80ms)
											Note: if set to 0 the presentation of the pictures appears continuous
											
/flicker_different:						the duration of the blank screen/the flicker in between original and altered pictures in ms (original: 80ms)

/max_cycleduration:						the ~maximum duration of the cycling through original and altered pictures if no response occurs in ms (defaul: 60000ms)

/max_numberoftrials:					the number of test stimuli (default: 6).
											NOTES:
											a) In the mixed design all stimuli are presented within one block. In the blocked design, half
											the stimuli are presented in the cue, the other half in the nocue block (random sampling).
											b) The original study (Rensink et al used 48 stimuli)-> change images under EDITABLE CODE -> Editable Stimuli

/max_numberoftrials_practice:			the number of practice stimuli tested (default: 1)
											
/runcuecondition:						by default, the cuecondition (cue vs. no cue) is run in a "mixed" design; to run the
										cuecondition in a blocked design, set value.runcuecondition = "blocked"
										
										
/allowPracticeRepeats:					1 (true): the practice round can be repeated if so indicated (default)
										0 (false): the practice round cannot be repeated