Viewing Issue Simple Details Jump to Notes ] Wiki ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0007115 [DCSS] Patches minor always 2013-05-31 07:32 2013-05-31 09:16
Reporter qoala View Status public  
Assigned To KiloByte
Priority normal Resolution done  
Status resolved   Product Branch 0.13 ancient branch
Summary 0007115: Make djinn actually immune to mortal fire
Description Djinn take damage from fireballs and other non-cloud sources because resist_adjust_damage() in only special cases immunity for monsters.
Instead, their rF*4 is fed to resist_fraction for a calculated 1/6 damage

This changes the check from (mons && res >= 3) to ((mons && res >= 3) || res > 3), to have the intended behaviour of returning 4 from player_res_fire implying immunity.

I'm however not sure if there are any weird side affects from the change.
As far as I can tell, hellfire/holyfire are properly handled already.
Also this has no effect on scroll destruction.

It looks like player_res_elec is the only player_res_* which can return greater than 3, and only by wearing a pile of redundant rElec gear. To skip the cap, the caller has to call player_res_elec with temp=false, which only occurs once in the code (where the result is checked as non-zero). As such, I think there's no side effects, but perhaps player_res_elec should always cap its return value?
Additional Information
Tags No tags attached.
Attached Files ? file icon djinn_mortalfire_immunity.patch [^] (766 bytes) 2013-05-31 07:32 [Show Content]

- Relationships

-  Notes
KiloByte (manager)
2013-05-31 09:16

Applied, thanks!

- Issue History
Date Modified Username Field Change
2013-05-31 07:32 qoala New Issue
2013-05-31 07:32 qoala File Added: djinn_mortalfire_immunity.patch
2013-05-31 09:16 KiloByte Note Added: 0022955
2013-05-31 09:16 KiloByte Status new => resolved
2013-05-31 09:16 KiloByte Fixed in Branch => 0.13 development branch
2013-05-31 09:16 KiloByte Resolution open => done
2013-05-31 09:16 KiloByte Assigned To => KiloByte

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