Doom wrote:
Checkpoints always take you back to the exact same point and time you were at when you activated the checkpoint. [edit: To be complete, hold mastery and completed secret rooms are stored separately]
How do I make sure secret rooms stay complete? Oh, man, this will make problems . . . There are some secret rooms where, upon entering, a variable is incremented by an NPC. So a certain number of these secret rooms must be visited before being allowed access to the holds biggest (and most cryptic) secret.
Shoot, not only am I way outdoing myself with this hold, but I'm outdoing the game, as well!
Doom wrote:
In your example, the most convenient option would be a checkpoint in the room with the NPC that the player can/will activate (enforced?) after the NPC has already appeared there.
That's what I'll try to do, but I have to make sure the player doesn't hit the save point after killing the NPC, as that would defeat the purpose.
Doom wrote:
Even if the player didn't use a checkpoint in the NPC room, he usually wouldn't be too far behind (unless your hold for some reason is a pain to backtrack), since they could just restore to the (end of the?) last room that needs to be conquered before the NPC appears.
That's where the problem with my secret rooms comes in. Actually, I don't need that variable, come to think of it . . . the player won't know what to do in my special room without visiting these secret rooms, anyways.
Doom wrote:
Finally, concerning checkpoint placement, I recommend putting some in every room that can be explored through an alternate entrance that doesn't allow reaching/solving the puzzle. Let's say there's a path that lets you see what each room in the hold looks like before you can start solving them. Without checkpoints through the hold, *all* of your room entrance restore points are useless because they don't get overwritten through further adventuring between the rooms!
Good idea. I often have a puzzle in a room, but the green door in another, separate hall.
____________________________
Also known as ExpHP everywhere else.