SFTtech / openage

Free (as in freedom) open source clone of the Age of Empires II engine 🚀
http://openage.dev
Other
12.72k stars 1.12k forks source link

AoE II DE Asset conversion fails #1484

Closed icefog123 closed 1 year ago

icefog123 commented 2 years ago

When I convert assets in my Docker container, it fails like below, a lot of "ValueError: Unknown format code 'x' for object of type 'str' "

root@c540e62088fa:/home/openage/bin# python3 -m openage INFO [py] launching openage v0.4.1-762-g5237262c INFO [py] compiled by GNU 11.2.0 INFO [py] running in DEVMODE Do you want to convert assets? [Y/n]

Y Could not find any installation directory automatically. Please enter an AOE2 install path manually. /home/AOE2 converting from '/home/AOE2' INFO [py] Looking for compatible games to convert... INFO [py] Compatible game edition detected: INFO [py] * Age of Empires 2: Definitive Edition INFO [py] converting metadata INFO [py] [0] palette INFO [py] [1] empires.dat INFO [py] using cached wrapper: /tmp/AOE2DE_empires2_x2_p1.dat.pickle INFO [py] Starting conversion... INFO [py] Extracting Genie data... INFO [py] Creating API-like objects... INFO [py] Linking API-like objects... INFO [py] Generating auxiliary objects... INFO [py] Creating nyan objects... WARN [py] Could not create upgrade from unit 68 to 1734 WARN [py] Could not create upgrade from unit 129 to 1734 WARN [py] Could not create upgrade from unit 130 to 1734 WARN [py] Could not create upgrade from unit 131 to 1734 INFO [py] Creating requests for media export... INFO [py] Starting export... INFO [py] Dumping info file... INFO [py] Dumping data files... INFO [py] Exporting media files... ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' ValueError: Unknown format code 'x' for object of type 'str' Exception ignored in: 'openage.convert.value_object.read.media.smx.SMXShadowLayer.process_drawing_cmds' Traceback (most recent call last): File "/home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/processor/export/media_exporter.py", line 214, in _export_graphics image = SMX(media_file.read()) ValueError: Unknown format code 'x' for object of type 'str' python3: /home/openage/.bin/g++-debug-Oauto-sanitize-none/openage/convert/value_object/read/media/smx.cpp:34790: PyObject __Pyx_PyCFunction_FastCall(PyObject, PyObject**, Py_ssize_t): Assertion `!PyErr_Occurred()' failed. Aborted (core dumped) root@c540e62088fa:/home/openage/bin# ^C

heinezen commented 2 years ago

Probably this line here:

https://github.com/SFTtech/openage/blob/master/openage/convert/value_object/read/media/smx.pyx#L707-L712

heinezen commented 2 years ago

I can't reproduce this for the latest DE2 update. Did you use the Steam version directly?

icefog123 commented 2 years ago

@heinezen > I install the DE2 on Steam on Windows platform first,and copy the whole game folder to my docker container which is Ubuntu platform. It is difficult for me to install DE2 on Ubuntu then, so at first I thought to convert assets in docker container and then copy the converted assets back to windows to play use the openage release edition.

simonsan commented 2 years ago

@icefog123 Are you by any chance on the PUP branch (beta branch kind of thing) of AoE2DE on Steam?

icefog123 commented 2 years ago

@simonsan should not be that reason , I am sure