Jump to content
LaunchBox Community Forums

Eclipse 0.0.5

   (5 reviews)

6 Screenshots

About This File

 Eclipse

Eclipse for BigBox is a different kind of theme.  Rather than using the normal theme engine, it uses a plug-in to build the user interface from the ground up.  The goal for this plug-in is to provide: 

  • Netflix style user interface with multiple lists of games on the screen at one time
  • Voice search
  • Random game function

 

Platform list view

Eclipse - Platform List.png

 

Game detail view

Eclipse - Game Details.png

 

Options for categorizing games

Eclipse - Options.png

 

Startup theme

Eclipse - Startup Theme.png

 

Shutdown theme

Eclipse - Exit Theme.png

 

Attract mode (screen saver)

image.png

 

Demo

 

Installation Instructions
1. Download: https://forums.launchbox-app.com/files/file/3220-eclipse/
2. Extract the contents to a folder
3. Inside the Eclipse folder is a folder called LaunchBox
4. Copy the Plugins, StartupThemes, and Themes folders
5. Go to your Launch Box installation folder and paste the copied folders
6. Open Big Box
7. Esc to get to options
8. Select Options > Views
9. Set Theme to Eclipse
10. Set Platforms List View to Platform Wheel 1
11. If you want to use the startup theme, Options > Game Startup
    - Uncheck Show "Loading Game..." Message
    - Check Enable Startup Screen
    - Startup Theme: Eclipse
    - Minimum Startup Screen Display Time: 5 seconds
    - Maximum Startup screen Display Time: 5 seconds
    - Check Hide Mouse Cursor on Startup Screens
12. Go back - the first time the theme starts will take a long load time to generate the image cache
13. NOTE - If you get any errors, you can check the log file called Eclipse.txt in your LaunchBox folder and message me on the forums to let me know

General usage
- Up, Down, Left, Right - moves around
- Enter - selects something
- Escape - cancel or go back - pressing it will get you back to the BigBox settings where you can exit the application
- Page Up - pick a random game
- Page Down - voice search

Bezels
- Bezel images can be displayed around the preview videos
- The system will first look for a game specific bezel. If not found, it will look for a platform specific bezel. If not found, it will look for a default bezel. 
- A few default bezels are provided with the installation. You can delete them from the folders specified below if you prefer the videos without bezels.

Game specific bezels
- The system tries to find a game specific bezel image in the following order:

1. In plug-in media directory:
..\LaunchBox\Plugins\Eclipse\Media\Bezels\{PLATFORM}\{CleanGameTitle}.png

- Here {CleanGameTitle} replaces any invalid characters with an underscore. Characters like ' and : cannot appear in file names so they are replaced with an underscore
- For example: A bezel file for the game "19XX: The War Against Destiny" should have the following path and file name ..\LaunchBox\Plugins\Eclipse\Media\Images\Arcade\Bezel\19XX_ The War Against Destiny.png

MAME bezels
- If a game specific bezel isn't found in the plug-ins media folder as described above, then the program will look into the MAME installation folder. In order for MAME bezels to work, installing the bezel project for MAME would create files with this structure:

..\LaunchBox\Emulators\MAME\artwork{game.ApplicationFilePath}"Bezel.png"

Retroarch bezels
- Bezels installed by the bezel project for retroarch will go into a folder location like this:

..\LaunchBox\Emulators\Retroarch\overlays\GameBezels{RetroarchPlatform}{game.ApplicationFilePath}.png

Platform specific bezels
- These are used if there are no game specific bezels found
- You can specify a different image for horizontally and vertically oriented games so that they fit appropriately
- The platform specific bezel image files must have the following file names and locations:
..\LaunchBox\Plugins\Eclipse\Media\Bezels\{PLATFORM}\Horizontal.png
..\LaunchBox\Plugins\Eclipse\Media\Bezels\{PLATFORM}\Vertical.png

