User Manual: Inquisit Flicker Paradigm for Change Blindness (Mouse Input)


___________________________________________________________________________________________________________________	

									FLICKER PARADIGM FOR CHANGEBLINDNESS
									(with mouse input)
___________________________________________________________________________________________________________________

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 inspired by:

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.
* this script collects mouse input and stores images of the placed response


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 click on the location of the change 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)

								
//placement of lbutton down response (in pixel):
responseFieldCenter_x_inpx:		the pixel x-coordinate of the correct response field 
responseFieldCenter_y_inpx:		the pixel y-coordinate of the correct response field
response_x_inpx:				the pixel x-coordinate of the mouse lbuttondown response 
response_y_inpx:				the pixel y-coordinate of the mouse lbuttondown response 
maxDistance_inpx:				the max. allowed distance btw. center of correct response field and lbuttondown response (in px)
distance_inpx:					the calculated distance btw. center of correct response field and lbuttondown response (in px)

ACC_responseCoordinates:		1 = the lbuttondown response was made within response circle
								0 = the lbuttondown response was made outside of response circle
								Note: this script collects screencaptures of the location of the lbuttondown response coordinates
						
				

(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

countresponses:				  	counts how often participants clicked the mouse/touched the screen to report the change

propCorrect_changeTypeSelections:	proportion correct selection of Change Type (across all trials)
RT_corrSelections:					the mean latency (in ms) of cycles when participant selected the correct change
RT_all:								the mean latency (in ms) of cycles when participant responded (regardless of accuracy)

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

//Accuracy evaluation of response placement:
//Note: this script uses a response circle placed around the predetermined center of the correct response
//with responseCircleRadius (this works reasonably well for COLOR and PRESENCE changes but might 
//miss LOCATION changes - check screencaptures if in doubt)
propCorrect_responsePlacement:		proportion correct placement of mouse response across all trials
propCorrect_responsePlacement_L:	proportion correct placement of mouse response across LOCATION trials
propCorrect_responsePlacement_P:	proportion correct placement of mouse response across PRESENCE trials
propCorrect_responsePlacement_C:	proportion correct placement of mouse response across COLOR 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 clicking the mouse): 
	a) a screenshot is saved with the response coordinates 
	c) a forced-choice question with 3 answer choices asks participants to select the type of change observed 
	c) 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

Use script 'flickerparadigm_determinechangelocations.iqx' to determine the new areas of change
for each of your images.

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