diff --git a/code/__HELPERS/text_vr.dm b/code/__HELPERS/text_vr.dm
index 06aadb6708..7cd683f456 100644
--- a/code/__HELPERS/text_vr.dm
+++ b/code/__HELPERS/text_vr.dm
@@ -24,4 +24,4 @@ GLOBAL_LIST_EMPTY(whitelisted_species_list)
/proc/log_mentor(text)
GLOB.mentor_log.Add(text)
- GLOB.diary << "\[[time_stamp()]]MENTOR: [text]"
\ No newline at end of file
+ GLOB.world_game_log << "\[[time_stamp()]]MENTOR: [text]"
\ No newline at end of file
diff --git a/code/controllers/configuration.dm b/code/controllers/configuration.dm
index f856db4884..76e29f8c5c 100644
--- a/code/controllers/configuration.dm
+++ b/code/controllers/configuration.dm
@@ -64,9 +64,9 @@
var/respawn = 1
var/guest_jobban = 1
var/usewhitelist = 0
- var/inactivity_period = 3000 //time in ds until a player is considered inactive
- var/afk_period = 6000 //time in ds until a player is considered afk and kickable
- var/kick_inactive = FALSE //force disconnect for inactive players
+ var/inactivity_period = 3000 //time in ds until a player is considered inactive
+ var/afk_period = 6000 //time in ds until a player is considered afk and kickable
+ var/kick_inactive = FALSE //force disconnect for inactive players
var/load_jobs_from_txt = 0
var/automute_on = 0 //enables automuting/spam prevention
var/minimal_access_threshold = 0 //If the number of players is larger than this threshold, minimal access will be turned on.
@@ -267,7 +267,7 @@
if(M.config_tag)
if(!(M.config_tag in modes)) // ensure each mode is added only once
- GLOB.world_game_log << "Adding game mode [M.name] ([M.config_tag]) to configuration."
+ GLOB.world_game_log << "Adding game mode [M.name] ([M.config_tag]) to configuration."
modes += M.config_tag
mode_names[M.config_tag] = M.name
probabilities[M.config_tag] = M.probability
@@ -289,7 +289,7 @@
GLOB.abandon_allowed = respawn
/datum/configuration/proc/load(filename, type = "config") //the type can also be game_options, in which case it uses a different switch. not making it separate to not copypaste code - Urist
- var/list/Lines = world.file2list(filename)
+ var/list/Lines = world.file2list(filename)
for(var/t in Lines)
if(!t)
@@ -406,12 +406,12 @@
usewhitelist = TRUE
if("allow_metadata")
allow_Metadata = 1
- if("inactivity_period")
- inactivity_period = text2num(value) * 10 //documented as seconds in config.txt
- if("afk_period")
- afk_period = text2num(value) * 10 // ^^^
+ if("inactivity_period")
+ inactivity_period = text2num(value) * 10 //documented as seconds in config.txt
+ if("afk_period")
+ afk_period = text2num(value) * 10 // ^^^
if("kick_inactive")
- kick_inactive = TRUE
+ kick_inactive = TRUE
if("load_jobs_from_txt")
load_jobs_from_txt = 1
if("forbid_singulo_possession")
@@ -532,7 +532,7 @@
if("error_msg_delay")
error_msg_delay = text2num(value)
else
- GLOB.world_game_log << "Unknown setting in configuration: '[name]'"
+ GLOB.world_game_log << "Unknown setting in configuration: '[name]'"
else if(type == "game_options")
switch(name)
@@ -595,13 +595,13 @@
if(mode_name in modes)
continuous[mode_name] = 1
else
- GLOB.world_game_log << "Unknown continuous configuration definition: [mode_name]."
+ GLOB.world_game_log << "Unknown continuous configuration definition: [mode_name]."
if("midround_antag")
var/mode_name = lowertext(value)
if(mode_name in modes)
midround_antag[mode_name] = 1
else
- GLOB.world_game_log << "Unknown midround antagonist configuration definition: [mode_name]."
+ GLOB.world_game_log << "Unknown midround antagonist configuration definition: [mode_name]."
if("midround_antag_time_check")
midround_antag_time_check = text2num(value)
if("midround_antag_life_check")
@@ -617,9 +617,9 @@
if(mode_name in modes)
min_pop[mode_name] = text2num(mode_value)
else
- GLOB.world_game_log << "Unknown minimum population configuration definition: [mode_name]."
+ GLOB.world_game_log << "Unknown minimum population configuration definition: [mode_name]."
else
- GLOB.world_game_log << "Incorrect minimum population configuration definition: [mode_name] [mode_value]."
+ GLOB.world_game_log << "Incorrect minimum population configuration definition: [mode_name] [mode_value]."
if("max_pop")
var/pop_pos = findtext(value, " ")
var/mode_name = null
@@ -631,9 +631,9 @@
if(mode_name in modes)
max_pop[mode_name] = text2num(mode_value)
else
- GLOB.world_game_log << "Unknown maximum population configuration definition: [mode_name]."
+ GLOB.world_game_log << "Unknown maximum population configuration definition: [mode_name]."
else
- GLOB.world_game_log << "Incorrect maximum population configuration definition: [mode_name] [mode_value]."
+ GLOB.world_game_log << "Incorrect maximum population configuration definition: [mode_name] [mode_value]."
if("shuttle_refuel_delay")
shuttle_refuel_delay = text2num(value)
if("show_game_type_odds")
@@ -661,9 +661,9 @@
if(prob_name in modes)
probabilities[prob_name] = text2num(prob_value)
else
- GLOB.world_game_log << "Unknown game mode probability configuration definition: [prob_name]."
+ GLOB.world_game_log << "Unknown game mode probability configuration definition: [prob_name]."
else
- GLOB.world_game_log << "Incorrect probability configuration definition: [prob_name] [prob_value]."
+ GLOB.world_game_log << "Incorrect probability configuration definition: [prob_name] [prob_value]."
if("protect_roles_from_antagonist")
protect_roles_from_antagonist = 1
@@ -710,7 +710,7 @@
// Value is in the form "LAWID,NUMBER"
var/list/L = splittext(value, ",")
if(L.len != 2)
- GLOB.world_game_log << "Invalid LAW_WEIGHT: " + t
+ GLOB.world_game_log << "Invalid LAW_WEIGHT: " + t
continue
var/lawid = L[1]
var/weight = text2num(L[2])
@@ -766,8 +766,8 @@
mentors_mobname_only = 1
if ("mentor_legacy_system")
mentor_legacy_system = 1
- else
- GLOB.diary << "Unknown setting in configuration: '[name]'"
+ // else
+ // GLOB.world_game_log << "Adding game mode [M.name] ([M.config_tag]) to configuration."
fps = round(fps)
if(fps <= 0)
@@ -775,7 +775,7 @@
/datum/configuration/proc/loadmaplist(filename)
- var/list/Lines = world.file2list(filename)
+ var/list/Lines = world.file2list(filename)
var/datum/map_config/currentmap = null
for(var/t in Lines)
@@ -821,11 +821,11 @@
maplist[currentmap.map_name] = currentmap
currentmap = null
else
- GLOB.world_game_log << "Unknown command in map vote config: '[command]'"
+ GLOB.world_game_log << "Unknown command in map vote config: '[command]'"
/datum/configuration/proc/loadsql(filename)
- var/list/Lines = world.file2list(filename)
+ var/list/Lines = world.file2list(filename)
for(var/t in Lines)
if(!t)
continue
@@ -865,7 +865,7 @@
if("feedback_tableprefix")
global.sqlfdbktableprefix = value
else
- GLOB.world_game_log << "Unknown setting in configuration: '[name]'"
+ GLOB.world_game_log << "Unknown setting in configuration: '[name]'"
/datum/configuration/proc/pick_mode(mode_name)
// I wish I didn't have to instance the game modes in order to look up
diff --git a/code/controllers/subsystem/blackbox.dm b/code/controllers/subsystem/blackbox.dm
index 269bf1e4a7..a807202c9e 100644
--- a/code/controllers/subsystem/blackbox.dm
+++ b/code/controllers/subsystem/blackbox.dm
@@ -42,6 +42,7 @@ SUBSYSTEM_DEF(blackbox)
msg_cargo = SSblackbox.msg_cargo
msg_other = SSblackbox.msg_other
+
feedback = SSblackbox.feedback
//no touchie
@@ -90,7 +91,7 @@ SUBSYSTEM_DEF(blackbox)
if (sqlrowlist != "")
sqlrowlist += ", " //a comma (,) at the start of the first row to insert will trigger a SQL error
- sqlrowlist += "(null, Now(), [GLOB.round_id], \"[sanitizeSQL(FV.get_variable())]\", [FV.get_value()], \"[sanitizeSQL(FV.get_details())]\")"
+ sqlrowlist += "(null, Now(), [GLOB.round_id], \"[sanitizeSQL(FV.get_variable())]\", [FV.get_value()], \"[sanitizeSQL(FV.get_details())]\")"
if (sqlrowlist == "")
return
diff --git a/code/modules/admin/admin_investigate.dm b/code/modules/admin/admin_investigate.dm
index 53fefc30bc..7aca1ececb 100644
--- a/code/modules/admin/admin_investigate.dm
+++ b/code/modules/admin/admin_investigate.dm
@@ -1,50 +1,21 @@
-//By Carnwennan
-
-//This system was made as an alternative to all the in-game lists and variables used to log stuff in-game.
-//lists and variables are great. However, they have several major flaws:
-//Firstly, they use memory. TGstation has one of the highest memory usage of all the ss13 branches.
-//Secondly, they are usually stored in an object. This means that they aren't centralised. It also means that
-//the data is lost when the object is deleted! This is especially annoying for things like the singulo engine!
-#define INVESTIGATE_DIR "data/investigate/"
-
-//SYSTEM
-/proc/investigate_subject2file(subject)
- return file("[INVESTIGATE_DIR][subject].html")
-
-/proc/investigate_reset()
- if(fdel(INVESTIGATE_DIR))
- return 1
- return 0
-
-/atom/proc/investigate_log(message, subject)
- if(!message)
- return
- var/F = investigate_subject2file(subject)
- if(!F)
+atom/proc/investigate_log(message, subject)
+ if(!message || !subject)
return
+ var/F = file("[GLOB.log_directory]/[subject].html")
F << "[time_stamp()] \ref[src] ([x],[y],[z]) || [src] [message]
"
-//ADMINVERBS
-/client/proc/investigate_show( subject in list("hrefs","notes, memos, watchlist","singulo","wires","telesci", "gravity", "records", "cargo", "supermatter", "atmos", "experimentor", "botany") )
+
+/client/proc/investigate_show( subject in list("hrefs","notes, memos, watchlist","singulo","wires","telesci", "gravity", "records", "cargo", "supermatter", "atmos", "experimentor", "botany") )
set name = "Investigate"
set category = "Admin"
if(!holder)
return
switch(subject)
- if("singulo", "wires", "telesci", "gravity", "records", "cargo", "supermatter", "atmos", "botany") //general one-round-only stuff
- var/F = investigate_subject2file(subject)
- if(!F)
- to_chat(src, "Error: admin_investigate: [INVESTIGATE_DIR][subject] is an invalid path or cannot be accessed.")
- return
- src << browse(F,"window=investigate[subject];size=800x300")
- if("hrefs") //persistent logs and stuff
- if(GLOB.href_logfile)
- src << browse(GLOB.href_logfile,"window=investigate[subject];size=800x300")
- else if(!config.log_hrefs)
- to_chat(src, "Href logging is off and no logfile was found.")
- return
- else
- to_chat(src, "No href logfile was found.")
- return
if("notes, memos, watchlist")
browse_messages()
+ else
+ var/F = file("[GLOB.log_directory]/[subject].html")
+ if(!fexists(F))
+ to_chat(src, "No [subject] logfile was found.")
+ return
+ src << browse(F,"window=investigate[subject];size=800x300")
\ No newline at end of file
diff --git a/code/modules/client/client_procs.dm b/code/modules/client/client_procs.dm
index a1e01cd939..7efbbb839e 100644
--- a/code/modules/client/client_procs.dm
+++ b/code/modules/client/client_procs.dm
@@ -80,8 +80,7 @@
*/
//Logs all hrefs
- if(config && config.log_hrefs && GLOB.href_logfile)
- GLOB.href_logfile << "[time_stamp(show_ds = TRUE)] [src] (usr:[usr]) || [hsrc ? "[hsrc] " : ""][href]
"
+ GLOB.world_href_log << "[time_stamp(show_ds = TRUE)] [src] (usr:[usr]) || [hsrc ? "[hsrc] " : ""][href]
"
// Admin PM
if(href_list["priv_msg"])
@@ -370,7 +369,7 @@ GLOBAL_LIST(external_rsc_urls)
adminGreet(1)
holder.owner = null
GLOB.admins -= src
-
+
if (!GLOB.admins.len && SSticker.current_state == GAME_STATE_PLAYING) //Only report this stuff if we are currently playing.
if(!GLOB.admins.len) //Apparently the admin logging out is no longer an admin at this point, so we have to check this towards 0 and not towards 1. Awell.
var/cheesy_message = pick(
@@ -396,7 +395,7 @@ GLOBAL_LIST(external_rsc_urls)
"Sometimes when I have sex, I think about putting an entire peanut butter and jelly sandwich in the VCR.",\
"Forever alone :("\
)
-
+
send2irc("Server", "[cheesy_message] (No admins online)")
GLOB.ahelp_tickets.ClientLogout(src)