System default bezels
- These are used if there are no game specific or platform specific bezels found
- You can specify a different image for horizontally and vertically oriented games so that they fit appropriately
- The default bezel image files must have the following file name and location:
..\LaunchBox\Plugins\Eclipse\Media\Bezels\Platforms\Default\Horizontal.png
..\LaunchBox\Plugins\Eclipse\Media\Bezels\Platforms\Default\Vertical.png

Looking for feedback

I'm looking for any suggestions that would make this theme better.  What's currently on my list for improvements:

  1. New option to add a game to a playlist from the game detail screen
  2. New option to display game manuals from the game detail screen
  3. Improve image cache logic to better detect differences between LB images and plugin image cache
  4. Use VLC for video playback 
  5. Option to flip box art 
    1. This could be expanded a bit more to 
  6. Show achievements in game details
  7. Improvements to the options side-panel that opens up under the gear (add some icons and make it look a little less "blah")
  8. Several ideas for configuration options
    1. Default category and list to pick when opening 
    2. Minimum number of games required to be included in a category
      1. This would allow you to eliminate lists don't have more than 1 game showing in the series category for example
  9. Improvements to the loading screen to make it prettier
  10. Performance improvements for loading times by doing more work in the background
  11. Overhaul of entire codebase
    1. Support for any resolution or aspect ratio - currently this only works (well) on 16:9 screens
    2. Make game lists more dynamic - the implementation of the lists uses a bunch of static image controls 
    3. Localization

If anyone thinks of anything that could make this theme better, I'd be interested to hear it!

Source Code
If you're interested in the source code, it's (not pretty and it's) available here: 
https://github.com/AtomFry/Eclipse


Edited by Fry
Adding suggestion


What's New in Version 0.0.5   See changelog

Released

Removed extra views from the eclipse theme that were not needed and could potentially cause problems

  • Like 13
  • Thanks 1
  • Game On 2
  • Unusual Gem 5

User Feedback

Recommended Comments



14 hours ago, Dan Patrick said:

Definitely unique! I don't know how you're doing that but keep it up. This is interesting.

Thanks!  You can use the plugin API to add custom user interface controls to a theme and handle events like up, down, left, right, enter, esc, page up, and page down. 


https://pluginapi.launchbox-app.com/html/921cbe56-8200-e3cf-b8f4-2af213ae728a.htm

 

Its all done by the plugin that gets all the games in LaunchBox and creates lists of games by their metadata values. Then those lists are grouped into “list sets” by the type of metadata. Once you have that, it’s a matter of laying the images out on the screen and handling the up, down, left, and right events to move the lists around. 
 

The code isn’t pretty but you can look at it in the GitHub link in the description if interested. 

  • Like 1
Link to comment
Share on other sites

This is a cool concept for sure. Heres things id like to see if possible. 1) Faster startup if possible. 2) Second screen marquee support. 3) Quicker scrolling through games if possible. 

 

 

  • Like 1
Link to comment
Share on other sites

21 hours ago, northnut said:

This is a cool concept for sure. Heres things id like to see if possible. 1) Faster startup if possible. 2) Second screen marquee support. 3) Quicker scrolling through games if possible. 

 

 

Agreed on all three! 

Did scrolling through games feel choppy for you? 

Do you know about how many games you have?

Do you know about how long it took for it to load up for you? 

Link to comment
Share on other sites

19 hours ago, Fry said:

Agreed on all three! 

Did scrolling through games feel choppy for you?  Yes feels choppy

Do you know about how many games you have? 18391 games

Do you know about how long it took for it to load up for you? Initial load was around 42 minutes and subsequent loads take about 45 seconds 

 

  • Thanks 1
Link to comment
Share on other sites

The fact that this uses a plugin to build the interface leaves me with questions... My experience with plugins and launchbox is that the plugin can break when launchbox updates from one version to another. Is that something you'd be concerned about, or am I not understanding something correctly?

  • Like 1
Link to comment
Share on other sites

13 minutes ago, Whatscheizer said:

