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.8k 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 said in Fun Facts Splashscreens:

      @meleu How did you manage to use imagemagick to convert svg to png?

      https://github.com/meleu/generate-launching-images/blob/c55e61ee0066438068cf5b72c62430337bb1e3d5/generate-launching-images.sh#L633-L635

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

        @meleu I used your code and I'm still having the same issue:

        convert: delegate failed '"rsvg-convert -o "%o" "%i""' @ error/delegate.c
        

        It seems that I need rsvg but my imagemagick doesn't have it and I've searched the Interwebs and I have to install manually...

        My little contributions to the RetroPie project:

        • Shell-Script-Boilerplate
        • Fun-Facts-Splashscreens
        • Limit-Last-Played-Games
        meleuM 1 Reply Last reply Reply Quote 0
        • 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
                                            • 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.