Twitter  YouTube  E-Mail  RSS
The One Man MMO Project
The story of a lone developer's quest to build an online world :: MMO programming, design, and industry commentary
Zombie Movers, Teleporters and Other Miscellaneous Desyncs
By Robert Basler on 2019-04-07 17:55:21
Homepage: email:one at onemanmmo dot com

I'm still working on desyncs - units having different health or position or orientation on the server and clients. Unit movement replication is the second most complicated part of Miranda, so everything I'm doing I usually have to do twice. I do a bunch of analysis, then an initial implementation, then I find a few things I'm not handling properly and then I do it all again. It is slow, but I am making progress.

[Standalone unit path replication system at work.]

Well mostly. I had the flu for a week and a half. I kept trying to get back to work because I thought I was better, but it turned out I was too fuzzy and just couldn't do it.

Once I was better I built a new standalone unit path replication system. The old path replication system was nice because it used the replication system I use for everything else in the game. Over time I realized that it was just never going to work correctly because it just wasn't designed to do the job the game needed it to do. The best thing is that I got to remove a lot of messy code that tried to work around all the places where it just didn't work. Anything that allows me to simplify this beast is very welcome.

Last week I removed a whole bunch of desyncs caused by the game effectively throwing up its hands any time something goes wrong while a unit is moving. A lot of different problems were handled by calling the optimistically named StopUnit and that was generally the wrong thing to do. I'm going to be testing the heck out of all those changes next week.

I think I've also fixed the problem that resulted in tanks teleporting during big battles. That's something else I'll be testing next week.

Once those are debugged, that should be the end of work on desyncs.

New Comment

Cookie Warning

We were unable to retrieve our cookie from your web browser. If pressing F5 once to reload this page does not get rid of this message, please read this to learn more.

You will not be able to post until you resolve this problem.

Comment (You can use HTML, but please double-check web link URLs and HTML tags!)
Your Name
Homepage (optional, don't include http://)
Email (optional, but automatically spam protected so please do)
What is 5 multiplied by 1? (What's this?)

  Admin Log In

[Home] [Blog] [Video] [Shop] [Press Kit] [About]
Terms Of Use & Privacy Policy