Docs · Ship it
Exporting
By the end
- Your game in a folder of its own, named after your project
- That game running with no editor, the way the people you send it to will run it
- What is in the folder, and which of your pictures reach it
On this page
Before you export
- Save everything. Export copies the files in your project folder as they are on disk: press Ctrl+S in each scene and script you have changed.
- Set a startup scene. An exported game opens on that scene, and a script moves it to others with
change_scene, or the Levels list does, as each level ends: see Levels and endings. In Assets, right-click the scene and choose Set as startup scene. A game exported without one does not start: it stops at once, saying the project names no startup scene. - Clear every script error. A game with an error in any script does not open. See When a script is wrong.
- Save your pictures as PNG. See Which pictures reach the game.
- Try it first. Run game runs your project with the same player an export ships.
Export
- Click the Build tab, at the bottom right beside Levels. If it is not there, choose View → Panels → Build.
- Its Export section is open. Under the Export button, a line says where the game will be written: a
distfolder in your project, then a folder and a file both named after your project folder. - Press Export. Nothing is compiled. The Output section under the form lists where it wrote the game, and says Exported and your game’s name when it is done.
- The editor opens the new folder in your file manager.
For a project made of scenes and Rengy Script, that is the whole form: Export, the line under it, and Cook only, which prepares a copy of your pictures and sounds in a cooked folder in your project to report their sizes. No game reads that folder, and the next export copies it into your game, so delete it when you are done with it. The game is named after your project folder, and the name must be one every computer can use for a file: a folder name ending in a dot or a space, holding a colon, or a name Windows keeps for itself, such as con, is refused before anything is written. Rename the folder.
The installed editor exports for the kind of computer it runs on. On Windows the game is my-game.exe, and it runs on Windows; on Linux it is my-game, and it runs on Linux. To make both, export once from each.
What is in the folder
my-gameormy-game.exe- The game: a copy of the player that came with Rengy, named after your project. It opens the project it sits beside, wherever the folder is moved, and its window is titled with your project’s name.
- Your project’s files
- Everything in your project folder, as it was on disk:
project.rengy, your scenes and scripts, your pictures and sounds, and the.metabeside each. What.rengyignorenames is left out, and so isdist, where exports go. dist/content/desktop- Your pictures, sounds and shaders, prepared for the game to load, with a list of them in
manifest.ron.
The folder is still a project. File → Open project… on it opens your game in the editor again.
The export carries every .meta the game needs, so the game writes nothing in its own folder: it runs from a folder it cannot write to, such as a read-only drive. What its scripts save goes to a file of its own in your account’s data folder, never into the export: see where Ship Evader’s saves live.
Send it
Zip the folder and send it. Whoever gets it unzips it anywhere and starts the game file: they do not need Rengy. On Linux, if double-clicking it does not start it, run ./my-game in a terminal in that folder. The game opens your startup scene, with the controls you gave it in Input, and a Character Body the keys drive walks on them, as in the editor.
On Windows, a text window opens beside the game and shows what it prints; on Linux, start it from a terminal to see that. Debugging says what the lines mean.
Which pictures reach the game
The Assets panel lists .png, .jpg and Aseprite files, but only a PNG draws everywhere:
| File | In the editor and Run game | In an exported game |
|---|---|---|
.png | Draws | Draws |
.jpg | Draws nothing | Draws nothing |
.aseprite | Draws nothing | Draws the whole sheet, every frame at once |
Save every picture as a PNG. From Aseprite, export a sprite sheet as PNG and cut it into regions, as Sprites and art shows.
A PNG is drawn at its full resolution in an exported game, as in the editor. The Desktop size cap in its import settings is stored, not applied yet: see Projects and assets. For each picture larger than its cap, an exported game prints a line saying it did not decode, then draws the picture anyway.
Sounds reach the game as .ogg, .wav and .mp3, and shaders as the .wgsl files themselves, which the game compiles when it starts. See Audio and Effects and shaders.
What an exported game does not do yet
Next
Debugging finds what is wrong when the game does not do what the editor did.