diff --git a/baystation12.dme b/baystation12.dme
index d37370c92b3..e52b3b38d5a 100644
--- a/baystation12.dme
+++ b/baystation12.dme
@@ -439,6 +439,7 @@
#include "code\game\gamemodes\sandbox\h_sandbox.dm"
#include "code\game\gamemodes\sandbox\sandbox.dm"
#include "code\game\gamemodes\traitor\traitor.dm"
+#include "code\game\gamemodes\wizard\rightandwrong.dm"
#include "code\game\gamemodes\wizard\soulstone.dm"
#include "code\game\gamemodes\wizard\spellbook.dm"
#include "code\game\gamemodes\wizard\spells.dm"
diff --git a/code/game/gamemodes/wizard/rightandwrong.dm b/code/game/gamemodes/wizard/rightandwrong.dm
new file mode 100644
index 00000000000..5bd77a7fdeb
--- /dev/null
+++ b/code/game/gamemodes/wizard/rightandwrong.dm
@@ -0,0 +1,54 @@
+
+
+/client/proc/rightandwrong()
+ set category = "Spells"
+ set desc = "Summon Guns"
+ set name = "Wizards: No sense of right and wrong!"
+
+ for(var/mob/living/carbon/human/H in world)
+ if(H.stat == 2 || !(H.client)) continue
+ if(is_special_character(H)) continue
+ if(prob(25))
+ ticker.mode.traitors += H.mind
+ H.mind.special_role = "traitor"
+ var/datum/objective/survive/survive = new
+ survive.owner = H.mind
+ H.mind.objectives += survive
+ H << "You are the survivor! Your own safety matters above all else, trust no one and kill anyone who gets in your way. However, armed as you are, now would be the perfect time to settle that score or grab that pair of yellow gloves you've been eyeing..."
+ var/obj_count = 1
+ for(var/datum/objective/OBJ in H.mind.objectives)
+ H << "Objective #[obj_count]: [OBJ.explanation_text]"
+ obj_count++
+ var/randomize = pick("taser","egun","laser","revolver","smg","decloner","deagle","gyrojet","pulse","silenced","cannon","shotgun","freeze","uzi","crossbow")
+ switch (randomize)
+ if("taser")
+ new /obj/item/weapon/gun/energy/taser(get_turf(H))
+ if("egun")
+ new /obj/item/weapon/gun/energy(get_turf(H))
+ if("laser")
+ new /obj/item/weapon/gun/energy/laser(get_turf(H))
+ if("revolver")
+ new /obj/item/weapon/gun/projectile(get_turf(H))
+ if("smg")
+ new /obj/item/weapon/gun/projectile/automatic/c20r(get_turf(H))
+ if("decloner")
+ new /obj/item/weapon/gun/energy/decloner(get_turf(H))
+ if("deagle")
+ new /obj/item/weapon/gun/projectile/deagle/camo(get_turf(H))
+ if("gyrojet")
+ new /obj/item/weapon/gun/projectile/gyropistol(get_turf(H))
+ if("pulse")
+ new /obj/item/weapon/gun/energy/pulse_rifle(get_turf(H))
+ if("silenced")
+ new /obj/item/weapon/gun/projectile/silenced(get_turf(H))
+ if("cannon")
+ new /obj/item/weapon/gun/energy/lasercannon(get_turf(H))
+ if("shotgun")
+ new /obj/item/weapon/gun/projectile/shotgun/combat(get_turf(H))
+ if("freeze")
+ new /obj/item/weapon/gun/energy/temperature(get_turf(H))
+ if("uzi")
+ new /obj/item/weapon/gun/projectile/automatic/mini_uzi(get_turf(H))
+ if("crossbow")
+ new /obj/item/weapon/gun/energy/crossbow(get_turf(H))
+ usr.verbs -= /client/proc/rightandwrong