My experience with plugins and launchbox is that the plugin can break when launchbox updates from one version to another.

With the few plugins that I created, it had only happened ("broke") with the migration to .NET Core (version 11.3).  Which was an easy fix and ended up having nothing to do with LB's API.  I know others have 'broke' over time when using a 3rd party API call, where the 3rd party changed their API.

Though my plugins are all a lot more simplistic than what this theme uses. 😊

  • Like 1
Link to comment
Share on other sites

I suggest adding some way to put platform playlists. It’s annoying scrolling thru large collections, for example I got 1k+ ps1 games and with one row to scroll, it takes a while to find games. Also I can’t seem to flip box art in the menu like I can other themes

 

great work tho! It’s nice seeing a different theme that’s not a reskin of ones we already have. And unlike the other Netflix looking theme, this one seems to scale well and doesn’t require much setup 

  • Like 1
Link to comment
Share on other sites

On 10/28/2021 at 10:22 AM, Whatscheizer said:

The fact that this uses a plugin to build the interface leaves me with questions... My experience with plugins and launchbox is that the plugin can break when launchbox updates from one version to another. Is that something you'd be concerned about, or am I not understanding something correctly?

You're absolutely right.  There's always a chance for the plug-in to break when there's an update because it depends on the LB plug-in API and in places where the API does not offer a solution, it reads from LB/BB data files.  Changes to the plug-in API or the underlying data format of the LB data files could break things.  I try to use the plug-in API and avoid going directly to the data files whenever possible for that reason.  If an update breaks the plug-in, generally it will throw an exception on startup and Big Box will revert to it's default theme so it shouldn't be a concern of it ruining your LB/BB install or anything.  

Long term, I've requested some changes to the LB plug-in API to support voice search and the standard theme engine to support multiple wheels on the screen at one time.  If we get those changes, I'll be happy to throw 90% of this code away and rebuild it as a standard theme with a small voice search plug-in.  

  • Thanks 1
Link to comment
Share on other sites

10 hours ago, bberan said:

I suggest adding some way to put platform playlists. It’s annoying scrolling thru large collections, for example I got 1k+ ps1 games and with one row to scroll, it takes a while to find games. Also I can’t seem to flip box art in the menu like I can other themes

 

great work tho! It’s nice seeing a different theme that’s not a reskin of ones we already have. And unlike the other Netflix looking theme, this one seems to scale well and doesn’t require much setup 

Regarding putting platform playlists, you can go to the options gear and view games by playlist and it will show whatever playlists you have setup.  I agree, this theme does not suit itself to large collections with full rom sets.  It's much better with smaller curated collections.  Between 50 and 200 games in a platform or playlist seem to work well for me.  When I get into the 600+ it takes a long while to scroll through.  I'm asking for an enhancement to the plug-in API to allow for more button bindings so that I can support page up and page down so that it can jump through the game list faster for longer lists.  Right now, all the available button bindings are in use.  Here's the request if anyone wants to vote for it: 
https://bitbucket.org/jasondavidcarr/launchbox/issues/5624/expose-additional-button-events-bindings

Regarding flipping the box art, thanks for the suggestion.  I've added it to my to-do list.  I need to see how I can do this, this is another case where I might need an additional button binding in the plug-in API because all the available options are already in use.  I will add the "flip box art" event to my request for additional plug-in events.  

Link to comment
Share on other sites

I really love it! Its amazing, my only complain is that for some reason some videos works but others dont, and as a suggestion I would like to have a achievements section in the game details 

  • Like 1
Link to comment
Share on other sites

1 hour ago, darkniu said:

I really love it! Its amazing, my only complain is that for some reason some videos works but others dont, and as a suggestion I would like to have a achievements section in the game details 

Good suggestion on adding achievements in game details.  I've added it to my todo list.  Could you give me any more detail on videos that work and ones that don't?  What is happening when a video doesn't work?  The way it's coded is if a game has a video path the video is played but if the game doesn't have a video path then it just displays the fan art background image (or gameplay screenshot if no fanart image exists).  Are those games that you have videos for and the videos aren't playing?  What actually happens?  I'd like to look into that and get it fixed.

  • Thanks 1
