HoraceAndTheSpider / Amiberry-XML-Builder

Python script to scan LHA files for WHDLoad integration in Amiberry
13 stars 3 forks source link

Add Worthy in XML #108

Closed nemo93 closed 1 year ago

nemo93 commented 2 years ago

As per the following ticket let's try adding that game as well. As per ReshootR we'll have to draft a dedicated element as follows:

<game filename="Worthy_v1.0" sha1="value">
    <name>Worthy</name>
    <subpath>Worthy</subpath>
    <variant_uuid>6247c33b-e25a-5c40-9042-3f3b8bbb3759</variant_uuid>
    <slave_count>1</slave_count>
    <slave_default>Worthy.Slave</slave_default>
    <slave_libraries>False</slave_libraries>
    <slave number="1">
        <filename>Worthy.Slave</filename>
        <datapath/>
    </slave>
    <hardware>
        JIT=FALSE
        PRIMARY_CONTROL=JOYSTICK
        PORT0=JOY
        PORT1=JOY
        SCREEN_AUTOHEIGHT=TRUE
        SCREEN_CENTERH=SMART
            SCREEN_CENTERV=SMART
    </hardware>
</game>

For now I'd require the sha1 of the corresponding .lha package.

danko79 commented 2 years ago

Ok, i'm available for any tests, generate sha1 online sha1="ac963ddc7fef4eaf54b730323e3b9e5a70918716"

nemo93 commented 2 years ago

Thanks @danko79 for that. Please find below what the element should look like for your game. I don't own the game and can't test it by myself.

Make sure to rename your lha to Worthy_v1.0.lha and then add the following anywhere to the XML (make a backup first). As far as I can tell the game does require little to nothing to properly work (based on HOL page). If it requires fast copper or specific CPU please let me know. Happy testing!

<game filename="Worthy_v1.0" sha1="ac963ddc7fef4eaf54b730323e3b9e5a70918716">
    <name>Worthy</name>
    <subpath>Worthy</subpath>
    <variant_uuid>6247c33b-e25a-5c40-9042-3f3b8bbb3759</variant_uuid>
    <slave_count>1</slave_count>
    <slave_default>Worthy.Slave</slave_default>
    <slave_libraries>False</slave_libraries>
    <slave number="1">
        <filename>Worthy.Slave</filename>
        <datapath/>
    </slave>
    <hardware>
        JIT=FALSE
        PRIMARY_CONTROL=JOYSTICK
        PORT0=JOY
        PORT1=JOY
        SCREEN_AUTOHEIGHT=TRUE
        SCREEN_CENTERH=SMART
            SCREEN_CENTERV=SMART
    </hardware>
</game>
danko79 commented 2 years ago

Do not works, the game have a data dir named "assets" From readme: http://whdload.de/games/Worthy.html No installer: copy/move all game files into a "data" subdir and run the slave. Renamed the dir from "assets to data" but it still doesn't work, obviously by modifying the LHA package and generated a new SHA1 The error is: whdload dos error 205 object not found.

https://i.postimg.cc/L5QqxZm4/Worthy-error.jpg https://i.postimg.cc/7YbJfXN5/Worthy-WHDLoad.jpg

nemo93 commented 2 years ago

Thanks again for testing. I'm a bit confused here. Did you ever succeed in running that game with Amiberry? Does it even work? Or do you always end up with the error shown above?

Based on readme we could add the following > <datapath>data</datapath>.

Try that:

<game filename="Worthy_v1.0" sha1="ac963ddc7fef4eaf54b730323e3b9e5a70918716">
    <name>Worthy</name>
    <subpath>Worthy</subpath>
    <variant_uuid>6247c33b-e25a-5c40-9042-3f3b8bbb3759</variant_uuid>
    <slave_count>1</slave_count>
    <slave_default>Worthy.Slave</slave_default>
    <slave_libraries>False</slave_libraries>
    <slave number="1">
        <filename>Worthy.Slave</filename>
        <datapath>data</datapath>
        <custom>
        C1:X:trainer infinite lives:0
        C1:X:trainer unlock all levels:1
        </custom>
    </slave>
    <hardware>
        JIT=FALSE
        PRIMARY_CONTROL=JOYSTICK
        PORT0=JOY
        PORT1=JOY
        SCREEN_AUTOHEIGHT=TRUE
        SCREEN_CENTERH=SMART
            SCREEN_CENTERV=SMART
    </hardware>
</game>

Content of your Worthy_v1.0.lha should be as follows (check the spelling):

Worthy (top folder)
-- data (folder containing game files)
-- Worthy.Slave (slave file)
danko79 commented 2 years ago

Hi,not works i use a retropie 4.8 with amiberry 3.3,i can send you the LHA game if you want so if you can make it work.

nemo93 commented 2 years ago

Ok hold on we'll try something else. I'll update this space when it's done. Thanks again for testing and reporting back.

nemo93 commented 2 years ago

