Closed Skaronator closed 10 years ago
Could you explain why it's optimizing something, giving a simple example ? I did not understand the benefit in 1.8 since IMHO it induces more lag on server side since it's at script level (I understood that a client that need to broadcast a variable, unicast its variable to the server then the server broadcast it to everyone, but maybe I am wrong). And I don't even mention that this can't be properly filtered via BE.
The main problem IMHO is dayz mod(s), is that some variables are broadcasted to everyone (via PV and even more via networked SV) whilst it does not produce any graphical or sound effects for other players. Removing all these unneeded updates would save a lot of power on server side. Maybe it's also what you mean in this issue.
The other thing to consider is how often a PV is used. For example, how many times per second a player is dragging a corpse? I think that the result is close to zero. So why optimizing it.
The proper and more pragmatic way to do this optimization, is for example, to put 1 "" in publicvariable.txt BE filter, see how the logs are growing, and say "let's try to divide the volume per 2 by tweaking the code". Same for setvariable.txt.
A few example would be:
Same with
Current way (example) Repair 1 Part of a Vehicle >> broadcast to every player (would be 54 other player on my Server) >> 1 Part Repaird
New way would be Repair 1 Part of a Vehicle >> Send the Var to Server >> Server send the Var back but just to 1 Player instead of 55
ok it's just replacing PV by PVS (not PVC) when the event should be processed by the server only (repair is a good example). But all these optimizations have been done in 1.7. In 1.8 the idea was to replace all PV by PVS + some server script + PVC , but there is always some lag on the server (several seconds, maybe 1 minute if the server need a restart), so it's not suitable for realtime events.
Example: vehicle handle damage, sometime the setHit will be done in real time by the vehicle's owner, and other times it will be done by the server with a delay. This can lead to some issue, no?
I don't have any issue with a big delay in PVS+PVC, for example I've a function in my admin tool to check the ServerFPS, its send the Server (via PVS) the Request and the Server answere (via PVC) the FPS. I have currently 55 Player on my Server and the Complete system need normally not over 1 secound. Here is the result with 55 Player:
After Restart (with 50 Player and 5 min Uptime)
You were right. I did the tests on my server : 0.7 seconds average, 1 second at 95th percentile, 7 seconds for the worse case, during the 30 last minutes of a 3:30 hour session at 30 players. The result is not as good as yours, but still fine enough to do what you plan to do.
@Skaronator Lets do this for 1.0.5 unless you think you can get it done soon.
Make it sense to work on it because A3 Epoch will be released soon.
Please dont stop working on this, would much appreciate it!
OT: Will the developement stop completely for Arrma2 DayZ Epoch when your Arma3 mod comes out?
@Skaronator If we do this for dayz epoch that is where it stays, A3 epoch is not using any code from dayz.
I am attempting to focus only on A3 development from now on but will still release builds for dayz epoch if we have something to release. Basically if the community wants dayz epoch updates they will need to start contributing.
Thanks for the info vbawol! If my programming skills gets a bit better i'm willing to help where i can
Pullrequest https://github.com/vbawol/DayZ-Epoch/pull/978
АРМА3 Epoch this month ?
@ispan55 no not likely. We are not going to set any release dates until we have something we are ready to show off.
Alright mostly everything is done, now it need testing ;)
testers report everything appears to be functioning as intended.
Working in Progress
Checkout
Scripts Done