Added byond_version checking to client/New(). If a client's installed byond_version is lower than MIN_CLIENT_VERSION then they will be autokicked.

It is not in effect yet (minimum version is v0 :P). However, <b>everyone must update to at least byond version 494 by the end of the month, or they may find themselves unable to connect</b>.

If anyone has a legitimate reason for why they need to use an older version (linux, language-support etc) please get in touch and we'll work something out.

Why is this even necessary? Encouraging the payerbase to keep up-to-date BYOND clients will allow us to implement newer BYOND features reliably. It also makes sure all clients are behaving similarly.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4263 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
elly1989@rocketmail.com
2012-08-01 09:53:00 +00:00
parent f166bd6bb5
commit 066ec983fe
3 changed files with 19 additions and 5 deletions
+2 -2
View File
@@ -11,8 +11,8 @@ world/IsBanned(key,address,computer_id)
//check if the IP address is a known TOR node
if( config && config.ToRban && ToRban_isbanned(address) )
log_access("Failed Login: [src] - Banned: ToR - BYOND Version: [byond_version]")
message_admins("\blue Failed Login: [src] - Banned: ToR - BYOND Version: [byond_version]")
log_access("Failed Login: [src] - Banned: ToR")
message_admins("\blue Failed Login: [src] - Banned: ToR")
//ban their computer_id and ckey for posterity
AddBan(ckey(key), computer_id, "Use of ToR", "Automated Ban", 0, 0)
return list("reason"="Using ToR", "desc"="\nReason: The network you are using to connect has been banned.\nIf you believe this is a mistake, please request help at [config.banappeals]")
+9 -3
View File
@@ -3,6 +3,8 @@
////////////
#define TOPIC_SPAM_DELAY 4 //4 ticks is about 3/10ths of a second
#define UPLOAD_LIMIT 1048576 //Restricts client uploads to the server to 1MB //Could probably do with being lower.
#define MIN_CLIENT_VERSION 0 //Just an ambiguously low version for now, I don't want to suddenly stop people playing.
//I would just like the code ready should it ever need to be used.
/*
When somebody clicks a link in game, this Topic is called first.
It does the stuff in this proc and then is redirected to the Topic() proc for the src=[0xWhatever]
@@ -86,8 +88,8 @@
//CONNECT//
///////////
/client/New()
//Connection-Type Checking
if( connection != "seeker" )
//Connection-Type and client byond_version checking
if( connection != "seeker" || (byond_version < MIN_CLIENT_VERSION)) //Out of date or wrong connection type. Update your client!!
del(src)
return
client_list += src
@@ -176,4 +178,8 @@
var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO erro_player (id, ckey, firstseen, lastseen, ip, computerid, lastadminrank) VALUES (null, '[sql_ckey]', Now(), Now(), '[sql_ip]', '[sql_computerid]', '[sql_admin_rank]')")
query_insert.Execute()
dbcon.Disconnect()
dbcon.Disconnect()
#undef TOPIC_SPAM_DELAY
#undef UPLOAD_LIMIT
#undef MIN_CLIENT_VERSION