hyperme
Level: Smitemaster
Rank Points: 1258
Registered: 06-23-2006
IP: Logged
|
Re: Pushing and Timetokens and Potions (+1)
This is technically a logical consequence of how a various turn processing systems are set up. The chain of events is something like this:
1. Player moves onto a tile with a double potion.
2. The potion is used, setting a flag in the player object so that the double placement will happen.
3. Other reactions to the player's move happen.
4. Monsters get to move.
5. The player is pushed onto a tile with a Time Token.
6. The Time Token activates.
7. Other things happen.
8. The temporal split's validity is checked. If the player was moved after activating the token, the recording is cancelled.
9. The turn ends. The room state is recorded. This includes the player flag for double placement.
10. Since the player's double placement flag is set, double placement happens.
11. If the double being placed is a clone, it becomes active when placed.
12. Moves are recorded for the temporal split.
13. The player rewinds, undoing everything to the state it was in when the token was activated.
14. Since the player's double placement flag is set, double placement happens.
The end result definitely funky and non-initiative, especially with clone potions. There are a few options for dealing with this.
The first is to stop the Time Token from activating when double placement is pending. This seems consistent with how potions and Time Tokens currently interact. It's also the neatest way of fixing this, but some people do really enjoy weird interactions.
The second is to prevent auto-switching to a clone if a temporal recording is ongoing. This will only affect this specific case, which makes it potentially undesirable. However, it does mean we get to keep the interaction, if that is considered a good thing.
Finally, nothing could be done about this. All the turn processing is happening correctly. It's just that the end result is unexpected. If we call it 'emergent behavior', this becomes a feature and not a bug.
____________________________
[Insert witty comment here]
Qzvlkx?
|