diff --git a/code/modules/client/client procs.dm b/code/modules/client/client procs.dm index dce3f86c6b9..9a41733e8a2 100644 --- a/code/modules/client/client procs.dm +++ b/code/modules/client/client procs.dm @@ -572,9 +572,13 @@ if(ip_intel >= config.ipintel_rating_bad) var/detailsurl = config.ipintel_detailsurl ? "(IP Info)" : "" if(config.ipintel_whitelist) - message_admins("IPIntel: [key_name_admin(src)] on IP [address] was rejected. [detailsurl]") - // Don't send them a message. They won't see it at this stage. Instead, they see a message when they try to reconnect. - qdel(src) + spawn(40) // This is necessary because without it, they won't see the message, and addtimer cannot be used because the timer system may not have initialized yet + message_admins("IPIntel: [key_name_admin(src)] on IP [address] was rejected. [detailsurl]") + var/blockmsg = "Error: proxy/VPN detected. Proxy/VPN use is not allowed here. Deactivate it before you reconnect." + if(config.banappeals) + blockmsg += "\nIf you are not actually using a proxy/VPN, or have no choice but to use one, request whitelisting at: [config.banappeals]" + to_chat(src, blockmsg) + qdel(src) else message_admins("IPIntel: [key_name_admin(src)] on IP [address] is likely to be using a Proxy/VPN. [detailsurl]")