Link to comment
Share on other sites

47 minutes ago, Fry said:

Good suggestion on adding achievements in game details.  I've added it to my todo list.  Could you give me any more detail on videos that work and ones that don't?  What is happening when a video doesn't work?  The way it's coded is if a game has a video path the video is played but if the game doesn't have a video path then it just displays the fan art background image (or gameplay screenshot if no fanart image exists).  Are those games that you have videos for and the videos aren't playing?  What actually happens?  I'd like to look into that and get it fixed.

I was testing and like you said when the video doesnt exist it uses a image (in this case Sonic Rivals 2) but when theres is a video it fades out to black I can add that the video in there its a .webm I didnt have problems with that before in other themes

image.thumb.png.6efde5fa01a9289f756cc19688eef583.pngimage.thumb.png.fd293fc8d59d58d843e625dfecb4e61c.png

  • Thanks 1
Link to comment
Share on other sites

Ahh thanks for the heads up. It might be an issue with webm format. I’ll look into that. I think all my videos are mp4 

Link to comment
Share on other sites

Just now, Fry said:

Ahh thanks for the heads up. It might be an issue with webm format. I’ll look into that. I think all my videos are mp4 

Steam uses webm, they play fine in VLC, but WMP needs you to install codecs to play them.

  • Thanks 1
Link to comment
Share on other sites

On 10/31/2021 at 1:57 AM, Fry said:

Regarding putting platform playlists, you can go to the options gear and view games by playlist and it will show whatever playlists you have setup.  I agree, this theme does not suit itself to large collections with full rom sets.  It's much better with smaller curated collections.  Between 50 and 200 games in a platform or playlist seem to work well for me.  When I get into the 600+ it takes a long while to scroll through.  I'm asking for an enhancement to the plug-in API to allow for more button bindings so that I can support page up and page down so that it can jump through the game list faster for longer lists.  Right now, all the available button bindings are in use.  Here's the request if anyone wants to vote for it: 
https://bitbucket.org/jasondavidcarr/launchbox/issues/5624/expose-additional-button-events-bindings

Regarding flipping the box art, thanks for the suggestion.  I've added it to my to-do list.  I need to see how I can do this, this is another case where I might need an additional button binding in the plug-in API because all the available options are already in use.  I will add the "flip box art" event to my request for additional plug-in events.  

in other themes you can quickly scroll using the alphabet (for example if im on arcade and want to play pacman and its not under favs, i can skip to P instead of scrolling from A) if theres a way to add this feature i think it would solve the large library issue and since other themes have it built in, i dont think you'll need to code anything too complicated? its a great theme and i still plan to use it for my portable LB since its mostly hand picked games but my main collection has 22k+

one suggestion to help with the problem would be in a future release have the platform playlist as the "tv series" and the games as "episodes"  as an optional view

that way its easier to condense larger collections while keeping the netflix design 

still one of the more modern looking themes and i really like the design. the limitations are more of netflix design. 

  • Like 1
Link to comment
Share on other sites

2 hours ago, neil9000 said:

Steam uses webm, they play fine in VLC, but WMP needs you to install codecs to play them.

Thanks for the heads up. I was looking into implementing videos as VLC but abandoned it when I ran into some issues and got distracted with other priorities. I’ll look into getting VLC to do video play back and I think that will solve this issue. 

Link to comment
Share on other sites

1 hour ago, bberan said:

in other themes you can quickly scroll using the alphabet (for example if im on arcade and want to play pacman and its not under favs, i can skip to P instead of scrolling from A) if theres a way to add this feature i think it would solve the large library issue and since other themes have it built in, i dont think you'll need to code anything too complicated? 

This is my plan for page up and page down if we get some additional button event bindings available via the plugin API. Like you said, this is kind of a limitation of the Netflix style UI and the buttons available to the plugin API.

