Switch Layout Editor - Create/Edit Themes and Games

Hello everyone, exelix and I are finally releasing the Switch Layout Editor. Please note that this is still in beta.

Brief Description:

The Switch Layout Editor enables you to edit and preview BFLYT and BFLAN files which are used in the Switch interfaces and games.
With this tool you can easily create and edit themes.


Main Features:

  • Layout loading, editing and saving
  • Rendering the bounding boxes of the components
  • SZS editing
  • Drag and drop
  • Simultaneous file editing
  • Import/Export JSON patch (Compatible with Switch themes)
How to use:

You can check the Wiki on the Github page for a more in depth tutorial.

Extract the zip file and open "Switch Layout Editor.exe". You can now open a SZS, BFLYT or BFLAN file.
BFLYT files are commonly found in SZS archives, when opening a SZS file you can double click on the files in the list to edit them (if they're supported).

If you're making a theme:
Once you're done editing, you can either:
- Save your changes to the SZS and use it. (illegal to share publicly)
- Export your theme as a JSON patch that you can use with the Switch Theme Injector to create a nxtheme (legal to share)

Discord Server / Support:
You can make an issue on github if you encounter a problem or you can join the discord.
This discord server is used for all my projects.


Release:

Updates:

- Adding and removing texture references in a bflyt file
- Editing materials (partial)
- Fix crashes or corrupted files for big endian bflyts (for Wii U titles)
Download here.

- Animations editor (.bflan files)
- Group (grp panes) editing for bflyt files
- Fix for some crashes and some minor improvements
Download here.

- You can now update the SwitchLayoutEditor directly from within the tool. No need to check Github anymore, just click on the Update button.
- Support for usd1 panes + custom usd1 panes.
- Search box in the SZS editor.
Download here.
Hotfix for a bug causing a black screen. Download here

Screenshots:
MainMenu.png

Layout Example:
Example.png

Support:
You can join the Qcean discord server for any help related to themes.

Credits:
  • FuryBaguette - Development
  • exelix - Base of the editor & Continuous development
  • Abood - Sarc Tool
  • Syroot - BinaryData
MainMenu.png
 
Last edited by FuryBaguette,

ReroShaggy

Member
Newcomer
Joined
Aug 5, 2017
Messages
20
Trophies
0
Age
113
XP
86
Country
United States
@ReroShaggy ^Yeah that's pretty much it. But you have also to consider prt panes: when near a pane name you see [prt1] it means that it actually displays another bflyt from that szs, to know which one select it and press q, it should pop up the hex editor and at the bottom it should contain the filename. Editing stuff like rotation and size in the original files rather than in the prt panes may have different effects on the final result and even the cursor behaviour, I'd say always try editing the values in the original panes first. (I'm still unsure about the behavior of size and scale for prt panes that's why they are rendered just as rectangles).
About the user name it should be just a text pane you can move away, it should be in the layout referenced by the prt pane. For the border of the i think i know how to remove it and i'm implementing it in the nxtheme format and the layout editor soon enough. For the icons color i'm not sure, that happens because the material has certain properties set, i had the same issue while implementing custom album icons, the solution for me was altering the image properties but that's not possibe with nxthemes yet (and it's not part of the layout).
Anyway that layout looks really good
Excellent thanks for the help. It helps to know whats being referenced.
 

KitsumiTheFox

Well-Known Member
Newcomer
Joined
Jan 9, 2016
Messages
85
Trophies
0
Age
23
Location
Utah
XP
590
Country
United States
@ReroShaggy ^Yeah that's pretty much it. But you have also to consider prt panes: when near a pane name you see [prt1] it means that it actually displays another bflyt from that szs, to know which one select it and press q, it should pop up the hex editor and at the bottom it should contain the filename. Editing stuff like rotation and size in the original files rather than in the prt panes may have different effects on the final result and even the cursor behaviour, I'd say always try editing the values in the original panes first. (I'm still unsure about the behavior of size and scale for prt panes that's why they are rendered just as rectangles).
About the user name it should be just a text pane you can move away, it should be in the layout referenced by the prt pane. For the border of the i think i know how to remove it and i'm implementing it in the nxtheme format and the layout editor soon enough. For the icons color i'm not sure, that happens because the material has certain properties set, i had the same issue while implementing custom album icons, the solution for me was altering the image properties but that's not possibe with nxthemes yet (and it's not part of the layout).
Anyway that layout looks really good

I'm pretty sure the scale affects the prt panes as normal, I'm not sure about actual size though
 

ReroShaggy

