Work For Environmental Protection Task - WEPT

Technical Manual

Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com), Millisecond

Created: January 12, 2024

Last Modified: January 12, 2025 by K. Borchert (katjab@millisecond.com), Millisecond

Script Copyright © Millisecond Software, LLC

Background

This script implements Millisecond's version of the 'The Work for Environmental Protection Task' (WEPT, Lange & Dewitte, 2022), a cognitive effort task to study online societally relevant behaviors.

The default setup up of the script runs with proportional sizing. Researchers can select to run the task with an absolute screen size to ensure that distances stay the same across devices. Go to section Defaults for more information.

References

Lange, F., & Dewitte, S. (2022). The Work for Environmental Protection Task: A consequential web-based procedure for studying pro-environmental behavior. Behavior Research Methods, 54(1), 133–145. https://doi.org/10.3758/s13428-021-01617-2

Duration

10 minutes

Description

Participants are asked to work on a simple cognitive task ('find all the 2-digit numbers with an even first and odd second digit') to generate donation money for a specified charity. The task consists of one practice page (to demonstrate the task) and 15 possible test pages. The 15 possible test pages run 3 different donation amounts x 5 different amounts of 2-digit numbers per page (max: 200). Participants decide for each page separately if they are willing to work for the promised donation money.

Procedure

Design: 3 donation amounts x 5 different amounts of stims on the page x 1 repetition =
15 different experimental conditions


this script provides the functionality to run fewer conditions. See section Editable parameters for more info.

(1) Practice
The script starts each participant on a practice page that presents 20 2-digit numbers
-> each number is randomly (with replacement) selected (probability of a target selection: 20/90 ~ 22%)
-> 20 numbers per line
-> unlimited time to select targets (corrections possible)
-> selected numbers are highlighted*
-> once submitted, feedback is provided (the program circles incorrect responses as well as missed targets)

(2) Test
Participants are told that there are 15 (default) more pages with varying amount of numbers (Max: 200)
Each page provides the opportunity to earn donation money for a specified charity.
To earn that money, participants have to get at least 90% of the numbers correct.
For each of the 15 pages, participants are told
- amount of numbers per page
- donation money that can be earned
Participation is voluntary for each page and participants can decline to work on a specific page
(by pressing the NO button).

-> each number is randomly (with replacement) selected (probability of a target selection: 20/90 ~ 22%)
-> there are 20 numbers per line; 10 lines Max (for Max: 200 numbers)
-> unlimited time to select targets (corrections possible)
-> selected numbers are highlighted*
-> no feedback is provided for test pages
-> The order of the 15 conditions (donation money x amount of stims per page) is selected randomly (without replacement).

•Color Settings:
By default, this script presents the numbers black on a white background. Selected numbers are highlighted in yellow.
Change color settings under section Editable Parameters

Stimuli

provided by Millisecond - can be edited under section 'Editable Stimuli'

Instructions

provided by Millisecond - can be edited under section 'Editable Instructions'
The instructions are based on published instruction from Lange & DeWitte (2022)

Summary Data

File Name: environmentalprotectiontask_summary*.iqdat

Data Fields

NameDescription
inquisit.version Inquisit version number
computer.platform Device platform: win | mac |ios | android
computer.touch 0 = device has no touchscreen capabilities; 1 = device has touchscreen capabilities
computer.hasKeyboard 0 = no external keyboard detected; 1 = external keyboard detected
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
totalDonation Cumulative sum of the final donations earned (adds up offered donations for all pages selected where participants reaches 90% accuracy)
propParticipation Overall participation rate
overallMeanParticipationDecisionRT Mean participant response time (in ms)
meanPropSignalsPerPage The mean proportion of signals (targets) per page
overallPropCorrect Overall proportion correct (for selected pages only)
Per Page: 1-15; (Explained For Page1)
condition1 Experimental condition of page1 (15 condition total = 3 donation values x 5 number of stims)
stims1 The number of stims presented on page1
donation1 The offered donation amount for page1 participation
participation1 1 = participant participated on page1; 0 = participant declined to participate on page1
participationDecisionRT1 The participation response time (in ms) for page1
acc1 Proportion correct responses for page1 participation
duration1 The time (in ms) participation spent on page1
faRate1 The false alarm rate for page1 participation
hitRate1 The hitrate for page1 participation

Raw Data

File Name: environmentalprotectiontask_raw*.iqdat

Data Fields

