HomeUser Control Panel (unavailable in archive)ForumsTutorialsArt GalleryResourcesMaps

help with weather system

09-02-2003, 05:06 PM#1
Coffein
Ok for my war map I need a weather system, which affects the troops's movement speed, this is what I have:

weather
Events
Time - Every 120.00 seconds of game time
Conditions
Actions
Set weather_integer = (Random integer number between 1 and 5)
Environment - Remove weather
Environment - Turn weather Off
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(In-game time of day) Greater than 17.59
(In-game time of day) Less than 6.00
Then - Actions
Environment - Remove time_weather
Environment - Turn time_weather Off
Environment - Create at (Playable map area) the weather effect Rays Of Moonlight
Set time_weather = (Last created weather effect)
Environment - Turn time_weather On
Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
Loop - Actions
Unit - Set (Picked unit) movement speed to ((Default movement speed of (Picked unit)) - 45.00)
Else - Actions
Environment - Remove time_weather
Environment - Turn time_weather Off
Environment - Create at (Playable map area) the weather effect Rays Of Light
Environment - Turn (Last created weather effect) On
Set time_weather = (Last created weather effect)
Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
Loop - Actions
Unit - Set (Picked unit) movement speed to (Default movement speed of (Picked unit))
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
weather_integer Equal to 1
Then - Actions
Environment - Create at (Playable map area) the weather effect Lordaeron Rain (Heavy)
Set weather = (Last created weather effect)
Environment - Turn (Last created weather effect) On
Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
Loop - Actions
Unit - Set (Picked unit) movement speed to ((Current movement speed of (Picked unit)) - 40.00)
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
weather_integer Equal to 2
Then - Actions
Environment - Create at (Playable map area) the weather effect Lordaeron Rain (Light)
Set weather = (Last created weather effect)
Environment - Turn (Last created weather effect) On
Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
Loop - Actions
Unit - Set (Picked unit) movement speed to ((Current movement speed of (Picked unit)) - 25.00)
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
weather_integer Equal to 3
Then - Actions
Environment - Create at (Playable map area) the weather effect Northrend Snow (Light)
Set weather = (Last created weather effect)
Environment - Turn (Last created weather effect) On
Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
Loop - Actions
Unit - Set (Picked unit) movement speed to ((Current movement speed of (Picked unit)) - 60.00)
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
weather_integer Equal to 4
Then - Actions
Environment - Create at (Playable map area) the weather effect Northrend Snow (Heavy)
Set weather = (Last created weather effect)
Environment - Turn (Last created weather effect) On
Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
Loop - Actions
Unit - Set (Picked unit) movement speed to ((Current movement speed of (Picked unit)) - 100.00)
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
weather_integer Equal to 5
Then - Actions
Environment - Turn weather Off
Environment - Remove weather
Set weather = (Last created weather effect)
Environment - Turn (Last created weather effect) On
Else - Actions

Anyways, this doesnt work. It just doesnt create the weather effects.
Can anyone help me out?
09-02-2003, 07:16 PM#2
Zachary_Shadow
That looks REALLY wierd...

Why don't you just make a Event for each of the timezones?

12:00

14:00

18:00

Whatever, and do triggers for each of thoes. if 12:00 is activated it will disable 18:00 and so on (14:00 is activated will deactivate 12:00)

This way you won't get it all in one trigger...

Dunno, not sure about that trigger, as it is VERY confusing :P

:) But a cool idea!
09-02-2003, 07:42 PM#3
Bloodlust
i think i can faster write a working version, than trying to read your text, lol^^

i dont know if the movement-speed part works

but if u want random weather....

I use the following trigger(s)
it creates a random weather effect and adds wind or not

i just copy it... i think it isnt hard to understand
then just add your slow down triggers..


RandomWeather
Events
Time - Every 65.00 seconds of game time
Conditions
Actions
Set WeatherRandom[1] = (Random integer number between 1 and 3)
Set WeatherRandom[2] = (Random integer number between 1 and 3)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
WeatherRandom[1] Equal to 1
Then - Actions
Environment - Turn Weather[1] On
Environment - Turn Weather[2] Off
Environment - Turn Weather[3] Off
Else - Actions
Do nothing
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
WeatherRandom[1] Equal to 2
Then - Actions
Environment - Turn Weather[1] Off
Environment - Turn Weather[2] On
Environment - Turn Weather[3] Off
Else - Actions
Do nothing
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
WeatherRandom[1] Equal to 3
Then - Actions
Environment - Turn Weather[1] Off
Environment - Turn Weather[2] Off
Environment - Turn Weather[3] On
Else - Actions
Do nothing
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
WeatherRandom[2] Equal to 1
Then - Actions
Environment - Turn Weather[4] On
Else - Actions
Do nothing
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
WeatherRandom[2] Equal to 2
Then - Actions
Environment - Turn Weather[4] Off
Else - Actions
Do nothing
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
WeatherRandom[2] Equal to 3
Then - Actions
Environment - Turn Weather[4] Off
Else - Actions
Do nothing






and the initialisation trigger has this

Initialization
Events
Map initialization
Conditions
Actions
Environment - Create at (Playable map area) the weather effect Wind (Heavy)
Set Weather[1] = (Last created weather effect)
Environment - Create at (Playable map area) the weather effect Northrend Snow (Light)
Set Weather[2] = (Last created weather effect)
Environment - Create at (Playable map area) the weather effect Northrend Snow (Heavy)
Set Weather[3] = (Last created weather effect)
Environment - Create at (Playable map area) the weather effect Northrend Blizzard
Set Weather[4] = (Last created weather effect)
09-02-2003, 08:03 PM#4
Coffein
Hm thanks.
Wow, I didn't think they are THAT confusing :p

Edit: It doesnt work for an unknown reason...