#4537
Insects on Baalzebub’s level have double speed and deal double damage. Baalzebub can cast summon insects (or otherwise has that as a special ability that isn’t actually spellcasting).
Insects on Baalzebub’s level have double speed and deal double damage. Baalzebub can cast summon insects (or otherwise has that as a special ability that isn’t actually spellcasting).
Fix vampires shifting into fog clouds as an escape method because this doesn’t currently work with fog clouds being slow and easily killed.
Artifact leash that always makes the pet it’s attached to slightly faster than the player so that it won’t lag behind.
A monster carrying a loadstone is slowed to half or 2/3 of its normal speed.
If the demigod flag is set, increase the speed of all non-sessile monsters (by giving them extra movement points).
Monster speed system that tries to keep all the good qualities of 3.6.1’s while also not letting randomization make monsters super fast or super slow: add a 16 bit int to the monst struct, and every 12 turns set (speed % 12) of them to 1. Then on each turn, the monster gets (speed / 12) moves, plus 1 if the bit for that turn is 1. This 12-turn cycle would need to be phase shifted randomly per monster (probably using hashing based on monster ID) so that you can’t move-count based on the turn clock.
Research on an efficient algorithm to generate the series of 12 bits has found this, though it might be more entropy-efficient in the long run simply to generate all 4094 permutations of bits and randomly pick one with the correct number of bits whenever needed.
It should be possible to have monsters that are sessile but still get “movement points” to make active attacks. Lichens and spotted jellies are two good examples of monsters that could be like that (i.e. their attacks are fine, but them using actions to slowly move around doesn’t make that much sense).
Fleeing monsters may randomly get a few bonus movement points each turn.
Challenge mode in which all non-sessile monsters are faster.
Adjust NetHack’s monster speed system to accommodate the additional property that if your speed is greater than a monster’s, it is impossible for that monster to move 2 turns in a row before you get to act.
Instead of a mslow flag in the monst struct, use a signed char called “speedbon” which represents the amount of speed offset that the monster should have from its normal speed. This allows for more nuanced speed mechanics, like zapping a wand of speed monster or slow monster multiple times and having the effects stack.