@danko79 Worthy will be added to XML shortly (worst case will be by next monday). Please check by then if that helps! Thanks again for testing.

danko79 commented 1 year ago

Hi, i reopen this issue, i have amiberry 5.4 and probably depends on my LHA package, my database is up to date, see the pics for the problems.

https://i.postimg.cc/L5QqxZm4/Worthy-error.jpg https://i.postimg.cc/7YbJfXN5/Worthy-WHDLoad.jpg

nemo93 commented 1 year ago

@danko79 that game, Worthy, is part of the XML. If it worked before it should still be the case. Make sure the sha1 is the same as the one below. If there's been a new version of that package then we'll need to dive deeper.

For the record here's the element attached to it:

<game filename="Worthy_v1.0" sha1="08218c797999917e9435d0ad90b32e7fa60efb8a">
        <name>Worthy</name>
        <subpath>Worthy</subpath>
        <variant_uuid>510efb54-3f61-5003-bfd1-4899666d2233</variant_uuid>
        <slave_count>1</slave_count>
        <slave_default>Worthy.slave</slave_default>
        <slave_libraries>False</slave_libraries>
        <slave number="1">
            <filename>Worthy.slave</filename>
            <datapath>data</datapath>
            <custom>
            C1:X:trainer infinite lives:0
            C1:X:trainer unlock all levels:1
            </custom>
        </slave>
        <hardware>
            PRIMARY_CONTROL=JOYSTICK
            PORT0=JOY
            PORT1=JOY
            SCREEN_AUTOHEIGHT=TRUE
            SCREEN_CENTERH=SMART
            SCREEN_CENTERV=SMART
        </hardware>
    </game>
danko79 commented 1 year ago

I tried the exact same problem, I'm attaching my LHA package, give it a look, I can't figure out where I'm wrong. http://www.easybytez.com/w5awd9h14f35

HoraceAndTheSpider commented 1 year ago

I've added your copy of Worthy to be scanned, although the name has been changed to avoid overwriting the old file. It was a different size.

This will hopefully mean it gets picked up and works from the SHA1 recognition. Watch this space.

danko79 commented 1 year ago

Update database but not working. Use Retropie 4.8 with Amiberry 5.8 kistart problems? I don't understand if it works for you?

https://i.postimg.cc/MZjGfsQB/Worthy.jpg

Try with a two differet sha1.

sha1="08218c797999917e9435d0ad90b32e7fa60efb8a"

sha1="8a1d6d35da8833b084411d104a8d6cbe8c6559f6"

HoraceAndTheSpider commented 1 year ago

Haven’t tested, or checked if it has gone into the xml yet.

do you have a .uae Config saved for this game? If so you might want to delete it for now (I’ve see the same problem as this when upgrading Amiberry and my Config files are from older versions)

danko79 commented 1 year ago

I don't have any .uea configuration for this game the same problem exists on real amiga 1200, isn't the problem lies in the package you downloaded it from whdload site?

HoraceAndTheSpider commented 1 year ago

The package provided above wouldn't scan btw, there's something wrong with the LHA provided. Perhaps it is not structured in the correct way. This likely explains why your file doesn't run on Amiberry either.

Processing: Worthy_v1.0-2.lha
Problem reading LHA
Could not read LHA archive: /Commodore_Amiga_-_WHDLoad_-_Games_-_Beta_Unreleased/W/Worthy_v1.0-2.lha

The original details were provided to me since this game is still commercially available for sale.

HoraceAndTheSpider commented 1 year ago
Screenshot 2022-12-30 at 20 03 19

It appears your Worthy LHA may be malformed.

danko79 commented 1 year ago

No problem i can give up this game, please consider this issue closed. Happy New Year

nemo93 commented 1 year ago

Worthy has been added thanks to @HoraceAndTheSpider and only that version (see below) is supported. Please ensure you do rely on the same file. Given it's a commercial product no more assistance can be provided unless a similar snippet is provided straight from the authors.

For the record here what's (still) in XML:

<game filename="Worthy_v1.0" sha1="08218c797999917e9435d0ad90b32e7fa60efb8a">
        <name>Worthy</name>
        <subpath>Worthy</subpath>
        <variant_uuid>510efb54-3f61-5003-bfd1-4899666d2233</variant_uuid>
        <slave_count>1</slave_count>
        <slave_default>Worthy.slave</slave_default>
        <slave_libraries>False</slave_libraries>
        <slave number="1">
            <filename>Worthy.slave</filename>
            <datapath>data</datapath>
            <custom>
            C1:X:trainer infinite lives:0
            C1:X:trainer unlock all levels:1
            </custom>
        </slave>
        <hardware>
            PRIMARY_CONTROL=JOYSTICK
            PORT0=JOY
            PORT1=JOY
            SCREEN_AUTOHEIGHT=TRUE
            SCREEN_CENTERH=SMART
            SCREEN_CENTERV=SMART
        </hardware>
    </game>