My game is meant to be experienced in a single go, without saving and restoring (which would at best make it too easy, at worst break it). So I’ve tried to be cute and:
Instead of saving the game:
say "Nobody can save you here. Not even yourself.
(this game is meant to be experienced in a single go.)"
stop the action;
Instead of restoring the game:
say "Restore what?"
stop the action;
There are some extensions that can affect it. Also, it doesn’t let you use Instead but you definitely can change them. It requires Carry out and Report, IIRC.
Carry out saving the game:
say "Nobody can save you here. Not even yourself.
(this game is meant to be experienced in a single go.)";
stop the action;
Carry out restoring the game:
say "Restore what?";
stop the action;
Yeah, the idea is that Before, Instead, and After can apply to whole classes of actions, and those rules generally shouldn’t apply to out-of-world actions. For example, “instead of doing anything except waiting during the Trial” shouldn’t stop a player from restarting.
Check, Carry Out, and Report rules only ever apply to single actions, so they work fine on out-of-world actions.
understand "save" as a mistake ("Nobody can save you here. Not even yourself.
(this game is meant to be experienced in a single go.)").
understand "restore" as a mistake ("Restore what?").
Change the grammar and it never even gets as far as processing the action.
I think just overriding saving/restoring with “carry out” like in the code above I posted is the most straightforward way to do it with less ways to go wrong.