diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm
index 9959d71bfff..9a45b5404ee 100644
--- a/code/modules/mob/living/silicon/ai/ai.dm
+++ b/code/modules/mob/living/silicon/ai/ai.dm
@@ -411,6 +411,13 @@ var/list/ai_verbs_default = list(
..()
/mob/living/silicon/ai/Topic(href, href_list)
+ if(href_list["view_laws"] && isobserver(usr))
+ var/mob/observer/ghost/G = usr
+ var/turf/T = get_turf(src)
+ if(T)
+ G.forceMove(T)
+ laws.show_laws(G)
+ return
if(usr != src)
return
if(..())
diff --git a/code/modules/mob/living/silicon/ai/laws.dm b/code/modules/mob/living/silicon/ai/laws.dm
index 2fe7d68e0d5..f9d44685b5a 100644
--- a/code/modules/mob/living/silicon/ai/laws.dm
+++ b/code/modules/mob/living/silicon/ai/laws.dm
@@ -4,9 +4,7 @@
src.show_laws()
/mob/living/silicon/proc/deadchat_lawchange()
- var/list/the_laws = laws.get_law_list(include_zeroth = TRUE)
- var/lawtext = the_laws.Join("
")
- deadchat_broadcast("'s laws were changed. View", span_name("[src]"), follow_target=src, message_type=DEADCHAT_LAWCHANGE)
+ deadchat_broadcast("'s laws were changed. View", span_name("[src]"), follow_target=src, message_type=DEADCHAT_LAWCHANGE)
/mob/living/silicon/ai/show_laws(everyone = 0)
var/who