That’s a question SCI doesn’t even bother asking.
Weird, I know, considering it’s an adventure game engine.
Or is it? Turns out it’s really not. The “adventure game” part is almost entirely a matter of scripts.
In SCI proper, there is no concept of a player, of a room, of basically anything concrete. The engine only cares about a few data types like
List, for which it provides function calls to use them, that the
Cast list’s contents are
View objects in a duck-typing sense, and that this list is global variable #5. Also, script zero export zero is the starting point. From there, you’re mostly on your own.
A room in SCI is just a particular kind of object that sets up the things you can find inside, handles room-specific inputs, and… that’s basically it. The SCI engine doesn’t even know the difference between an abstract
View (some possibly-animated non-background element), an atmospheric effect, an NPC, or the player character. Note that all of those things are still
View, in a class-inheritance sense.
The biggest blow to the idea that SCI is an adventure game engine has to be the board games though. Between Jones in the Fast Lane and the Hoyle series, I don’t think anyone could claim otherwise for long.
Contrast that with a certain other engine or two.