This article is a tutorial explaining how to specify a splashscreen and presplash screen in Renpy. Because this took me almost a whole weekend to figure out I decided to make this post so maybe someone else can save some time doing this :)
What is a splashscreen? (or presplash screen)
From Renpy themselves; “A splashscreen is an image or movie that appears when the game is starting up and before it goes to the menu. Usually these are logos or intro videos.” A presplash screen is an image shown while Ren'py is reading the scripts and launching the game.
A good usage example of this I can think of is in Grand Theft Auto 5. When you open the game from your console, it first opens with the girl in the red bikini taking a selfie. Then after a few seconds, the GTA V logo appears with police lights, and siren and gunshot noises. This is an example of a presplash screen showing key art of the game as a quick intro as it loads, and then the game logo displays before leading the user into the main menu, or directly into the game.
Adding Spashscreen
- Add your splash image to your
imagesfolder, or wherever in your project you keep your images - Define your image with appropriate styling. My splash image is a webp file that I transformed to display contained within the window, vertically aligned on the page.
image splash:
Transform("images/splashscreen.webp", fit='contain', yalign=0.5)
- Add a
splashscreenlabel with how you want to display the image. It must be namedsplashscreen
label splashscreen:
scene black
show splash with dissolve
with Pause(2)
scene black with dissolve
with Pause(1)
return
The splash screen starts with black, then shows the splash image with a dissolve event, holds it there for 2 seconds, then fades back to black and holds for 1 second before going to the main menu.
You can also show movie splash screen with something like;
$ renpy.movie_cutscene('movie.ogv')
Adding Presplash screen
- Get your image
presplash.pngorpresplash.jpgand put it in your game folder , iemyGame/game - If you are publishing your game to web, instead put it into your root folder, aka
myGameand name itweb-presplash.pngorweb-presplash.jpg - Bonus;
config.minimum_presplash_timewill specify the minimum time the presplash should be displayed. It is defaulted to0.0, but you can override this in your game.
define config.minimum_presplash_time = 2.0 #makes presplash display for at least 2 seconds
And there you have it! That is how you set your splash and presplash screen in Renpy.

Top comments (0)