Member
Newcomer
Joined
Aug 5, 2017
Messages
20
Trophies
0
Age
113
XP
86
Country
United States
Anyone know where the values for the blue ring that highlights the allgames button is? At some point i must have edited it as it's much bigger, but I can't remember what I must have changed.
Which file is it located, the baseUI, or the icon itself? Thanks for any help.
 

ReroShaggy

Member
Newcomer
Joined
Aug 5, 2017
Messages
20
Trophies
0
Age
113
XP
86
Country
United States
Anyone know where the values for the blue ring that highlights the allgames button is? At some point i must have edited it as it's much bigger, but I can't remember what I must have changed.
Which file is it located, the baseUI, or the icon itself? Thanks for any help.
Answer is RdtBtnFullLauncher.bflyt - UF_Cursor [prt1] (located in an unknown pane type)

I also discovered recently that when changing the RGB of the wifi or battery text, it came out all pink. I went into Photoshop and found the rgb of the color I want, I then rearranged the values (basically swapped the G, B) and found it came out to be the same color pink that the text did. Long story short I put the RGB into the editor, out of order like I saw for the pink, it gave me my color. I think the RGB values might be incorrect in the editor.
Examp: the yellow in my theme is 251,202,1 comes out pink on compile (shows correct in editor). changing this to 251,1,202 gives me pink in the editor, but compiles close to what I wanted.
 

ReroShaggy

Member
Newcomer
Joined
Aug 5, 2017
Messages
20
Trophies
0
Age
113
XP
86
Country
United States
Here it is my Capcom Vs SNK 2 layout/Main menu theme. Everything is clickable as well can be accessed with dpad. Let me know if there is anything glitched I may have missed.
CVSVNX.jpg

Only thing bothering me is DDS compression, either from Photoshop or theme builder, adds small black triangles to angles portion of red/blue sides. If anyone knows whats happening please let me know. Background is 1280 x 720 24bits 150dpi.
All art recreated either from scratch or, in regards to the portraits...copied from high res artbook ref. Row of yellow triangles to the sides is your user/mii icon locations.
 

Attachments

  • screenshot.jpg
    screenshot.jpg
    404.1 KB · Views: 131
  • CVSVNX ResidentMenu.zip
    544.9 KB · Views: 186

exelix11

Developer
Developer
Joined
Feb 25, 2015
Messages
915
Trophies
1
Location
C:\users\exelix11\
XP
3,062
Country
Italy
Here it is my Capcom Vs SNK 2 layout/Main menu theme. Everything is clickable as well can be accessed with dpad. Let me know if there is anything glitched I may have missed.
View attachment 158325
Only thing bothering me is DDS compression, either from Photoshop or theme builder, adds small black triangles to angles portion of red/blue sides. If anyone knows whats happening please let me know. Background is 1280 x 720 24bits 150dpi.
All art recreated either from scratch or, in regards to the portraits...copied from high res artbook ref. Row of yellow triangles to the sides is your user/mii icon locations.
Unfortunately there's a size limitation for images (not really, but some layeredfs shenanigans make the home menu crash for big files), that's why we have to use DXT1 compression, i've made some experiments with DXT5 and often it crashes.
You may have luck by trying different encoders for DXT1, maybe some algorithms are better than others, but currently it's the only way.
About the theme it's really nice, you may want to post it to the r/NXThemes subreddit as well to give it more visibility
 
  • Like
Reactions: ReroShaggy

ReroShaggy

Member
Newcomer
Joined
Aug 5, 2017
Messages
20
Trophies
0
Age
113
XP
86
Country
United States
Unfortunately there's a size limitation for images (not really, but some layeredfs shenanigans make the home menu crash for big files), that's why we have to use DXT1 compression, i've made some experiments with DXT5 and often it crashes.
You may have luck by trying different encoders for DXT1, maybe some algorithms are better than others, but currently it's the only way.
About the theme it's really nice, you may want to post it to the r/NXThemes subreddit as well to give it more visibility

I was planning on adding to and editing this theme a bit first, before I upload to the subreddit. I will as well update here. Where do you think the most centralized repository for these themes would be? I don't want multiple versions floating around so as to confuse people. I uploaded it also to this thread, as well the injector thread.

Thanks for info on the DXT. I export from Photoshop to DXT1 and don't see any of the compression artifacts. It's only after using the QCean's theme injector the resulting image has them.
I may try editing colors, removing inner shadow effects and stuff. I tried changing the DPI but it produced same results.
 
Last edited by ReroShaggy,

exelix11

