Hello,
It seems that if there are a fair amount of state jumps in actor definitions that the actor will desync and contribute to packet loss quite easily while playing online. I'm curious to find out if there's a way to reduce or even eliminate this pesky byproduct if ACS was used instead to directly manipulate the said actors and achieve the same affect, but without the state jumps or am I completely insane to even think such a thing?
It seems to me that ACS would have a harder time becoming out of sync as opposed to DECORATE, but I of course have no idea how each aspect is handled online. Hell, they may even be handled and processed the same way and you're screwed either way.
Can someone shed some light on this topic? Will a DECORATE-ACS hybrid result in less desyncs while playing online or is it all the same?
Best regards,
- Jason
How to reduce or even eliminate the affects of actor state jumps while online
Re: How to reduce or even eliminate the affects of actor state jumps while online
Any time you are calling information functions like A_JumpIf many times, whether it's DECORATE or ACS, there is potential for desync, since clients may have different information at that particular moment before the server corrects them (if it does).
Id say DECORATE and ACS are equally prone to it but I could be wrong.
What kind of effect are you trying to achieve, exactly?
Id say DECORATE and ACS are equally prone to it but I could be wrong.
What kind of effect are you trying to achieve, exactly?
Reinforcements: midgame Survival joining/respawning
Doom64: Unabsolved: Doom64 + Diablo II
ZandroSkins: a pack made by our community
AeniPuffs: 3D blood and bullet puff effects, free to use for your own mods
Squad Radio: a WASD-based radio chat menu, add your own custom sounds!
Mercenaries (on hold)

Doom64: Unabsolved: Doom64 + Diablo II
ZandroSkins: a pack made by our community
AeniPuffs: 3D blood and bullet puff effects, free to use for your own mods
Squad Radio: a WASD-based radio chat menu, add your own custom sounds!
Mercenaries (on hold)

Re: How to reduce or even eliminate the affects of actor state jumps while online
It's not exactly what I'm trying to achieve, but what I'm trying to fix.
While playing Ghouls vs Humans online, I notice a significant difference between how the classes play. Classes that are much more simpler in functionality (no state jumps; no actor thrusting; etc) will play much more smoother as opposed to classes that have a shit ton of the said features above.
The more complex classes will result in frequent desyncs and a sudden loss in packets -- problems that I don't otherwise have elsewhere.
Now this may just be something that you have to live with, I don't know. In terms of programming for online play, I know very little of how it all works.
I do know that other more-complex mods such as All Out War do not result in desyncs or a spike in packet loss, and if they do, it's very minuscule.
While playing Ghouls vs Humans online, I notice a significant difference between how the classes play. Classes that are much more simpler in functionality (no state jumps; no actor thrusting; etc) will play much more smoother as opposed to classes that have a shit ton of the said features above.
The more complex classes will result in frequent desyncs and a sudden loss in packets -- problems that I don't otherwise have elsewhere.
Now this may just be something that you have to live with, I don't know. In terms of programming for online play, I know very little of how it all works.
I do know that other more-complex mods such as All Out War do not result in desyncs or a spike in packet loss, and if they do, it's very minuscule.
Re: How to reduce or even eliminate the affects of actor state jumps while online
That just sounds like bad coding.
I wouldn't use as many state jumps or forced movement actions (unless it's A_Recoil) on a player actor as I would for say, a monster, because that's the player and that's your viewpoint for the entire game. A monster's location being corrected by a few map units after a brief ping spike usually isn't a big deal to most players.
Super Skulltag used a lot of state jumps in the player actor for things like visible weapons and swimming states, and usually things worked fine, except sometimes it appears a player holding a pistol is shooting rockets, or a player who's resurfaced from deep water continues to see their visor reflection, etc. Never actually checked to see what the net traffic from those jumps were but it was probably negligible next to all my other BANANER awful coding.
I wouldn't use as many state jumps or forced movement actions (unless it's A_Recoil) on a player actor as I would for say, a monster, because that's the player and that's your viewpoint for the entire game. A monster's location being corrected by a few map units after a brief ping spike usually isn't a big deal to most players.
Super Skulltag used a lot of state jumps in the player actor for things like visible weapons and swimming states, and usually things worked fine, except sometimes it appears a player holding a pistol is shooting rockets, or a player who's resurfaced from deep water continues to see their visor reflection, etc. Never actually checked to see what the net traffic from those jumps were but it was probably negligible next to all my other BANANER awful coding.
Reinforcements: midgame Survival joining/respawning
Doom64: Unabsolved: Doom64 + Diablo II
ZandroSkins: a pack made by our community
AeniPuffs: 3D blood and bullet puff effects, free to use for your own mods
Squad Radio: a WASD-based radio chat menu, add your own custom sounds!
Mercenaries (on hold)

Doom64: Unabsolved: Doom64 + Diablo II
ZandroSkins: a pack made by our community
AeniPuffs: 3D blood and bullet puff effects, free to use for your own mods
Squad Radio: a WASD-based radio chat menu, add your own custom sounds!
Mercenaries (on hold)
