Good ideas here, this is an interesting thread. Further to ttk's thought of revisiting how the morph queues function it seems that a new type of queue might be useful to help laggy players.
We already support:
1) Auto Queue
2) Future Queue
3) Directional Queue
#1 is very intuitive, but #2 and #3 require a hotkey. To solve the the Gulper to Gulper scenario Simon outlined we could add 4) Transition Queue. A morph in the Transition Queue would execute when the morph state of the clone changes and when the target morph can be performed. For example:
- Clone is Gulping, Transition Queue a Spin Morph. As soon as the clone is no longer Gulping and is capable of Spinning it will. (i.e. changes into a walker)
- Clone is Clobbing, Transition Queue a Clob Morph. The clone will Clob again the next time it becomes a walker.
- Clone is Molding, Transition Queue Mold Morph. When the clone runs out of bricks it will become a walker and Mold again.
- Clone is Doppeled, Transition Queue Nova Morph. If the clone is freed then it will explode.
Should this be an automatic TQ (where possible), or would it be better to introduce another hotkey to allow the player to specifically place morphs in the TQ? Is the TQ too powerful? Or not useful enough to implement?