Viewing Issue Simple Details Jump to Notes ] Wiki ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0008226 [DCSS] Patches minor N/A 2014-03-04 04:25 2014-03-06 04:03
Reporter PleasingFungus View Status public  
Assigned To sgrunt
Priority normal Resolution done  
Status resolved   Product Branch 0.14 ancient branch
Summary 0008226: Fixed random_near_space()
Description Basically, random_near_space() is a remarkable mess with insane behavior. It spends about 2/3rds of its length specifically allowing monsters to cheat & blink through walls, but only if the player couldn't see them doing so, or if the player could see them, but they were only blinking through transparent walls, but no more transparent walls than were between the player and their origin point. Basically.

I cleaned that up, factored out valid_blink_destination() (it was duplicating code in random_space_weighted), and also fixed a bug where random_near_space() would choose spaces only if they weren't dangerous to the *player*.

Upshot: dispersal code is much cleaner/faster, monster blink effects should work much better (& shouldn't cheat while out of LOS of the player), and ball lightning can now be summoned in deep water/lava.
Additional Information
Tags No tags attached.
Attached Files ? file icon 0001-Refactored-random_near_space-fixed-bugs.patch [^] (11,405 bytes) 2014-03-04 04:25 [Show Content]

- Relationships

-  Notes
sgrunt (administrator)
2014-03-06 04:03

With a couple of formatting fixes, this is in as 0.14-a0-2991-ga5274fd. Thanks!

- Issue History
Date Modified Username Field Change
2014-03-04 04:25 PleasingFungus New Issue
2014-03-04 04:25 PleasingFungus File Added: 0001-Refactored-random_near_space-fixed-bugs.patch
2014-03-06 04:03 sgrunt Note Added: 0025483
2014-03-06 04:03 sgrunt Assigned To => sgrunt
2014-03-06 04:03 sgrunt Status new => resolved
2014-03-06 04:03 sgrunt Resolution open => done
2014-03-06 04:03 sgrunt Fixed in Branch => 0.14 development branch

Mantis 1.1.8[^]
Copyright © 2000 - 2009 Mantis Group
Powered by Mantis Bugtracker