MantisBT - Zandronum
View Issue Details
0000951Zandronum[All Projects] Suggestionpublic2012-08-04 18:362018-09-30 23:31
Edward-san 
Edward-san 
normalminorhave not tried
closedfixed 
98d 
1.41.4 
0000951: Allow spectators to pass through some kind of portals (or what are they called)
Hi. I noticed that in both skulltag and zandronum alpha there are some "teleport lines" which are usable by players but not by spectators.
An example:

create a new game with zombie horde map pack, ie zh-mappack6a.pk3;
goto to map zm06 (ignore the console messages);
write in console 'warp 2900 1000'

you'll see a door which a player can use, but the spectator not. Is ACS involved in this case?

I was not sure to label it as a 'bug', so I thought about a 'suggestion'.
Description.
Actually it's not just that door, it happens in other spots in the same map and in other maps in the same file. Example:

in zm06:
"3750 630" at your left;
"11300 2800" at your back right;
"11500 540" at your front;
No tags attached.
zip secact.wad.zip (23,586) 2012-08-05 19:07
/tracker/file_download.php?file_id=660&type=bug
diff thingact.diff (3,099) 2013-05-26 14:37
/tracker/file_download.php?file_id=973&type=bug
Issue History
2012-08-04 18:36Edward-sanNew Issue
2012-08-04 19:27Torr SamahoNote Added: 0004243
2012-08-04 19:28Torr SamahoStatusnew => feedback
2012-08-04 20:15WatermelonNote Added: 0004244
2012-08-04 22:54Edward-sanNote Added: 0004247
2012-08-04 22:54Edward-sanStatusfeedback => new
2012-08-04 23:08IvanNote Added: 0004248
2012-08-04 23:53Edward-sanNote Added: 0004249
2012-08-04 23:53Edward-sanNote Edited: 0004249bug_revision_view_page.php?bugnote_id=4249#r2335
2012-08-05 00:13Edward-sanNote Added: 0004250
2012-08-05 08:09Torr SamahoNote Added: 0004251
2012-08-05 08:10Torr SamahoNote Edited: 0004251bug_revision_view_page.php?bugnote_id=4251#r2337
2012-08-05 08:10Torr SamahoNote Revision Dropped: 4251: 0002336
2012-08-05 18:00Edward-sanNote Added: 0004275
2012-08-05 19:07DuskFile Added: secact.wad.zip
2012-08-05 19:08DuskNote Added: 0004276
2012-08-05 19:08DuskNote Edited: 0004276bug_revision_view_page.php?bugnote_id=4276#r2349
2012-08-05 21:54Edward-sanNote Added: 0004280
2012-08-06 08:36Torr SamahoStatusnew => closed
2012-08-06 08:36Torr SamahoResolutionopen => waiting for zdoom
2012-08-06 08:36Torr SamahoProduct Version1.0-beta => 98d
2012-08-06 11:13Edward-sanNote Added: 0004284
2012-08-06 11:13Edward-sanStatusclosed => feedback
2012-08-06 11:13Edward-sanResolutionwaiting for zdoom => reopened
2012-08-06 11:28Torr SamahoNote Added: 0004285
2012-08-06 11:28Torr SamahoAssigned To => Torr Samaho
2012-08-06 11:28Torr SamahoStatusfeedback => assigned
2012-08-13 08:28ZzZomboNote Added: 0004358
2013-05-25 00:43Edward-sanNote Added: 0006342
2013-05-25 00:44Edward-sanNote Edited: 0006342bug_revision_view_page.php?bugnote_id=6342#r3487
2013-05-26 14:24Edward-sanNote Added: 0006345
2013-05-26 14:36Edward-sanFile Added: thingact.diff
2013-05-26 14:37Edward-sanFile Deleted: thingact.diff
2013-05-26 14:37Edward-sanFile Added: thingact.diff
2013-05-26 14:49Edward-sanNote Edited: 0006345bug_revision_view_page.php?bugnote_id=6345#r3491
2013-05-26 14:49Edward-sanNote Edited: 0006345bug_revision_view_page.php?bugnote_id=6345#r3492
2014-11-14 02:49Edward-sanNote Added: 0010884
2014-11-14 10:28Edward-sanAssigned ToTorr Samaho => Edward-san
2014-11-14 10:29Edward-sanStatusassigned => needs review
2014-11-30 17:28cobaltStatusneeds review => needs testing
2014-11-30 17:28cobaltTarget Version => 1.4
2014-11-30 17:28cobaltDescription Updatedbug_revision_view_page.php?rev_id=6070#r6070
2014-11-30 17:28cobaltAdditional Information Updatedbug_revision_view_page.php?rev_id=6072#r6072
2014-11-30 17:28cobaltNote Added: 0011008
2015-03-25 01:49StrikerMan780Note Added: 0011884
2015-03-25 19:42DuskStatusneeds testing => resolved
2015-03-25 19:42DuskFixed in Version => 1.4
2015-03-25 19:42DuskResolutionreopened => fixed
2018-09-30 23:31Blzut3Statusresolved => closed

