Steam (Part I)
Updated: Aug 22, 2019
I've been very upfront about my goals for this game since the very beginning: the endgame is to get it onto Steam, and I'm now just about two weeks away from that. I've also made no secret about how absolutely terrible all of Steam's documentation is. Now, there are really two steps to it: getting approved as a developer, and getting your game live. I'm going to skate over the first (just like everyone else), because it's been such a long time since I went through that, and I'd rather not give inaccurate information. It's also, thankfully, something that you'll only need to do once ever, and then you're set for any and all games you make after. The one mistake I do remember making was waiting until I got all my sole proprietorship documentation in order. Steam does let you register as either a company or an individual, but they are very clear in their instructions (which you can only get to after clicking through several other pages and filling out their forms there) that they lump sole proprietorships in with the latter. So my official developer account is linked to "Zakary Olyarnik" rather than "ZWOLYA GAMES". Thankfully, you can set the name that shows up in the store to whatever you want, so ZWOLYA is still public-facing. No big deal, but I waited something like a month longer than I needed to (to get the government's approval) before starting the Steam end at all.
Okay, let's talk about getting your game ready. First off, you're going to need a Steam account. This is a normal, "playing games" account, not a "making games" account...although I'm pretty sure you need to get the first before they'll let you get the second, anyway. After that, you're going to have to pay $100 for what they call an "app credit", a per-game charge which actually isn't that bad considering all the features it unlocks, and all the behind-the-scenes stuff Steam takes care of for you.
Once you're paid up, Steam gives you two checklists that you can fill out in parallel, and will have to before your release is approved. The first is for your store page, and includes things like uploading descriptions, screenshots, system requirements, etc. The other is basically having uploaded your build, in all the platform- and language-specific variations you say you're going to - making everything match. These checklists are helpful, but could be a lot moreso, if say, they included links to where you can fill out and submit all of those things, rather than have you scavenger hunt around the Steam and Steamworks sub-websites separately.
For the store page, I'd say you want your game to be as close to being finished as possible, to minimize the number of necessary rebuilds and reuploads. I screwed this up; trying to be proactive as usual, I was uploading achievement descriptions and gameplay screenshots as soon as I possibly could, only to have the game change later and needing to redo that work. ...Just be careful when you get to that point. Also, be aware that once you submit your store page for approval, Steam wants 2-3 days to approve it, then mandates it sit there for 2 weeks before you can actually press the button and release. "Plan accordingly", it says in the header. Another hint I'd give is to brush up on your Photoshop skills. One thing they require a lot of are "capsule images", which are a group of horizontal banners of a bunch of different resolutions. They recommend to think about a design for your game's hypothetical box art, and translate it into this...so stuff like game name or logo, a representative image, and very little else, given the space you have to work with.
As for the game build checklist, what you need for that is a lot less straightforward. First, you're going to need to duplicate most of your graphical assets into the "Community" section. Next, you can set up support for achievements, leaderboards, and request beta testing keys, if you want any of those optional things. The most important part, though, is setting up your depots. You're going to need a unique one for every language/platform combination (note: this assumes you're using Unity, of course, where a Windows vs. Mac build is a completely different set of files. If you're using some magical universal file type like the dude in the "official" Steam tutorial video seems to be, you would set the option to be "All OSes"), and they'll each get a number incremented by one from your AppId. You can also handle your DLC in this way, but I haven't had a reason to look into that.
Once your depots have all been set up (and you've gone to the "Publish" tab to save all your changes, you're ready to upload your build. ...And that seems like a good place to stop for now. To be continued.