NameDescription
build Inquisit version number
computer.platform Device platform: win | mac |ios | android
computer.touch 0 = device has no touchscreen capabilities; 1 = device has touchscreen capabilities
computer.hasKeyboard 0 = no external keyboard detected; 1 = external keyboard detected
date Date the session was run
time Time the session was run
subject Participant ID
group Group number
session Session number
Design Parameters
parameters.numberDonationAmountsToRun The number of donation amounts run (Max: 3)
parameters.numberStimsToRun The number of different stimulus amounts to run (Max: 5)
=> 3x5 = 15 different condition is the max to run
Built-In Inquisit Variables
blockcode The name the current block (built-in Inquisit variable)
blocknum The number of the current block (built-in Inquisit variable)
trialcode The name of the currently recorded trial (built-in Inquisit variable)
trial.taskPageSummary provides a data summary of the current page at
page conclusion (after participant submitted responses for page)
(whereas trial.page gives a response by response overview of what participant did before
submitting page responses).
If you don't need the additional data rows produced by trial.page, you can set
"/ recorddata = false" for trial.page
trialnum The number of the currently recorded trial (built-in Inquisit variable)
trialnum is a built-in Inquisit variable; it counts all trials run
even those that do not store data to the data file.
response The response of participant (scancode of response button)
correct Correctness of response (1 = correct, 0 = error)
latency Response latency (in ms); measured from
Custom Variables
phase "practice" vs. "test"
totalDonation Cumulative sum of the donations made (adds up offered donations for all pages selected where participants reaches 90% accuracy)
pageCounter Counts the number of pages worked on
pageCondition 1-15 (15 condition total = 3 donation values x 5 number of stims)
pageParticipation 0 = participant declined to participate on the current page
1 = participant agreed to participate on the current page
pageParticipationRT Response time (in ms) for participation decision
pageDonation The donation that will be made if conditions are met for the current page
pageStims The number of stims on the current page
pageSignals The number of signals/targets on the current page
pageFoils The number of foils on the current page
propSignalsPerPage Proportion of signals to stims on the current page
pageAcc Proportion correct decisions for the current page (proportion correct = (number of hits + number of correct rejections)/number of stims)
pageCorrect Number of correct decisions for the current page (number of hits + number of correct rejections)
pageHits Number of hits (correctly selected signals/targets)
pageFas Number of false alarms (incorrectly selected foils)
pageDurationMS Time (in ms) spent on the current page
Specific Page Info: (For All 200 Possible Stims)
text.n1.skip 0 = number1 was presented; 1 = number1 was skipped
number1 The currently randomly selected number for number1
number1Signal 1 = number1 is a signal/target (first digit is even, second digit is odd)
0 = number1 is a foil
number1Selected 1 = number1 is currently selected by participant
0 = number1 is currently unselected by participant

Parameters

The procedure can be adjusted by setting the following parameters.

NameDescriptionDefault
Color Parameter
canvasColor Display color of the actively used portion of the screen (the 'canvas')
if set to a color other than the screenColor, the active canvas
appears 'anchored' on the screen regardless of monitor size
white
screenColor Color of the screen not used by the canvas ('inactive screen')white
defaultTextColor Default color of text items presented on active canvasblack
selectionHighLightColor Default color to highlight the selected numbersyellow
Charity Information
charity Add the charity here"[Charity]"
charityDescription Add additional info that should appear in the instructions about the charity here"inserted text-check below"
showTotalDonationAtEnd True: shows the total donation earned at the end (based on 90% accuracy per page)
false: no donation information is provided at the end
Lange & DeWitte (2022) call a page completed only if the duration spent on this page
is not 2*SD lower than that of the sample mean for the particular page condition.
However, to calculate this completion rate, the sample mean has to be known.
true
Design: Donation Amounts (Iv1) X Number Of Stims On Screen (Iv2)
numberDonationAmountsToRun This specifies the number of levels for IV1 (donation amounts) (MAX: 3)3
donationAmount1 IV1 level10.1
donationAmount2 IV1 level20.2
donationAmount3 IV1 level30.3
montaryUnit The monetary unit the donations should be made in"$"
unitPlacement The placement of the monetary unit sign ("after" vs. "before"), Examle: US $ "before" ->$0.1"before"
The 5 Possible Stim Numbers To Appear On The Page (Iv2)
numberStimsToRun This specifies the number of levels for IV2 (number of stims on the screen) (MAX: 5)5
stimNumbers1 IV2 level 1: 40 numbers on the screen40
stimNumbers2 IV2 level 2: 80 numbers on the screen80
stimNumbers3 IV2 level 3: 120 numbers on the screen120
stimNumbers4 IV2 level 4: 160 numbers on the screen160
stimNumbers5 IV2 level 5: 200 numbers on the screen200
Timing Parameters
taskPageDelayMS The delay of the page (in ms) with the stims after participant decide to participate or not500
Debugging Parameters
debugMode True: presents feedback for the test pages to check that calculations etc. match
false: does not present test feedback (should be set to false for testing!!!!)
false