Writing a Tutorial Mode in Inform 7

IMHO, the best SO is one who follows their own mind, and has opinions/habits/beliefs of their own that differ from yours. In the long run, such partners provide a much happier and healthier relationship.
Celebrate the fact that you have a partner like that.

Trust Uncle Joaz on this. He has made enough mistakes for both you and him.
Excessively cooperative partners are boring in the long run.

Yes…and…no. Errr…sorry…that’s not terribly clear, is it?
Let me elaborate.

You need to be draconian in your control of information. But you are trying to be draconian in your control of actions. By the time that the player his chosen an action, it is too late.
When the player tries to act, you have two choices, both equally bad: let the player do something that you do not want them to do, or forcibly stop them from doing what they want to do. Either way, cooperation is breaking down.

Be draconian early! Control what the player experiences.
If you do this carefully, the player will not even think of doing all of the things that you don’t want them to do.

Have a look at my post on sandboxes, very thoughtfully referenced upthread by Pinkunz:
( BTW, thanks, Pinkunz, for the compliment )

In the examples given, the writer is draconian, but only in control of information.
The player will not try to do something that the writer does not want them to do, because the game simply does not tell them that such options exist.

If the player learns quickly, they go on to the more complicated parts of the game, and the tutorial breathes a sigh of relief because it does not have to do anything at this point.
If the player flails, the tutorial offers some helpful advice. The tutorial never has to resort to arguing with the player, or retracting anything that they have done. No negative reinforcement is needed.

When the player finally grasps the ideas necessary to get out of the sandbox, they are rewarded with a bigger and more entertaining world. It is always positive reinforcement.

================================

This idea can be extended to multiple levels, in what may be both logically and topologically called ‘concentric sandboxes’.

In the innermost sandbox, as described above, the player doesn’t leave the sandbox until they know basic commands like GET, LOOK, OPEN WITH KEY, and how to move from room to room.

When the game believes that they are competent, it lets them into the next level. Suppose, at this point, the writer wants them to have a basic understanding of conversations with NPCs.
So there may be one NPC with limited possible interactions.

“You can see the key on the floor, tied to a chain. The chain runs under a sleeping Arcturan MegaDonkey.”

GET KEY.

“You cannot get the key. You pull with all your might, but the MegaDonkey is too heavy”

KICK MEGADONKEY.

“Nothing happens. The MegaDonkey continues snoring.”

BEAT MEGADONKEY WITH BASEBALL BAT.

“The snoring is slightly lighter. One huge ear twitches in your direction.”

ASK MEGADONKEY FOR KEY

“An eye the size of a basketball opens, and slowly swivels in your direction. A deep voice echoes off the cave walls: ‘The key? That’s what this racket is about? You can have it. Just go away and let me sleep.’
The MegaDonkey ponderously rolls over. Fissures appear in the floor. The key starts slowly sliding into one of them…”

GET KEY…

And so the player has they key that allows them to get to the next, less sandy sandbox, and the game knows that they are capable of talking to the more complicated NPCs that they will interact with on that level.

3 Likes

This wins my “post of the month” award.
Thanks for all the helpful advice. And if there is not a game with an Arctura MegaDonkey, that is a shame.

3 Likes