diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm
index d21a82f9cc..804934838d 100644
--- a/code/modules/mob/new_player/new_player.dm
+++ b/code/modules/mob/new_player/new_player.dm
@@ -354,6 +354,7 @@
var/mob/living/character = create_character(T) //creates the human and transfers vars and mind
character = job_master.EquipRank(character, rank, 1) //equips the human
UpdateFactionList(character)
+ log_game("JOINED [key_name(character)] as \"[rank]\"")
// AIs don't need a spawnpoint, they must spawn at an empty core
if(character.mind.assigned_role == "AI")
diff --git a/code/modules/power/singularity/emitter.dm b/code/modules/power/singularity/emitter.dm
index f4f6579420..827bd9aefd 100644
--- a/code/modules/power/singularity/emitter.dm
+++ b/code/modules/power/singularity/emitter.dm
@@ -48,7 +48,7 @@
/obj/machinery/power/emitter/Destroy()
message_admins("Emitter deleted at ([x],[y],[z] - JMP)",0,1)
- log_game("Emitter deleted at ([x],[y],[z])")
+ log_game("EMITTER([x],[y],[z]) Destroyed/deleted.")
investigate_log("deleted at ([x],[y],[z])","singulo")
..()
@@ -72,7 +72,7 @@
src.active = 0
user << "You turn off [src]."
message_admins("Emitter turned off by [key_name(user, user.client)](?) in ([x],[y],[z] - JMP)",0,1)
- log_game("Emitter turned off by [user.ckey]([user]) in ([x],[y],[z])")
+ log_game("EMITTER([x],[y],[z]) OFF by [key_name(user)]")
investigate_log("turned off by [user.key]","singulo")
else
src.active = 1
@@ -80,7 +80,7 @@
src.shot_number = 0
src.fire_delay = get_initial_fire_delay()
message_admins("Emitter turned on by [key_name(user, user.client)](?) in ([x],[y],[z] - JMP)",0,1)
- log_game("Emitter turned on by [user.ckey]([user]) in ([x],[y],[z])")
+ log_game("EMITTER([x],[y],[z]) ON by [key_name(user)]")
investigate_log("turned on by [user.key]","singulo")
update_icon()
else
@@ -112,11 +112,13 @@
if(!powered)
powered = 1
update_icon()
+ log_game("EMITTER([x],[y],[z]) Regained power and is ON.")
investigate_log("regained power and turned on","singulo")
else
if(powered)
powered = 0
update_icon()
+ log_game("EMITTER([x],[y],[z]) Lost power and was ON.")
investigate_log("lost power and turned off","singulo")
return
diff --git a/code/modules/power/singularity/field_generator.dm b/code/modules/power/singularity/field_generator.dm
index a9251e27ee..dc6fd45163 100644
--- a/code/modules/power/singularity/field_generator.dm
+++ b/code/modules/power/singularity/field_generator.dm
@@ -90,6 +90,7 @@ field_generator power level display
"You turn on the [src.name].", \
"You hear heavy droning")
turn_on()
+ log_game("FIELDGEN([x],[y],[z]) Activated by [key_name(user)]")
investigate_log("activated by [user.key].","singulo")
src.add_fingerprint(user)
@@ -213,6 +214,7 @@ field_generator power level display
for(var/mob/M in viewers(src))
M.show_message("\The [src] shuts down!")
turn_off()
+ log_game("FIELDGEN([x],[y],[z]) Lost power and was ON.")
investigate_log("ran out of power and deactivated","singulo")
src.power = 0
return 0
@@ -338,4 +340,5 @@ field_generator power level display
temp = 0
message_admins("A singulo exists and a containment field has failed.",1)
investigate_log("has failed whilst a singulo exists.","singulo")
+ log_game("FIELDGEN([x],[y],[z]) Containment failed while singulo/tesla exists.")
O.last_warning = world.time
diff --git a/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm b/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm
index 80f90fbacc..a5d2a4ac0a 100644
--- a/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm
+++ b/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm
@@ -139,6 +139,7 @@ So, hopefully this is helpful if any more icons are to be added/changed/wonderin
..()
if(master && master.active)
master.toggle_power()
+ log_game("PACCEL([x],[y],[z]) Was moved while active and turned off.")
investigate_log("was moved whilst active; it powered down.","singulo")
/obj/structure/particle_accelerator/ex_act(severity)
diff --git a/code/modules/power/singularity/particle_accelerator/particle_control.dm b/code/modules/power/singularity/particle_accelerator/particle_control.dm
index 0bc4adabcf..bcdd0d5036 100644
--- a/code/modules/power/singularity/particle_accelerator/particle_control.dm
+++ b/code/modules/power/singularity/particle_accelerator/particle_control.dm
@@ -119,7 +119,7 @@
strength = strength_upper_limit
else
message_admins("PA Control Computer increased to [strength] by [key_name(usr, usr.client)](?) in ([x],[y],[z] - JMP)",0,1)
- log_game("PA Control Computer increased to [strength] by [usr.ckey]([usr]) in ([x],[y],[z])")
+ log_game("PACCEL([x],[y],[z]) [key_name(usr)] increased to [strength]")
investigate_log("increased to [strength] by [usr.key]","singulo")
strength_change()
@@ -130,7 +130,7 @@
strength = 0
else
message_admins("PA Control Computer decreased to [strength] by [key_name(usr, usr.client)](?) in ([x],[y],[z] - JMP)",0,1)
- log_game("PA Control Computer decreased to [strength] by [usr.ckey]([usr]) in ([x],[y],[z])")
+ log_game("PACCEL([x],[y],[z]) [key_name(usr)] decreased to [strength]")
investigate_log("decreased to [strength] by [usr.key]","singulo")
strength_change()
@@ -147,6 +147,7 @@
if(src.active)
//a part is missing!
if( length(connected_parts) < 6 )
+ log_game("PACCEL([x],[y],[z]) Failed due to missing parts.")
investigate_log("lost a connected part; It powered down.","singulo")
toggle_power()
return
@@ -209,7 +210,7 @@
active = !active
investigate_log("turned [active?"ON":"OFF"] by [usr ? usr.key : "outside forces"]","singulo")
message_admins("PA Control Computer turned [active ?"ON":"OFF"] by [key_name(usr, usr.client)](?) in ([x],[y],[z] - JMP)",0,1)
- log_game("PA Control Computer turned [active ?"ON":"OFF"] by [usr.ckey]([usr]) in ([x],[y],[z])")
+ log_game("PACCEL([x],[y],[z]) [key_name(usr)] turned [active?"ON":"OFF"].")
if(active)
update_use_power(2)
for(var/obj/structure/particle_accelerator/part in connected_parts)
diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm
index d1189f25fb..e2b37348a9 100644
--- a/code/modules/power/smes.dm
+++ b/code/modules/power/smes.dm
@@ -148,6 +148,7 @@
if(output_used < 0.0001) // either from no charge or set to 0
outputting(0)
investigate_log("lost power and turned off","singulo")
+ log_game("SMES([x],[y],[z]) Power depleted.")
else if(output_attempt && output_level > 0)
outputting = 1
else
@@ -374,7 +375,7 @@
output_level = max(0, min(output_level_max, output_level)) // clamp to range
investigate_log("input/output; on":"off"] | Input-mode: [input_attempt?"auto":"off"] by [usr.key]","singulo")
-
+ log_game("SMES([x],[y],[z]) [key_name(usr)] changed settings: I:[input_level]([input_attempt]), O:[output_level]([output_attempt])")
return 1
diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm
index df27be9d78..c7b113ae32 100644
--- a/code/modules/power/supermatter/supermatter.dm
+++ b/code/modules/power/supermatter/supermatter.dm
@@ -94,7 +94,7 @@
/obj/machinery/power/supermatter/proc/explode()
message_admins("Supermatter exploded at ([x],[y],[z] - JMP)",0,1)
- log_game("Supermatter exploded at ([x],[y],[z])")
+ log_game("SUPERMATTER([x],[y],[z]) Exploded. Power:[power], Oxygen:[oxygen], Damage:[damage], Integrity:[get_integrity()]")
anchored = 1
grav_pulling = 1
exploded = 1
@@ -146,11 +146,13 @@
alert_msg = null
if(alert_msg)
global_announcer.autosay(alert_msg, "Supermatter Monitor", "Engineering")
+ log_game("SUPERMATTER([x],[y],[z]) Emergency engineering announcement. Power:[power], Oxygen:[oxygen], Damage:[damage], Integrity:[get_integrity()]")
//Public alerts
if((damage > emergency_point) && !public_alert)
global_announcer.autosay("WARNING: SUPERMATTER CRYSTAL DELAMINATION IMMINENT!", "Supermatter Monitor")
admin_chat_message(message = "SUPERMATTER DELAMINATING!", color = "#FF2222") //VOREStation Add
public_alert = 1
+ log_game("SUPERMATTER([x],[y],[z]) Emergency PUBLIC announcement. Power:[power], Oxygen:[oxygen], Damage:[damage], Integrity:[get_integrity()]")
else if(safe_warned && public_alert)
global_announcer.autosay(alert_msg, "Supermatter Monitor")
public_alert = 0
@@ -272,12 +274,17 @@
return 0 // This stops people from being able to really power up the supermatter
// Then bring it inside to explode instantly upon landing on a valid turf.
-
+ var/added_energy
+ var/added_damage
var/proj_damage = Proj.get_structure_damage()
if(istype(Proj, /obj/item/projectile/beam))
- power += proj_damage * config_bullet_energy * CHARGING_FACTOR / POWER_FACTOR
+ added_energy = proj_damage * config_bullet_energy * CHARGING_FACTOR / POWER_FACTOR
+ power += added_energy
else
- damage += proj_damage * config_bullet_energy
+ added_damage = proj_damage * config_bullet_energy
+ damage += added_damage
+ if(added_energy || added_damage)
+ log_game("SUPERMATTER([x],[y],[z]) Hit by \"[Proj.name]\". +[added_energy] Energy, +[added_damage] Damage.")
return 0
/obj/machinery/power/supermatter/attack_robot(mob/user as mob)
diff --git a/code/modules/power/tesla/energy_ball.dm b/code/modules/power/tesla/energy_ball.dm
index d37eec4b5d..9274bb85a6 100644
--- a/code/modules/power/tesla/energy_ball.dm
+++ b/code/modules/power/tesla/energy_ball.dm
@@ -93,6 +93,7 @@
/obj/singularity/energy_ball/proc/handle_energy()
if (energy <= 0)
+ log_game("TESLA([x],[y],[z]) Collapsed entirely.")
investigate_log("collapsed.", I_SINGULO)
qdel(src)
return TRUE
@@ -290,6 +291,8 @@
else if(closest_mob)
var/shock_damage = Clamp(round(power/400), 10, 90) + rand(-5, 5)
closest_mob.electrocute_act(shock_damage, source, 1, ran_zone())
+ log_game("TESLA([source.x],[source.y],[source.z]) Shocked [key_name(closest_mob)] for [shock_damage]dmg.")
+ message_admins("Tesla zapped [key_name_admin(closest_mob)]!")
if(issilicon(closest_mob))
var/mob/living/silicon/S = closest_mob
if(stun_mobs)