Overview
Steam is the largest PC gaming platform with 120+ million active users. This guide walks you through uploading your Summer Engine game to Steam. Prerequisites:- Exported game builds for your target platforms (macOS, Windows)
- Steamworks developer account
- $100 Steam Direct fee (one-time per game)
Before You Begin: Steamworks Setup
1. Create Steam Partner Account
1
Sign Up
Visit Steamworks and create an account
2
Complete Tax Forms
Required by Valve for revenue distribution (W-8/W-9 forms)
3
Pay Steam Direct Fee
1,000 in sales)
4
Create App
Click Create New App in Steamworks dashboardFill in basic info (game name, description, genre)
The Steam Direct fee is refundable after your game makes $1,000 in sales. It’s Valve’s anti-spam measure.
2. Configure Your Steam Store Page
Before uploading builds, set up your store page:- Game description (short and long)
- Screenshots (at least 5)
- Trailer video (highly recommended)
- Pricing and release date
- Supported languages
- System requirements
Uploading Your Game to Steam
Understanding Steam Depots
Steam uses “depots” for different platform builds:- Windows Depot - Your
MyGame.exebuild - macOS Depot - Your
MyGame.appbuild - Linux Depot - Your
MyGame.x86_64build
Upload Process
1
Install Steamworks SDK
Download from Steamworks SDK pageExtract to a convenient location (e.g.,
~/SteamworksSDK/)2
Configure Build Scripts
Navigate to
SteamworksSDK/tools/ContentBuilder/scripts/Edit app_build_<appid>.vdf:3
Configure Depot Scripts
Edit Repeat for Mac depot pointing to your
depot_build_windows.vdf:MyGame.app4
Upload Build
Run the upload tool:Enter your Steam password when prompted.
5
Verify Upload
Check Steamworks dashboard → Builds tabYou should see your uploaded build with all depots listed.
6
Set Build Live
In Steamworks: Builds → Set Build Live on BranchSelect
default branch for public release, or beta for testing.Steam Features Integration (Optional)
Summer Engine supports Steamworks integration for advanced features:GodotSteam Plugin
GodotSteam is a community plugin that adds:- ✅ Achievements
- ✅ Leaderboards
- ✅ Steam Cloud saves
- ✅ Steam Input (controller support)
- ✅ Steam Overlay
- ✅ Multiplayer matchmaking
- Download GodotSteam from godotsteam.com
- Extract to your project’s
addons/folder - Enable in Project → Project Settings → Plugins
- Follow GodotSteam docs for achievement/leaderboard setup
GodotSteam works identically in Summer Engine - all Godot Steam tutorials apply directly.
Platform-Specific Configuration
Windows Build Settings
Binary Format → Embed PCK: ✅ On- Creates single
.exefile (easier for Steam) - Slightly slower loading than separate
.pck(negligible for most games)
- Debug Only - For testing (console window shows debug output)
- No - For final release (no console window)
macOS Build Settings
Binary Format → Architecture:universal ✅
- Supports both Intel and Apple Silicon Macs
- Slightly larger file size but maximum compatibility
com.yourstudio.yourgame)
Linux Build (Steam Deck)
Binary Format → Architecture:x86_64
- Steam Deck uses this architecture
- Export → Texture Format: Use S3TC BPTC (same as Windows)
- Test UI at 1280x800 resolution (Steam Deck native)
- Support controllers (Steam Input handles this)
- Optimize for ~3-4 hours battery life
Launch Options in Steamworks
After uploading, configure launch options in Steamworks:Windows Launch Options
macOS Launch Options
Linux Launch Options
Testing Your Steam Build
Use Steam Beta Branch
Before releasing publicly, test with beta builds:1
Upload to Beta Branch
In Steamworks: Set your build live on
beta branch (not default)2
Access Beta
In Steam client:
- Right-click your game → Properties
- Betas tab → Select
betabranch - Steam downloads your beta build
3
Test Everything
- Launch the game through Steam
- Test achievements (if using GodotSteam)
- Verify cloud saves work
- Test Steam Overlay (Shift+Tab)
- Check controller support
4
Fix Issues and Re-upload
If you find bugs, fix in Summer Engine, re-export, and upload again to beta branch
Final Release Checklist
Before setting your build live ondefault branch:
- Tested on Windows 10 and Windows 11
- Tested on macOS (if shipping Mac build)
- All graphics render correctly
- Audio plays without issues
- Controllers work (if game supports them)
- Achievements unlock properly (if applicable)
- Cloud saves persist (if using Steam Cloud)
- Game can be quit properly (doesn’t hang)
- No console window in release build (Windows)
- Store page complete (description, screenshots, trailer)
Release Strategies
Soft Launch (Recommended for First Game)
- Upload to beta branch - test with friends/testers
- Set “Coming Soon” on store page - build wishlists
- Release to default branch when ready - notify wishlist users
- Gather feedback - update game based on player response
Immediate Release
- Upload build directly to default branch
- Publish store page immediately
- Announce on social media - drive traffic to Steam page
Early Access
- Mark as Early Access in Steamworks
- Set clear roadmap - tell players what’s coming
- Update regularly - maintain player engagement
- Graduate to full release when feature-complete
Updating Your Game on Steam
Players love games that get updates! Here’s how:1
Fix/Add Features in Summer
Make changes to your game, test in editor
2
Re-Export
Export fresh builds for all platforms
3
Upload New Build
Use same ContentBuilder process with new build filesUpdate the
desc field to version number (e.g., “v1.1.0 - Bug fixes”)4
Set Live
Set new build live on
default branchSteam automatically pushes update to all players!- Include patch notes in Steamworks (players see what’s new)
- Test updates on beta branch first
- Don’t push broken builds to default - use beta testing!
Common Steam Issues
Build Won’t Upload
Error: “Invalid content root” or “Files not found” Solution: Check thatContentRoot in your depot scripts points to the exact location of your exported build.
Players Can’t Download Build
Cause: No build set live on default branch, or wrong platform depot Solution:- Verify build is set live in Steamworks → Builds
- Check that Windows depot has Windows build, Mac depot has Mac build
Achievement Not Unlocking
Cause: Achievement wasn’t configured in Steamworks, or GodotSteam integration issue Solution:- Configure achievements in Steamworks first
- Use GodotSteam’s achievement test functions
- Check Steam overlay is enabled
Steam Distribution Fees
Revenue Split:- Steam takes 30% of all sales
- You receive 70% of revenue
- Game price: $20
- Player buys game: $20 to Steam
- You receive: $14 (after 30% cut)
- After recouping $100 Steam Direct fee: All profit is yours
Next Steps
Publish to itch.io Too
Cross-platform indie game hosting (no revenue share!)
Add More Platforms
Export for Linux, mobile, or web
Troubleshooting
Common Steam upload and export issues
Marketing Your Game
External resource - learn Steam marketing

