How do I upload a new version of my Ren'Py game?

Last reviewed Tue Nov 03 2026 00:00:00 GMT+0000 (Coordinated Universal Time)

Short answer: Choose Upload new version on the Versions page, the Episodes page or your project card's menu (in Forge's More menu it reads Upload new source), and upload a ZIP of the whole game. It replaces that episode's source and builds it. Readers keep the published version until a new one is published, the last working build stays if the new one fails, and readers' saves carry over. Files you changed in Forge are listed before you upload, and you can bring them back afterwards for 30 days.

What goes in the ZIP

  • Your game's source: the folder that holds game/ (or just the contents of game/), with your .rpy scripts and unpacked images, audio, video and fonts, up to 12 GB.
  • Unpack .rpa archives before zipping. They are refused, as are .rpe files, Python package archives (.whl, .egg, .pyz) and secrets such as .env files or SSH keys.
  • Compiled scripts, caches, saves and desktop builds are left out for you, because Vizno builds them fresh.
  • Games made for Ren'Py 7 or Python 2, and games that need native extensions, are not supported.
  • To name the version, set define config.version = "1.2" in options.rpy. Without it, the version is named after the ZIP file.

Pick the part

If your game has several episodes and you start from the project card, the dialog asks which part the ZIP is for. From the Episodes page, Versions or Forge it goes to the episode you are on.

If you changed files in Forge

When you have edited files in Forge since your last upload, the dialog says "You changed N files in Forge since" that version and lists them, marking the ones not built yet and the ones you deleted. Download these files saves them as a ZIP, so you can copy the changes into your own copy of the game. Your ZIP replaces those files when it uploads.

After the upload, the new version on Versions has a Forge edits this upload replaced section:

  • Unchanged in your ZIP: your ZIP left these files as they were in your last upload, so nothing in the ZIP is lost by bringing back your Forge version. Bring it back or Bring all back does it in one click.
  • Also changed in your ZIP: you changed these files in both places. Compare shows your ZIP's version beside your Forge edit, and Bring back the Forge version replaces the ZIP's changes to that file after you confirm.

Brought-back files go into Forge as saved changes and build about two minutes later. You can bring edits back for 30 days, but not while another build is running, and not after you upload a newer version.

If the version does not build or does not start

Your project card and a notification say "did not build" or "did not start", and What went wrong opens Versions. There you see the lines around the one Ren'Py stopped at, the error, and what readers and Forge keep in the meantime. Fix it with Upload a fixed ZIP or, where it is offered, Fix in Forge, which opens that script at that line. Retry runs the same upload again, when its files were stored and nothing newer has been built since.

Publishing and returning readers

Readers keep playing the published version until a new one is published. Once the new version is ready, the main button on Versions becomes Publish with the version's name for accounts that can publish; during the beta that is limited to Vizno staff.

Saves never block publishing. If Ren'Py could not keep its place in some scripts, Versions lists them under Readers' saves: a save inside one of those scripts resumes from an earlier point, as it would on desktop.

For seven days after a version is published over an older one, Return readers on the Readers tile puts the older version back for readers. Returning starts a new seven days, so you can switch back again.

Was this helpful?

Still stuck?

Open a ticket at vizno.com/contact and someone on the team will help.

More in Authoring