Advertisement
tjone270

reset_player.py

May 28th, 2019
2,505
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.10 KB | None | 0 0
  1. import redis
  2. import sys
  3.  
  4. try:
  5.     sid = str(int(input("Please enter the Steam64 ID of the player to erase from The Purgery database: ")))
  6.     if len(sid) != 17:
  7.         raise ValueError
  8.     if sid[0:6] != "765611":
  9.         raise ValueError
  10. except:
  11.     print("Invalid Steam64 ID.")
  12.     sys.exit(0)
  13.  
  14. cursor = redis.Redis(host="thepurgery.com")
  15.  
  16. if not cursor.sismember("minqlx:players", sid): # if the player doesn't exist or hasn't played on The Purgery before
  17.     print("Player does not exist in the The Purgery database.")
  18.     sys.exit(0)
  19.  
  20. player_name = cursor.lrange("minqlx:players:{}".format(sid), 0, -1)[0].decode()[:-2]
  21. player_ips  = cursor.smembers("minqlx:players:{}:ips".format(sid))
  22.  
  23. print("Found player '{}' - OK to proceed".format(player_name), end=" ")
  24.  
  25. if input("(Y/N)? ").lower() != "y":
  26.     sys.exit(0)
  27.  
  28. print("Deleting player...")
  29.  
  30. cursor.srem("minqlx:players", sid)
  31. print(" • Deleted steam database entry.")
  32. cursor.delete("minqlx:players:{}".format(sid))
  33. print(" • Deleted aliases.")
  34. cursor.delete("minqlx:players:{}:bans".format(sid))
  35. print(" • Deleted bans.")
  36. cursor.delete("minqlx:players:{}:clantag".format(sid))
  37. print(" • Deleted clan tag.")
  38. cursor.delete("minqlx:players:{}:colored_name".format(sid))
  39. print(" • Deleted coloured name.")
  40. cursor.delete("minqlx:players:{}:games_completed".format(sid))
  41. cursor.delete("minqlx:players:{}:games_left".format(sid))
  42. print(" • Deleted games left/completed.")
  43. cursor.delete("minqlx:players:{}:last_seen".format(sid))
  44. print(" • Deleted last connect timestamp.")
  45. cursor.delete("minqlx:players:{}:permission".format(sid))
  46. print(" • Deleted permissions.")
  47. cursor.delete("minqlx:players:{}:flags*".format(sid))
  48. print(" • Deleted flags.")
  49. cursor.delete("minqlx:players:{}:silences*".format(sid))
  50. print(" • Deleted silence records.")
  51.  
  52. for ip in player_ips:
  53.     cursor.delete("minqlx:ips:{}".format(ip.decode()))
  54.     cursor.srem("minqlx:ips", ip.decode())
  55. print(" • Deleted player IP correlation records.")
  56.  
  57. cursor.delete("minqlx:players:{}:ips".format(sid))
  58. print(" • Deleted player IP addresses.")
  59.  
  60. print("Done.")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement