i7/kerkerkruip

Fighting in dreams

Opened this issue · 8 comments

This is going to take quite a rewrite of code (specifically the part in which you cannot fight when you sleep), but I would like to be able to introduce fights within dreams. Specifically, for my "Dream of Montenoir", I would like to have the ability to fight against a dream-version of a monster and give rewards based on that fight (the synopsis is a bar fight).

Solution is probably introducing some form of scope? Being "in dungeon" or "out of dungeon". Further question is naturally how time is handled. I assume time stops within the dungeon during sleep? Does it, @VictorGijsbers ?

mciul commented

I'd like to upvote this because the Poison Dream would require it too

Hmm. Perhaps we should add this to an earlier milestone then?

This is kind of in the heart of the Kerkerkruip mechanic, as I recall from a discussion with Victor. I'll assign him for now.

Possibly affected by #372

I'll look into this for Kerkerkruip 11!

mciul commented

Also relates to #402 - I think I almost have this fixed!

Just a thought on this and probably something you guys already thought of: wouldn't it be helpful to simply declare all dream locations in a different area than the dungeon? That way, we can define rules / phrases holding for that specific area (such as: do not wake up the player when he is in a dream location, even though fighting ensues).

mciul commented

That could be helpful, although "dreaming is true" is usually enough to establish that information.

What I found most difficult about dreams is that sometimes the player gets a new body, and sometimes they don't. A lot of game code refers to "the player" so even when the player gets a new body, that stuff still applies. Right now I'm trying to figure out how to handle the Angel of Mercy's effect, which makes the PC more radiant during combat. What I'd really like is to suspend the radiance effect during dreams without mentioning it to the player... the problem is that if combat is possible in dreams (and I believe it already is now), then I'd need to keep track of what world the radiant effect applies to.