Closed Cyruz143 closed 1 year ago
Step 1:
Step 2:
Maybe use "BIS_fnc_setOvercast". According to the BI wiki the overcast value distributes evenly across the network but does not for JIPs.
"0 setovercast 1; (serverside) ForceWeatherChange; (applied afterwards on server)
--> syncs weatherstate from server to clients including simulweatherchange.
to be checked: JIP and nextweatherchange values in MP (seems still strange)"
I don't know if this is the best idea, wouldn't proper synchronization require using skipTime
a bunch (as setOvercast has to compute the volumetric clouds over a period of time) and simulWeatherSync
which takes a second to compute?
I agree it's a pain, at the moment we're skipping back 24, then forward again.
But without it you're not really synchronizing weather properly, hopefully someone has an idea about how to progress with this.
But without it you're not really synchronizing weather properly,
Well Arma 3 weather system is completely broken; maybe syncing overcast is simply beyond what's feasable without access to the engine.
Just had a quick play. Started a mission at 0 overcast, ran
if (isServer) then {[1] call BIS_fnc_setOvercast;};
This updated on both clients connected, I dc'd, reconnected, had the correct overcast levels. Then fully closed arma to make sure it wasn't being cached anywhere and joined again, still the correct values.
Perhaps BI fixed this?
Can someone try and replicate what @Cyruz143 did on their server. If someone is able to replicate and it is indeed fixed, a note needs to be made on the BI wiki.
Keep in mind the following recent test reports on setOvercast for MP and other commands/features as noted here Source: 0018237: Weather desync issues [PRIMARY REPORT]
Don't forget to up-vote: http://feedback.arma3.com/view.php?id=18237#c94352
Today's dev branch had some weather sync fixes in, no specifics though, will see if further information can be found.
Edit: The target was this issue: http://feedback.arma3.com/view.php?id=3028. Some more details:
1.48 said it added some weather synchronization Has anyone tested this?
If the ticket in my previous post is to be believed it looks like post 1.48 the following now works correctly.
Nothing about rain and the following things don't sync at all:
Will try and find some time to do proper testing on this.
Edit: Currently we've disabled ace_weather_syncWind
due to a nasty bug (https://github.com/acemod/ACE3/issues/1708) and ace_weather_syncMisc
as it seems to remove fog from the clients even when set on the server.
Did some quick tests on this tonight with the following settings:
class ace_weather_enableServerController {
value = 1;
typeName = "BOOL";
force = 1;
};
class ace_weather_useACEWeather {
value = 0;
typeName = "BOOL";
force = 1;
};
class ace_weather_syncRain {
value = 0;
typeName = "BOOL";
force = 1;
};
class ace_weather_syncWind {
value = 0;
typeName = "BOOL";
force = 1;
};
class ace_weather_syncMisc {
value = 0;
typeName = "BOOL";
force = 1;
};
BIS_fnc_setOvercast
works on mission start and for all clients (inc JIP) when changed mid-mission (executed server-side only)
BIS_fnc_setFog
works on mission start and for all clients (inc JIP) when changed mid-mission (executed server-side only)
Both of these have a slight variation between clients (around 0.00005 difference).
Not sure if having the weather controller running will impact this when values are set to zero for the specific sync classes.
Tried playing with this, vanilla overcast sync in 1.54 is still not good.
http://feedback.arma3.com/view.php?id=18237
The simple version is that the client will set their overcastForcast
to the server's current instead of server's forcast, so they will always lag behind. Worse, the client has a maximun rate of change lower than the server.
Setting the slider from 0 to 1 in 30 min, will have a rate of change of about 1/1800 seconds. Clients can barley do half that so their overcast
values diverge pretty quickly.
0 setovercast 0.5;
forceweatherchange;
Has perfect effects and sync, but introduces a stutter that is very noticable, so is impossible to use.
TBH, this is something BIS should fix, I don't see anyway to script this. And it is a real shame because overcast
is used in things like temp calculation.
The interim solution is going to be for mission makers to limit the rate of change of overcast;
Closing due to age, inactivity or already solved. May be re-opened if the issue is still present, even better just open a new up-to-date Issue.
As discussed with Ruthberg. ACE2 port where setOvercast wasn't a command so this needs adding to current weather module.