Compile

« Back to Glossary Index

As in, “to compile code”. In the case of Ren’Py, more specifically, it refers to the process of turning a rpy file into an rpyc file. The c in rpyc stands for “compiled”.

In a Ren’Py project, you will write code as a combination of Ren’Py script (stuff like show eileen happy, jump chapter1, play music sunflower etc.) and Python (for things like functions, classes, and handling variables in-game). This code is designed to be *human-readable*, that is, it’s designed in an English-like language so it’s easier to write out, edit, and debug. However, a computer doesn’t understand Ren’Py script or Python directly. Internally, computers run off of a bunch of 0s and 1s which tell the hardware to perform various complex actions that result in the various functionalities of your computer.

Essentially, you can think of your computer as someone that speaks only a special language, which I’ll call “computonian”. You don’t speak computonian, so if you’re trying to communicate with your computer, you need an interpreter to take your words and turn them into computonian for the computer. That’s what the compiler does. It takes your script, and translates it so the computer can read it. But since you don’t read computonian, if you open the rpyc file, it’ll look like a bunch of gibberish. The computer doesn’t actually understand the rpy files directly; Ren’Py turns them into rpyc files which the computer can then read to run your game.

rpyc files contain a lot of extra useful information beyond what’s directly in their corresponding rpy file, which is why it’s important to keep them in your project when you release it. This public Patreon article has some additional information on their functionality: https://www.patreon.com/posts/under-hood-rpyc-23035810

« Back to Glossary Index