diff --git a/code/_globalvars/logging.dm b/code/_globalvars/logging.dm
index 00665bdfe22..72ca1e93280 100644
--- a/code/_globalvars/logging.dm
+++ b/code/_globalvars/logging.dm
@@ -31,4 +31,6 @@ GLOBAL_PROTECT(OOClog)
GLOBAL_LIST_EMPTY(adminlog)
GLOBAL_PROTECT(adminlog)
+GLOBAL_LIST_EMPTY(individual_log_list) // Logs each mob individual logs, a global so it doesn't get lost on cloning/changing mobs
+
GLOBAL_LIST_EMPTY(active_turfs_startlist)
\ No newline at end of file
diff --git a/code/modules/admin/verbs/individual_logging.dm b/code/modules/admin/verbs/individual_logging.dm
index cef424d4b28..d7db82f5b34 100644
--- a/code/modules/admin/verbs/individual_logging.dm
+++ b/code/modules/admin/verbs/individual_logging.dm
@@ -16,7 +16,7 @@
for(var/log_type in M.logging)
var/list/reversed = M.logging[log_type]
reversed = reverseRange(reversed.Copy())
- dat += "
[log_type]
"
+ dat += "[log_type]
"
for(var/entry in reversed)
dat += "[entry]: [reversed[entry]]
"
dat += "
"
@@ -26,6 +26,6 @@
if(reversed)
reversed = reverseRange(reversed.Copy())
for(var/entry in reversed)
- dat += "[entry]: [reversed[entry]]
"
+ dat += "[entry]: [reversed[entry]]
"
usr << browse(dat, "window=invidual_logging;size=600x480")
\ No newline at end of file
diff --git a/code/modules/mob/login.dm b/code/modules/mob/login.dm
index a6f0c981441..8e732940a19 100644
--- a/code/modules/mob/login.dm
+++ b/code/modules/mob/login.dm
@@ -39,4 +39,9 @@
if(client)
client.click_intercept = null
- client.view = world.view // Resets the client.view in case it was changed.
\ No newline at end of file
+ client.view = world.view // Resets the client.view in case it was changed.
+
+ if(!GLOB.individual_log_list[ckey])
+ GLOB.individual_log_list[ckey] = logging
+ else
+ logging = GLOB.individual_log_list[ckey]