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 23.7k 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.
    • meleuM
      meleu @hiulit
      last edited by

      @hiulit if I recall correctly that's why I made this commit: https://github.com/RetroPie/RetroPie-Setup/commit/bf8f36971f161cf6ce5bf4a029ae4e64bdb87f65

      Then, I believe you can solve it by installing librsvg2-bin.

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

        @meleu Nice! I'll try that :)

        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 hiulit

          @meleu Thanks! It's working :D

          I'll keep working on creating Fun Facts! Splashscreens using runcommand-onend.sh. And of course, I'll take a deep look at your generate-launching-images.sh code, because that's basically what I'm lookinf for.

          I have a little video demo:

          0_1518689050846_fun-facts-splashscreens-demo.png

          P.S. In the VM everything is slower than it should be.

          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

            If I end up adding this new feature (creating splashscreens with Fun Facts! for each system using runcommand-onend.sh) in Fun Facts! Splashscreens, maybe it's time to start thinking about using tags for the facts somehow?

            I think it would be better if the facts are related to the system the user is about to use.

            What do you think?

            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

              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
                                            • 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.