When a drop of the "event rain" event hits something, it creates a short-lived decorative object. For example, on the lava it will be a bubble or gurgling sound, on the grass it would be a cicade chirip or a butterfly flying away, on a tree it would be a leaves rustling or a bird warble... And so on.
The "Rain" is not visible - its just a trigger for an ambient effect.

Think of Tetris, every 1 second randomly choose a block and make it sparkle - pretty easy as all the blocks are visible to the player, but it adds a certain level of polish to the game.

On an RTS map, it doesn't make sense to randomly choose a tile throughout the map, rather create an event rain that falls around the player character, when it touches the ground create an ambient event. For example Define the falling speed of the event as 1m/frame, and events start at 10m above the ground. (So every 10 frames you'll get an ambient event happening somewhere close to the player). But if the player moves, each event rain particle gets lifted 0.5m/freme into the air so that the events will only happen when the player is still - resulting in no events when the player is moving as he wont see them anyway.

So by creating event rain for ambient effects the players experience is improved but the performance of the game is not imacted as much as it would be by just creating random ambient events accross the screen.

Out of Interest I have read that some RTS games use a similar system for units not on the screen. Instead of updating their movement/AI every frame as they do with units on the screen they only get updated every 1second or so - resulting in lower performance impact while still letting the player's experience be consistent.