This article is for those developers that want to self publish their games through Steam, or that have been given a publishing deal with Valve or another publisher to post their game on Steam. Before continuing you must have a valid Steam Account. The same accounts details will then be used to give you access to the Steamworks pages, where you will set up your games for publishing. Note that in order to get fully set up, you will need to pay the Steam Direct fee for each product you wish to distribute on Steam ($100 at the time of writing).
Note that if any image in this article appears too small, you can right-click it and open it in a new tab to see it full size.
Steamworks
Once you have signed into your Steamworks account, you'll be required to fill in a few details before you can start with any game submission, namely set up all the payment and tax information and complete the identity verification process.
Once that's done, The next thing you'll need to do is to add a build account which has the ability to edit App Metadata and Public App Changes to Steam. This can be done by clicking the Users & Permissions link in the navigation bar and then clicking Manage users as seen here:
At the top right corner click the Add User button and then fill in the relevant information whilst enabling the suggested preferences:
Navigate back to the homepage and in the section "Create a new application", click the button labelled "Pay Product Submission Fee":
This will then take you to the usual Steam Payments page where you can pay the required fee and get an "app credit". Once completed you are ready to set up everything to get your game published, which starts by clicking the "Create new app" button on the Steamworks main page:
This will open the following form:
Fill in these fields and click Create Now, you'll see another prompt which contains a list of ids for specific packages - only close this prompt once you've noted the ids!
Now that your application has been created, click the Users & Permissions link then View Applications:
Edit Steamworks Preferences
If you click on your application, this will open the landing page for it. The landing page contains all the relevant information about your application such as Store Page information, Release Date, System Requirements, Adding promotion artwork/videos, Setting the platforms for your application and most notably how to launch your application. Under the Technical Tools heading click Edit Steamworks Settings:
This will open the General Application Settings page, under the Application Name and Type section confirm that your game name and type are correct. Next under the Supported Operating Systems page check which operating settings you wish to support, you’ll also see a Community Release State section which is used to show when your application appears on the store, change this as required.
Next click on Installation > General
By default your game has no launch options so click the Add New Launch Option button
Now that you have your Launch Option click the Edit button and start filling in the relevant information, by default Launch Option 0 will ignore the Operating System selected unless you add more, it is suggested you create a unique Launch Option for each target platform and fill in the relevant information, when filling in the executable name field you'll need to point it to the correct file, for GameMaker compiled applications this is as follows:
Next up we need to create Depot(s) to store the files for our application, to get there click the SteamPipe Link and then Depots
By default Steam should create a depot for your application, and each Depot has its own unique id which you'll need to note for later. Ignoring that for now, it's suggested that you rename your Depot to have a relevant name such as "Windows Content" or "DLC 1" to keep it clear what it should contain. You can edit these to be Language Specific, Platform Specific or to only work with a specific DLC also. For example you can set up your depots like this:
Once you have filled out all the relevant information, you must press the "Save" button otherwise the changes won't be pushed to the Steam server in the following part. Recent changes to this page have also exposed the Depots Languages settings which also must be filled in, once you have selected the languages you wish to manage press the “Save” button:
So, once you have saved those changes locally, you will need to publish your changes to the Steam server. Click the Publish link now to do that:
Upon opening this page you’ll see the following screen:
It's suggested that each time you make a change to your application that you click the View Diffs button before publishing to review what you have done. Once you've reviewed your changes and are ready to publish then click the Prepare for Publishing button, click the Publish to Steam button, fill in the text field with the on screen code and then click Really Publish.
This has now published the changes you made to your application, just to note that unless your game is released this won't make your application public. Finally navigate back to your landing page and click on the package shown at the top of the page.
You'll see that it has a section for Depots Included, click on the Add/Remove Depots button and update these as required.
Steamworks and GameMaker
This article only covers setting up your game on the Steamworks dashboard, but it doesn't cover the Steamworks SDK and getting your game to use it to communicate to the Steam API. We'll cover that in the following article: