Dungeon Crawl Stone Soup Tracker - DCSS
Viewing Issue Advanced Details
1360 Bug Report minor always 2010-04-14 05:41 2013-11-05 00:23
Danei Local  
KiloByte Windows  
normal Both  
resolved 0.6 ancient branch  
0.6.0-0 Release Version done  
none    
none 0.14 ancient branch  
0001360: TSO gets ever so cross when my shield of reflection reflects poisoned needles.
This is bad, real bad, Michael Jackson.
TSO gets mad, real mad, Joe Jackson.
(song reference)

But yeah, I didn't know if this was intended or not, but I was told to file it as a bug report. TSO gets progressively angrier every time I reflect a poisoned needle at a kobold with my shield of reflection. I tried not to reflect it, honest, but they were aiming right at the shield.

I think TSO ought to conceptualize this as the kobolds poisoning themselves rather than me poisoning them, because otherwise I'm being penalized for having a high SH value.
has duplicate 0005339closed Galefury Disallowed TSO Attacks Cause Penance if Reflected 
? file icon poison_reflect.patch [^] (8,842 bytes) 2011-08-22 21:46 [Show Content]
? file icon warn_about_reflection.patch [^] (2,576 bytes) 2011-08-27 20:07 [Show Content]
Issue History
2010-04-14 05:41 Danei New Issue
2010-04-14 07:27 Danei Note Added: 0004259
2010-04-14 07:27 Danei Note Edited: 0004259
2010-04-26 16:08 jpeg Note Added: 0004435
2010-04-26 16:34 OG17 Note Added: 0004436
2010-04-26 16:40 KiloByte Note Added: 0004437
2010-04-26 16:50 jpeg Note Added: 0004438
2010-04-27 11:03 due Note Added: 0004459
2010-05-15 02:14 Someone-else Note Added: 0004806
2010-08-01 16:35 greensnark Note Added: 0006775
2010-08-01 16:35 greensnark Status new => acknowledged
2010-08-02 17:37 BirdoPrey Note Added: 0006796
2011-05-01 16:59 casmith789 Note Added: 0012918
2011-06-28 17:07 Porkchop Note Added: 0013570
2011-06-30 06:17 sunspire Note Added: 0013590
2011-06-30 14:19 Someone-else Note Added: 0013593
2011-07-03 05:50 user1108 Note Added: 0013657
2011-07-03 05:55 user1108 Note Edited: 0013657
2011-08-22 21:46 GreatZebu File Added: poison_reflect.patch
2011-08-22 21:48 GreatZebu Note Added: 0014287
2011-08-22 23:29 dpeg Note Added: 0014288
2011-08-23 01:24 GreatZebu Note Added: 0014290
2011-08-26 14:22 Porkchop Note Added: 0014324
2011-08-26 17:36 KiloByte Note Added: 0014326
2011-08-27 20:07 GreatZebu File Added: warn_about_reflection.patch
2011-08-27 20:09 GreatZebu Note Added: 0014342
2012-02-19 14:38 Galefury Relationship added has duplicate 0005339
2013-11-05 00:23 KiloByte Note Added: 0024306
2013-11-05 00:23 KiloByte Status acknowledged => resolved
2013-11-05 00:23 KiloByte Fixed in Branch => 0.14 development branch
2013-11-05 00:23 KiloByte Resolution open => done
2013-11-05 00:23 KiloByte Assigned To => KiloByte

Notes
(0004259)
Danei   
2010-04-14 07:27   
I should add that this behavior isn't just for needles or for kobolds; it's for any poisoned ammo, projected by any monster.

And possibly for spells too, though I haven't personally experienced that.

(0004435)
jpeg   
2010-04-26 16:08   
Agreed. No idea how blame is currently handled in regard to reflection, but TSO should definitely not punish the player for reflecting poison or draining or whatever attacks. If we want to get fancy, TSO could render said reflected bolts harmless.
(0004436)
OG17   
2010-04-26 16:34   
"Harmless reflected bolts" would be strange - if good gods could negate hated missiles, why would they let the player be struck and only protect the attacker?
(0004437)
KiloByte   
2010-04-26 16:40   
It definitely should be the fault of whoever shot that bolt of draining, not of the person who reflected it.
(0004438)
jpeg   
2010-04-26 16:50   
The basic problem is that blame and xp are handled as one and the same. You get xp for kills by reflected bolts, but you also are blamed for said kills (or attacks). We should probably try to decouple these somehow.

