diff --git a/code/datums/weather/weather_types.dm b/code/datums/weather/weather_types.dm
index 363d9fb5871..4f1daa02766 100644
--- a/code/datums/weather/weather_types.dm
+++ b/code/datums/weather/weather_types.dm
@@ -184,3 +184,33 @@
status_signal.data["picture_state"] = "radiation"
frequency.post_signal(src, status_signal)
+
+
+/datum/weather/acid_rain
+ name = "acid rain"
+ desc = "Some stay dry and others feel the pain"
+
+ telegraph_duration = 400
+ telegraph_message = "Stinging droplets start to fall upon you.."
+ telegraph_sound = 'sound/ambience/acidrain_start.ogg'
+
+ weather_message = "Your skin melts underneath the rain!"
+ weather_overlay = "acid_rain"
+ weather_duration_lower = 600
+ weather_duration_upper = 1500
+ weather_sound = 'sound/ambience/acidrain_mid.ogg'
+
+ end_duration = 100
+ end_message = "The rain starts to dissipate."
+ end_sound = 'sound/ambience/acidrain_end.ogg'
+
+ area_type = /area/lavaland/surface/outdoors
+ target_z = ZLEVEL_LAVALAND
+
+ immunity_type = "acid" // temp
+
+
+/datum/weather/acid_rain/impact(mob/living/L)
+ var/resist = L.getarmor(null, "acid")
+ if(prob(max(0,100-resist)))
+ L.acid_act(20,20)
\ No newline at end of file
diff --git a/icons/effects/weather_effects.dmi b/icons/effects/weather_effects.dmi
index 215cf53556f..c8dc912465c 100644
Binary files a/icons/effects/weather_effects.dmi and b/icons/effects/weather_effects.dmi differ
diff --git a/sound/ambience/acidrain_end.ogg b/sound/ambience/acidrain_end.ogg
new file mode 100644
index 00000000000..75fb4aaf8dd
Binary files /dev/null and b/sound/ambience/acidrain_end.ogg differ
diff --git a/sound/ambience/acidrain_mid.ogg b/sound/ambience/acidrain_mid.ogg
new file mode 100644
index 00000000000..03d4812355b
Binary files /dev/null and b/sound/ambience/acidrain_mid.ogg differ
diff --git a/sound/ambience/acidrain_start.ogg b/sound/ambience/acidrain_start.ogg
new file mode 100644
index 00000000000..48f365d9df9
Binary files /dev/null and b/sound/ambience/acidrain_start.ogg differ