diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm
index 7c74a8347f58..0f3ac66e27b0 100644
--- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm
+++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm
@@ -60,6 +60,42 @@
/datum/reagent/drug/nicotine/overdose_process(mob/living/M)
M.adjustToxLoss(0.1*REM, 0)
M.adjustOxyLoss(1.1*REM, 0)
+ M.adjustOrganLoss(ORGAN_SLOT_LUNGS, 2*REM)
+ ..()
+ . = 1
+
+/datum/reagent/drug/nicotine/addiction_act_stage1(mob/living/M)
+ if(prob(5) && iscarbon(M))
+ M.Jitter(10)
+ var/obj/item/I = M.get_active_held_item()
+ if(I && M.dropItemToGround(I))
+ to_chat(M, "Your hands spaz out and you drop what you were holding!")
+ ..()
+
+/datum/reagent/drug/nicotine/addiction_act_stage2(mob/living/M)
+ if(prob(20) && iscarbon(M))
+ M.Jitter(10)
+ var/obj/item/I = M.get_active_held_item()
+ if(I && M.dropItemToGround(I))
+ to_chat(M, "Your hands spaz out and you drop what you were holding!")
+ ..()
+ . = 1
+
+/datum/reagent/drug/nicotine/addiction_act_stage3(mob/living/M)
+ if(prob(20) && iscarbon(M))
+ M.Jitter(10)
+ var/obj/item/I = M.get_active_held_item()
+ if(I && M.dropItemToGround(I))
+ to_chat(M, "Your hands spaz out and you drop what you were holding!")
+ ..()
+ . = 1
+
+/datum/reagent/drug/nicotine/addiction_act_stage4(mob/living/M)
+ if(prob(40) && iscarbon(M))
+ M.Jitter(10)
+ var/obj/item/I = M.get_active_held_item()
+ if(I && M.dropItemToGround(I))
+ to_chat(M, "Your hands spaz out and you drop what you were holding!")
..()
. = 1