Wheeled Vehicles - Don"t Work Over Internet
by Harvey Greensall · in Torque Game Engine · 12/19/2006 (1:19 pm) · 26 replies
Beware....Our wheeled vehicles DO NOT work over the internet.
If anyone can help me out I'd be eternally grateful.
If anyone can help me out I'd be eternally grateful.
#22
.. that was before I removed all physics calcs entirely from the client.. a luxury afforded by the turn-based nature of my game..
12/21/2006 (10:39 am)
Collisions in particular can cause problems, since the client and server may simulate the vehicles in a different order, which can sometimes very different collision results when 2 vehicles collide. Something I did about this was add an extra field to vehicles which told the client which vehicle it should be simulated after in the process list. After ghosting is done, the client can sort its process list so it's the same as the server's... that was before I removed all physics calcs entirely from the client.. a luxury afforded by the turn-based nature of my game..
#23
12/21/2006 (1:02 pm)
Did the wheeled vehicle code get modified at all?
#24
12/21/2006 (1:15 pm)
Brian- I'm not sure if that question was aimed at me? If it was then the answer is no, the process list juggling is all done in gameProcess.cc
#25
1) You are sending mismatched data (and sending it twice) in your packUpdate() and writePacketData() calls.
2) Your interpolation code is incorrect.
The third possibility is that there is an issue with unoptimized packUpdate() bit writes, which would tend to fill up your packets quickly, causing many packets to get skipped often. Eventually, the client will be so out of synch that when they DO get an update, they will be forced to warp to the new position to re-synch.
12/21/2006 (1:54 pm)
The more I watch this thread, the more it sounds as if it's one of two things:1) You are sending mismatched data (and sending it twice) in your packUpdate() and writePacketData() calls.
2) Your interpolation code is incorrect.
The third possibility is that there is an issue with unoptimized packUpdate() bit writes, which would tend to fill up your packets quickly, causing many packets to get skipped often. Eventually, the client will be so out of synch that when they DO get an update, they will be forced to warp to the new position to re-synch.
#26
I'll check all this over the Xmas break with my trusty code guy, but as far as I know the wheeled vehicle code is out of the box. There are a load of changes to add firing ability in script etc. and it also uses the advanced camera resource etc. plus other bits and bobs.
Over the break and into early next year, we're going to put together a fresh version of the engine, and slowly re-introduce all our changes etc. Keep an eye on it and keep testing it at various stages to try and find out when we're introducing this problem.
I'm just glad so many of you have confirmed that it's something we're not understanding, or not doing, rather than a actual problem with the wheeled vehicles....It's a big relief.
Thanks again, it's much appreciated.
12/21/2006 (3:38 pm)
Hi Guys. Thanks for all your comments.I'll check all this over the Xmas break with my trusty code guy, but as far as I know the wheeled vehicle code is out of the box. There are a load of changes to add firing ability in script etc. and it also uses the advanced camera resource etc. plus other bits and bobs.
Over the break and into early next year, we're going to put together a fresh version of the engine, and slowly re-introduce all our changes etc. Keep an eye on it and keep testing it at various stages to try and find out when we're introducing this problem.
I'm just glad so many of you have confirmed that it's something we're not understanding, or not doing, rather than a actual problem with the wheeled vehicles....It's a big relief.
Thanks again, it's much appreciated.
Harvey Greensall