Trying to add routines/blocks to a pre-existing experiment. No changes I make in the builder are appearing in the experiment when I run it

URL of experiment: Not published yet

Description of the problem: I have been sent an experiment with 3 blocks by a collaborator, I’m trying to alter it so it has 5 blocks. However, when I copy the routines**, rename them, and add the two extra blocks, they do not appear when I run the experiment.

Changes I make in the builder only make it into the experiment when I run it if I’m deleting routines, anything I add doesn’t make it in (this is the case even if I create new routines from scratch e.g. if I add a new routine as the first routine, it doesn’t appear when I run the experiment).

Am I doing something wrong here? Do I need to build the experiment from scratch in order to add the new blocks?

Thanks!

**I am copying using the method shown in: How to copy and paste a routine in PsychoPy - YouTube

I tried building the experiment from scratch, by pasting routines from the collaborators original .psyexp file into a new .psyexp.

Now when I run it, it runs for a short time, then crashes, and gives the following error:

Generating PsychoPy script…

pygame 2.1.0 (SDL 2.0.16, Python 3.8.10)
Hello from the pygame community. Contribute - pygame wiki
PTB-INFO: Using modified PortAudio V19.7.0-devel, revision unknown
11.2236 WARNING We strongly recommend you activate the PTB sound engine in PsychoPy prefs as the preferred audio engine. Its timing is vastly superior. Your prefs are currently set to use [‘sounddevice’, ‘PTB’, ‘pyo’, ‘pygame’] (in that order).
11.7929 WARNING image was set to update during ISI_load_images Static Component, but that component no longer exists
11.7930 WARNING image was set to update during ISI_load_images Static Component, but that component no longer exists
11.7930 WARNING image was set to update during ISI_load_images Static Component, but that component no longer exists
11.7930 WARNING image was set to update during ISI_load_images Static Component, but that component no longer exists
11.7930 WARNING image was set to update during ISI_load_images Static Component, but that component no longer exists

Running: C:\Users\peter\sleep_cog_ment_health_c19_sart_TEMPLATE - Copy\sart_5_blocks_lastrun.py

