the-infocom-files / enchanter

Enchanter
8 stars 3 forks source link

Should you be able to turn off a FROTZed object? #45

Open eriktorbjorn opened 4 years ago

eriktorbjorn commented 4 years ago

The three games of the Enchanter Trilogy are a bit inconsistent in how they handle the FROTZ spell. Let's compare them, as early as possible in the games.

Enchanter:

>FROTZ SPELL BOOK
There is an almost blinding flash of light as the spell book begins to glow! It
slowly fades to a less painful level, but the spell book is now quite usable as
a light source.

>TURN OFF SPELL BOOK
The spell book is now off.
It is now pitch black.

>FROTZ ME
You are bathed in a sickly yellow light, bright enough to read by.

>TURN OFF ME
You can't turn that off.

So there's apparently a slight bug here, because the room shouldn't go dark when I turn out the light. I'll look into that when I'm done here.

Sorcerer:

>FROTZ SPELL BOOK
There is an almost blinding flash of light as the spell book begins to glow! It
slowly fades to a less painful level, but the spell book is now quite usable as
a light source.

>TURN OFF SPELL BOOK
How? It's glowing by magic.

>FROTZ ME
You are bathed in a sickly yellow light, bright enough to read by.

>TURN OFF ME
How? It's glowing by magic.

Spellbreaker:

>FROTZ SPELL BOOK
There is an almost blinding flash of light as the spell book begins to glow! It
slowly fades to a less painful level, but the spell book is now a serviceable
light source.

>TURN OFF SPELL BOOK
The magical glow fades.

>FROTZ ME
There is an almost blinding flash of light as you begin to glow! It slowly fades
to a less painful level, but you are now a serviceable light source.

>TURN OFF ME
The magical glow fades.

The progression from Sorcerer to Spellbreaker seems natural to me. You've learned more about magic, so now you know how to "un-FROTZ" things. But it's strange that you can turn off the light (except if it's you that's glowing) in Enchanter.

There are signs that you were not meant to. The V-LAMP-OFF routine allows you to turn off an object that has LIGHTBIT, but if it has only ONBIT you can't:

           (<FSET? ,PRSO ,ONBIT>
        <TELL "It's not easy to see how. It's glowing by magic." CR>)

But V-FROTZ sets both LIGHTBIT and ONBIT. (Unless you cast it on yourself, in which case it sets ONBIT on the PLAYER object, and sets ALWAYS-LIT to T.)

In Sorcerer and Spellbreaker, V-FROTZ only sets ONBIT (and TOUCHBIT).

If you FROTZ yourself, Sorcerer sets ONBIT on ME, PROTAGONIST and YOUNGER-SELF, as well as setting ALWAYS-LIT to T.

If you Frotz yourself in Spellbreaker, it additionally sets ONBIT on WINNER. It does not have any ALWAYS-LIT variable.