ID:2161336
 
Applies to:DM Language
Status: Open

Issue hasn't been assigned a status value.
world/IsBanned() needs a way to find out client info before they connect. The userAgent should be provided for webclient connections, and BYOND client version info (along with some basic client info - perhaps .configure settings?) should be provided if available at that point.
I know that IsBanned runs pretty early in the handshake process, so i wouldn't be shocked if none of that info is available to byond at that point, and part of the logic of running it so early to is reduce the ability of banned users to ddos by spamming connection attempts.

Nothing wrong with doing disconnects in client/New(), just do it after ..() or the client won't see the message.
IsBanned also gets called before resources are downloaded, so it's a good place to cut users off, otherwise you're wasting server resources for users who won't even be able to join.