Register with Valve
Last updated
Last updated
Your first step is to navigate to . We strongly recommend you create a new Steam account to represent you as a publisher or developer, separate from any personal account/s you might have. Remember, new Steam accounts start as "limited" Put $5 in your Steam wallet to get around this.
Steamworks has its very own guide ... read it and follow it
Technically ... for the very first step ... no. In reality absolutely yes, you can't do anything meaningful without your App ID.
You can test some features of the Steam API using the test application "Spacewars" whose app ID is 480. This is the app ID we use in all of our Steamworks sample scenes and doesn't require you to be signed up to use it.
Having said that, you can't do anything meaningful with the test app, it exists as a teaching tool. To create the stats, achievements, leaderboard, workshop, etc. for your game you will require an App ID, and we do recommend you do this as soon as you are sure you want to release your game on Steam ... no reason to wait.
Once you're all set up as a Steam Developer and have your App ID your next step should be to get familiar with Steamworks and what it has to offer.
Steamworks is a dense topic with loads of features that can and will benefit any game. Be sure to check out our article on Steamworks. This is one of those things in life where it's better to read first and then do, than it is to YOLO it.
Already fully understand what Steamworks is and how it can benefit your project? Great ... now your ready to integrate it with your project.
Heathen's Toolkit for Steamworks SDK is the best tool for Valve's Steamworks SDK in Unreal, Unity or Godot (preview). The tool has been maintained and updated for over a decade, is trusted by thousands of developers and drives hundreds of games on Steam. Toolkit for Steamworks is more than just an API wrapper, it includes engine-specific tools and systems on top of a complete integration of Valve's Steamworks, coupled with rich documentation, best/good practices and a helpful community.
Unfortunately, there are a lot of just bad samples and example code out there, especially around Steamworks / Steam API for Unity. Even Unreal's own built-in Online Subsystem Steam and Steam Sockets plugins are very out-of-date and make some odd uses of the API that do not align with "good practice" as defined by Valve. Here are some common things you might have picked up or learned that you should throw out right now.
1st, understand what an Online Subsystem is. ... TL;DR is not a full-featured platform integration, very specifically it is a limited platform integration that attempts to normalize platform features for many platforms into a common set. This means it will never be a complete solution, it's not trying to be a complete solution.
Online Subsystem Steam and the related Steam Socket plugin from Epic Games for Unreal is very far out of date. Even if you wanted to keep to the Online Subsystem model. The Online Subsystem Steam is a liability you should be aware of.
In Unreal, they have a standard approach to online systems, e.g. friends, chat, sessions, etc., that is the "Epic" way to do things. They have created an "Online Subsystem" framework of many popular live operations/backend services, such as "Online Subsystem Steam" ... as well as Facebook, Google, etc.
Online Subsystem Steam shoehorns the Steam API and tries to make it fit the Epic concept of an Online Subsystem.
It falls apart when you want to take full advantage of a platform's features and capabilities.
Epic Games does try to compensate for the limitations of Online Subsystem regarding Steam API with several add-on plugins such as Steam Controller however this doesn't address the fact that Online Subsystem Steam is very far out of date nor the limitations with some of Valve's most valuable features in Steam Lobby, Steam Game Server, Steam Workshop, Steam Inventory.
This original came from an example of using the raw Steamworks.NET C# wrapper. You can find the original at the link below
Keep in mind this was an example script, meant to be used with a specific example project and like any example script
It was never meant for production use
Sadly a great many Unity Asset developers do what Unity Asset developers often do and copy and paste someone else's work into their own asset and run with it without actually understanding what it was, why it was or how to do it properly.
The functionality that SteamManager provided in its original context is handled by Heathen's systems. We provide both a free Lite version and a paid full-featured version for Unity.
Once you have your app, you can start setting up your Store Page. With the store page ready and approved, you have the option to make it public before your game is ready for release and can set a "Release Date". You can set this date to be a Year, Quarter, Month or even a specific date and time.
This Knowledge Base is your best source for information, not just on Steam but all manner of Game Development tasks.
In the Upper right corner, you will find a search box
Linked at the top of this knowledge base is a link to our Discord server, where you can get live support from the wider community and Heathen developers. This is the best method for asking a question when you can't find the answer here in the Knowledge Base.
The Discord community is there to help you as a game developer so feel free to ask questions about any game development-related topic you might have. As to support for each of Heathen's assets, each has a dedicated channel for that.
Once you join Discord, you will be able to directly message the Heathen staff you see there ... they are denoted by the | Heathen
at the end of their name. We do keep DMs to a minimum so if your question doesn't require a private conversation, we will answer you in the appropriate server channel.
Direct Message is not a means to get a faster response, it's a resource available when you need a bit more confidentiality than a public chat forum.
While not recommended as it's slow, error-prone, and all around the least effective of the available support options, Heathen can be contacted for support at heathen dot group
we will get back to you as soon as possible. Please be aware that emails may be trapped by spam, are an indirect method of communication, and will require an additional lead time to get back to you.
If you read the linked above and followed its instructions, you should have already been guided to pay the which will get you your first App ID.
Look to your left, that is the navigation panel and can be used to browse the Knowledge Base. Many articles have sub-articles so check the little > arrow to the right of an entry.
Complete
Complete | Foundation
Foundation