import sys import a2s import math import json from a2s import dayzquery sys.path.append('a2s') def get_info(ip, qport): try: info = a2s.info((ip, int(qport))) name = info.server_name address = ip + ":" + str(info.port) count = str(info.player_count) + "/" + str(info.max_players) keywords = info.keywords ping = (info.ping*1000) ping = math.floor(ping) res = {} res['name'] = name res['address'] = address res['count'] = count res['keywords'] = keywords res['stat'] = "online" res['qport'] = qport res['ping'] = str(ping) + "ms" j = json.dumps(res) print(j) except: sys.exit(1) def get_rules(ip, qport): try: mods = dayzquery.dayz_rules((ip, int(qport))).mods for k in mods: print(k.workshop_id) except: sys.exit(1) ip = sys.argv[1] qport = sys.argv[2] mode = sys.argv[3] match mode: case "info": get_info(ip, qport) case "rules": get_rules(ip, qport)