Developer
Developer
Joined
Feb 25, 2015
Messages
915
Trophies
1
Location
C:\users\exelix11\
XP
3,062
Country
Italy
I was planning on adding to and editing this theme a bit first, before I upload to the subreddit. I will as well update here. Where do you think the most centralized repository for these themes would be? I don't want multiple versions floating around so as to confuse people. I uploaded it also to this thread, as well the injector thread.

Thanks for info on the DXT. I may try editing colors, removing inner shadow effects and stuff. I tried changing the DPI but it produced same results.
Unfortunately there's no centralized place ~yet ( ͡° ͜ʖ ͡°)~, i'd say go for reddit as it's the most searchable place
 

ReroShaggy

Member
Newcomer
Joined
Aug 5, 2017
Messages
20
Trophies
0
Age
113
XP
86
Country
United States
I was planning on adding to and editing this theme a bit first, before I upload to the subreddit. I will as well update here. Where do you think the most centralized repository for these themes would be? I don't want multiple versions floating around so as to confuse people. I uploaded it also to this thread, as well the injector thread.

Thanks for info on the DXT. I export from Photoshop to DXT1 and don't see any of the compression artifacts. It's only after using the QCean's theme injector the resulting image has them.
I may try editing colors, removing inner shadow effects and stuff. I tried changing the DPI but it produced same results.

Did some experimenting. Exported a PNG and a DDS from Photoshop. I used the injector on both. The result was... from PNG, converted with injector there were more artifacts, slightly dimmer color but sharper image. From DDS to injector, less artifacts, image was slightly smoother yellows were brighter but some gradients were banded. Clicking back and forth between the screenshots... I like the one made from a png better, despite more random extra pixel artifacts. The export to dds was too grainy and colors were less smoothed out.
Not a big issue as they both look great in handheld mode and too slightly lesser extent a 53inch tv lol.
I just wanted to add. sorry if this is the wrong place for this discussion. Let me know and i will move it to the Theme injector thread.
 

Attachments

  • EXPORT examp.png
    EXPORT examp.png
    205.8 KB · Views: 127
Last edited by ReroShaggy,

ReroShaggy

Member
Newcomer
Joined
Aug 5, 2017
Messages
20
Trophies
0
Age
113
XP
86
Country
United States
What do I edit to move the joycon/gamepad icon, The option start icons, as well the row of icons that appear after starting a game? Please and thank you.
EDIT:
I have found the answer. Common.szs. make a Diff from that. In NXThemeBuilder add custom common. footerall.bflyt

...would be great if there was a common editables thread and where they are :)
 

Attachments

  • Button row.jpg
    Button row.jpg
    419.7 KB · Views: 122
Last edited by ReroShaggy,
  • Like
Reactions: exelix11

exelix11

Developer
Developer
Joined
Feb 25, 2015
Messages
915
Trophies
1
Location
C:\users\exelix11\
XP
3,062
Country
Italy
Could be possible (with this software or another one) to add the "Shut Down" and "Restart" options to the Sleep button? Instead of press the physical button
Replacing the sleep button won't be easy, for a way to reboot via software there's atmosphere's reboot to payload homebrew, unfortunately other cfws don't support it yet.
 

ReroShaggy

Member
Newcomer
Joined
Aug 5, 2017
Messages
20
Trophies
0
Age
113
XP
86
Country
United States
Any of yas fine individuals know where to find the volume indicator that pops up in top left when changing volume?
 

ReroShaggy

Member
Newcomer
Joined
Aug 5, 2017
Messages
20
Trophies
0
Age
113
XP
86
Country
United States
You should join discord servers related to the switch, there are support channels, you'll get help there for almost any questions
Is there a "Switch Layout Editor" discord, sorry if there is I figured the place where the software originated would be the best place to have these discussions.
 

exelix11

Developer
Developer
Joined
Feb 25, 2015
Messages
915
Trophies
1
Location
C:\users\exelix11\
XP
3,062
Country
Italy
Is there a "Switch Layout Editor" discord, sorry if there is I figured the place where the software originated would be the best place to have these discussions.
Well there's qcean where most people making themes are, invite code is CUnHJgb it's linked in the injector thread too. @FuryBaguette can you add it to the op ?
 

gethsemane

Member
Newcomer
Joined
Nov 26, 2018
Messages
19
Trophies
0
Age
32
XP
208
Country
United States
Does anyone know where I could find the offsets/file locations of the game cursor border color and the game description font color? I'd like to change them from blue to another color.

Even if this isn't possible conventionally with the standard JSON-based or nxtheme patching methods, I'd still like to attempt to modify these properties.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    realtimesave @ realtimesave: got a mig switch here, freshly smuggled in from China