One use case would be to send pager/seeker clients to a web page to download a resource pack so that the server doesn't have to serve it at an instance (the client gets the resource in the front). You wouldn't be able to both advertise your game on the hub AND require an up-front resource to both custom-client users AND pager/seeker users. This is because seeker just downloads resources automagically.
I'm sure there's other use cases.
client/New()
world.log << "New client connecting..."
var/sleeps = 10
while(!connection && sleeps > 0)
sleeps--
sleep(1)
if(!sleeps)
world.log << "Couldn't figure out connection type, aborted user."
world.log << " key: [src.key]"
world.log << " address: [src.address]"
world.log << " computer_id: [src.computer_id]"
return 0
if(connection == "telnet")
world.log << "Disconnecting [src] / [src.address] / [src.computer_id] for connecting via TELNET."
return 0
if(connection == "cgi")
world.log << "Disconnecting [src] / [src.address] / [src.computer_id] for connecting via CGI."
return 0
if(connection == "seeker")
src << link("http://www.gamewebsite.com/downloads/")
return 0
//world = world.Export() connection from another server
world.log << " connection type = [src.connection]"//should be byondexe
Edit: I just realized that the client would already have the resources by the time it reached client.New() if it were a pager/seeker client... Perhaps you'd have to delegate this in world.IsBanned(), which raises the question: Would client.connection be available at that point?
but this is a pretty cool idea lol.
not sure about cgi.
++