Added key lookup
This commit is contained in:
parent
da607f3158
commit
641fcad840
@ -3,7 +3,8 @@ import struct
|
||||
|
||||
class OFFSETS:
|
||||
VERSION = 0x42e
|
||||
KEYS = 0x12DB
|
||||
KEYS_LABEL = 0x12DB
|
||||
KEYS_VALUE = 0x12F9
|
||||
ACCOUNT_LEVEL = 0x12AD
|
||||
|
||||
|
||||
@ -20,13 +21,22 @@ def load_save(save_file_name):
|
||||
print(f"Failed to read save file: {e}")
|
||||
|
||||
|
||||
def get_key_value(save):
|
||||
try:
|
||||
data = struct.pack(">i", save[OFFSETS.KEYS_VALUE])
|
||||
return data
|
||||
except struct.error as e:
|
||||
print(f"{e}")
|
||||
|
||||
|
||||
def verify_save(save):
|
||||
try:
|
||||
struct.pack("bbbb", *save[:4]) == b"GVAS"
|
||||
token = _bytes_to_string(read_token_at_offset(save, OFFSETS.VERSION))
|
||||
if token == "CrabChampionsVersion":
|
||||
return True
|
||||
except struct.error:
|
||||
except struct.error as e:
|
||||
print(f"{e}")
|
||||
return False
|
||||
|
||||
|
||||
@ -44,7 +54,7 @@ def read_token_at_offset(save, offset, size=1):
|
||||
save = load_save("./test.sav")
|
||||
|
||||
if verify_save(save):
|
||||
print("Save appears to be a save file of some kind")
|
||||
print("Save is a valid Crab Champions save")
|
||||
else:
|
||||
print("The fuck is this shit mate")
|
||||
exit()
|
||||
@ -53,5 +63,6 @@ else:
|
||||
# Should be fine to do shit here
|
||||
# print(read_token_at_offset(save, 0x12DB)) # Keys
|
||||
# print(read_token_at_offset(save, 0x12AD)) # AccountLevel
|
||||
token = read_token_at_offset(save, OFFSETS.KEYS)
|
||||
print(_bytes_to_string(token))
|
||||
token = read_token_at_offset(save, OFFSETS.KEYS_LABEL)
|
||||
# print(_bytes_to_string(token))
|
||||
print(f"You have {int.from_bytes(get_key_value(save))} keys")
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user