diff --git a/code/game/gamemodes/gameticker.dm b/code/game/gamemodes/gameticker.dm
index 56d525912d4..738a4a3ba3e 100644
--- a/code/game/gamemodes/gameticker.dm
+++ b/code/game/gamemodes/gameticker.dm
@@ -180,9 +180,9 @@ var/global/datum/controller/gameticker/ticker
for (var/mob/living/silicon/ai/aiPlayer in world)
if (aiPlayer.name != "Inactive AI")
if (aiPlayer.stat != 2)
- world << "The AI's laws at the end of the game were:"
+ world << "[aiPlayer.name]'s laws at the end of the game were:"
else
- world << "The AI's laws when it was deactivated were:"
+ world << "[aiPlayer.name]'s laws when it was deactivated were:"
aiPlayer.show_laws(1)
diff --git a/code/modules/mob/living/silicon/ai/death.dm b/code/modules/mob/living/silicon/ai/death.dm
index 73a6b1f06b1..a66c6a9eab3 100644
--- a/code/modules/mob/living/silicon/ai/death.dm
+++ b/code/modules/mob/living/silicon/ai/death.dm
@@ -22,11 +22,14 @@
src.loc.icon_state = "aicard-404"
if(ticker.mode.name == "AI malfunction")
- world << "Human Victory"
- world << "The AI has been killed! The staff is victorious."
- sleep(100)
- world << "\blue Rebooting due to end of game"
- world.Reboot()
+ var/datum/game_mode/malfunction/malf = ticker.mode
+ for(var/datum/mind/AI_mind in malf.malf_ai)
+ if (src.mind == AI_mind)
+ world << "Human Victory"
+ world << "The AI has been killed! The staff is victorious."
+ sleep(100)
+ world << "\blue Rebooting due to end of game"
+ world.Reboot()
var/tod = time2text(world.realtime,"hh:mm:ss") //weasellos time of death patch
mind.store_memory("Time of death: [tod]", 0)
diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm
index 500b193d005..4f1930ef441 100644
--- a/code/modules/mob/mob.dm
+++ b/code/modules/mob/mob.dm
@@ -1871,11 +1871,17 @@
src.mind.transfer_to(newmob)
var/virus = src.virus
- gibs(src.loc, virus)
+ if (istype(src, /mob/living/silicon))
+ robogibs(src.loc, virus)
+ else
+ gibs(src.loc, virus)
else if (!src.client)
var/virus = src.virus
- gibs(src.loc, virus)
+ if (istype(src, /mob/living/silicon))
+ robogibs(src.loc, virus)
+ else
+ gibs(src.loc, virus)
sleep(15)
del(src)