Dwarf Fortress Bug Tracker - Dwarf Fortress
View Issue Details
0010872Dwarf FortressDwarf Mode -- Trapspublic2018-08-21 21:012018-08-27 01:25
MasterJetter 
Loci 
normalmajorhave not tried
acknowledgedopen 
WindowsWindows 10Home
0.44.12 
 
0010872: Weapon Traps don't attempt attacks
I experienced this in my second siege attack.

I went through my first siege with it performing as expected. (an incomplete "dodge me" trap with too few Z-level a drop)

It just triggered my second siege attack and the goblins just walked right through my weapon traps set in my "dodge me" trap setup. as far as I can see there are no attempted attacks from the weapon traps as though they just are not triggering against the invaders.

There is no dodging being done from the Goblins to knock them down the pit, and I don't see any form of report stating any attacks (though I don't know if it does that normally)

About 80% of the attackers also walk right through my cage trap as well.
I have not been able to reproduce this in other forts since, but I honestly have not gotten far enough along in a fortress to see an effective use of weapon traps. I have not run into any sieges in other forts yet.

I go the same route in every fortress with a dodge me trap.
I have a saved copy of my fort in the middle of the siege (while they're walking across) which I can provide if it could help

I am not certain what information might be useful but here is some of the information that might make my fortress different:

The zone I started in started at war with the goblins, there have been no ambushes before these two sieges.

I have spiked my wealth to 3.6 million money within 2 years utilizing skilled growers growing of quarry bush leaves to produce quarry bush leave only roasts with skilled cooking to produce 10K+ roasts regularly.

I have also just hit population cap of 102 (100+2 performers)

my dodge me trap is 22 steps/traps long and each weapon trap is created by a single lowest quality mechanism and 5 varying quality spiked balls (mostly masterpieces as my carpenter became legendary before I began) to minimize chance of jamming and force the enemy to dodge.

Intentional/Expected?
Issue History
2018-08-21 21:01MasterJetterNew Issue
2018-08-21 21:12MasterJetterNote Added: 0038733
2018-08-21 22:57LociNote Added: 0038734
2018-08-21 22:57LociAssigned To => Loci
2018-08-21 22:57LociStatusnew => acknowledged
2018-08-21 22:57LociTag Attached: Intentional/Expected?
2018-08-22 01:20PatrikLundellNote Added: 0038736
2018-08-26 11:07LociNote Added: 0038747
2018-08-27 01:25PatrikLundellNote Added: 0038753
2018-08-27 11:39PatrikLundellNote Edited: 0038753bug_revision_view_page.php?bugnote_id=0038753#r15752

Notes
(0038733)
MasterJetter   
2018-08-21 21:12   
I saw in other notes/tickets how to upload the save file. So I have provided it in the following link:

http://dffd.bay12games.com/file.php?id=13975 [^]
(0038734)
Loci   
2018-08-21 22:57   
Thank you for the save.

There is a mechanism to make traps seen by diplomats ineffective against future sieges from the same civilization. Perhaps that is being applied to other visitors from the civilization as well. It could even have been a goblin spy disguised as a member of a different civilization.

Deconstructing and rebuilding your traps should cancel the goblins' immunity, at least until the next goblin visitor reports the 'new' traps.
(0038736)
PatrikLundell   
2018-08-22 01:20   
Yes, spies note the location of traps. In my two latest fortresses goblin sieges have bypassed cage traps, and you can actually see how the spies walked, as there is a path through my two tile wide entrance corridors, with invaders getting caught by the alternative path, but not the one the spy took (I've used that to remove/rebuild the ones that didn't trigger).
Each trap has a list of entities that has seen it, and this list contains not only civs, but also performance troupes (I've made a DFHack script to collect a summary of who knows what in my fortress). As Loci said, this list is removed when traps are removed and the replacements have empty lists. Given the number of entities that know about my traps I expect every single visitor to report back: definitely not just diplomats and dedicated spies.
So far I've been unable to identify a single spy, though, so I still have no idea who they were.

As far as I can tell, this is an intended feature that works as intended (at least the mechanics: I don't know enough to know if trap knowledge is spread too far).
(0038747)
Loci   
2018-08-26 11:07   
It is a bit difficult to believe that every visitor has the aptitude, memory, and motivation to write a full report on your fortress defenses, that any knowledge of your traps allows 100% avoidance, and that avoiding traps requires no careful movement or concentration.

A more nuanced implementation might see visitors produce a "knowledge roll" from 0-100 influenced by their traits and skills, partial knowledge of traps reduce their effective trigger rate, and hasty movements (running, jumping, dodging, tumbling, etc.) raise their effective trigger rate.
(0038753)
PatrikLundell   
2018-08-27 01:25   
(edited on: 2018-08-27 11:39)
I have to revise my previous statement somewhat. I've still failed to identify any spies, but I've seen that only some performance troupes note the location of traps, while others don't (at least not in the name of the performance troupe entity). My list also contains site entities knowing about my traps, which may, as a guess, be caused by visiting consorts and other officials.
We already know that dodging into a trap triggers them, but as far as I understand that's 100%.

Edit: I think I now have identified one spy avenue: I was visited by a performance troupe that contained one (goblin) member of the goblin civ I'm at war with. This performance troupe was present throughout most of a goblin siege without any fighting, and then eventually left while only a few campers remained. As soon as the performance troupe member wasn't in my fortress any longer, the goblin civ received knowledge of 30 traps (give or take a few days, depending on the frequency I ran my check script).