Difference between revisions of "setRain"

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "Category:Scripting Commands ArmA2" to "Category:Scripting Commands Arma 2")
 
(68 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Command|Comments=
+
{{RV|type=command
____________________________________________________________________________________________
 
  
| ofpr |Game name=
+
|game1= ofp
 +
|version1= 1.75
  
|1.75|Game version=
+
|game2= ofpe
 +
|version2= 1.00
  
|eff= global |Multiplayer Effects=
+
|game3= arma1
 +
|version3= 1.00
  
|exec= server |Exec=
+
|game4= arma2
____________________________________________________________________________________________
+
|version4= 1.00
  
| Set rain density smoothly over the given transition time (in seconds). A transition time of zero means an immediate change.
+
|game5= arma2oa
 +
|version5= 1.50
 +
 
 +
|game6= tkoh
 +
|version6= 1.00
 +
 
 +
|game7= arma3
 +
|version7= 0.50
 +
 
 +
|gr1= Environment
 +
 
 +
|eff= global
 +
 
 +
|serverExec= server
 +
 
 +
|descr= Sets rain density smoothly over the given transition time. A transition time of zero means an immediate change.
 
A rain density of zero is no rain, one is maximum rain. Rain is not possible when [[overcast]] is less than 0.7.
 
A rain density of zero is no rain, one is maximum rain. Rain is not possible when [[overcast]] is less than 0.7.
  
{{Feature arma3 | Since {{arma3}} this command is MP synchronised:
+
{{Feature | arma3 |
* If executed on server, the changes will propagate globally.
+
Since {{arma3}} this command is multiplayer synchronised:
* If executed on client, the effect is temporary and will soon change to the server setting.
+
* if executed on the server, the changes will propagate globally.
Minimum [[overcast]] needed for rain in {{arma3}} is '''0.5'''.}}|DESCRIPTION=
+
* if executed on a client, the effect is local, temporary and will soon change to the server setting.
____________________________________________________________________________________________
+
Minimum [[overcast]] needed for rain in {{arma3}} is '''0.5'''.
 +
}}
 +
 
 +
{{Feature|important|
 +
Alternative syntaxes ({{Link|#Syntax 2}} and {{Link|#Syntax 3}}):
 +
* set rain particle params. Rain particles params are client-side params and are ignored on dedicated server. Use helper function [[BIS_fnc_setRain]] if sync is needed in Multiplayer
 +
* have a '''[[Multiplayer Scripting#Locality|local]]''' {{Icon|localeffect|32}} effect
 +
}}
 +
 
 +
|mp= Prior to {{arma3}}, each client and the server could have different rain values.
 +
 
 +
|s1= time [[setRain]] rain
 +
 
 +
|p1= time: [[Number]] - transition time in seconds to the new value
 +
 
 +
|p2= rain: [[Number]] - new rain value in range 0..1.
 +
 
 +
|r1= [[Nothing]]
 +
 
 +
|s2= {{Icon|localeffect|32}} [[setRain]] rainParams
  
| time [[setRain]] rain |SYNTAX=
+
|s2since= arma3 2.08
  
|p1= time: [[Number]] - transition time to the new value in seconds |PARAMETER1=
+
|p21= rainParams: [[Array]] - array of custom [[Arma 3: CfgWorlds Config Reference#class RainParticles | {{hl|RainParticles}}]] params - see [[rainParams]]. Use empty array [] to reset to default config values
  
|p2= rain: [[Number]] - new rain value in range 0...1 |PARAMETER2=
+
|s3= {{Icon|localeffect|32}} [[setRain]] config
  
| [[Nothing]] |RETURNVALUE=
+
|s3since= arma3 2.08
____________________________________________________________________________________________
 
 
 
|x1= <code>60 [[setRain]] 1;</code> |EXAMPLE1=
 
  
|x2= Force no rain: <code>0 [[setRain]] 0;
+
|p41= config: [[Config]] - config path to a custom class, which contains [[Arma 3: CfgWorlds Config Reference#class RainParticles | {{hl|RainParticles}}]] class. Use [[configNull]] to reset to default config values
[[forceWeatherChange]];
 
999999 [[setRain]] 0;</code> |EXAMPLE2=
 
____________________________________________________________________________________________
 
| mp = Pre-Arma 3, each client and the server could have different rain values. |Multiplayer=
 
  
| [[overcast]], [[setOvercast]], [[rain]], [[nextWeatherChange]], [[forceWeatherChange]], [[setFog]]  |SEEALSO=
+
|x1= <sqf>60 setRain 1;</sqf>
}}
 
  
<h3 style="display:none">Notes</h3>
+
|x2= Force no rain:
<dl class="command_description">
+
<sqf>
<!-- Note Section BEGIN -->
+
0 setRain 0;
 +
forceWeatherChange;
 +
999999 setRain 0;
 +
</sqf>
  
<!-- Note Section END -->
+
|x3= Snow like effect (Since {{arma3}} v2.08):
</dl>
+
<sqf>
 +
0 setOvercast 1;
 +
0 setRain 1;
 +
0 setFog 0.1; // snow affects visibility at distance
 +
setHumidity 0.9; // don't want to see dust clouds
 +
enableEnvironment [false, true]; // don't want to see snakes and butterflies either
 +
forceWeatherChange;
 +
setRain [
 +
"a3\data_f\rainnormal_ca.paa", // rainDropTexture
 +
1, // texDropCount
 +
0.01, // minRainDensity
 +
15, // effectRadius
 +
0.1, // windCoef
 +
2, // dropSpeed
 +
0.5, // rndSpeed
 +
0.5, // rndDir
 +
0.02, // dropWidth
 +
0.02, // dropHeight
 +
[0.1, 0.1, 0.1, 1], // dropColor
 +
0.1, // lumSunFront
 +
0.1, // lumSunBack
 +
5.5, // refractCoef
 +
0.3, // refractSaturation
 +
true, // snow
 +
false // dropColorStrong
 +
];
 +
</sqf>
  
<h3 style="display:none">Bottom Section</h3>
+
|x4= After 2.10
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
+
<sqf>
[[Category:Scripting Commands OFP 1.96|{{uc:{{PAGENAME}}}}]]
+
0 setOvercast 1; 
[[Category:Scripting Commands OFP 1.99|{{uc:{{PAGENAME}}}}]]
+
0 setRain 1;
[[Category:Scripting Commands ArmA|{{uc:{{PAGENAME}}}}]]
+
0 setFog 0.1; 
[[Category:Scripting Commands Arma 2|{{uc:{{PAGENAME}}}}]]
+
setHumidity 0.95;
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
+
enableEnvironment [false, true];
[[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]]
+
forceWeatherChange;
[[Category:Command_Group:_Environment|{{uc:{{PAGENAME}}}}]]
+
[
 +
"a3\data_f\snowflake4_ca.paa", // rainDropTexture 
 +
4, // texDropCount 
 +
0.01, // minRainDensity 
 +
25, // effectRadius 
 +
0.05, // windCoef 
 +
2.5, // dropSpeed 
 +
0.5, // rndSpeed 
 +
0.5, // rndDir 
 +
0.07, // dropWidth 
 +
0.07, // dropHeight 
 +
[1, 1, 1, 0.5], // dropColor 
 +
0.0, // lumSunFront 
 +
0.2, // lumSunBack 
 +
0.5, // refractCoef 
 +
0.5, // refractSaturation 
 +
true, // snow 
 +
false // dropColorStrong 
 +
]  
 +
call BIS_fnc_setRain;
 +
</sqf>
  
<!-- CONTINUE Notes -->
+
|seealso= [[rainParams]] [[BIS_fnc_setRain]] [[overcast]] [[setOvercast]] [[rain]] [[nextWeatherChange]] [[forceWeatherChange]] [[setFog]] [[setHumidity]]
<dl class="command_description">
+
}}
<dd class="notedate">Posted on December 15, 2015 - 14:31 (UTC)</dd>
 
<dt class="note">[[User:Zapat|Zapat]]</dt>
 
<dd class="note">
 
[[setTimeMultiplier]] does NOT affect transition time.
 
</dd>
 
</dl>
 
<!-- DISCONTINUE Notes -->
 
  
<!-- CONTINUE Notes -->
+
{{Note
<dl class="command_description">
+
|user= Zapat
<dd class="notedate">Posted on November 16, 2016 - 22:06 (UTC)</dd>
+
|timestamp= 20151215143100
<dt class="note">[[User:Killzone Kid|Killzone Kid]]</dt>
+
|text= [[setTimeMultiplier]] does '''not''' affect transition time.
<dd class="note">
+
}}
Using '''Example 2''' on dedicated server might need additional interference on JIP clients. The reason is that JIP has [[rain]] value > 0 slowly changing to 0. To force client to sync one can execute this on client: <code>[[skipTime]] 1; [[skipTime]] -1;</code>
+
 
</dd>
+
{{Note
</dl>
+
|user= Killzone_Kid
<!-- DISCONTINUE Notes -->
+
|timestamp= 20161116220600
 +
|text= Using {{Link|#Example 2}} on dedicated server might need additional interference on JIP clients. The reason is that JIP has [[rain]] value > 0 slowly changing to 0. To force client to sync one can execute this on client:
 +
<sqf>skipTime 1; skipTime -1;</sqf>
 +
}}

Latest revision as of 12:01, 25 July 2022

Hover & click on the images for description

Description

Description:
Sets rain density smoothly over the given transition time. A transition time of zero means an immediate change. A rain density of zero is no rain, one is maximum rain. Rain is not possible when overcast is less than 0.7.
Arma 3
Since Arma 3 this command is multiplayer synchronised:
  • if executed on the server, the changes will propagate globally.
  • if executed on a client, the effect is local, temporary and will soon change to the server setting.
Minimum overcast needed for rain in Arma 3 is 0.5.
Alternative syntaxes (Syntax 2 and Syntax 3):
  • set rain particle params. Rain particles params are client-side params and are ignored on dedicated server. Use helper function BIS_fnc_setRain if sync is needed in Multiplayer
  • have a local LELocal effect
Multiplayer:
Prior to Arma 3, each client and the server could have different rain values.
Groups:
Environment

Syntax 1

Syntax:
time setRain rain
Parameters:
time: Number - transition time in seconds to the new value
rain: Number - new rain value in range 0..1.
Return Value:
Nothing

Syntax 2

Syntax:
LELocal setRain rainParams
Parameters:
rainParams: Array - array of custom RainParticles params - see rainParams. Use empty array [] to reset to default config values
Return Value:
Nothing

Syntax 3

Syntax:
LELocal setRain config
Parameters:
config: Config - config path to a custom class, which contains RainParticles class. Use configNull to reset to default config values
Return Value:
Nothing

Examples

Example 1:
60 setRain 1;
Example 2:
Force no rain:
Example 3:
Snow like effect (Since Arma 3 v2.08):
0 setOvercast 1; 0 setRain 1; 0 setFog 0.1; // snow affects visibility at distance setHumidity 0.9; // don't want to see dust clouds enableEnvironment [false, true]; // don't want to see snakes and butterflies either forceWeatherChange; setRain [ "a3\data_f\rainnormal_ca.paa", // rainDropTexture 1, // texDropCount 0.01, // minRainDensity 15, // effectRadius 0.1, // windCoef 2, // dropSpeed 0.5, // rndSpeed 0.5, // rndDir 0.02, // dropWidth 0.02, // dropHeight [0.1, 0.1, 0.1, 1], // dropColor 0.1, // lumSunFront 0.1, // lumSunBack 5.5, // refractCoef 0.3, // refractSaturation true, // snow false // dropColorStrong ];
Example 4:
After 2.10
0 setOvercast 1; 0 setRain 1; 0 setFog 0.1; setHumidity 0.95; enableEnvironment [false, true]; forceWeatherChange; [ "a3\data_f\snowflake4_ca.paa", // rainDropTexture 4, // texDropCount 0.01, // minRainDensity 25, // effectRadius 0.05, // windCoef 2.5, // dropSpeed 0.5, // rndSpeed 0.5, // rndDir 0.07, // dropWidth 0.07, // dropHeight [1, 1, 1, 0.5], // dropColor 0.0, // lumSunFront 0.2, // lumSunBack 0.5, // refractCoef 0.5, // refractSaturation true, // snow false // dropColorStrong ] call BIS_fnc_setRain;

Additional Information

See also:
rainParams BIS_fnc_setRain overcast setOvercast rain nextWeatherChange forceWeatherChange setFog setHumidity

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
Zapat
Posted on Dec 15, 2015 - 14:31 (UTC)
setTimeMultiplier does not affect transition time.
Killzone_Kid
Posted on Nov 16, 2016 - 22:06 (UTC)
Using Example 2 on dedicated server might need additional interference on JIP clients. The reason is that JIP has rain value > 0 slowly changing to 0. To force client to sync one can execute this on client: