Author Topic: "TREE" Theme idea  (Read 3014 times)

drmechxico

  • Newbie
  • *
  • Posts: 20
  • Karma: +0/-0
    • View Profile
"TREE" Theme idea
« on: December 24, 2016, 09:08:44 PM »
I set up retroFE on my father in laws laptop. He absolutely loves it. Thing is he only cares for some arcade games and some specific genres of games. This led to me having the idea of having a theme with multiple submenus.
Or I do not know if this could be achieved through custom lists maybe.

An example would be: Main Menu->Nintendo->NES->Shooter->1943
« Last Edit: December 24, 2016, 09:10:25 PM by drmechxico »

Pieter Hulshoff

  • Administrator
  • Hero Member
  • *****
  • Posts: 1257
  • Karma: +24/-0
    • View Profile
    • Towel 42
Re: "TREE" Theme idea
« Reply #1 on: December 24, 2016, 09:37:33 PM »
This setup could be achieved in two ways:
1. If each sub menu level can have a common look, you can create a single theme with multiple menu layers.
2. If not, you can give each sub menu a completely different look by creating a new layout for each submenu, matching the structure of your collections.

The collections themselves are merely a matter of creating collections for each sub menu, and add a menu.txt for each (except for the actual game list). You could create sub collections for the end game lists, and thus keep all your art and roms for each collection (e.g. NES) together.

Sent from my SM-G920F using Tapatalk


drmechxico

  • Newbie
  • *
  • Posts: 20
  • Karma: +0/-0
    • View Profile
Re: "TREE" Theme idea
« Reply #2 on: December 24, 2016, 11:57:05 PM »
How do I go about making multiple menu layers?

We can make layouts specific to a submenu? That's awesome.

Sent from my LG-LS980 using Tapatalk
« Last Edit: December 25, 2016, 12:04:03 AM by drmechxico »

Pieter Hulshoff

  • Administrator
  • Hero Member
  • *****
  • Posts: 1257
  • Karma: +24/-0
    • View Profile
    • Towel 42
Re: "TREE" Theme idea
« Reply #3 on: December 25, 2016, 12:14:19 AM »
How do I go about making multiple menu layers?

We can make layouts specific to a submenu? That's awesome.

Sent from my LG-LS980 using Tapatalk
Just a matter of creating several collections, like for your example:
Main, containing a menu.txt with Nintendo.
Nintendo, containing a menu.txt with NES.
NES, containing a menu.txt with NES Shooters.
NES Shooters, containing a Nintendo Entertainment System.sub with 1941.
Nintendo Entertainment System, containing all your roms and art.

For now, each of these also must contain a settings.conf  (I plan to fix that), most of which can be empty.

Yes, each of these can have their own theme by creating a similar structure in the layout, e.g. layouts/TREE/collections/NES/layout/layout.xml

The main feature still missing is themes per game.

drmechxico

  • Newbie
  • *
  • Posts: 20
  • Karma: +0/-0
    • View Profile
Re: "TREE" Theme idea
« Reply #4 on: December 25, 2016, 05:02:33 PM »
Thanks for all your help Pieter. Here is what I got so far.
I've modified ryuuji's RAW theme.(just moving the reloadable images where I want them)
Ive created collections for SNES Fighters and Shooters.
Ive put .sub files in each. The main menu works. Each of the Console menus work.
But when I go into the Submenu for shooters or fighters, I get the list (no artwork), But I can hear the preview video.
When backing out into the SNES list, it works, but the previous list never leaves the screen.
« Last Edit: December 25, 2016, 05:06:13 PM by drmechxico »

Pieter Hulshoff

  • Administrator
  • Hero Member
  • *****
  • Posts: 1257
  • Karma: +24/-0
    • View Profile
    • Towel 42
Re: "TREE" Theme idea
« Reply #5 on: December 25, 2016, 05:23:08 PM »
Looks to me like your animations need some work. If you can hear but not see the video, the alpha didn't get animated properly.
How did you go about creating the third level in your theme, and can you post your layout.xml file (s)?

Sent from my SM-G920F using Tapatalk