580.3412 INFO Loaded monitor calibration from [‘2022_04_26 21:41’]
pygame 2.1.0 (SDL 2.0.16, Python 3.8.10)
Traceback (most recent call last):
Hello from the pygame community. Contribute - pygame wiki
3.5207 WARNING We strongly recommend you activate the PTB sound engine in PsychoPy prefs as the preferred audio engine. Its timing is vastly superior. Your prefs are currently set to use [‘sounddevice’, ‘PTB’, ‘pyo’, ‘pygame’] (in that order).
8.1772 WARNING User requested fullscreen with size [1536 864], but screen is actually [1920, 1080]. Using actual size
9.4064 WARNING t of last frame was 19.73ms (=1/50)
15.0164 WARNING 1.4535154000004695: Video catchup needed, advancing self._nextFrameT from 0.0 to 0.06666666666666667
15.0164 WARNING 1.453570400000899: Video catchup needed, advancing self._nextFrameT from 0.06666666666666667 to 0.13333333333333333
15.0165 WARNING 1.4535978000003524: Video catchup needed, advancing self._nextFrameT from 0.13333333333333333 to 0.2
15.0165 WARNING 1.4536277999995946: Video catchup needed, advancing self._nextFrameT from 0.2 to 0.26666666666666666
15.0165 WARNING 1.4536528999997245: Video catchup needed, advancing self._nextFrameT from 0.26666666666666666 to 0.3333333333333333
15.0165 WARNING 1.4536747000001924: Video catchup needed, advancing self._nextFrameT from 0.3333333333333333 to 0.39999999999999997
15.0166 WARNING 1.4536944999999832: Video catchup needed, advancing self._nextFrameT from 0.39999999999999997 to 0.4666666666666666
15.0166 WARNING 1.4537139000003663: Video catchup needed, advancing self._nextFrameT from 0.4666666666666666 to 0.5333333333333333
15.0166 WARNING 1.4537328999995225: Video catchup needed, advancing self._nextFrameT from 0.5333333333333333 to 0.6
15.0166 WARNING 1.4537516000000323: Video catchup needed, advancing self._nextFrameT from 0.6 to 0.6666666666666666
15.0166 WARNING Max reportNDroppedFrames reached, will not log any more dropped frames
16.7593 WARNING 1.4752432999994198: Video catchup needed, advancing self._nextFrameT from 0.0 to 0.06666666666666667
16.7593 WARNING 1.475276400000439: Video catchup needed, advancing self._nextFrameT from 0.06666666666666667 to 0.13333333333333333
16.7594 WARNING 1.4752919999991718: Video catchup needed, advancing self._nextFrameT from 0.13333333333333333 to 0.2
16.7594 WARNING 1.4753060999992158: Video catchup needed, advancing self._nextFrameT from 0.2 to 0.26666666666666666
16.7594 WARNING 1.4753196999990905: Video catchup needed, advancing self._nextFrameT from 0.26666666666666666 to 0.3333333333333333
16.7594 WARNING 1.4753333999997267: Video catchup needed, advancing self._nextFrameT from 0.3333333333333333 to 0.39999999999999997
16.7594 WARNING 1.47534689999884: Video catchup needed, advancing self._nextFrameT from 0.39999999999999997 to 0.4666666666666666
16.7594 WARNING 1.4753602000000683: Video catchup needed, advancing self._nextFrameT from 0.4666666666666666 to 0.5333333333333333
16.7594 WARNING 1.4753731000000698: Video catchup needed, advancing self._nextFrameT from 0.5333333333333333 to 0.6
16.7595 WARNING 1.4753853999991406: Video catchup needed, advancing self._nextFrameT from 0.6 to 0.6666666666666666
16.7595 WARNING Max reportNDroppedFrames reached, will not log any more dropped frames
18.3254 WARNING 1.3603036999993492: Video catchup needed, advancing self._nextFrameT from 0.0 to 0.06666666666666667
18.3254 WARNING 1.3603485000003275: Video catchup needed, advancing self._nextFrameT from 0.06666666666666667 to 0.13333333333333333
18.3254 WARNING 1.360375300000669: Video catchup needed, advancing self._nextFrameT from 0.13333333333333333 to 0.2
18.3255 WARNING 1.3603965999991487: Video catchup needed, advancing self._nextFrameT from 0.2 to 0.26666666666666666
18.3255 WARNING 1.3604173999992781: Video catchup needed, advancing self._nextFrameT from 0.26666666666666666 to 0.3333333333333333
18.3255 WARNING 1.3604376000002958: Video catchup needed, advancing self._nextFrameT from 0.3333333333333333 to 0.39999999999999997
18.3255 WARNING 1.360457700000552: Video catchup needed, advancing self._nextFrameT from 0.39999999999999997 to 0.4666666666666666
18.3255 WARNING 1.360477099999116: Video catchup needed, advancing self._nextFrameT from 0.4666666666666666 to 0.5333333333333333
18.3256 WARNING 1.3604961999990337: Video catchup needed, advancing self._nextFrameT from 0.5333333333333333 to 0.6
18.3256 WARNING 1.3605153000007704: Video catchup needed, advancing self._nextFrameT from 0.6 to 0.6666666666666666
18.3256 WARNING Max reportNDroppedFrames reached, will not log any more dropped frames
19.9818 WARNING 1.4377229000001535: Video catchup needed, advancing self._nextFrameT from 0.0 to 0.06666666666666667
19.9818 WARNING 1.437760900000285: Video catchup needed, advancing self._nextFrameT from 0.06666666666666667 to 0.13333333333333333
19.9818 WARNING 1.4377782000010484: Video catchup needed, advancing self._nextFrameT from 0.13333333333333333 to 0.2
19.9818 WARNING 1.4377946000004158: Video catchup needed, advancing self._nextFrameT from 0.2 to 0.26666666666666666
19.9818 WARNING 1.4378101000002061: Video catchup needed, advancing self._nextFrameT from 0.26666666666666666 to 0.3333333333333333
19.9818 WARNING 1.437825500001054: Video catchup needed, advancing self._nextFrameT from 0.3333333333333333 to 0.39999999999999997
19.9819 WARNING 1.437840500000675: Video catchup needed, advancing self._nextFrameT from 0.39999999999999997 to 0.4666666666666666
19.9819 WARNING 1.4378551000008883: Video catchup needed, advancing self._nextFrameT from 0.4666666666666666 to 0.5333333333333333
19.9819 WARNING 1.4378694000006362: Video catchup needed, advancing self._nextFrameT from 0.5333333333333333 to 0.6
19.9819 WARNING 1.4378833999999188: Video catchup needed, advancing self._nextFrameT from 0.6 to 0.6666666666666666
19.9819 WARNING Max reportNDroppedFrames reached, will not log any more dropped frames
1.3828 WARNING Monitor specification not found. Creating a temporary one…
File “C:\Users\peter\sleep_cog_ment_health_c19_sart_TEMPLATE - Copy\sart_5_blocks_lastrun.py”, line 1370, in
if int(number) == 3:
TypeError: int() argument must be a string, a bytes-like object or a number, not ‘NoneType’
################# Experiment ended with exit code 1 [pid:8672] #################
663.1423 INFO Loaded monitor calibration from [‘2022_04_26 21:41’]
715.1189 INFO Loaded monitor calibration from [‘2022_04_26 21:41’]

Where is number set?

Are you missing an ISI from your original file?

Hi,

Thanks for your reply. I’m looking through the python script both on Pavlovia and locally and I can’t see where number is defined in the script. The experiment gets the numbers form excel condition files though, where there is one per block, so I assume it is defined there? (I’ve added you as a guest to the gitlab in case you want to look at anything).

The experiment won’t run locally (same error as above), but does run OK on Pavlovia (with no errors)? What could be going on there?

Thanks :slight_smile:

If it runs online but not locally then it might be because number is a reserved work in Python. Try changing the name of the Excel column to e.g. myNum.