Hi Lars,

> The most important thing missing here is that the selectors in these
> early games are twice the value they would be in newer versions of SCI.
> It has already been partly implemented in the source tree, but will
> probably have to be rewritten, taking a more general approach.

OK. Unless someone really wants to do this, it'll have to wait until 0.3.

> Another thing is that several kernel functions are implemented, but not
> mentioned in the kcall table file. So either we need to revert to the
> default mappings on-the-fly, or else be able to specify the names of
> those kernel functions (using the config file, for instance).

AFAIK, the kernel functions are identical among different SCI versions,
with the exception of two arithmetical functions. Providing default
mappings should take care of the problem; since only the christmas
greeting card is affected, this shouldn't be problematic.

> Christoph: Regarding the use of <game>::play instead of <game>::replay
> for the RestartGame kernel call, I don't think it's a good idea. After
> all, some games rely on it to start the game.

I agree. Do you happen to know what exactly happens when the game is
restarting? Calling <game>::replay generally appears to cause the game to
revert to the state it was at when it was reset; GameIsRestarting() wasn't
called once in the tests I ran. However, if <game>:play was run with
GameIsRestarting() modified to return always 1, the resulting behaviour
was correct.

Completely resetting the game state does definitely /not/ work, BTW; the
menu appears to be retained during a reset. However, it's possible that
this is the only thing that is not reset.

llap,
 Christoph

Reply via email to