Modify

Ticket #1505 (closed bug: fixed)

Opened 2 years ago

Last modified 2 years ago

Fix multisync

Reported by: Per Owned by: Buginator
Priority: normal Milestone: 2.3.0
Component: Engine: Networking Version: git/master
Keywords: sync check network Cc:
Blocked By: Blocking:
Operating System: All/Non-Specific

Description

Offscreen updates did not seem to work anymore. I traced this back to offscreen updates only setting pos.x and pos.y on a droid for most orders, and those are promptly overwritten next frame by sMove.fx and sMove.fy which are not updated. So I rewrote the code a bit to only use the floating point values. I also made it issue move command for onscreen changes when in guard order. Not sure why we do not do this for all orders, but at least guard should also be safe. DORDER_NONE is rarely used anymore.

Attachments

syncfix.diff (10.3 KB) - added by Per 2 years ago.
Should remove the asserts before committing to 2.3
multisyncfix2.diff (11.1 KB) - added by Per 2 years ago.
New version. Untested in MP yet.

Change History

Changed 2 years ago by Per

Should remove the asserts before committing to 2.3

comment:1 Changed 2 years ago by Per

  • Status changed from new to closed
  • Resolution set to fixed

(In [9579]) Fix offscreen updates, they were only setting droid pos.x and pos.y for most orders, and those are promptly overwritten next frame by sMove.fx and sMove.fy which are not updated. So I rewrote the code a bit to only use the floating point values. This closes ticket:1505

comment:2 Changed 2 years ago by Buginator

Whoops, didn't see this ticket before. ticket:1516 was made with the actual crashes, but game was crashing left and right. :(

When I get some more time, I will dig deeper into this patch, and see why it is so unstable for me.

comment:3 Changed 2 years ago by Per

  • Status changed from closed to reopened
  • Resolution fixed deleted

comment:4 Changed 2 years ago by Per

  • Status changed from reopened to assigned
  • Owner set to Buginator

comment:5 Changed 2 years ago by Per

I tested it quite a bit, and it worked fine for me. I did not up the network version, so if you forgot to use the patch on both sides, it would cause this problem.

comment:6 Changed 2 years ago by Buginator

I did svn up on both, and was testing my other stuff with reverse merging that patch before.

If I didn't reverse it, then it would cause all kinds of strange bugs on either windows or linux.

As I said, I will check into it some more as soon as I get more time.

Changed 2 years ago by Per

New version. Untested in MP yet.

comment:7 Changed 2 years ago by Per

  • Status changed from assigned to closed
  • Resolution set to fixed

(In [9681]) 2.3: Fix offscreen multisync for most orders, that was being overwritten immediately after being received. Closes ticket:1505 and closes ticket:1516

View

Add a comment

Provide an email address (will not be publicly visible) in the Author field or register an account (uses your forum account).

Modify Ticket

Action
as closed
The resolution will be deleted. Next status will be 'reopened'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.