RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Fun Facts Splashscreens

    Scheduled Pinned Locked Moved Projects and Themes
    splashscreenscarbon
    102 Posts 13 Posters 25.6k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • hiulitH
      hiulit
      last edited by

      What I have right now is:

      • The runcommand-onend.sh placed in /opt/retropie/configs/all:
      #!/usr/bin/env bash
      # runcommand-onend.sh
      
      "/home/pi/RetroPie-Fun-Facts-Splashscreens/fun-facts-splashscreens-runcommand-onend.sh" "$1"
      

      Actually, the fun-facts-splashscreens.sh script will have an option to enable/disable runcommand-onend.shusing something like this to add/remove this line:

      "/home/pi/RetroPie-Fun-Facts-Splashscreens/fun-facts-splashscreens-runcommand-onend.sh" "$1"
      

      The script will check if runcommand-onend.sh already exists.
      If it does, it will add/remove that line.
      If not, it will create the file and add that line.

      • The fun-facts-splashscreens-runcommand-onend.shfile:
      #!/usr/bin/env bash
      # fun-facts-splashscreens-runcommand-onend.sh
      
      readonly RP_CONFIG_DIR="/opt/retropie/configs"
      readonly SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
      readonly SYSTEM="$1"
      
      [[ -f "$RP_CONFIG_DIR/$SYSTEM/launching.png"  ]] && rm "$RP_CONFIG_DIR/$SYSTEM/launching.png"
      
      "$SCRIPT_DIR/fun-facts-splashscreens.sh" --create-fun-fact "$SYSTEM"
      

      What it does is very simple. Basically it takes the system variable $1 and it passes it to --create-fun-fact. All the heavy lifting is done in fun-facts-splashscreens.sh in the create_fun_fact() function.

      • If --create-fun-fact doesn't have any argument, it creates a boot splashscreen.
      • If the argument passed to --create-fun-fact is "all", it will create splashscreens for each system. This is a good option to run the first time (it takes a while) to have splashscreens for all the systems ready to use.
      • If the argument passed to --create-fun-fact is "$1"(megadrive, nes, snes, etc.) it will only create a splashscreen for that specific system.

      My little contributions to the RetroPie project:

      • Shell-Script-Boilerplate
      • Fun-Facts-Splashscreens
      • Limit-Last-Played-Games
      1 Reply Last reply Reply Quote 1
      • hiulitH
        hiulit
        last edited by hiulit

        Some examples of system launching images with box art.

        Everything is positioned based on percentages of the screen resolution.

        • The logo is 60% wide and 20% tall and is positioned 5% from the top.
        • The box art is centered and 35% tall.
        • The Fun Fact! is 60% wide and 15% tall and is positioned 15% from the bottom
        • The "Press any button..." text is 60% wide and 5% tall and is positioned 5% from the bottom.

        0_1518708720666_ffs-3do.png

        0_1518708738381_ffs-megadrive.png

        0_1518708748365_ffs-genesis.png

        0_1518708759493_ffs-mame-libretro.png

        0_1518708766502_ffs-nes.png

        0_1518708775150_ffs-snes.png

        My little contributions to the RetroPie project:

        • Shell-Script-Boilerplate
        • Fun-Facts-Splashscreens
        • Limit-Last-Played-Games
        cyperghostC 1 Reply Last reply Reply Quote 1
        • cyperghostC
          cyperghost @hiulit
          last edited by

          @hiulit That looks beautiful.

          The creation is incredible fast. So why not using /dev/shm and create the screens with runcommand-onstart?

          hiulitH 1 Reply Last reply Reply Quote 1
          • hiulitH
            hiulit @cyperghost
            last edited by

            @cyperghost I don't know what you mean by using /dev/shm.. :P

            My little contributions to the RetroPie project:

            • Shell-Script-Boilerplate
            • Fun-Facts-Splashscreens
            • Limit-Last-Played-Games
            1 Reply Last reply Reply Quote 0
            • cyperghostC
              cyperghost
              last edited by

              @hiulit That's a RAM drive ... Don't know if it's available on the x86 versions. The Rapsberry gots that

              hiulitH 1 Reply Last reply Reply Quote 1
              • hiulitH
                hiulit @cyperghost
                last edited by

                @cyperghost I have that folder. How does it work? How can we use it to create splashscreens?

                My little contributions to the RetroPie project:

                • Shell-Script-Boilerplate
                • Fun-Facts-Splashscreens
                • Limit-Last-Played-Games
                cyperghostC 1 Reply Last reply Reply Quote 0
                • cyperghostC
                  cyperghost @hiulit
                  last edited by cyperghost

                  @hiulit Create the splashscreen in this folder and make a symlink into system folder? Maybe @meleu can tell more?

                  hiulitH 1 Reply Last reply Reply Quote 1
                  • hiulitH
                    hiulit @cyperghost
                    last edited by

                    @cyperghost hmmm.. Ok! :) I'll take a look. Thanks!

                    My little contributions to the RetroPie project:

                    • Shell-Script-Boilerplate
                    • Fun-Facts-Splashscreens
                    • Limit-Last-Played-Games
                    1 Reply Last reply Reply Quote 0
                    • hiulitH
                      hiulit
                      last edited by

                      BTW, @meleu , how did you manage to cover all the themes? I mean, I've look at some of the popular themes and they don't seem to have a naming convention for folders or graphics :S

                      My little contributions to the RetroPie project:

                      • Shell-Script-Boilerplate
                      • Fun-Facts-Splashscreens
                      • Limit-Last-Played-Games
                      meleuM cyperghostC 2 Replies Last reply Reply Quote 1
                      • meleuM
                        meleu @hiulit
                        last edited by

                        @hiulit
                        You ended up reminding me of an item on my ToDo list: https://github.com/meleu/generate-launching-images/blob/c55e61ee0066438068cf5b72c62430337bb1e3d5/generate-launching-images.sh#L403

                        Actually my script isn't able to deal with ALL themes. I made it deal with most of them using an or, as you can see on the lines below that one I linked above.

                        About the art location, I get the paths from the xml files using xmlstarlet.

                        • Useful topics
                        • joystick-selection tool
                        • rpie-art tool
                        • achievements I made
                        hiulitH 1 Reply Last reply Reply Quote 2
                        • cyperghostC
                          cyperghost @hiulit
                          last edited by

                          @hiulit Just one suggestion! May you can introduce a second parameter where the theme that should be used can be entered ;)

                          hiulitH 1 Reply Last reply Reply Quote 0
                          • hiulitH
                            hiulit @cyperghost
                            last edited by

                            @cyperghost We already grab the current theme being used :) https://github.com/hiulit/RetroPie-Fun-Facts-Splashscreens/blob/24cddbe8e69dee7939dcc74ddc99e9bfbd03c59a/fun-facts-splashscreens.sh#L383

                            My little contributions to the RetroPie project:

                            • Shell-Script-Boilerplate
                            • Fun-Facts-Splashscreens
                            • Limit-Last-Played-Games
                            1 Reply Last reply Reply Quote 0
                            • hiulitH
                              hiulit @meleu
                              last edited by

                              @meleu As always, I'll end up using your amazing scripts ;) Thanks!

                              My little contributions to the RetroPie project:

                              • Shell-Script-Boilerplate
                              • Fun-Facts-Splashscreens
                              • Limit-Last-Played-Games
                              cyperghostC 1 Reply Last reply Reply Quote 0
                              • cyperghostC
                                cyperghost @hiulit
                                last edited by cyperghost

                                @hiulit I sended you a pull request .... Nevertheless I can't integrate into your script - it's to huge :(

                                But I hope you now understand ;)

                                I would create a switch --set-theme "$MANUAL_SET_THEME"
                                if it's empty then ... like you did, try to select it via emulationstation.cfg
                                If there is a fail, set to "carbon"
                                Hope it is clear now ;)

                                hiulitH 1 Reply Last reply Reply Quote 0
                                • hiulitH
                                  hiulit @cyperghost
                                  last edited by

                                  @cyperghost Hey, thanks for the PR ;)

                                  But I would prefer not to add any more arguments to fun-facts-splashscreens-runcommand-onend.sh. You see, --create-fun-fact calls check_config() were all those checks are made.

                                  I like the idea of adding --set-theme, though. And as we are at it, maybe add --set-font as well ;)

                                  Thanks for the idea :D

                                  My little contributions to the RetroPie project:

                                  • Shell-Script-Boilerplate
                                  • Fun-Facts-Splashscreens
                                  • Limit-Last-Played-Games
                                  1 Reply Last reply Reply Quote 0
                                  • hiulitH
                                    hiulit
                                    last edited by

                                    Some progress...

                                    Now, the create_fun_fact() function is divided into 2 separate functions:

                                    • create_fun_fact_boot(): It creates a boot splashscreen.
                                    • create_fun_fact_launching(): It creates launching images.

                                    create_fun_fact_launching detects if the game has boxart (scraped images).
                                    If it does, the launching image looks like this:

                                    0_1519056209743_ff-launching-boxart.jpg

                                    If it doesn't:

                                    0_1519056225663_ff-launching-no-boxart.jpg

                                    All the launching images are created using runcommand-onend.sh.

                                    My little contributions to the RetroPie project:

                                    • Shell-Script-Boilerplate
                                    • Fun-Facts-Splashscreens
                                    • Limit-Last-Played-Games
                                    1 Reply Last reply Reply Quote 0
                                    • C
                                      CapNinja
                                      last edited by CapNinja

                                      Er... Hi, noob here. And I did some mistake...
                                      running retropie 4.4.2 in a raspberry pi 3, I'd installed the zerojay stuff to access this splash screen awesomeness, but even following the rules I didn't quite understand what to do. And in my improvise I messed up.
                                      searching for a way to activate this splash screen I selected "start on boot - enable" or something like this and now emulation station did not open anymore. The splash setup can't initialize and I can't type anything.
                                      help, please?

                                      Edit: still with this problem, but what I want to ask is another thing. One tutorial more like that "explain like I was 5", you know? This is good, please dont misundertand me, just another one.

                                      hiulitH 2 Replies Last reply Reply Quote 0
                                      • hiulitH
                                        hiulit @CapNinja
                                        last edited by

                                        @capninja Hi there! It's weird that my script would mess with the emulationstation startup process, but it could be possible. Sadly, I don't know how to fix this problem for you. You could try and look up 'emulationsation doesn't launch on startup' (or open a new thread in the forum) or something like that.

                                        My little contributions to the RetroPie project:

                                        • Shell-Script-Boilerplate
                                        • Fun-Facts-Splashscreens
                                        • Limit-Last-Played-Games
                                        1 Reply Last reply Reply Quote 1
                                        • hiulitH
                                          hiulit @CapNinja
                                          last edited by

                                          @capninja On the 'explain like I was 5' tutorial, I'll be releasing a new and more stable version of the script, with a simplified GUI so it will be easy to use. A new documentation will come with this news version that hopefully will be more friendly :)

                                          My little contributions to the RetroPie project:

                                          • Shell-Script-Boilerplate
                                          • Fun-Facts-Splashscreens
                                          • Limit-Last-Played-Games
                                          C 1 Reply Last reply Reply Quote 1
                                          • C
                                            CapNinja @hiulit
                                            last edited by

                                            @hiulit
                                            Thanks man, format resolved. I Will wait for you then, because this IS awesome beyond awesomeness

                                            hiulitH 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                            Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.