Here's some code which looks quite rubbish, but nevertheless is some rain code.
rem Why does it always rain on me?
rem Initialisation
sync on
sync rate 60
hide mouse
autocam off
rem Make a surface to rain on
make matrix 1,1000,1000,5,5
rem Make some particle glow
create bitmap 1,32,32
for i=0 to 360
for j=0 to 14
ink rgb(255-int(j*15.9),255-int(j*15.9),255-int(j*15.9)),0
dot 16+(cos(i)*j),16+(sin(i)*j)
next j
next i
get image 1,0,0,31,31
set current bitmap 0
delete bitmap 1
rem Set up the particles, position them at the player location
make particles 1,1,100,40
position particles 1,500,0,500
set particle emissions 1,4
rem 4 particles emitted each cycle
set particle velocity 1,-20
rem Downward velocity to make like rain
set particle speed 1,0.05
rem Speed up the particles
position particle emissions 1,0,10,0
rem Position the emissions above the player
color particles 1,0,255,255
rem Colour them blue
set particle gravity 1,10
rem Make them fall faster
do
a#=wrapvalue(a#+mousemovex())
rem On each cycle, put the emissions in a random area around the player
position particle emissions 1,int(rnd(10)-5),10,int(rnd(10)-5)
position camera 500+(sin(a#)*500),200,500+(cos(a#)*500)
point camera 500,50,500
sync
loop
This will position 4 particles in a random area around the player above them, and fire them downwards each cycle, so it looks like rain. However you don't have complete control over the particles. It would be good if you could eliminate all sideways velocity, or even set your own, and fire them at specific intervals. That would allow you to do a for...next loop and create 10 random rain drops per cycle, but you can't do that.