Igiss,Aug 16 2006, 11:07 AM Wrote:Are you sure that removing thrusters would help? I'm almost sure that not. If the game has to calcuate each shot, thruster on/off doesn't influence connection and server speed even in most minor way.
Evolution values won't work for Discovery. Many reasons here, I'm not intended to get deeper into this. Again, I spent countless hours trying to find a solution. But I never found one. Tried ship maneuverability values from many mods.
What I'm absolutely sure is that mass doesn't influence spinning in any way. Feels that it even gets worse if you raise the mass, but I have no proof. Mostly it's all the same.
[snapback]30503[/snapback]
I am 1,000% sure that the thrusters are helping cause lag. Let me explain further.
Online gaming has had the most netcode issues when dealing with movement and speed in online gaming, be it console, PC or Hand-held gaming.
The NetCode in freelancer is designed based on the predictable behaviour of the NPCs. The code is alitle more lenient and well designed for player actions, thankfully. Unfortunately however, when you change things in the game (For instance a mod) things become much less predictable, making the netcode inefficient in most cases. Granted the thrusters may not be the cause of lag, however removing the thrusters from NPC ships will greatly reduce the lag. For Instance:
Chain of events:
I'm in battleship sitting still attacking Liberty Police
Liberty Police Beging returning fire
Liberty Police Read ship as being the size of a fighter and not a capital ship
Result: Police repeatedly ram ship (spinning problem)
Secondary Result: Police AI begins making thruster compensations for the oddity of the situation. Not only is the ship mis-sized, but it is sitting still (The AI in Freelancer is designed to combat moving targets) Alot of times this results in the AI circling the capital ship, making large numbers of pointless thrust manuvers.
Why Does Thrusting Cause Lag?
Thrusting causes lag due to the fact that when the AI continues to rapidly do it in extremely random patterns (Completely unlike player behaviour, which is much more conservative) the server has to try to compensate by sending out to every player in that system these jumps in distance and changes in direction. This causes lag because they are not constants. For example, if the NPC ship is moving within its minimum and max speeds that the game understands perfectly, there is no issue. However when you add a strange item that the AI is not equipped to handle (Capital ships) the AI responds to them in the forementioned way. This causes extra lag on the server, making latency worse.
I noticed this because every time I am in a fight with the AI (fighters specificly) and there is another person in the system, the server begins to lag once the fighters begin their "Thrust" compensation because they don't understand the dimensions of the ship I am in and the fact that I am sitting still.
My Current Remedy for this:
Currently to stop the lag (And this actually works) I have to start moving my battleship, once I begin moving all the fighters fall in behind me like they would a fighter that is moving and return to their normal AI coding which is predictable for the server and doesn't cause latency issues.
Fixes that don't force players to 'move':
Remove Thrusters
Completely ReCode the entire AI Process
Removing thrusters is definately the easier, and lesser of two evils.
I'll be more than happy to answer any questions.
EDIT:
Part of the thruster lag issue (main part I forgot to mention) is the fact that when the NPCs do this repeatedly, they move large distances in an extremely short amount of time (When server is lagging and you see NPC's warp all over and you can't hit them, that is what this is) and not every server is capable of handling that kind of load. Hence why I believe their should be a option to enable or disable thrusters for NPC's for the server. Trust me, there will be alot more happy people, and if nothing changes they can just toggle the thrusters back on.