diff --git a/code/modules/ninja/suit/gloves.dm b/code/modules/ninja/suit/gloves.dm
index 4308120c4f..dc840d5336 100644
--- a/code/modules/ninja/suit/gloves.dm
+++ b/code/modules/ninja/suit/gloves.dm
@@ -37,6 +37,8 @@
var/mindrain = 200
var/maxdrain = 400
+ var/stunforce = 140 //same as stunbaton, adjustable
+
/obj/item/clothing/gloves/space_ninja/Touch(atom/A,proximity)
if(!candrain || draining)
diff --git a/code/modules/ninja/suit/ninjaDrainAct.dm b/code/modules/ninja/suit/ninjaDrainAct.dm
index 861ffb9446..45ca231a4a 100644
--- a/code/modules/ninja/suit/ninjaDrainAct.dm
+++ b/code/modules/ninja/suit/ninjaDrainAct.dm
@@ -262,3 +262,18 @@ They *could* go in their appropriate files, but this is supposed to be modular
playsound(src, "sparks", 50, 1)
visible_message("[H] electrocutes [src] with [H.p_their()] touch!", "[H] electrocutes you with [H.p_their()] touch!")
electrocute_act(25, H)
+
+ src.Knockdown(G.stunforce)
+ src.adjustStaminaLoss(G.stunforce*0.1, affected_zone = (istype(H) ? H.zone_selected : BODY_ZONE_CHEST))
+ src.apply_effect(EFFECT_STUTTER, G.stunforce)
+ SEND_SIGNAL(src, COMSIG_LIVING_MINOR_SHOCK)
+
+ src.lastattacker = H.real_name
+ src.lastattackerckey = H.ckey
+ log_combat(H, src, "stunned")
+
+ playsound(loc, 'sound/weapons/egloves.ogg', 50, 1, -1)
+
+ if(ishuman(src))
+ var/mob/living/carbon/human/Hsrc = src
+ Hsrc.forcesay(GLOB.hit_appends)