# This sample script is written for the 2nd stage of a 2 choice discrimination assay. # The 2 white stimulus lights are presented simultaneously. Either light entered will result in food reward. # Users need to ensure that the correct asset is used in the script and saved to the unit's Media directory. # Zantiks Ltd cannot guarantee this is how you want to run your experiments, # this script is offered only to demonstrate the capabilities of the system # and assist you in learning how to script for your research. # define experiment requirements DEFINE FEED_TIME 20 DEFINE LIGHT_TIME 20 DEFINE INTERTRIAL_TIME 60 DEFINE HABITUATION_TIME 0 DEFINE TRIALS 30 # define the animal model tracking requirments (dependent on animal size) SET(TARGET_SIZE,15) SET(DETECTOR_THRESHOLD,5) # takes an autoreference required for tracking SET(AUTOREF_MODE,MOVEMENT) SET(AUTOREF_TIMEOUT,30) # set light stimuli coordinates on the screen SETLIGHT(LIGHT2,SQUARE,1475,300,140) SETLIGHT(LIGHT4,SQUARE,1475,700,140) SETLIGHT(LIGHT7,SQUARE,150,500,140) # load detector asset LOAD(ZONES,"5_CHOICE.bmp") #sets counters for throughout the script SET(COUNTER1,COUNTER_ZERO) # COUNTER1 is the number of trials. SET(COUNTER2,COUNTER_ZERO) # COUNTER2 is the number of stimulus triggers. SET(COUNTER3,COUNTER_ZERO) # COUNTER3 is the number of feeder visits. ACTION MAIN LIGHTS(ALL,OFF) LOGCREATE("RUNTIME|TEXT:|TEXT:|TEXT:TRIAL") LOGAPPEND("TEXT:TIME_OF_STIMULUS_ON|TEXT:STIMULUS_VISIT") LOGAPPEND("TEXT:TIME_OF_STIM_VISIT|TEXT:FEEDER_VISIT") LOGAPPEND("TEXT:TIME_OF_FIRST_FEEDER_VISIT") LOGAPPEND("TEXT:FEEDER_ENTRIES|TEXT:TIME_AT_FEEDER") LOGRUN() AUTOREFERENCE() WAIT(HABITUATION_TIME) VIDEO(3000,"StimulusLightTraining") LOGDATA(DATA_SNAPSHOT,"BEGIN") INVOKE(STIMULUSLIGHTTRAINING,TRIALS) LOGDATA(DATA_SNAPSHOT,"AFTER") LOGDATA(DATA_SELECT,"BEGIN") LOGDATA(DATA_DELTA,"AFTER") LOGCREATE("TEXT:|TEXT:|TEXT:|TEXT:---SUMMARY---") LOGRUN() LOGCREATE("TEXT:|TEXT:|TEXT:|TEXT:TOTAL_TRIALS") LOGAPPEND("TEXT:TOTAL_OF_STIM_VISITS") LOGAPPEND("TEXT:TOTAL_OF_LEFT_STIM_VISITS|TEXT:TOTAL_OF_RIGHT_STIM_VISITS") LOGAPPEND("TEXT:TOTAL_FEEDER_VISITS|TEXT:TOTAL_ARENA_DISTANCE") LOGRUN() LOGCREATE("TEXT:|TEXT:|TEXT:|COUNTER1|COUNTER2") LOGAPPEND("COUNTER3|COUNTER4|COUNTER5|ARENA_DISTANCES:A1") LOGRUN() LOGCREATE("TEXT:") LOGRUN() COMPLETE ACTION STIMULUSLIGHTTRAINING SET(COUNTER1,COUNTER_INC) LIGHTS(LIGHT2,WHITE) LIGHTS(LIGHT4,WHITE) LOGFIELD(1," ") LOGFIELD(2,COUNTER1) LOGFIELD(3,RUNTIME) LOGFIELD(4,"OMISSION") LOGDATA(DATA_SNAPSHOT,"BEGINtrain") DETECTOR(DETECTOR2,LEFT_CORRECT) DETECTOR(DETECTOR4,RIGHT_CORRECT) WAIT(LIGHT_TIME) LOGDATA(DATA_SNAPSHOT,"AFTERtrain") LOGDATA(DATA_SELECT,"BEGINtrain") LOGDATA(DATA_DELTA,"AFTERtrain") LOGFIELD(COMMIT) LOGCREATE("TEXT:|TEXT:|TEXT:|COUNTER1|TEXT:") LOGAPPEND("TEXT:|TEXT:|TEXT:|TEXT:") LOGAPPEND("ZONE_COUNTERS:Z7|ZONE_TIMERS:Z7") LOGRUN() LIGHTS(ALL,OFF) WAIT(INTERTRIAL_TIME) COMPLETE ACTION LEFT_CORRECT LOGFIELD(5,RUNTIME) LIGHTS(LIGHT2,OFF) LIGHTS(LIGHT4,OFF) SET(COUNTER2,COUNTER_INC) SET(COUNTER3,COUNTER_INC) LOGFIELD(4,"LEFT") LIGHTS(LIGHT7,WHITE) FEEDER(1) DETECTOR(DETECTOR7,AT_FEEDER) WAIT(FEED_TIME) LIGHTS(ALL,OFF) COMPLETE ACTION RIGHT_CORRECT LOGFIELD(5,RUNTIME) LIGHTS(LIGHT2,OFF) LIGHTS(LIGHT4,OFF) SET(COUNTER2,COUNTER_INC) SET(COUNTER4,COUNTER_INC) LOGFIELD(4,"RIGHT") LIGHTS(LIGHT7,WHITE) FEEDER(1) DETECTOR(DETECTOR7,AT_FEEDER) WAIT(FEED_TIME) LIGHTS(ALL,OFF) COMPLETE ACTION AT_FEEDER LOGFIELD(7,RUNTIME) LOGFIELD(6,"TRIGGERED") SET(COUNTER5,COUNTER_INC) WAIT(FEED_TIME) LIGHTS(ALL,OFF) COMPLETE