... Maybe there could be a few conditions on whether the ghost is summoned after the character's death?
You could perhaps consider any creature with significant intelligence as having a soul too?


...
if (Word == "Include")
{
Word = SaveFile.ReadWord();
if (SaveFile.ReadWord() != ";")
ABORT("Invalid terminator in file %s at line %ld!", SaveFile.GetFileName().CStr(), SaveFile.TellLine());
inputfile incf(game::GetGameDir()+"Script/"+Word, &game::GetGlobalValueMap());
ReadFrom(incf);
continue;
}
if (Word == "Message")
{
Word = SaveFile.ReadWord();
if (SaveFile.ReadWord() != ";") ABORT("Invalid terminator in file %s at line %ld!", SaveFile.GetFileName().CStr(), SaveFile.TellLine());
fprintf(stderr, "MESSAGE: %sn", Word.CStr());
continue;
}
...
I find it difficult to beat Mr. Enner in any arbitrary game. When it happens for me it's because a whole lot of neat things fall perfectly into place.