switchbrew / nx-hbmenu

The Nintendo Switch Homebrew Menu

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[help] image as background of theme

Corgano opened this issue · comments

I've looked through the documentation about the themes, and it appears to be able to have a background image, but I can't for the life of me figure out how. I also can't find any example themes that use a background image that i could pick apart to learn how it works. Can anyone help with this?

I want to start with saying requiring someone installs devkitpro to make a romfs just to add custom assets is kind of a lot to do just to theme HBmenu. Looking for themes that have a background image turned up nothing - now I know why. After installing the devprokit stuff it didn't add the tools folder to path so I had to find Make_Romfs.exe MANUALLY. Terrible end user experience.

I digress, I got to the point where it actually pops out a romfs file, and it shows up in HBmenu's theme section, but none of the cfg settings are having any effect.
I'm using the same file as the last post of the other thread
https://gist.github.com/yellows8/1e37fa4d4cf191a0b2f439ebe59985d8
Changing the file name in the assets to match my background

Compiling with this command build_romfs EeveeClean-Flareon EeveeClean-Flareon.romfs
EeveeClean-Flareon.jpg and EeveeClean-Flareon.jpg are in the root of the folder "EeveeClean-Flareon"
The console reads

Writing EeveeClean-Flareon/EeveeClean-Flareon.cfg to RomFS image...
Writing EeveeClean-Flareon/EeveeClean-Flareon.jpg to RomFS image...
Done!

Copying over just the .cfg file changes theme colors fine, but the .romfs file does not, so I'm doing something wrong. Any ideas?
EeveeClean-Flareon.zip

Ok so I figured it out.

  • Backgrounds REQUIRE you to compile it as romfs
  • Making a romfs requires downloading and setting up the toolchain here
  • If make_romfs command is "not a recognized command" you also need to add the devkitPro\tools\bin path (default C:\devkitPro\tools\bin) to your PATH environment variable, and then it works
  • You MUST rename the themename.cfg to theme.cfg (Caps sensitive!) for it to be loaded
  • Run the command from the parent to the theme folder build_romfs {input directory} {out name}.romfs
  • File paths for assets in the theme.cfg use the theme.romfs as root, so a background.jpg in {input directory} is referenced as just "background.jpg"

As a professional noob I can say the way it's written in the wiki assumes you know a lot more than someone just interested in making themes would. I would be willing to help re-write it in a more noob-friendly way though.

Most of that is doc'd on wiki / mentioned in the referenced issue - update wiki if you want though.

Not sure if there's any other romfs-builder tools which output compatible data.

Is it permissible to redistribute just the make romfs tool? Avoid the somewhat large download for the single tool?

nope