drmechxico

  • Newbie
  • *
  • Posts: 20
  • Karma: +0/-0
    • View Profile
Re: "TREE" Theme idea
« Reply #6 on: December 26, 2016, 05:38:47 AM »
I haven't changed anything other than the positioning of realoadable images

JonahUK

  • Guest
Re: "TREE" Theme idea
« Reply #7 on: December 26, 2016, 04:25:20 PM »
You may need to change the MenuIndex from 0 to 1 on the sub menu layouts

drmechxico

  • Newbie
  • *
  • Posts: 20
  • Karma: +0/-0
    • View Profile
Re: "TREE" Theme idea
« Reply #8 on: December 27, 2016, 02:32:32 AM »
Do I need a layout.xml in the shooters collection and fighters collection? Is there a setting that needs to be used for the collection to use a different layout XML?

Sent from my LG-LS980 using Tapatalk


Pieter Hulshoff

  • Administrator
  • Hero Member
  • *****
  • Posts: 1257
  • Karma: +24/-0
    • View Profile
    • Towel 42
Re: "TREE" Theme idea
« Reply #9 on: December 27, 2016, 07:40:17 AM »
If you use a fixed structure like you described above, you could do it all from one layout.xml. i'll have a closer look once I set up my pc again; I spent Christmas with my family. 😀

Sent from my SM-G920F using Tapatalk


Pieter Hulshoff

  • Administrator
  • Hero Member
  • *****
  • Posts: 1257
  • Karma: +24/-0
    • View Profile
    • Towel 42
Re: "TREE" Theme idea
« Reply #10 on: December 27, 2016, 10:25:45 AM »
Ok, as an example, let's look at your video. The tag for that is reloadableVideo.
You currently have animations there for menuIndex="0" (Main Menu) and menuIndex="1". Your onMenuExit animation fades out your video, so when you enter the 3rd level (and exit the second level) the video fades out. Since you don't have an animation for menuIndex="2", the video remains faded out. You could of course add animations for menuIndex="2", menuIndex="3", etc., but since all the animations appear to be the same you could also consider removing the animations for menuIndex="1", and just remove the menuIndex="0" from the first set of animations. I also removed a number of animations that really don't do anything (like moving the video to the location it's already at).

<reloadableVideo imageType="screenshot" alpha="1" x="0" y="bottom" yOrigin="bottom" Width="1920" layer="2">
    <onMenuExit>
      <set duration=".01">
        <animate type="alpha" to="0" algorithm="easeinquadratic"/>
      </set>
    </onMenuExit>
    <onMenuEnter>
      <set duration=".01">
        <animate type="alpha" to="1" algorithm="easeinquadratic"/>
      </set>
    </onMenuEnter>
    <onHighlightExit>
      <set duration=".01">
        <animate type="alpha" to="0" algorithm="easeinquadratic"/>
      </set>
    </onHighlightExit>
    <onHighlightEnter>
      <set duration=".01">
        <animate type="alpha" to="1" algorithm="easeinquadratic"/>
      </set>
    </onHighlightEnter>
    <onExit>
      <set duration=".01">
        <animate type="alpha" to="0" algorithm="easeinquadratic"/>
      </set>
    </onExit>
  </reloadableVideo>

I also notice that the animation is rather short; I'd consider making it a bit longer for a smoother animation, but that's me. :)


Now for the menu: you need to create a menu set for each menu layer you want. Currently there's only 2 of them defined; you'll need to add menus for layer 3, etc. You can simply copy the one for menuIndex="1", and then replace all the menuIndex="1" with menuIndex="2". Continue as needed for the amount of menu levels you want.

shadoex

  • Newbie
  • *
  • Posts: 2
  • Karma: +0/-0
    • View Profile
Re: "TREE" Theme idea
« Reply #11 on: January 02, 2017, 07:30:47 AM »
Hello,

I have been tinkering around with Retro FE and am still kinda new to the scene but am loving it so far!

I am also trying to figure out how to build custom menus and things.
After reading everything I could find about the subject I have came a fair way from where I started but have run into what seems to be one last hurdle.

