MantisBT - Zandronum
View Issue Details
0000639Zandronum[All Projects] Bugpublic2011-12-24 18:342018-09-30 19:54
SickSadWorld 
Dusk 
hightrivialalways
closedfixed 
MicrosoftWindowsXP/Vista/7
98d 
1.0 
0000639: Hexen armorclass (AC) resets after Teleport_toMap in the display
When a user changes to another map their SBARINFO displays the AC going back down to the Playerclass' default. Functionally, the user behaves as if they had their original AC but the display is consistently off and it affects gameplay.
Get some armor. Change map. Look at the display.
No tags attached.
duplicate of 0000242closed  Hexen, armor and pieces of last weapon disappear 
related to 0000640closed Dusk Hexen Weapon pieces disappear in the display between levels 
png Screenshot_Hexen_20120112_160120.png (65,233) 2012-01-12 22:05
/tracker/file_download.php?file_id=441&type=bug
png

png Screenshot_Hexen_20120112_160129.png (72,306) 2012-01-12 22:05
/tracker/file_download.php?file_id=442&type=bug
png
Issue History
2011-12-24 18:34SickSadWorldNew Issue
2012-01-12 12:27Torr SamahoNote Added: 0002358
2012-01-12 12:27Torr SamahoStatusnew => feedback
2012-01-12 22:05SickSadWorldFile Added: Screenshot_Hexen_20120112_160120.png
2012-01-12 22:05SickSadWorldFile Added: Screenshot_Hexen_20120112_160129.png
2012-01-12 22:09SickSadWorldNote Added: 0002361
2012-01-12 22:09SickSadWorldStatusfeedback => new
2012-01-12 22:10SickSadWorldNote Edited: 0002361bug_revision_view_page.php?bugnote_id=2361#r1214
2012-01-15 03:07SickSadWorldNote Added: 0002408
2012-02-18 16:00Torr SamahoRelationship addedduplicate of 0000242
2012-03-25 02:31DuskAssigned To => Dusk
2012-03-25 02:31DuskStatusnew => assigned
2012-03-25 14:32DuskRelationship addedrelated to 0000640
2012-03-25 21:44DuskNote Added: 0002896
2012-03-25 21:44DuskStatusassigned => feedback
2012-03-25 22:15DuskNote Edited: 0002896bug_revision_view_page.php?bugnote_id=2896#r1475
2012-03-26 05:28DuskNote Edited: 0002896bug_revision_view_page.php?bugnote_id=2896#r1476
2012-03-27 01:59Torr SamahoNote Added: 0002909
2012-03-27 01:59Torr SamahoStatusfeedback => resolved
2012-03-27 01:59Torr SamahoFixed in Version => 1.0
2012-03-27 01:59Torr SamahoResolutionopen => fixed
2012-03-28 01:25Torr SamahoNote Added: 0002937
2012-03-28 01:25Torr SamahoStatusresolved => feedback
2012-03-28 01:25Torr SamahoResolutionfixed => reopened
2012-03-28 01:34Torr SamahoNote Edited: 0002937bug_revision_view_page.php?bugnote_id=2937#r1499
2012-03-28 01:34Torr SamahoNote Edited: 0002937bug_revision_view_page.php?bugnote_id=2937#r1500
2012-03-28 01:34Torr SamahoNote Edited: 0002937bug_revision_view_page.php?bugnote_id=2937#r1501
2012-03-28 17:11DuskNote Added: 0002964
2012-03-28 17:11DuskStatusfeedback => assigned
2012-03-28 23:25DuskNote Added: 0002973
2012-03-28 23:25DuskStatusassigned => feedback
2012-03-29 01:56Torr SamahoNote Added: 0002979
2012-03-29 10:14DuskStatusfeedback => resolved
2012-03-29 10:14DuskResolutionreopened => fixed
2012-06-09 13:22Torr SamahoCategoryGeneral => Bug
2018-09-30 19:54Blzut3Statusresolved => closed

Notes
(0002358)
Torr Samaho   
2012-01-12 12:27   
Can somebody please confirm whether this is still broken in the latest 98e beta build?
(0002361)
SickSadWorld   
2012-01-12 22:09   
(edited on: 2012-01-12 22:10)
The reported behavior seems to be consistent with respect to ONLINE play in 0.98e build 3299. Of note, this behavior is not observed in offline play.

AC also specifically does not accurately reduce with damage during online play. That is to say, once an AC level is achieved it stays at the highest level regardless of damage taken until the map is changed. This too is not present in offline play, where the behavior works as expected.

Screenshots demonstrate a specific example where an AC level is achieved on the hub map, and immediately on Teleport_toMap AC is reset to its classes base value.

(0002408)
SickSadWorld   
2012-01-15 03:07   
After further testing it seems only damage from lava or other damage "from the world" makes AC go down. Actor inflicted damage has no effect on AC.
(0002896)
Dusk   
2012-03-25 21:44   
(edited on: 2012-03-26 05:28)
'https://bitbucket.org/CrimsonDusk/notebola/changeset/4376a8be0238 [^]'
'https://bitbucket.org/CrimsonDusk/notebola/changeset/34b5d5a3fd34 [^]'
'https://bitbucket.org/CrimsonDusk/notebola/changeset/1deb29879820 [^]'

Phew! Had to pretty much establish netcode for Hexen armor class values. Enjoy your synced Hexen armor. :)

3/26: third commit with missing sanity check

(0002909)
Torr Samaho   
2012-03-27 01:59   
Patches added with two small fixes (the clients didn't parse the full net command in case of an error and there was a missing ulClient in the SERVERCOMMANDS_SetHexenArmorSlots call in SERVER_SendFullUpdate). I also fixed that the Hexen armor value got out of sync when the "give armor" cheat was used.
(0002937)
Torr Samaho   
2012-03-28 01:25   
(edited on: 2012-03-28 01:34)
Due to some problems (0000348:0002918) with the Hexen armor code (that are fixed now), I noticed that SERVERCOMMANDS_SetHexenArmorSlots in AHexenArmor::AbsorbDamage is called even in non-Hexen games. Does anybody know if AHexenArmor::AbsorbDamage is supposed to be absorbing something when bots are telefragged in Doom in d2ctf2?

Moreover, if clients don't need to know about the Hexen armor in non-Hexen games, I'll disable the code there to save net traffic.

(0002964)
Dusk   
2012-03-28 17:11   
Probably isn't... I'll go over and do some optimizations.
(0002973)
Dusk   
2012-03-28 23:25   
'https://bitbucket.org/CrimsonDusk/notebola/changeset/0e5dae6aa43d [^]'

Should be fixed. There was code to ensure only modified armor was sent, but bAbsorbed wasn't initialized properly, so it defaulted to true, causing it to think armor was always changed, sending updates all the time and wasting bandwidth.
(0002979)
Torr Samaho   
2012-03-29 01:56   
Thanks! Patch added.