vgmoose / wiiu-hbas

[Wii U] Homebrew App Store - download apps for HBL (Legacy)
GNU General Public License v3.0
78 stars 11 forks source link

Support RPX files #17

Closed vgmoose closed 7 years ago

vgmoose commented 8 years ago

It would be nice if RPX files could be fully supported and treated like ELFs as much as possible.

For ELFs (to be run by HBL): sd:/wiiu/apps/

Example app:

/wiiu/apps/example/example.elf
/wiiu/apps/example/icon.png
/wiiu/apps/example/meta.xml

For RPXs: sd:/wiiu/games/

Example app:

/wiiu/games/Example [111111]/example.rpx 
/wiiu/games/Example [111111]/meta/icon.tga
/wiiu/games/Example [111111]/meta/background.tga
/wiiu/games/Example [111111]/meta/meta.xml
/wiiu/games/Example [111111]/app.xml
/wiiu/games/Example [111111]/cos.xml

I don't love this solution, but it's a bit different than #10 in that both formats would have to be listed in the main menu.

CreeperMario commented 8 years ago

Small correction:

/wiiu/games/Example [111111]/code/example.rpx 
/wiiu/games/Example [111111]/code/app.xml (Probably unnecessary)
/wiiu/games/Example [111111]/code/cos.xml (Probably unnecessary)
/wiiu/games/Example [111111]/content/...
/wiiu/games/Example [111111]/meta/icon.tga
/wiiu/games/Example [111111]/meta/background.tga
/wiiu/games/Example [111111]/meta/meta.xml

I say the XML files are unnecessary, because my in-progress Space Game RPX port works fine without them, the default memory mapping works.

For the content folder (if used) we may need to do some ZIP handling.

vgmoose commented 8 years ago

So, now I'm thinking:

/wiiu/games/Example [111111]/code/example.rpx 
/wiiu/games/Example [111111]/meta/icon.tga
/wiiu/games/Example [111111]/meta/background.tga
/wiiu/games/Example [111111]/meta/meta.xml

Agreed, app.xml/cos.xml don't seem to be necessary. I also think zip handling is important, but I can leave that to #10, since I want to get at least some form of basic RPX downloading out of the way by this weekend. (so for now I'm ignoring "content")

From a UI perspective, I see #13 (categories) also being partially implemented: There would be one category/tab for HBL elfs (the layout seen now) and another category for Loadiine/rpx files.

HBL Elfs would be saved to sd:/wiiu/apps (as they are now) Loadiine RPXes would be saved to sd:/wiiu/games

Currently, for RPX homebrew there's Pong, Space Game (RPX), and JezzBallU, so the RPX category would currently consist of these three apps.

When HBAS itself is ported to RPX, I would picture the RPX/Loadiine version of HBAS just "appearing" inside the RPX category, alongside the other RPX apps, at which point users can choose to install it. Functionally, HBAS RPX would have extra features (such as #18), and the user can decide whether they prefer using HBL or Loadiine to launch HBAS. Both the HBL ELF and wut RPX of HBAS though would support downloading both HBL ELFs and wut RPX files (including the "other" HBAS).

(Re-reading that last sentence is confusing, so I hope I get my point across...)

vgmoose commented 7 years ago

As of the 1.5 release, RPX files can be downloaded, and HBL 1.4+ now displays and run them.

Unfortunately, the support is very poor: An RPX is just treated as an ELF. It doesn't allow for a "content" folder. For that, additional file downloading will need to be implemented. (#10)