Basically I want to make a tree of this as a test

(main screen)->Console->SNES->Mario->all the mario games

The theme I am using is Aeon Nox and I have managed to clone the first screen (menuitem="0") and turn it into a second screen (menuitem="1").
This has worked flawlessly.
I then made a third screen (menuitem="2") but when I try to go into the SNES tree the program crashes.

My collections set up is as follows.

Collections\Main\menu.txt (inside is listed Arcade Console Atari 7800)
Collections\Console\menu.txt (inside is SNES)
Collections\Console\SNES\menu.txt (inside is Mario)
Collections\Console\SNES\Mario\

I will post some pictures of what is happening.

This is the first screen - menuitem="0"
http://imgur.com/JtpN5SF

This is the second screen - menuitem="1" (successfully cloned version of the first screen theme)
http://imgur.com/rY1wuEs

And this is when I try to enter the third screen menuitem="2"
http://imgur.com/mJKPA91


After the crash I checked the log and I saw that for some reason the program isn't looking for the SNES files in the tree that I created (Collections\Console\SNES\) but instead looking for them in the root collection directory (Collections\SNES\). As they are not there it crashes. Here is an excerpt from the log.

[2017-01-02 17:20:28] [INFO] [CollectionInfoBuilder] Checking for "E:\RetroFE\collections\SNES\include.txt"
[2017-01-02 17:20:28] [INFO] [CollectionInfoBuilder] Scanning directory "E:\RetroFE\collections\SNES\roms"
[2017-01-02 17:20:28] [INFO] [CollectionInfoBuilder] Could not read directory "E:\RetroFE\collections\SNES\roms". Ignore if this is a menu.


So I decided to test this and simply put my Atari 7800 collection in the root collection directory (Collections\Atari 7800) and I then wrote into my menu.txt that was inside my Console folder (Collections\Console\menu.txt) Atari 7800

And low and behold it worked. Here are some pics.

This is the second screen (inside the console menu)
http://imgur.com/QSYZH7X

As you can see the artwork and everything is already working meaning it is reading it even though it is not located inside the folder tree but in the collections root.

This is the third screen (menuitem="2")
http://imgur.com/utttdmz

It worked perfectly!


So I guess my question is how do I set the program so that it will load the files I want inside the directory structure I make and not just from the folders that are in the root of the collections directory?

I have attached my layout and Main plus Collections directory files so you can check them out if you wish.

Thank you and sorry for the giant post.

Pieter Hulshoff

  • Administrator
  • Hero Member
  • *****
  • Posts: 1257
  • Karma: +24/-0
    • View Profile
    • Towel 42
Re: "TREE" Theme idea
« Reply #12 on: January 02, 2017, 09:00:30 AM »
I considered moving this to its own thread, but I guess it fits within the spirit of this discussion:
RetroFE expects all collections within the collections subdirectory (unless specified otherwise in the settings,conf, but even then it expects all collections in the same directory). The hierarchy is defined simply by linking one menu to the next; you can create any menu structure you like.

So, in your case:
Main collection contains menu.txt with Console.
Console collection contains menu.txt with SNES.
SNES collection contains menu.txt with Mario.
Mario collection contains roms and art with all Mario games.

That Mario collection could also be set up as a sub collection of e.g. Super Nintendo Entertainment System so you can keep all art and roms in one location:
Super Nintendo Entertainment System collection contains all roms and art for the SNES games.
Mario collection contains Super Nintendo Entertainment System.sub with all Mario games.

There's an open feature request for me to implement more playlists (we currently only support Favorites) so you could enter a single collection (e.g. SNES), and simply step through the different playlists (driving games, fighting games, Mario games, or whatever you decide). That should be implemented in the not too distant future; it's a feature I'd rather enjoy as well. :)

shadoex

  • Newbie
  • *
  • Posts: 2
  • Karma: +0/-0
    • View Profile
Re: "TREE" Theme idea
« Reply #13 on: January 02, 2017, 10:52:53 AM »
Thanks for your reply :)

I will start looking into what I can mess around with.

I second the idea for more playlists!

Thanks.