diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm
index 251c2223fb3..d40402f0ae2 100644
--- a/code/game/gamemodes/changeling/changeling.dm
+++ b/code/game/gamemodes/changeling/changeling.dm
@@ -148,6 +148,21 @@ var/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","Epsilon"
obj_count++
return
+
+
+/datum/game_mode/proc/remove_changeling(datum/mind/changeling_mind)
+ if(changeling_mind in changelings)
+ changelings -= changeling_mind
+ changeling_mind.current.remove_changeling_powers()
+ changeling_mind.memory = ""
+ changeling_mind.special_role = null
+ if(issilicon(changeling_mind))
+ changeling_mind.current << "You have been robotized!"
+ changeling_mind.current << "You must obey your silicon laws and master AI above all else. Your objectives will consider you to be dead."
+ else
+ changeling_mind.current << "You lose your powers! You are no longer a changeling and are stuck in your current form!"
+ update_change_icons_removed(changeling_mind)
+
/datum/game_mode/proc/update_change_icons_added(datum/mind/changeling)
var/datum/atom_hud/antag/linghud = huds[ANTAG_HUD_SOLO]
linghud.join_solo_hud(changeling.current)
diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm
index a94cda0f3cf..de3fe6ca7db 100644
--- a/code/game/gamemodes/traitor/traitor.dm
+++ b/code/game/gamemodes/traitor/traitor.dm
@@ -336,6 +336,15 @@
traitor_mob << "We have received credible reports that [M.real_name] might be willing to help our cause. If you need assistance, consider contacting them."
traitor_mob.mind.store_memory("Potential Collaborator: [M.real_name]")
+/datum/game_mode/proc/remove_vampire(datum/mind/vampire_mind)
+ if(vampire_mind in vampires)
+ vampires -= vampire_mind
+ vampire_mind.current.remove_vampire_powers()
+ vampire_mind.current << "You lose your powers! You are no longer a vampire and are stuck in your current form!"
+ vampire_mind.memory = ""
+ vampire_mind.special_role = null
+ update_vampire_icons_removed(vampire_mind)
+
/datum/game_mode/proc/update_traitor_icons_added(datum/mind/traitor_mind)
//var/ref = "\ref[traitor_mind]"
var/datum/atom_hud/antag/tatorhud = huds[ANTAG_HUD_SOLO]
diff --git a/code/game/gamemodes/vampire/vampire.dm b/code/game/gamemodes/vampire/vampire.dm
index 5e90a19ff24..14266ef9f15 100644
--- a/code/game/gamemodes/vampire/vampire.dm
+++ b/code/game/gamemodes/vampire/vampire.dm
@@ -377,6 +377,7 @@ You are weak to holy things and starlight. Don't go into space and avoid the Cha
if(VAMP_FULL)
src << "\blue You have reached your full potential and are no longer weak to the effects of anything holy and your vision has been improved greatly."
//no verb
+
//prepare for copypaste
/datum/game_mode/proc/update_vampire_icons_added(datum/mind/vampire_mind)
var/datum/atom_hud/antag/vamp_hud = huds[ANTAG_HUD_SOLO]
diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm
index 9fa316a5bb1..37f92547f98 100644
--- a/code/modules/mob/dead/observer/observer.dm
+++ b/code/modules/mob/dead/observer/observer.dm
@@ -296,6 +296,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
for(var/datum/atom_hud/H in huds)
if(istype(H, /datum/atom_hud/antag) || istype(H, /datum/atom_hud/data/human/security/advanced))
(adding_hud) ? H.add_hud_to(usr) : H.remove_hud_from(usr)
+ usr << "AntagHud Toggled [adding_hud ? "ON" : "OFF"]"
/mob/dead/observer/proc/dead_tele(A in ghostteleportlocs)
diff --git a/code/modules/mob/living/silicon/robot/login.dm b/code/modules/mob/living/silicon/robot/login.dm
index 6d030c026b8..84fcd64f849 100644
--- a/code/modules/mob/living/silicon/robot/login.dm
+++ b/code/modules/mob/living/silicon/robot/login.dm
@@ -8,4 +8,5 @@
if(mind) ticker.mode.remove_revolutionary(mind)
if(mind) ticker.mode.remove_thrall(mind,0)
if(mind) ticker.mode.remove_shadowling(mind)
+ if(mind) ticker.mode.remove_changeling(mind)
return