Make a complete, playable game from a description.
gamegen makes web games: they play in
any browser, on desktop and on phones. With --package steam, it also turns
a finished game into apps for Windows and Linux (including Steam Deck), and
makes what Steam asks for. This guide covers the rest: the steps in
Steamworks that only you can do, from your account to the release.
Expect: $100 per game, paid to Valve; about two to three weeks from a finished store page to release (Valve’s reviews, and a two-week “Coming Soon” period); and an afternoon of forms the first time.
/gamegen --package steam
On a game you’ve already made (or add it to a request: /gamegen a frog
who hops between lily pads --package). gamegen:
dist/windows/<Game>/<Game>.exe and dist/linux/<Game>/<game>,
and a zip of each;dist/steam/: the store images, the store text, the upload
files, and STEAM.md, a checklist of what’s left.To make just an app without Steam: --package windows or --package
linux. Mac apps aren’t made yet: they have to be signed and notarized with
a paid Apple Developer account, on a Mac.
<Game>.exe;<game> (the lowercase name gamegen printed, such
as bloom-hop).design/STATUS.md, such as
Steam app: 1234560 (Windows depot 1234561, Linux depot 1234562), so
gamegen fills them into the upload files next time.gamegen made these in dist/steam/store/; upload them in the store page
editor (Valve’s list of assets):
| Image | Size |
|---|---|
| Header capsule | 920 × 430 |
| Small capsule | 462 × 174 |
| Main capsule | 1232 × 706 |
| Vertical capsule | 748 × 896 |
| Library capsule | 600 × 900 |
| Library header | 920 × 430 |
| Library hero (no text) | 3840 × 1240 |
| Library logo (transparent) | 1280 × 720 |
| Screenshots (at least five) | 1920 × 1080 |
Also on the store page:
dist/steam/store/description.md. Check they
sound like you and say what’s fun.Submit the store page for review. Valve says to allow 3 to 5 business days, and to submit at least 7 days before you want it to go live (Valve’s review process).
Uploads use Valve’s command-line tool, SteamCMD (download, and Valve’s upload guide).
dist/steam/scripts/app_build.vdf and the two
depot_*.vdf files, if gamegen couldn’t (replace STEAM_APP_ID,
STEAM_DEPOT_WINDOWS and STEAM_DEPOT_LINUX).Upload, from the game’s dist/steam/scripts/ folder:
steamcmd +login <builder account> +run_app_build "$(pwd)/app_build.vdf" +quit
The first time, Steam Guard asks for a code; after that the login is remembered.
SetLive is left empty). In
Steamworks, under SteamPipe → Builds, put the new build on a private
beta branch first (make one under Branches, with a password).Install the game from Steam on the beta branch (in your library, the game’s Properties → Betas), on Windows and, if you have one, on a Steam Deck or a Linux computer. Check it starts, plays with a controller, saves (quit and start again), and quits.
Steam Cloud (optional): to back up saves, turn on Steam Cloud with Auto-Cloud in Steamworks, with these folders (the game’s name as it shows in the app):
%APPDATA%/<Game>/Local Storage/~/.config/<Game>/Local Storage/Make the change, package again, and upload:
/gamegen --change make the last level a little easier --package steam
gamegen raises the version each time. Upload as in step 5, try it on the beta branch, then set the build live on the default branch. Updates don’t need another review.
STEAM.md says if this applies.dist/<game>-windows.zip
on a Windows computer and run the exe.This guide comes with gamegen. Steam’s rules change from time to time; Valve’s Steamworks documentation is the final word.