Other themes can handle this because with a vertical wheel you only need up and down to navigate it. That leaves left and right for additional functions like popping open an alphabet for jumping to a given letter. For this Netflix style UI, up, down, left, and right are all needed for navigating so I need another button to pop open the alphabet to jump to a letter. Page up is in use for random game and page down is in use for voice search. If I get additional button events on the plugin API then I will make page up jump to the title with the next letter and page down jump back to the title with previous letter and move the random game and voice search under new button bindings. 

Edited by Fry
Link to comment
Share on other sites

This is pretty cool and I look forward to seeing it develop. I am impressed with what I saw after the initial three hour image caching (55K games). Runs nicely, but once I hit the BB native options menu by mistake and tried to go back, right back at square one with the image cache (I think, after 12 minutes of the initial pre-caching load screen without moving to the count or displaying, I shut down).  

If/when I do a smaller build or a dedicated living room TV set up, I will absolutely use this. Awesome concept and it is only gonna get better. 

  • Like 1
Link to comment
Share on other sites

I need to improve my WPF skills so I can load data and images asynchronously. The wheel implementation here is awful and doesn’t work well with large collections. I’m getting my WPF chops up while working on a few smaller plug-ins and then will come back to this one to try to bring what I learn to improve performance. 
 

it shouldn’t rebuild the image cache from going to the options but it does reload the plugin and that triggers all the lists to be regenerated. With my 2k games it’s about 30 seconds. So with 55k games, maybe it would be like 15 minutes. Yikes that’s bad. 

Link to comment
Share on other sites

This BigBox theme is really something different. It makes for me very easy to get started with BigBox! It is something unique!👍

Do you have any plans for localisations in other languages on your future release agenda? I could help you by translating into German and Turkish.

Btw. I recently changed the covers of a couple of games - but in BigBox with Eclipse theme there are still the old ones. Is there a way to recreate/update the images cache?

  • Like 1
Link to comment
Share on other sites

7 hours ago, GRKNZNGN said:

Do you have any plans for localisations in other languages on your future release agenda? I could help you by translating into German and Turkish.

I hadn’t planned on adding localization for different languages but I do like the idea. I will add it to my todo list. Full transparency, I’m not sure when I will get to this feature due to my limited time to work on this project and there are some other higher priority features that I need to get done first. 

 

7 hours ago, GRKNZNGN said:

 I recently changed the covers of a couple of games - but in BigBox with Eclipse theme there are still the old ones. Is there a way to recreate/update the images cache?

That’s strange, it should reflect and automatically update the Image cache.  The way the image cache update works is on startup, it checks for any file name in your launchbox/images folder that’s not in the plugin\media\resolution\images folder and scales the image. If your new image has the same name as the old image, you could go into the image cache in the plugin folder and find the old image and delete it and on the next startup it should put the new image there instead. 
 

Another possibility is that you have multiple box front images for these games. The plugin just takes the first one that LaunchBox gives so you would want to remove the old image from the game in launchbox to make it display the new image in eclipse. 
 

I think there are some major improvements that can be made in this image caching logic and this will be my primary focus when I get some time to work on this project again. 

  • Thanks 1
Link to comment
Share on other sites

5 hours ago, Fry said:

Another possibility is that you have multiple box front images for these games. The plugin just takes the first one that LaunchBox gives so you would want to remove the old image from the game in launchbox to make it display the new image in eclipse. 

You are right - duplicate box front images was the reason. First I removed duplicate images. Then I deleted the whole content in "Plugins\Eclipse\Media\1920x1080\Images\". 

On next start of BigBox this folder is filled with correct box art images now. Thanks for this useful hint! 👍

  • Like 1
Link to comment
Share on other sites

Sorry! I wrote a review before seeing the comments here. Great discussion, thanks for the education and the great Theme, Fry! I hope you plan to continue to work on this, it has a lot of potential.

  • Like 1
Link to comment
Share on other sites


Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...