Fixed InitOrGetGroup to 99%

This commit is contained in:
ZKWolf 2024-02-05 19:25:05 +01:00
parent 27dce62e61
commit a3738cd5e6

View File

@ -119,7 +119,14 @@ def moderation_check_username():
try:
request_var = request.get_json()
userid = sanitize_input(request_var["userId"])
username = sanitize_input(request_var["username"])
steamid, token = mongo.get_user_info(userId=userid)
# temp test
return jsonify({
"PlayerName": username,
"UserId": steamid
})
#
return jsonify({"Id": userid, "Token": token,
"Provider": {"ProviderName": request_var["username"],
"ProviderId": steamid}}) # CLIENT:{"userId": "ID-ID-ID-ID-SEE-AUTH", "username": "Name-Name-Name"}
@ -392,6 +399,9 @@ def wallet_currencies():
"CurrencyGroup": "HardCurrencyGroup", "LastRefillTimeStamp": "1684862187"},
{"Currency": "PROGRESSION_CURRENCY", "Balance": 10000,
"CurrencyGroup": "HardCurrencyGroup", "LastRefillTimeStamp": "1684862187"}]})
except TypeError:
return jsonify({"status": "error"})
except TimeoutError:
return jsonify({"status": "error"})
except Exception as e:
@ -608,7 +618,7 @@ def extension_progression_init_or_get_groups():
return jsonify({
"ProgressionGroups":[
{
"ObjectId":"43CD7EEC-4AB9D6FA-B8EB9387-1964FC60",
"ObjectId":"EGMGroupTypeEnum::RunnerProgression",
"Version":1,
"SchemaVersion":1.1,
"Data":{
@ -620,7 +630,7 @@ def extension_progression_init_or_get_groups():
}
},
{
"ObjectId":"C50FFFBF-46866131-82F45890-651797CE",
"ObjectId":"EGMGroupTypeEnum::HunterProgression",
"Version":1,
"SchemaVersion":1.1,
"Data":{
@ -630,14 +640,26 @@ def extension_progression_init_or_get_groups():
"ExperienceToReach":30
}
}
}
},
{
"ObjectId": "EGMGroupTypeEnum::PlayerProgression",
"Version": 1,
"SchemaVersion": 1.1,
"Data": {
"Experience": {
"Level": 1,
"CurrentExperience": 12,
"ExperienceToReach": 30
}
}
}
],
"MetadataGroups":[
{
"ObjectId": "43CD7EEC-4AB9D6FA-B8EB9387-1964FC60",
"ObjectId": "EGMGroupTypeEnum::RunnerMetadata",
"Version": 1,
"SchemaVersion": 1.1,
"Data": {"CharacterId": {"TagName": "Runner.Smoke"},
"Data": {"CharacterId": {"TagName": "Runner.Ink"},
"Equipment": [],
"EquippedPerks": ["1E08AFFA-485E92BA-FF2C1BB8-5CEFB81E"],
"EquippedPowers": [],
@ -646,17 +668,24 @@ def extension_progression_init_or_get_groups():
}
},
{
"ObjectId": "C50FFFBF-46866131-82F45890-651797CE",
"ObjectId": "EGMGroupTypeEnum::HunterMetadata",
"Version": 1,
"SchemaVersion": 1.1,
"Data": {"CharacterId": {"TagName": "Hunter.Stalker"},
"Data": {"CharacterId": {"TagName": "Hunter.Inquisitor"},
"Equipment": [],
"EquippedPerks": ["791F12E0-47DA9E26-E246E385-9C3F587E"],
"EquippedPowers": ["08DC38B6-470A7A5B-0BA025B9-6279DAA8"],
"EquippedWeapons": ["307A0B13-417737DE-D675309F-8B978AB8"],
"EquippedBonuses": []
}
}
},
{
"ObjectId": "EGMGroupTypeEnum::PlayerMetadata",
"Version": 1,
"SchemaVersion": 1.1,
"Data": {
}
}
]})
except TimeoutError:
@ -665,6 +694,111 @@ def extension_progression_init_or_get_groups():
logger.graylog_logger(level="error", handler="logging_initOrGetGroups", message=e)
@app.route("/api/v1/extensions/progression/updateMetadataGroup", methods=["POST"])
def update_metadata_group():
check_for_game_client("strict")
session_cookie = sanitize_input(request.cookies.get("bhvrSession"))
userid = session_manager.get_user_id(session_cookie)
try:
data = request.get_json()
object_id = data["data"]["objectId"]
version = data["data"]["version"]
metadata = data["data"]["metadata"]
last_played_faction = metadata["lastPlayedFaction"]
last_played_runner_id = metadata["lastPlayedRunnerId"]
last_played_hunter_id = metadata["lastPlayedHunterId"]
should_play_without_contextual_help = metadata["shouldPlayWithoutContextualHelp"]
has_played_death_garden_1 = metadata["hasPlayedDeathGarden1"]
reason = data["data"]["reason"]
logger.graylog_logger(level="info", handler="logging_updateMetadataGroup", message=data)
# return jsonify({"status": "success"})
return jsonify({
"ProgressionGroups":[
{
"ObjectId":"EGMGroupTypeEnum::RunnerProgression",
"Version":1,
"SchemaVersion":1.1,
"Data":{
"Experience":{
"Level":1,
"CurrentExperience":2,
"ExperienceToReach":30
}
}
},
{
"ObjectId":"EGMGroupTypeEnum::HunterProgression",
"Version":1,
"SchemaVersion":1.1,
"Data":{
"Experience":{
"Level":1,
"CurrentExperience":12,
"ExperienceToReach":30
}
}
},
{
"ObjectId": "EGMGroupTypeEnum::PlayerProgression",
"Version": 1,
"SchemaVersion": 1.1,
"Data": {
"Experience": {
"Level": 1,
"CurrentExperience": 12,
"ExperienceToReach": 30
}
}
}
],
"MetadataGroups":[
{
"ObjectId": "EGMGroupTypeEnum::RunnerMetadata",
"Version": 1,
"SchemaVersion": 1.1,
"Data": {"CharacterId": {"TagName": last_played_runner_id},
"Equipment": [],
"EquippedPerks": ["1E08AFFA-485E92BA-FF2C1BB8-5CEFB81E"],
"EquippedPowers": [],
"EquippedWeapons": ["C8AF3D53-4973F82F-ADBB40BD-A96F9DCD"],
"EquippedBonuses": []
}
},
{
"ObjectId": "EGMGroupTypeEnum::HunterMetadata",
"Version": 1,
"SchemaVersion": 1.1,
"Data": {"CharacterId": {"TagName": last_played_hunter_id},
"Equipment": [],
"EquippedPerks": ["791F12E0-47DA9E26-E246E385-9C3F587E"],
"EquippedPowers": ["08DC38B6-470A7A5B-0BA025B9-6279DAA8"],
"EquippedWeapons": ["307A0B13-417737DE-D675309F-8B978AB8"],
"EquippedBonuses": []
}
},
{
"ObjectId": "EGMGroupTypeEnum::PlayerMetadata",
"Version": 1,
"SchemaVersion": 1.1,
"Data": {
"LastPlayedFaction": last_played_faction, "LastPlayedRunnerId": {"tagName": last_played_runner_id},
"LastPlayedHunterId": {"tagName": last_played_hunter_id},
"shouldPlayWithoutContextualHelp":should_play_without_contextual_help,"hasPlayedDeathGarden1":True
}
}
]})
except TimeoutError:
return jsonify({"status": "error"})
except Exception as e:
logger.graylog_logger(level="error", handler="logging_updateMetadataGroup", message=e)
# POST https://api.zkwolf.com/api/v1/extensions/progression/updateMetadataGroup HTTP/1.1
# {"data":{"objectId":"PlayerMetadata","version":2,"metadata":{
# "lastPlayedFaction":"Runner","lastPlayedRunnerId":{"tagName":"Runner.Ink"},"lastPlayedHunterId":{"tagName":"None"},
# "shouldPlayWithoutContextualHelp":false,"hasPlayedDeathGarden1":false},"reason":"SetLastPlayedCharacterId"}}
# dont know if this works. Hope it does.
@app.route("/api/v1/extensions/inventory/unlockSpecialItems", methods=["POST"])
def inventory_unlock_special_items():
@ -681,6 +815,24 @@ def inventory_unlock_special_items():
logger.graylog_logger(level="error", handler="unknown_unlockSpecialItems", message=e)
# POST https://api.zkwolf.com//api/v1/extensions/progression/resetCharacterProgressionForPrestige HTTP/1.1
# {"data":{"characterId":"755D4DFE40DA1512B01E3D8CFF3C8D4D"}}
@app.route("/api/v1/extensions/progression/resetCharacterProgressionForPrestige", methods=["POST"])
def reset_prestige():
check_for_game_client("strict")
session_cookie = sanitize_input(request.cookies.get("bhvrSession"))
userid = session_manager.get_user_id(session_cookie)
try:
data = request.get_json()
character_id = data["data"]["characterId"]
logger.graylog_logger(level="info", handler="resetCharacterProgressionForPrestige", message=data)
return jsonify({"status": "success"})
except TimeoutError:
return jsonify({"status": "error"})
except Exception as e:
logger.graylog_logger(level="error", handler="resetCharacterProgressionForPrestige", message=e)
@app.route("/api/v1/extensions/challenges/getChallengeProgressionBatch", methods=["POST"])
def challenges_get_challenge_progression_batch():
check_for_game_client("strict")
@ -802,6 +954,10 @@ def challenges_get_challenge_progression_batch():
"Id": "C90F72FC4D61B1F2FBC73F8A4685EA41",
"Amount": 1.0, "Claimed": False}]
}})
elif challenge == "24CE65364362CB2A90C0E08876176937":
challenge_list.append({"challengeId": "24CE65364362CB2A90C0E08876176937",
"operationName":"complete"
})
else:
logger.graylog_logger(level="error", handler="logging_missing_challenge",
message=f"Unknown challenge id {challenge}")