HOT RATIO CODE TIPS
The first stop if you want to mess with things should be Ren'Py's Quickstart documentation, which has numerous examples and is all-around very useful as a primer. Everything written below is stuff I've gathered after much fiddling around with the code, and while it is interesting if you're eager to get ready, it will not replace a solid look at existing documentation. :D
Click here to download a file we created that includes some tips and code you can copy/paste. I'll post some screenshots below, but for the convenience of keeping formatting, the file should be much easier to use! All of these are things you can modify easily to tell the story you want.
1 CHARACTERS
Characters have a default appearance (shown in script.rpy as "default" in # CHARACTER DOLL Headers). The rest of the attributes shown are listed under the same DOLLS headers, ordered by group (eyebrows, eyes, arms/pose, outfit for those that have one). Only one attribute per group can be displayed at a time (can't show angry AND happy eyebrows!).
When called (for instance with v22 "Hello", they'll show up in the default place (center) with their default appearance.
Showing, moving and hiding characters is done this way several ways
Note that you can already make a character appear with a different expression than the one they have by default.
After MOVING a character, always double the line to restate where the character ends up, otherwise it can cause display issues.
Example:
show red happy closedsmile at right with easeinright
show red at right
Poses and faces can be changed in separate lines or during dialog lines. Stuff that goes between the character call and the dialog is the expression change.
This new expression will stay displayed until changed, or the personnage disappears (which resets to default).
You can set an expression for this line only by putting an @ in front of it. You can add several attributes after the @ to make several of them appear only on that line.
2 SCENE TRANSITIONS
STATIC BACKGROUNDS
Static background transitions are very easy to do. There are only two types used in Love Thyself, dissolve and fade. Dissolve is very classic in that it simply transitions the new background on top of the old one. Like its name indicates, fade has a fade to black between the old background and the new one, which can indicate, for instance, the passage of time (this effect is used several times with successive hallways to mark a long time spent walking around the station).
Examples:
show bg-concourse1 with fade
show bg-greenhouse2 with dissolve
ANIMATED BACKGROUNDS
These are a little trickier to handle, because animated backgrounds are movies and not considered by the game as a normal backgrounds. It is important to remove them before changing backgrounds, and the way to do that is to simply add a "stop movie" command before the transition.
3 CHOICES
4 SOUND
Music and ambient sounds (which are stored in their respective folders in the sound folder) are short ogg sounds that are automatically set to loop. Sound effects ("sounds") are not set to loop. You can set a fade in command to make the volume progressively get louder, and a fade out for when you want the music to progressively stop. The number is seconds, and can be either a full second or 1.3, 0.5, etc.
Here is how they will usually be used.
play music "ConcourseAmbiance.ogg" fadein 1
stop music fadeout 3
play sound "BattleBridge_GunFight.ogg"
play ambient "Hallway.ogg" fadein 2
stop ambient fadeout 5
5 DEBUGGING
If you made a typo in trying to display something, or are trying to display an image that doesn't exist, the game will work, but a message will appear in red when the missing image should be displayed. You can compare names to fix your script.
Sometimes movie issues are the result of missing files being called. Check for missing files and for missing "stop movie" statements.
Indentation is critical to Ren'Py, make sure yours is correct or the project will not launch. Make sure all the options for your choices (the "menus") all have a semi-colon at the end of the option (see the sample).
If you have a question, feel free to ask it below, and we'll do our best to help you!