Zandronum Chat @
Get the latest version: 3.0
Source Code

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000331Zandronum[All Projects] Suggestionpublic2011-03-18 02:312017-09-17 12:19
Assigned To 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Summary0000331: Improved client-side prediction for Sector_SetFriction
DescriptionThe movement is choppy.
Additional InformationA classic CTF map from the ZDCTF map packs (MAP15: Sewers Smell Bad) utilizes this effect. Special thanks to Spirit Soldier for reporting this issue.
Attached Files? file icon sector_setfriction_test.wad [^] (1,008 bytes) 2011-03-18 02:34
? file icon sector_setfriction_test_02.wad [^] (1,536 bytes) 2015-06-06 14:02

- Relationships
related to 0000130resolvedTorr Samaho client prediction is sometimes wrong 

-  Notes
User avatar (0001921)
unknownna (updater)
2011-07-18 08:09

D2CTF4 also uses this effect. It works well in ZDaemon.
User avatar (0006882)
Watermelon (developer)
2013-08-01 14:19

This bug is pretty annoying in idl map15 and kills it from being played. Any easy solutions to this?
User avatar (0007266)
Qent (updater)
2013-09-22 15:26
edited on: 2013-09-22 15:29

I believe that the problem is Sector_SetFriction's not working at all when used on a linedef. The client predicts that it should have an effect, but it does not. It works as expected (and client prediction is perfect) when used from an OPEN script.

User avatar (0012542)
unknownna (updater)
2015-06-06 14:00

Quote from Qent
It works as expected (and client prediction is perfect) when used from an OPEN script.

Indeed, you're right.

Quote from Qent
I believe that the problem is Sector_SetFriction's not working at all when used on a linedef.

I'm going to assume that the client isn't informed of linedef specials in order to save bandwidth. In that case, there's no need to improve the prediction, clients simply need to know of linedef specials when connecting to servers.
User avatar (0018278)
Leonard (reporter)
2017-09-11 19:02

Pull request.

Sector_SetFriction on linedefs change the sector's friction but doesn't actually enable it with the sector special:
p_spec.cpp, line 2444:

        sectors[s].friction = friction;
        sectors[s].movefactor = movefactor;
        if (alterFlag)
            // When used inside a script, the sectors' friction flags
            // can be enabled and disabled at will.
            if (friction == ORIG_FRICTION)
                sectors[s].special &= ~FRICTION_MASK;
                sectors[s].special |= FRICTION_MASK;

            // [BC] If we're the server, update clients about this friction change.
            if ( NETWORK_GetState( ) == NETSTATE_SERVER )
                SERVERCOMMANDS_SetSectorFriction( s );

But the server informs connecting clients of the friction change regardless of the friction flag as seen in the pull request.
User avatar (0018300)
Torr Samaho (administrator)
2017-09-17 12:18

Please see my comment on bitbucket.

Issue Community Support
Only registered users can voice their support. Click here to register, or here to log in.
Supporters: unknownna Esum WaTaKiD Soul rosking swordgrunt roman6a DevilHunter Combinebobnt Marcaek
Opponents: No one explicitly opposes this issue yet.

- Issue History
Date Modified Username Field Change
2011-03-18 02:31 unknownna New Issue
2011-03-18 02:34 unknownna File Added: sector_setfriction_test.wad
2011-03-18 07:33 unknownna Additional Information Updated View Revisions
2011-04-30 06:10 unknownna Priority normal => high
2011-07-18 07:50 unknownna Relationship added related to 0000130
2011-07-18 08:09 unknownna Note Added: 0001921
2013-08-01 14:19 Watermelon Note Added: 0006882
2013-09-18 16:53 Watermelon Assigned To => Watermelon
2013-09-18 16:53 Watermelon Status new => confirmed
2013-09-22 15:26 Qent Note Added: 0007266
2013-09-22 15:29 Qent Note Edited: 0007266 View Revisions
2014-05-05 22:28 Watermelon Assigned To Watermelon =>
2014-10-09 00:17 Watermelon Assigned To => Watermelon
2014-10-09 00:17 Watermelon Status confirmed => assigned
2014-10-27 02:09 Watermelon Assigned To Watermelon =>
2014-10-27 02:09 Watermelon Status assigned => feedback
2015-06-06 14:00 unknownna Note Added: 0012542
2015-06-06 14:00 unknownna Status feedback => new
2015-06-06 14:02 unknownna File Added: sector_setfriction_test_02.wad
2017-09-11 18:55 WaTaKiD Status new => needs review
2017-09-11 19:02 Leonard Note Added: 0018278
2017-09-17 12:18 Torr Samaho Note Added: 0018300
2017-09-17 12:19 Torr Samaho Status needs review => feedback

Questions or other issues? Contact Us.


Copyright © 2000 - 2017 MantisBT Team
Powered by Mantis Bugtracker