Notes
(0004243)
Torr Samaho   
2012-08-04 19:27   
Spectators can use teleports in general, so there must be something special about this. Please create a minimal example wad.
(0004244)
Watermelon   
2012-08-04 20:15   
Is it a teleport line special? Or an ACS_Execute[Always] that invokes a teleport somewhere?
(0004247)
Edward-san   
2012-08-04 22:54   
I sent a PM to ZzZombo, the author of the mappack about that.
(0004248)
Ivan   
2012-08-04 23:08   
Yeah you can't teleport at the ZE06 of Zombie Horde AFAIK. The megacorp building escape thing. I don't know how it teleports the players though.
(0004249)
Edward-san   
2012-08-04 23:53   
this script is the culprit in that case:


Script 2 (void) /* Teleport to the director's office */
{
If(CheckInventory("zombiemaker")) Teleport_NoFog(49, 1, 0);
Else Teleport_NoFog(100+PlayerNumber(), 1, 0);
}

that's an ACS_Execute line so probably can't be fixed by Zandronum.

The thing is that in ZM07 there's that green line that works fine, because it's assigned directly to Teleport_NoFog.

(0004250)
Edward-san   
2012-08-05 00:13   
Found out that near the door I indicated at the description there's a thing called Actor Enters Sector (type 9998), with Special: 71 (Teleport_NoFog). Probably spectators can't interact with it...
(0004251)
Torr Samaho   
2012-08-05 08:09   
(edited on: 2012-08-05 08:10)
Quote from Edward-san
that's an ACS_Execute line so probably can't be fixed by Zandronum.

Yes, Zandronum itself can't handle this.

Quote from Edward-san
Found out that near the door I indicated at the description there's a thing called Actor Enters Sector (type 9998), with Special: 71 (Teleport_NoFog). Probably spectators can't interact with it...

This is something Zandronum possibly can handle. If you create a minimal example wad I'll look into it.

(0004275)
Edward-san   
2012-08-05 18:00   
I can't create a new wad for now. I hope someone else can do this.
(0004276)
Dusk   
2012-08-05 19:08   
Attached a test-case wad with one test for every sector action.

(0004280)
Edward-san   
2012-08-05 21:54   
Hmm... only "above" and "below" parts are not bugged...
(0004284)
Edward-san   
2012-08-06 11:13   
Why did you close this and labeled this as 'waiting for zdoom'? The player can activate the teleports with no problems, just the spectators can't.
(0004285)
Torr Samaho   
2012-08-06 11:28   
Oops, I closed the wrong ticket (too many open tabs...).

Regarding this issue: I remembered that I explicitly prevented spectators from activating sector specials. This was necessary since spectators could activate gameplay relevant sector specials offline. This has to be revised so that spectators can activate a few selected specials but no other specials. I started to work on this, but noticed that this requires more changes than I want to sneak in before we release 1.0. I'll take care of this after 1.0's release.
(0004358)
ZzZombo   
2012-08-13 08:28   
Just to clarify, I'm not the author of the mappack and didn't release any maps for ZH.
(0006342)
Edward-san   
2013-05-25 00:43   
(edited on: 2013-05-25 00:44)
Quote
Hmm... only "above" and "below" parts are not bugged...


I have to correct this statement, because, after retesting it, only if I spectate offline I get that behavior, but if I connect online and stay spectated, or spectate after joining the game, I can't get any of the portals work.

It still happens in the last beta build.

(0006345)
Edward-san   
2013-05-26 14:24   
(edited on: 2013-05-26 14:49)
When it's called ASectorAction::CheckTrigger in the two Above/Below floors, the action special is 0 for the online spectators so they won't ever activate.

For offline, when i apply the attached patch, the offline spectators can activate all the Teleport actions except for 'Use' trigger, but I suppose it's okay.

(0010884)
Edward-san   
2014-11-14 02:49   
Okay, took a look today and understood a bit better the thing, thanks to Dusk's input. Pull request:'https://bitbucket.org/Torr_Samaho/zandronum-stable/pull-request/102/fixed-spectators-could-not-trigger-allowed/diff [^]'
(0011008)
cobalt   
2014-11-30 17:28   
Issue addressed by commit c74d086231a2: Fixed: Spectators could not trigger allowed action specials with sectors. The only exceptions are the 'Use' and the 'UseWall' action triggers (fixes 951)
Committed by edward_san [edward-san] on Thursday 20 November 2014 23:41:54

Changes in files:
 docs/zandronum-history.txt | 1 +
 src/g_shared/a_sectoraction.cpp | 6 +++---
 src/gamemode.cpp | 20 ++++++++++++++++++++
 src/gamemode.h | 1 +
 src/p_map.cpp | 28 ++--------------------------
 src/p_mobj.cpp | 8 ++------
 src/p_spec.cpp | 15 ++-------------
 src/sv_main.cpp | 4 +++-
 8 files changed, 34 insertions(+), 49 deletions(-)
(0011884)
StrikerMan780   
2015-03-25 01:49   
A map of mine uses a lot of Teleports with "Actor Hits Ceiling" and "Actor Hits Floor" actors, and it seems to work as a spectator now.