MantisBT - Zandronum |
View Issue Details |
|
ID | Project | Category | View Status | Date Submitted | Last Update |
0001097 | Zandronum | [All Projects] Bug | public | 2012-10-02 03:25 | 2014-06-12 20:29 |
|
Reporter | unknownna | |
Assigned To | | |
Priority | low | Severity | trivial | Reproducibility | always |
Status | feedback | Resolution | reopened | |
Platform | | OS | | OS Version | |
Product Version | 1.0 | |
Target Version | | Fixed in Version | | |
|
Summary | 0001097: View bobs if bumping into server-side thing |
Description | The view will bob up and down if you run into a SOLID server-side thing that is not there on the client-end. |
Steps To Reproduce | 1. zandronum.exe -file thing_desync_02.wad -playdemo 2012.10.01_08.31.53_thing_desync_02.cld |
Additional Information | thing_desync_02.wad
2012.10.01_08.31.53_thing_desync_02.cld |
Tags | No tags attached. |
Relationships | related to | 0000817 | assigned | Torr Samaho | Thing x/y/z position desync between client/server |
|
Attached Files | |
|
Issue History |
Date Modified | Username | Field | Change |
2012-10-02 03:25 | unknownna | New Issue | |
2012-10-02 03:25 | unknownna | Status | new => confirmed |
2012-10-02 04:01 | ZzZombo | Note Added: 0004908 | |
2012-10-02 17:51 | Torr Samaho | Note Added: 0004916 | |
2012-10-02 17:51 | Torr Samaho | Note Edited: 0004916 | bug_revision_view_page.php?bugnote_id=4916#r2673 |
2012-10-02 17:51 | Torr Samaho | Note Revision Dropped: 4916: 0002672 | |
2012-10-02 17:52 | Torr Samaho | Status | confirmed => closed |
2012-10-02 17:52 | Torr Samaho | Resolution | open => no change required |
2012-10-03 05:00 | unknownna | Note Added: 0004923 | |
2012-10-03 05:00 | unknownna | Status | closed => feedback |
2012-10-03 05:00 | unknownna | Resolution | no change required => reopened |
2012-10-03 05:05 | unknownna | Status | feedback => closed |
2012-10-03 05:05 | unknownna | Resolution | reopened => no change required |
2012-10-03 18:11 | Torr Samaho | Note Added: 0004935 | |
2012-10-03 18:18 | Torr Samaho | Status | closed => feedback |
2012-10-03 18:18 | Torr Samaho | Resolution | no change required => reopened |
2012-10-04 02:41 | unknownna | Note Added: 0004943 | |
2012-10-04 02:41 | unknownna | Status | feedback => new |
2012-10-04 03:53 | ZzZombo | Note Added: 0004944 | |
2012-10-04 04:46 | unknownna | Relationship added | related to 0000817 |
2012-10-04 19:58 | Torr Samaho | Note Added: 0004954 | |
2012-10-05 04:25 | unknownna | Note Added: 0004959 | |
2012-10-05 04:25 | unknownna | Note Edited: 0004959 | bug_revision_view_page.php?bugnote_id=4959#r2699 |
2012-10-05 05:18 | unknownna | Note Edited: 0004959 | bug_revision_view_page.php?bugnote_id=4959#r2700 |
2014-06-12 20:29 | Watermelon | Note Added: 0009166 | |
2014-06-12 20:29 | Watermelon | Status | new => feedback |
Notes |
|
|
It's a bug in the mod if it spawns solid or visible server-side actor. It's even stated in ZDoom Wiki. |
|
|
|
Yes, it's not allowed to use SERVERSIDEONLY like this:
Quote from "Skulltag Version History.txt" Added new DECORATE actor flag SERVERSIDEONLY. The clients don't spawn such actors, only the server does. Therefore, spawning or manipulating these actors does not need network bandwidth. Only use it on actors that are always invisible and don't block the movement of players. [Torr Samaho]
|
|
|
|
Quote from Torr Samaho Yes, it's not allowed to use SERVERSIDEONLY like this.
FYI, none of the actors in the example WAD use SERVERSIDEONLY. |
|
|
|
SERVERSIDEONLY aside, actors that exist on the server but not on the clients shouldn't exist (and will inevitably cause problems if they are solid). How did you manage to create an actor that's only on the server without SERVERSIDEONLY? |
|
|
|
The actor is spawned on the client-end, but once you desync the client-side and server-side positions, the view bob issue will occur if you bump into the server-side actor. Here's the DECORATE code:
Actor DummyPlayer 32767
{
Health 2147483647
Radius 16
Height 56
Mass 100
+SOLID
+SHOOTABLE
+DROPOFF
+SLIDESONWALLS
+CANPASS
+FLOORCLIP
+WINDTHRUST
+TELESTOMP
+NOBLOCKMONST
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx ("ServerSideActor", 0, 0, 0, 0, 0, 0, 0, 0, 0)
TNT1 A 0 A_SpawnItemEx ("ClientSideActor", 0, 0, 0, 0, 0, 0, 0, SXF_CLIENTSIDE, 0)
TNT1 A 1
Loop
}
}
Actor ServerSideActor
{
+NOBLOCKMAP
+NOGRAVITY
States
{
Spawn:
PLAY A 2 Bright
Stop
}
}
Actor ClientSideActor
{
Translation 2
+NOBLOCKMAP
+NOGRAVITY
States
{
Spawn:
PLAY A 2 Bright
Stop
}
} |
|
|
|
Alright, I pretty sure it's an old Skulltag bug (at least of v98d). Zombie Horde's pushable items tends to desync after a while between clients and server and your viewport bobs if you're bumping into real ones. To workaround that you can call A_Recoil(0) in Idle or Spawn state of the actor definition. |
|
|
|
Quote from unknownna The actor is spawned on the client-end, but once you desync the client-side and server-side positions, the view bob issue will occur if you bump into the server-side actor. Ah, so when you say "server-side" you mean an actor that is spawned by the server on the server and on the clients (which actually just is a normal actor to me, as all actors without CLIENTSIDEONLY or SERVERSIDEONLY should be there on clients and server). So the bug here is not the view bobbing, this is just a symptom of the actual bug, i.e. the desync of the actor position on clients and server.
BTW: Since ClientSideActor is client side, all restrictions for CLIENTSIDEONLY actors apply. For instance, it may not be solid. |
|
|
(0004959)
|
unknownna
|
2012-10-05 04:25
(edited on: 2012-10-05 05:18) |
|
Quote from Torr Samaho Ah, so when you say "server-side" you mean an actor that is spawned by the server on the server and on the clients (which actually just is a normal actor to me, as all actors without CLIENTSIDEONLY or SERVERSIDEONLY should be there on clients and server).
Yes.
Quote from Torr Samaho So the bug here is not the view bobbing, this is just a symptom of the actual bug, i.e. the desync of the actor position on clients and server.
It is a symptom of the actual bug, but it feels buggy when the client bobs its view up and down when you're not pressing a movement key, e.g., +forward.
Quote from Torr Samaho Since ClientSideActor is client side, all restrictions for CLIENTSIDEONLY actors apply. For instance, it may not be solid.
I know, but the ClientSideActor/ServerSideActor is not solid. Only the DummyPlayer is solid. But your client will think that the ClientSideActor is solid once the DummyPlayer x/y/z positions desync between the client and server.
|
|
|
|
|