For this specific case, you could argue that TSO doesn't accept (i.e. prevent xp gain from) poison kills but also doesn't mind reflected poison attacks. Of course, that could lead to players taking care to kill poisoned monsters themselves, so they can get the xp, which leads to grinding. *sigh*
(0004459)
due   
2010-04-27 11:03   
I'm pretty sure there was a bug in reflection that meant that kills weren't being attributed to the player--being killed by something reflected counted as a suicide. I'm not really familiar enough with the bolt code, monster death and monster conducts to know, but I agree with the idea of TSO not being annoyed at reflected poison/draining. Is it possible to add a further parameter to the bolt structure to define an "original thrower", which could be consulted in these cases before a god conduct is triggered?
(0004806)
Someone-else   
2010-05-15 02:14   
I think that reflection should be ignored in such cases. Just standard block. "You bounce the BOLT into the ceiling/ground/away".
(0006775)
greensnark   
2010-08-01 16:35   
Should fix for 0.8.
(0006796)
BirdoPrey   
2010-08-02 17:37   
This bug just hit me in swamp vs. Nessos. +1
(0012918)
casmith789   
2011-05-01 16:59   
This bug is still in 0.9 trunk and is pretty major.
(0013570)
Porkchop   
2011-06-28 17:07   
Got instant TSO penace from reflecting a naga mage poison arrow in 0.8 stable, time to ditch this shield :(
(0013590)
sunspire   
2011-06-30 06:17   
why don't you just treat those poison refletions as if the shield is a summoned creature? Yes, it would be 50% xp, but at least the player wouldnt be penalized
(0013593)
Someone-else   
2011-06-30 14:19   
It would be an easy, but a bit hacky solution.
It would also penalize reflection-using players in other situations, unless it would only affect forbidden effects.
Then it would be very hacky, though.
(0013657)
user1108   
2011-07-03 05:50   
(edited on: 2011-07-03 05:55)
The cynical 'solution' would be to just ban TSO worshippers from using shield of reflection - TSO doesn't like any cowardly tricks like poison or beating monsters with their own missiles. Worshippers should show Justice's might by beating monsters themselves without dirty tricks. And besides, TSO already gives worshippers a shield so they don't need to cheat. So add a conduct (DID_REFLECT_SHOT), and make TSO incure penance on that. Since all reflection is banned, no bug when reflecting poisoned shots at enemies ;)

I guess this wouldn't be a real fix, esp. as this should affect other gods too -all those with ally conduct penalties (Beogh, Oki, Ely comes to mind), but it seems much less of a problem there... [Edit: and that can be rationalized too. It's your responsibility to use this dangerous artifact responsibility]

(0014287)
GreatZebu   
2011-08-22 21:48   
I've attached a patch to avoid blaming the player for reflected poisonous bolts. I noticed that the penalty function is called twice in the case of curare and removed the second call--if this is intended behavior the call just needs to be added back in.
(0014288)
dpeg   
2011-08-22 23:29   
I think it is better to mark reflection shields as risky for TSO followers rather than to allow their use. Yes, TSO supports shields -- that does not mean all shields are equal. (In balance terms, the god is clearly strong enough to take the hit.)
(0014290)
GreatZebu   
2011-08-23 01:24   
I don't think there's anything unchivalrous about reflecting an enemy's weapon back at them--there's a long history of heroes using that tactic going all the way back to Perseus.
(0014324)
Porkchop   
2011-08-26 14:22   
Kinda agree with dpeg, it would be nice to be made clearer, I was caught off guard with penance and had to trudge back a couple pages on the message screen because i did not understand why tso had taken away all of my powers.
(0014326)
KiloByte   
2011-08-26 17:36   
The patch singles out poison, this is not good. Trying to plug the effect at that stage means similar handling would be needed for draining, hitting allies, hitting those shooting at someone else than you, etc.
(0014342)
GreatZebu   
2011-08-27 20:09   
I added a new patch that just warns you when you equip a shield of reflection if you are worshipping any god where an unfortunate reflected shot could get you in trouble. This isn't a totally satisfying solution, but I think it is an unambiguous improvement on the status quo.
(0024306)
KiloByte   
2013-11-05 00:23   
Fixed in 0.14-a0-432-g9232e2c.