Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incompatibility with v0.2.0.6 #167

Open
IdioticRemi opened this issue Apr 4, 2024 · 10 comments
Open

Incompatibility with v0.2.0.6 #167

IdioticRemi opened this issue Apr 4, 2024 · 10 comments
Labels
bug Something isn't working

Comments

@IdioticRemi
Copy link

Have you modified the save files

No

Have you tried the latest release

Yes, I tried using version 0.21.0 and version 0.20.0

Describe the bug/reproduction steps

Exact command ran:

palworld-save-tools data/Pal/Saved/SaveGames/0/A48A41F040C0E4D0B80F16BA19CD40EB/Level.sav

Exception message:

Warning: EOF not reached for Crusher PalMapObjectConvertItemModel: ori: 6274c526fd807f4093e297da098130f6856c02899f78594baf7aa9a9635cb8b30e00000050616c5f6372797374616c5f53003d010000580200000000803f00000000 remaining: 4

Full logs:

Converting data/Pal/Saved/SaveGames/0/A48A41F040C0E4D0B80F16BA19CD40EB/Level.sav to JSON, saving to data/Pal/Saved/SaveGames/0/A48A41F040C0E4D0B80F16BA19CD40EB/Level.sav.json
Decompressing sav file
Loading GVAS file
Traceback (most recent call last):
  File "/home/ubuntu/.local/bin/palworld-save-tools", line 8, in <module>
    sys.exit(main())
  File "/home/ubuntu/.local/lib/python3.10/site-packages/palworld_save_tools/commands/convert.py", line 71, in main
    convert_sav_to_json(
  File "/home/ubuntu/.local/lib/python3.10/site-packages/palworld_save_tools/commands/convert.py", line 114, in convert_sav_to_json
    gvas_file = GvasFile.read(
  File "/home/ubuntu/.local/lib/python3.10/site-packages/palworld_save_tools/gvas.py", line 131, in read
    gvas_file.properties = reader.properties_until_end()
  File "/home/ubuntu/.local/lib/python3.10/site-packages/palworld_save_tools/archive.py", line 386, in properties_until_end
    properties[name] = self.property(type_name, size, f"{path}.{name}")
  File "/home/ubuntu/.local/lib/python3.10/site-packages/palworld_save_tools/archive.py", line 399, in property
    value = self.struct(path)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/palworld_save_tools/archive.py", line 510, in struct
    value = self.struct_value(struct_type, path)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/palworld_save_tools/archive.py", line 537, in struct_value
    return self.properties_until_end(path)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/palworld_save_tools/archive.py", line 386, in properties_until_end
    properties[name] = self.property(type_name, size, f"{path}.{name}")
  File "/home/ubuntu/.local/lib/python3.10/site-packages/palworld_save_tools/archive.py", line 396, in property
    value = self.custom_properties[path][0](self, type_name, size, path)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/palworld_save_tools/rawdata/map_object.py", line 45, in decode
    map_concrete_model.decode_bytes(
  File "/home/ubuntu/.local/lib/python3.10/site-packages/palworld_save_tools/rawdata/map_concrete_model.py", line 441, in decode_bytes
    raise Exception(
Exception: Warning: EOF not reached for Crusher PalMapObjectConvertItemModel: ori: 6274c526fd807f4093e297da098130f6856c02899f78594baf7aa9a9635cb8b30e00000050616c5f6372797374616c5f53003d010000580200000000803f00000000 remaining: 4

Additional Info

This was all done on a Ubuntu 22.04 server
Python version: v3.10.12

Copy of Level.sav file

Level.sav.zip

@cheahjs
Copy link
Owner

cheahjs commented Apr 4, 2024

Which version of the game was this on?

@IdioticRemi
Copy link
Author

I think it updated this morning, so it should be v0.2.0.6

@IdioticRemi
Copy link
Author

IdioticRemi commented Apr 4, 2024

I tried converting a backup I have from yesterday, and there is no issue in the convert process. They might have updated some structs i guess.

@IdioticRemi
Copy link
Author

Note: I just realized the save file I attached to the issue is probably is the old one, my bad
here's the "broken" one
Level.zip

@cheahjs
Copy link
Owner

cheahjs commented Apr 4, 2024

Yeah I suspect that they've added new bits of data, I'll need to handle this more gracefully.

@cheahjs cheahjs changed the title Cannot convert unedited Level.sav to json Incompatibility with v0.2.0.6 Apr 4, 2024
@cheahjs cheahjs added the bug Something isn't working label Apr 4, 2024
@cheahjs cheahjs pinned this issue Apr 4, 2024
@ProjectEnzoGH
Copy link

ProjectEnzoGH commented Apr 5, 2024

  • ConcreteModel PalMapObjectConvertItemModel (4) and PalMapObjectDeathPenaltyStorageModel (8) both have new bytes
  • .worldSaveData.ItemContainerSaveData.Value.RawData has 4 new bytes
  • .worldSaveData.InvaderSaveData Key/Value struct unknown. (MapProperty<Struct(Guid),Struct(PalInvaderSaveData)>)
  • Altar and PickupItem_CaveMushroom are two of the new items. (Haven't gotten more at this point)

@ZikryZAzhar
Copy link

  • Map object 'CopperPit' not in database
  • Map object 'CopperPit_2' not in database,

@cheahjs
Copy link
Owner

cheahjs commented Apr 5, 2024

I've made a release that should cover the issues that have been reported so far: https://github.com/cheahjs/palworld-save-tools/releases/tag/v0.22.0

@ProjectEnzoGH
Copy link

I am getting this message still:

Warning: Unknown map object concrete model PalBuildObjectRaidBossSummon, skipping

Should we add PalBuildObjectRaidBossSummon to NO_OP_TYPES for now?

@bodziarr
Copy link

Owner

Can verify https://github.com/xNul/palworld-host-save-fix works when using the latest tag 0.22.0 of this repo. Thanks.

bodziarr added a commit to bodziarr/palworld-host-save-fix that referenced this issue Apr 10, 2024
Updated with latest version of the dependent repo "Palworld Save Tools" latest tag 0.22.0 based on this issue: cheahjs/palworld-save-tools#167
@cheahjs cheahjs unpinned this issue Jun 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

5 participants