It's worth noting that while pressing R does reset the whole puzzle, you can just undo. You don't have to solve everything again.
yeah i just wanted to mention that because someone might misunderstand “checkpoints” and then complain that r doesn’t reset from the checkpoint
If you are willing to update the game, you can disable PuzzleScript's default restart by putting `norestart` in the prelude:
https://www.puzzlescript.net/Documentation/prelude.html
no, i do want people to still be able to restart, but only for the purpose of actually restarting it. thanks for letting me know though