Skip to content

Instantly share code, notes, and snippets.

@euske
Created January 29, 2012 03:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save euske/1697044 to your computer and use it in GitHub Desktop.
Save euske/1697044 to your computer and use it in GitHub Desktop.
Minecraft kick server
#!/usr/bin/env python
# mckick.py - Minecraft kick server
#
# usage:
# $ python mckick.py 'server maintenance!'
#
import sys, struct, socket
def main(argv):
args = argv[1:]
if not args:
print 'usage: %s message' % argv[0]
return 100
msg = unicode(args[0])
reply = struct.pack('>BH', 255, len(msg))+msg.encode('utf-16be')
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(('', 25565))
server.listen(5)
print 'listening...'
while 1:
(client, addr) = server.accept()
print 'accepted:', addr
client.send(reply)
client.close()
return
if __name__ == '__main__': sys.exit(main(sys.argv))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment