diff --git a/code/__byond_version_compat.dm b/code/__byond_version_compat.dm index 43307b5ce1..8525a8cc23 100644 --- a/code/__byond_version_compat.dm +++ b/code/__byond_version_compat.dm @@ -15,6 +15,14 @@ #error Please consider downgrading to 514.1575 or lower. #endif +#define MAX_COMPILER_VERSION 515 +#if (DM_VERSION > MAX_COMPILER_VERSION) && !defined(SPACEMAN_DMM) +#error Your version of BYOND is currently unsupported and this has been left as a notice +#error If this was unintentional, please revert to 515. +#error Otherwise modify the MAX_COMPILER_VERSION or comment this entire section +#error And get going with making this codebase compatible. +#endif + // Keep savefile compatibilty at minimum supported level #if DM_VERSION >= 515 /savefile/byond_version = MIN_COMPILER_VERSION diff --git a/code/modules/client/client_procs.dm b/code/modules/client/client_procs.dm index 96f59bc048..4d1eb9ba46 100644 --- a/code/modules/client/client_procs.dm +++ b/code/modules/client/client_procs.dm @@ -375,6 +375,16 @@ GLOBAL_LIST_INIT(blacklisted_builds, list( qdel(src) return + if(byond_version > 515) + if(!connecting_admin) + log_access("Failed login: [key] - [byond_version] is unsupported.") + to_chat(src, span_userdanger("Your version of byond is unsupported.")) + to_chat(src, span_danger("Byond build [byond_build] ([byond_version].[byond_build]) has been disallowed from joining the game due to simply being unable to interact with way too many game elements, rendering it unplayable.")) + to_chat(src, span_danger("Until we are capable of supporting webview, playing will be restricted to versions below 516, you can go to BYOND's website to download other versions.")) + qdel(src) + return + to_chat(src, "As an admin, you are being allowed through, be warned that TGUI is incapable of loading in this version and you might have major issues.") + // Initialize tgui panel src << browse(file('html/statbrowser.html'), "window=statbrowser") addtimer(CALLBACK(src, PROC_REF(check_panel_loaded)), 30 SECONDS)