diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 71fe793c3cc..7f5a9263de6 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -2,13 +2,13 @@ ## What Does This PR Do - + ## Why It's Good For The Game - + ## Images of changes - + ## Changelog :cl: @@ -27,3 +27,4 @@ experiment: Added an experimental thingy + diff --git a/.vscode/settings.json b/.vscode/settings.json index a413f2f4dfd..b6d5ddfed6d 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -2,4 +2,4 @@ "workbench.editorAssociations": { "*.dmi": "imagePreview.previewEditor" } -} +} \ No newline at end of file diff --git a/code/__HELPERS/_logging.dm b/code/__HELPERS/_logging.dm index 0c53b2cc131..0d7a945ffde 100644 --- a/code/__HELPERS/_logging.dm +++ b/code/__HELPERS/_logging.dm @@ -144,6 +144,9 @@ GLOBAL_PROTECT(log_end) rustg_log_write(GLOB.sql_log, "[text][GLOB.log_end]") SEND_TEXT(world.log, text) // Redirect it to DD too +/proc/log_chat_debug(text) + rustg_log_write(GLOB.chat_debug_log, "[text][GLOB.log_end]") + // A logging proc that only outputs after setup is done, to // help devs test initialization stuff that happens a lot /proc/log_after_setup(message) diff --git a/code/_globalvars/logging.dm b/code/_globalvars/logging.dm index cb953a2a503..c111aff28cf 100644 --- a/code/_globalvars/logging.dm +++ b/code/_globalvars/logging.dm @@ -19,6 +19,8 @@ GLOBAL_VAR(http_log) GLOBAL_PROTECT(http_log) GLOBAL_VAR(sql_log) GLOBAL_PROTECT(sql_log) +GLOBAL_VAR(chat_debug_log) +GLOBAL_PROTECT(chat_debug_log) GLOBAL_VAR(round_id) GLOBAL_PROTECT(round_id) diff --git a/code/game/machinery/computer/robot.dm b/code/game/machinery/computer/robot.dm index ffa434e7f2d..d0674e34049 100644 --- a/code/game/machinery/computer/robot.dm +++ b/code/game/machinery/computer/robot.dm @@ -225,5 +225,6 @@ log_game("[key_name(usr)] emagged [key_name(R)] using robotic console!") message_admins("[key_name_admin(usr)] emagged [key_name_admin(R)] using robotic console!") R.emagged = TRUE + R.module.rebuild_modules() to_chat(R, "Failsafe protocols overriden. New tools available.") . = TRUE diff --git a/code/game/world.dm b/code/game/world.dm index e5bab32cf55..0e654fb6e01 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -251,6 +251,7 @@ GLOBAL_LIST_EMPTY(world_topic_handlers) GLOB.tgui_log = "[GLOB.log_directory]/tgui.log" GLOB.http_log = "[GLOB.log_directory]/http.log" GLOB.sql_log = "[GLOB.log_directory]/sql.log" + GLOB.chat_debug_log = "[GLOB.log_directory]/chat_debug.log" start_log(GLOB.world_game_log) start_log(GLOB.world_href_log) start_log(GLOB.world_runtime_log) @@ -258,6 +259,7 @@ GLOBAL_LIST_EMPTY(world_topic_handlers) start_log(GLOB.tgui_log) start_log(GLOB.http_log) start_log(GLOB.sql_log) + start_log(GLOB.chat_debug_log) // This log follows a special format and this path should NOT be used for anything else GLOB.runtime_summary_log = "data/logs/runtime_summary.log" diff --git a/code/modules/client/client_procs.dm b/code/modules/client/client_procs.dm index fe1799b5048..455d7a38aff 100644 --- a/code/modules/client/client_procs.dm +++ b/code/modules/client/client_procs.dm @@ -680,7 +680,7 @@ if(query_find_link.NextRow()) if(query_find_link.item[1]) if(!fromban) - to_chat(src, "Your forum account is already set. (" + query_find_link.item[1] + ")") + to_chat(src, "Your forum account is already set. ([query_find_link.item[1]])") qdel(query_find_link) return qdel(query_find_link) diff --git a/code/modules/mining/lavaland/loot/colossus_loot.dm b/code/modules/mining/lavaland/loot/colossus_loot.dm index 7d4b6250ae3..0bf1d67bf71 100644 --- a/code/modules/mining/lavaland/loot/colossus_loot.dm +++ b/code/modules/mining/lavaland/loot/colossus_loot.dm @@ -232,9 +232,21 @@ /obj/machinery/anomalous_crystal/helpers/attack_ghost(mob/dead/observer/user) ..() if(ready_to_deploy) + if(!istype(user)) // No revs allowed + return + if(cannotPossess(user)) + to_chat(user, "Upon using the antagHUD you forfeited the ability to join the round.") + return + if(!user.can_reenter_corpse) + to_chat(user, "You have forfeited the right to respawn.") + return var/be_helper = alert("Become a Lightgeist? (Warning, You can no longer be cloned!)",,"Yes","No") if(be_helper == "No") return + if(!loc || QDELETED(src) || QDELETED(user)) + if(user) + to_chat(user, "[src] is no longer usable!") + return var/mob/living/simple_animal/hostile/lightgeist/W = new /mob/living/simple_animal/hostile/lightgeist(get_turf(loc)) W.key = user.key diff --git a/code/modules/telesci/gps.dm b/code/modules/telesci/gps.dm index 94639805985..ddb43a387c6 100644 --- a/code/modules/telesci/gps.dm +++ b/code/modules/telesci/gps.dm @@ -96,7 +96,7 @@ GLOBAL_LIST_EMPTY(GPS_list) for(var/g in GLOB.GPS_list) var/obj/item/gps/G = g var/turf/GT = get_turf(G) - if(!G.tracking || G == src) + if(isnull(GT) || !G.tracking || G == src) continue if((G.local || same_z) && (GT.z != T.z)) continue diff --git a/goon/code/datums/browserOutput.dm b/goon/code/datums/browserOutput.dm index 431aa3d90bd..786b09e2da2 100644 --- a/goon/code/datums/browserOutput.dm +++ b/goon/code/datums/browserOutput.dm @@ -20,7 +20,6 @@ var/list/chatResources = list( #define MAX_COOKIE_LENGTH 5 /var/savefile/iconCache = new /savefile("data/iconCache.sav") -/var/chatDebug = file("data/chatDebug.log") /datum/chatOutput var/client/owner = null @@ -92,7 +91,10 @@ var/list/chatResources = list( data = doneLoading(arglist(params)) if("debug") - data = debug(arglist(params)) + if(!length(params)) + return + var/error = params[1] + log_chat_debug("Client: [owner.key || owner] triggered JS error: [error][GLOB.log_end]") if("ping") data = ping(arglist(params)) @@ -201,10 +203,6 @@ var/list/chatResources = list( /datum/chatOutput/proc/ping() return "pong" -/datum/chatOutput/proc/debug(error) - error = "\[[time2text(world.realtime, "YYYY-MM-DD hh:mm:ss")]\] Client : [owner.key ? owner.key : owner] triggered JS error: [error]" - chatDebug << error - /** * Sends the lists of code phrases and responses to Goonchat for clientside highlighting * diff --git a/tools/mapmerge2/requirements.txt b/tools/mapmerge2/requirements.txt index 7a6c3f1c94f..f46bdc31d5f 100644 --- a/tools/mapmerge2/requirements.txt +++ b/tools/mapmerge2/requirements.txt @@ -1,3 +1,3 @@ pygit2==1.0.1 bidict==0.13.1 -Pillow==8.1.1 +Pillow==8.2.0