Task dossier

Antisaccade Task

T000032T000032-antisaccadeSmoke testedWeb preview availableUpdated Jun 20, 2026

Rule-dependent inhibitory control with prosaccade versus antisaccade responses.

Antisaccade Task flow diagram
Antisaccade Task flow diagram
Preview path
This task ships with a matched HTML companion so the browser preview can stay aligned to the canonical local repository.
Quick start
Clone locally, then follow the README for install and run instructions.
git clone https://github.com/TaskBeacon/T000032-antisaccade.git
cd T000032-antisaccade
# Follow the README for local setup and run steps

Antisaccade Task

Maturity: draft

FieldValue
NameAntisaccade Task
Versionv0.1.4-dev
URL / Repositoryhttps://github.com/TaskBeacon/T000032-antisaccade
Short DescriptionRule-dependent inhibitory control with prosaccade versus antisaccade responses.
Created ByTaskBeacon
Date Updated2026-03-18
PsyFlow Version0.1.12
PsychoPy Version2025.1.1
ModalityBehavior
LanguageChinese
Voice Namezh-CN-YunyangNeural (voice disabled by default)

1. Task Overview

This task implements a two-condition antisaccade paradigm:

  • prosaccade: respond toward the target side.
  • antisaccade: respond opposite the target side.

Each logical trial presents a fixation baseline, a rule cue, a short gap, and a lateralized target response window. The build uses keyboard direction keys (f/j) as a portable proxy for gaze direction.

The task no longer uses a separate controller object. Trial-specific rule, target-side, and timing values are generated by a deterministic helper in src/utils.py from the block seed and trial id, which keeps the runtime auditable without maintaining cross-trial mutable state.

2. Task Flow

Task Flow

Block-Level Flow

StepDescription
1. Block setupLoad the block condition stream with BlockUnit.generate_conditions(...) and resolve the per-block seed.
2. Trial executionRun fixation -> rule cue -> gap -> saccade response -> ITI for each logical trial.
3. Block summarySummarize only logical trial rows from the completed block and show accuracy, correct RT, and timeout count.
4. Final summaryShow session-level totals and save the reduced CSV output.

Trial-Level Flow

StepDescription
fixationShow center fixation and left/right peripheral anchors.
rule_cuePresent condition cue (朝圆点 or 背离圆点).
gapRemove cue and keep neutral anchors before target onset.
saccade_responsePresent one lateral target and capture left/right response under deadline.
itiShow neutral fixation scene until next trial.

Helper Logic

ComponentDescription
Rule parserValidates prosaccade vs antisaccade and rejects unknown labels.
Deterministic spec builderSamples target side from a stable seed basis (block_seed + trial_id) and computes the correct key.
Summary helpersAggregate reduced rows into accuracy, mean correct RT, timeout count, and total trials.

Controller Logic

ComponentDescription
Task-local controllerNot used. Deterministic helper logic in src/utils.py replaces mutable controller state.

Runtime Context Phases

Phase LabelMeaning
fixationNeutral baseline before the rule cue.
rule_cueRule preparation period.
gapCue-target separation interval.
saccade_responseActive response capture window.
itiInter-trial reset interval.

3. Configuration Summary

a. Subject Info

FieldMeaning
subject_id3-digit participant identifier.

b. Window Settings

ParameterValue
size[1280, 720]
unitspix
screen0
bg_colorgray
fullscreenfalse
monitor_width_cm35.5
monitor_distance_cm60

c. Stimuli

Stimulus GroupDescription
fixationCentral fixation cross used in fixation/gap/ITI phases.
rule_pro, rule_antiColor-coded rule cues (朝圆点, 背离圆点).
left_anchor, right_anchorPeripheral position anchors shown before target onset.
left_target, right_targetLateral white target circles for directional response.
instruction_text, block_break, good_byeEntry, transition, and completion text screens.

d. Timing

StageDuration
fixationuniform in fixation_duration range
rule cueuniform in cue_duration range
gapuniform in gap_duration range
response windowresponse_deadline
ITIiti_duration

e. Helper Logic

HelperPurpose
src/utils.pyDeterministic trial-spec generation and summary aggregation.
task.enable_loggingEnables the helper to emit auditable trial-spec logging.

f. Triggers

TriggerCodeSemantics
exp_onset1experiment start
exp_end2experiment end
block_onset10block start
block_end11block end
fixation_onset20fixation onset
rule_pro_onset21prosaccade rule cue onset
rule_anti_onset22antisaccade rule cue onset
gap_onset30gap onset
target_onset_left40left target onset
target_onset_right41right target onset
response_left50left response key
response_right51right response key
response_timeout60no response before deadline
iti_onset70inter-trial interval onset

4. Methods (for academic publication)

Participants completed a rule-based oculomotor inhibition task containing prosaccade and antisaccade trials. Each trial began with fixation, followed by an explicit rule cue and a short cue-target gap, then a lateral target requiring a directional response. Prosaccade trials required same-side responses relative to target location; antisaccade trials required opposite-side responses.

Behavioral outputs were logged at trial level, including condition, target side, response key, correctness, reaction time, and timeout status. The implementation emits phase-aligned triggers for fixation, cue, gap, target onset, response category, and ITI to support synchronized acquisition workflows.