pjasicek / OpenClaw

Reimplementation of Captain Claw (1997) platformer
GNU General Public License v3.0
338 stars 39 forks source link

failed to get the game running on rpi4 raspbian #149

Closed ghost closed 4 years ago

ghost commented 4 years ago

Hi, so I wanted to retest this game after my rpi3 test but I got a problem. I had to download and preload an old sdl2 mixer bc the repo one was failing somehow. Also, ive downloaded an old sdl 2.0.2 bc I know this game have problems with recent sdl2 versions

pi@raspberrypi:~/Desktop/OpenClaw/Build_Release $ ./openclaw 
WARN: [RunGameEngine] Failed to set high priority class to this process
INFO: Looking for: /home/pi/.config/openclaw/config.xml
INFO: Expecting config.xml in path: config.xml
INFO: Loaded with:
    Config File: config.xml
    Saves File: SAVES.XML
INFO: >>>>> Initializing display...
INFO: Display successfully initialized.
INFO: >>>>> Initializing audio...
INFO: Audio successfully initialized.
INFO: >>>>> Initializing font...
INFO: Font successfully initialized...
INFO: >>>>> Initializing resource cache...
INFO: Resource cache successfully initialized
INFO: >>>>> Initializing touch resolver...
INFO: Touch resolver successfully initialized...
INFO: >>>>> Loading actor prototypes...
INFO: Actor prototypes loaded successfully.
INFO: "/level_metadata/level12.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level1.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level11.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level6.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level5.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level7.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level10.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level2.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level3.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level9.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level4.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level8.xml": level metadata file successfully loaded.
ERROR: [Initialize] Failed to find corresponding SDL key to : 
ERROR: [Initialize] Could not initialize menu page: MenuPage_Main
ERROR: [EnterMenu] Could not initialize ScreenElementMenu
ERROR: [VChangeState] Failed to enter menu
INFO: Terminating...
ERROR: [SaveGameOptions] Not implemented yet!

not too much info so far? any debug env ...or maybe I should try just gdb

RicoRodriges commented 4 years ago

The problem is in one of *MENU.XML file inside ASSERT.ZIP file. It reads <KeyType> tag content as empty string or something like this. Did you zip Build_Release/ASSERT folder? Did you change something inside this folder?

ghost commented 4 years ago

So, I have an assets.zip folder already, Ive removed the one than exist on my release folder , ziped the ASSETS folder as you suggested, and it doesnt run neither. could you supply a good one? these are both... the one ive zipped from ASSETS/ ASSETS.ZIP the one I deleted ASSET.zip nothing strange... they are inside the repo..

RicoRodriges commented 4 years ago

Do you have debug tools? If you could use breakpoints then use OpenClaw/Engine/UserInterface/UserInterface.cpp:832. Looks like keyStr is empty. Or you can try to skip menu page. Use <SkipMenu>true</SkipMenu> in config.xml.

The second file is correct but it has to have a ASSETS.ZIP name and contains ASSETS folder content without ASSETS folder (compare this file structures). But if all 12 levels were loaded I think that your file and TinyXML library are ok.

ghost commented 4 years ago

skipping the menu it launches, but we have more problems anyway something related to arm I think

pi@raspberrypi:~/Desktop/OpenClaw/Build_Release $ INFO: Display successfully initialized.
INFO: >>>>> Initializing audio...
INFO: Audio successfully initialized.
INFO: >>>>> Initializing font...
INFO: Font successfully initialized...
INFO: >>>>> Initializing resource cache...
INFO: Resource cache successfully initialized
INFO: >>>>> Initializing touch resolver...
INFO: Touch resolver successfully initialized...
INFO: >>>>> Loading actor prototypes...
INFO: Actor prototypes loaded successfully.
INFO: "/level_metadata/level12.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level1.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level11.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level6.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level5.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level7.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level10.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level2.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level3.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level9.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level4.xml": level metadata file successfully loaded.
INFO: "/level_metadata/level8.xml": level metadata file successfully loaded.
ERROR: [MEMORY_PROFILER] Memory profiler not supported on this platform !
INFO: Position: [X: 5952.000000, Y: 3552.000000], SpringHeight: 0.000000
INFO: Position: [X: 8317.000000, Y: 3550.000000], SpringHeight: 0.000000
INFO: Position: [X: 13086.000000, Y: 3553.000000], SpringHeight: 0.000000
INFO: Position: [X: 14240.000000, Y: 3042.000000], SpringHeight: 0.000000
INFO: Position: [X: 18048.000000, Y: 3547.000000], SpringHeight: 0.000000
INFO: Position: [X: 18499.000000, Y: 3547.000000], SpringHeight: 0.000000
INFO: Position: [X: 33856.000000, Y: 3546.000000], SpringHeight: 0.000000
INFO: Position: [X: 32095.000000, Y: 3548.000000], SpringHeight: 0.000000
WARN: [WwdObjectToXml] Unknown logic: Shake
WARN: [WwdObjectToXml] Unknown logic: AquatisDynamite
WARN: [WwdObjectToXml] Unknown logic: DoNothing
WARN: [WwdObjectToXml] Unknown logic: GooCoverup
INFO: Position: [X: 3840.000000, Y: 3549.000000], SpringHeight: 0.000000
INFO: Position: [X: 21889.000000, Y: 3576.000000], SpringHeight: 0.000000
WARN: [GetSoundPathFromClawPath] Cannot convert sound: /LEVEL11/SOUNDS/TRIGGER/1005.WAV
WARN: [GetSoundPathFromClawPath] Cannot convert sound: /LEVEL11/SOUNDS/TRIGGER/1044.WAV
WARN: [WwdObjectToXml] Unknown logic: Tentacle
WARN: [WwdObjectToXml] Unknown logic: Sign
WARN: [WwdObjectToXml] Unknown logic: AquatisStalactite
WARN: [WwdObjectToXml] Unknown logic: Stalactite
[WWD->XML]: Elapsed microseconds: 310977
[PLANE CREATION]: Elapsed microseconds: 483
[PLANE CREATION]: Elapsed microseconds: 46937
[PLANE CREATION]: Elapsed microseconds: 1418
RicoRodriges commented 4 years ago

You loaded unstable level I guess. Use <SkipMenuToLevel>1</SkipMenuToLevel> in config.xml to load level 1 on startup. It should work well.

RicoRodriges commented 4 years ago

BaseGameLogic::VOnUpdate has a strange code blocks. The Android's built skips menu pages automatically. Maybe someone else can explain it. I have no ideas.

pjasicek commented 4 years ago

Back when we had android build running the menu wasn't finished yet or wasn't there at all as far as I remember. Since then nobody used it on android so the code stayed and decayed.

pjasicek commented 4 years ago

Levels 11/12 are not finished, levels 13/14 are not implemented at all. Only levels 1-10 are fully playable (altho the boss in level 10 is not implemented afaik)

ghost commented 4 years ago

Ok guys, I will retry on next months! Thanks! closing for now.