MantisBT - Zandronum |
View Issue Details |
|
ID | Project | Category | View Status | Date Submitted | Last Update |
0002053 | Zandronum | [All Projects] Bug | public | 2015-01-04 23:02 | 2018-09-30 23:08 |
|
Reporter | WaTaKiD | |
Assigned To | Torr Samaho | |
Priority | normal | Severity | minor | Reproducibility | always |
Status | closed | Resolution | fixed | |
Platform | Microsoft | OS | Windows | OS Version | XP/Vista/7 |
Product Version | 2.0-beta | |
Target Version | 2.0 | Fixed in Version | 2.0 | |
|
Summary | 0002053: sv_nomonsters 1 changes spawn direction in next map |
Description | online or offline in 2.0, having sv_nomonsters 1 while exiting will have u spawn in the next map facing the direction u were when u exited, rather than the player start's direction |
Steps To Reproduce | load any zandro 2.0 build with doom2.wad map01
sv_nomonsters 1
exit while facing the switch at an angle
should spawn in map02 not facing the normal direction |
Additional Information | does not happen in gzdoom r900 or zdoom 2.5.0/2.6.0 singleplayer or multiplayer |
Tags | No tags attached. |
Relationships | |
Attached Files | |
|
Issue History |
Date Modified | Username | Field | Change |
2015-01-04 23:02 | WaTaKiD | New Issue | |
2015-01-04 23:24 | WaTaKiD | Note Added: 0011278 | |
2015-01-05 00:50 | Edward-san | Note Added: 0011281 | |
2015-01-05 00:51 | Edward-san | Note Edited: 0011281 | bug_revision_view_page.php?bugnote_id=11281#r6310 |
2015-01-05 01:33 | Edward-san | Note Edited: 0011281 | bug_revision_view_page.php?bugnote_id=11281#r6311 |
2015-01-05 01:34 | Edward-san | Assigned To | => Torr Samaho |
2015-01-05 01:34 | Edward-san | Status | new => assigned |
2015-01-05 19:38 | Torr Samaho | Note Added: 0011289 | |
2015-01-05 19:39 | Torr Samaho | Status | assigned => needs testing |
2015-01-05 19:39 | Torr Samaho | Target Version | => 2.0 |
2015-01-05 19:56 | cobalt | Note Added: 0011290 | |
2015-01-05 19:57 | Dusk | Note Edited: 0011290 | bug_revision_view_page.php?bugnote_id=11290#r6325 |
2015-01-05 22:56 | WaTaKiD | Note Added: 0011303 | |
2015-01-08 14:39 | Arco | Status | needs testing => resolved |
2015-01-08 14:39 | Arco | Resolution | open => fixed |
2015-01-08 14:39 | Arco | Fixed in Version | => 2.0 |
2018-09-30 23:08 | Blzut3 | Status | resolved => closed |
Notes |
|
|
sorry i forgot to list the earliest 2.0 build that i tested (and could find):
2.0-r131223-1820 |
|
|
(0011281)
|
Edward-san
|
2015-01-05 00:50
(edited on: 2015-01-05 01:33) |
|
It started breaking from changeset abc921f3c681 .
Found out why: when sv_nomonsters is on, zandronum, when calling G_ExitLevel, passes to G_ChangeLevel the nomonsters flag, in order to preserve the nomonsters behavior when the next map is loaded. Zdoom, instead, does not. Inside G_ChangeLevel, flags is 4 and its value is saved in the static variable changeflags. This seems innocent, but the problem starts in G_FinishTravel, when this condition is checked:
if (!changeflags & CHANGELEVEL_KEEPFACING)
and ... surprise! bad logic here: negation is applied on changeflags, not on the result of the 'and', changing the result from 'true' to 'false', hence 'angle' and 'pitch' of the pawn is not reset.
Actually, zdoom fixed this when another problem was arisen in this bug thread, when the same identical problem happened to the 'ChangeLevel' ACS function. It was fixed in r3444.
|
|
|
|
Thanks, Edward-san, for the detailed analysis! I backported the ZDoom fix. |
|
|
(0011290)
|
cobalt
|
2015-01-05 19:56
(edited on: 2015-01-05 19:57) |
|
|
|
|
after testing with 2.0-r150105-2058, issue seems fixed |
|