It’s Wednesday March 18, 2020. Doom Eternal comes out in two days. I’ve watched a couple of reviews like this one, which gives me confidence that this game isn’t going to be another Bethesda-style shitshow. I guess I’ll preorder it.
I see on the Steam page that this game requires a Bethesda account. Ugh. I really hate this. You buy a game through Steam, but then then when Steam launches the game, it actually just turns around and launches another launcher that requires a different login. Microsoft did this with their infamous malware Games for Windows LIVE. Rockstar did it with their stupid Social Club. Ubisoft did it with Uplay.
I’ll say this about the Epic Store: At least they had the decency to make their own platform rather than attaching their system to Steam like a parasite.
I hate double-logins. HATE. Now TWO companies are in a suicide pact with “my” software, each of them eroding my sense of ownership and creating completely needless layers of inconvenience and risk. Now if anything happens to either company, either platform, or either account, I lose access to my very expensive video game. Maybe one of them goes out of business. Maybe, like Microsoft, they fail so hard that they decide to abandon the platform and leave the attached games in limbo. Maybe some future conflict, misunderstanding, controversy, or data breach will end with my account deleted, suspended, or stolen. It’s not likely, but that’s no reason to make it more likely. If I told you your risk of dying of cancer X was only 1 in 100,000, that would sound pretty safe, right? Does that mean that doubling the risk is fine with you?
I realize most people trust Steam these days, but Valve software and Bethesda Softworks are very different companies and there’s no reason to expect that Bethesda is going to behave like Valve just because they’re trying to run a similar service.
Let’s Make Bad Decisions for Science!
So here’s what I’m going to do: I’m going to get this game through Bethesda’s platform. I know this is not a smart move as a consumer, but I also know that if anything goes wrong I’ll be able to make lemonade out of those lemons by writing an article about it. (And since you, future visitor, are reading this article, then you already know something went wrong and now you’re here to see where it fell apart and how bad it got.)
While I’m reasonably sure this is going to be an annoying process, I have a long history of trying out the various storefronts and rating them against Steam. GamersGate, Steam, GoGMy preferred platform., Origin, UplayThis isn’t really a platform since (last time I checked) it doesn’t have a proper client. It’s just lame corporate spyware with some social-media clinginess. But Ubisoft seems to THINK they made a platform, so I’m going to include it here., Games for Windows LIVE, the Blizzard Launcher, Epic Store, and Rockstar’s launcherI think they dropped the Social Club branding? I haven’t really checked it out since they Trojan Horse-d it into GTA V. all beat Bethesda to market. Bethesda is sixteen years late to this party, and it’s worth seeing how well they did.
I download the launcher, install it, and off we go…
Is This a Launcher or a Web Browser?
The first thing I discover is that the Bethesda Launcher (BL) isn’t really a proper storefront yet. You don’t shop within the interface. You click on a game, and it kicks you out to your default web browser.
Well, that’s not an encouraging start, but fine. I dump Doom Eternal into my shopping cart and head for checkout. Once I get there…
The webpage asks for personal info it doesn’t need and has NO BUSINESS asking for. Not just my home address, but also my PHONE NUMBER?!? There is NO REASON you need that, and I already get plenty of spam calls, thanks. Also, I have zero confidence that Bethesda’s company culture of “release first, then test, then patch if the product performs well” is going to result in a robust and secure ordering system. Fallout 76 was a hilariousAssuming you didn’t pay $60 for it. circus of bugs and exploits where Bethesda used design paradigmsLike having clients able to set their own status without any checking from the server, allowing people to teleport, modify inventory, and even invisibly rob other people in close proximity. that were obsolete by the late 1990s. If that’s how they design user-facing stuff like multiplayer, then I can’t imagine how bad their software is when it’s hidden server-side.
After insisting on getting my address, the system refuses to accept it. My address has a slash in it, and their system doesn’t like that. Yes, it’s an unusual address. Too bad. This isn’t Todd Howard’s personal blog, this is a corporate storefront that’s selling shit for money. You need to build a robust system or let Valve handle the transactions. There’s no room for bush-league mistakes when you’re operating at this level. Mine is not the most difficult address a billing system will need to cope with.
Why are you asking where I live when selling digital goods? Companies larger and smarter than you have experienced humiliating security compromises in the past, and the attacks get more sophisticated every year. If your frontend is this fragile, I shudder to think how dysfunctional the backend is. Never ask for information you don’t need, because it massively increases the damage that hackers can inflict.
I feed the system a fake phone numberProtip for Americans: In all area codes, 555-1212 is a reserved number. In the old days it was Time & Temperature, but these days I guess it’s directory assistance. Either way, it’s a great number to give to creepy companies that bother you for your personal details. The area code will match your region, and you won’t be sending the callbots after a real person. and mangle my home address so the system will accept it. The fact that it is now an incorrect and invalid address is a nice bonus. That’s one less bit of my personal data getting passed around.
I head for checkout, select PayPal, and then I’m taken to the PayPal side of things where it informs me that I’m about to pay $63.59 to Digital River.
For a moment I’m worried I blundered into a phishing attack of some sort. I should be making a payment to Bethesda Softworks, or Zenimax Media. I close the window, go back to Bethesda’s sad little featureless launcher, and click on the “Buy” link again.
This time I see some tiny print at the bottom of the page. Digital River is indeed a third-party provider that’s handling the storefront.
Bethesda, you don’t even run the site yourselves? Come on. You’ll notice when you buy shit off Steam, you aren’t billed by “Uncle Bob’s Shopping Cart Frontend for Newbies.” Your launcher has no features and you didn’t build your own storefront. Why don’t you FINISH BUILDING your system before foisting it on your customers?
Why does every company feel the need to show up years or decades late, but then shove some half-baked system out the door like there’s suddenly a rush? That just creates a terrible first impression and gives you an even steeper climb in the uphill battle for market share. You’re sixteen years late. Take another year or so to make sure you get it right.
I guess this explains what the address and phone number nonsense is all about. This is obviously a cheap off-the-shelf storefront. It was designed for companies selling tangible goods, and nobody bothered to adapt it for use as a digital storefront. Not only is this a minimum-effort job from Bethesda, but they subcontracted the lion’s share of the work to a third party that also followed the minimum-effort approach. I have this fear that Digital River sub-sub contracted the job to some rando that built the system by copy-pasting code from StackOverflow.
After the transaction, you’re shown a big green download button. Don’t bother pressing it. Since this silly storefront is a webpage, it can’t invoke the launcher and thus has no way to take you back to the game you just bought. So when you hit the big obvious download button, it just downloads a fresh copy of the Bethesda launcher instead of the game. What you need to do is alt-tab back to the launcher.
However, the launcher isn’t aware of the transaction that just happened. It’s still trying to get me to pre-order the game. Also, if I click on the “PREORDER NOW” button it allows me to step through the purchase pages AGAIN. I’m able to step all the way through to the point where it sends me over to PayPal. One more click, and I give them another $63. And since this bit is on PayPal’s end, it has no way of knowing you already own the game. It will literally sell you the same game twiceAnd perhaps, many times more than twice..
Obviously I cancel the transaction, but I can’t believe this is possible.
It looks like you need to sit there for five or ten minutes before the launcher will recognize you bought the game so you can begin the download. You know, exactly how you never had to do on any other platform ever. Apologists often like to jump in and argue that I’m being unfair. “Hey Shamus, it’s not fair to compare [Crappy launcher of the week] to Steam! It took Steam YEARS to get things working smoothly.” Fair enough, I guess. But Bethesda’s launcher isn’t just behind the times by today’s standards, it’s incomplete and janky even compared to the 2004 version of Steam.
I hit the big fat PRELOAD button and get this:
Hey Bethesda: Shouldn’t you have the user volunteer their age and agree to the EULA BEFORE they buy it, not at install time? Between this and the possibility for double-buying the game, there are a lot of ways this can go very badly for the user. It seems very likely a non-trivial number of people have bought the game, saw it wasn’t available in the launcher, assumed the transaction failed, and ran through it again.
I can’t figure out if these problems are the result of negligence, incompetence, or malice. Again, this mess makes Epic Games Store look like GoG in comparison.
After seeing this disaster of a system, I find myself wondering…
Hey, what’s the refund policy here?
What if I bought the game twice? What if it doesn’t work? What if I’m too young to install the game and too honest to lie about my age? Can I get my money back?
According to the site:
It is not possible to obtain a refund for items purchased except in accordance with any warranty offered by ZeniMax or to the extent required by local law. Some jurisdictions (including Australia and New Zealand) impose certain terms and conditions on the supply of services and digital content (including in respect of refunds) that cannot be excluded. See http://www.zenimax.com/legal_terms_us. If you believe that you are eligible for a refund based on the above, contact Bethesda Customer Support.
Wow. So basically, “No refund except in the two countries where they make us.” What assholes. Being able to refund games is 100% the norm these days, and this is inexcusable given how dysfunctional the store isNot to mention their games!. Like, it should be a physical impossibility for the people who made Fallout 76 to refuse a refund. If a normal human attempted it, they’d die of shame. Valve and GoG both make amazingly stable products, but Bethesda – the poster child for bugs, instability, and negligent design – does not. Inexcusable.
Hang on, there’s another line:
That “here” link? It just takes you to the front page of the store. No joke. From there, you can scroll all the way to the bottom and find the “Support” link in tiny print. From there, search for “Refund” in the knowledge base. Congratulations! You are now back where you started, except now Todd Howard is laughing at you.
You can link your Steam account to your Bethesda account. I mean, you can’t do it within this game launcher, but you can do it. On the other hand, I have no idea why you would bother. You might expect that if you link accounts, then Bethesda would look for all the Bethesda games you’ve already purchased on Steam, and add those titles to your Bethesda library. That just makes sense. It gives you a little starter library. From there, the strategy would be to give the user a reason to launch the game via Bethesda Launcher instead of Steam. Yes, that’s a laughable expectation with the launcher in its current state, but that’s the ultimate goal, right? I’m assuming Bethesda built this monstrosity as a way to escape paying the Steam tax. That’s totally understandable. But then they never give the user a reason to engage with the damn thing. If they’ve already paid for the game on Steam, then it costs Bethesda nothing to grant them access to it here, and it makes the launcher a little more useful.
But no. Linking accounts is just so that people playing on Steam can get their pre-order trash.
So before we wrap this up, let’s take one last look at this interface:
- Same button: A longstanding interface convention is that if you have a horizontal row of words / buttons, then these are tabs that change the contents of the window directly below them. This is Interface Design 101. But here, the “Games” tab is identical to the >> button on the left, which is to roll out a vertical panel on the left side of the screen. This panel is just a big list of all the games Bethesda has for sale, sorted alphabetically, with no distinction made between owned and unowned titles.
- These buttons open a web page: Again, these are positioned like tabs but they don’t behave like tabs and they also don’t behave like the left-most button in the same group. These just open a web page in Chrome, Firefox, or whatever you got.
- The one game I own: Here we are at the top of a vertical stack of buttons. These buttons DO act like tabs, in the sense that they change the contents in the middle of the window. This top-most button is a game I own, but the ones below it are games I don’t own. Also, that Doom Eternal icon is SUPER unhelpful. It looks more like a child’s imitation of Kanji than demonic symbols. How about a pentagram? A skull? Doom guy’s helmet? The stylized “D” and “E” from the title?
- Malfunctioning release timer: This starts off as a “preload” button. Once the game is downloaded, this becomes a timer that counts down to the release of the game. Then it becomes the “Launch” button. This is actually a good idea! I wish Steam had this feature, since I’m often unsure when a game will releaseThe release date tells you the date, but not the hour or the timezone. So some games release mid-afternoon, some release as soon as the date rolls over in your timezone, and some release when the date rolls over GMT. Kind of annoying if you’re eager to play as soon as the game goes live.. Sadly, it’s broken. The countdown timer runs normally for a while, then switches to 00:00:00:00 at random. Sometimes it turns back into a “Preload” button for several seconds, even if the game is already installed. Then at 9 hours before release it goes to 00:00:00:00 and stays there for no reason.
- A video: This is actually a fake-out. It shows a play button when you mouse over the video, as if it’s going to play when you click it. NOPE! This is another damn web link.
- More web links: Shit, is this launcher just a really convoluted way of navigating Bethesda’s web bookmarks? I don’t mind that these links exist, but if you scroll down you get MORE huge link boxes along with Bethesda’s links for Twitch / YouTube, Twitter, InstagramYes, really. and Facebook, and if you scroll past all of THAT garbage you’ll eventually reach the screenshots, game description, and system requirements. This the wrong way around. Imagine if the top of every Store page on Steam had a bunch of social media noise and news, and you had to scroll past large boxes of non-screenshot images to see basic info about what kind of game you were looking at. This stuff is literally upside-down in terms of priority.
- Hamburger menu: I didn’t mark it in the image above because the space was too crowded, but you can see a little hamburger menuThree stacked horizontal lines. in the upper left. This is the main menu. Of the nine menu options, only three are web links, and the rest are quasi-functionality. So that’s nice, I guess.
Two days later, the game finally releases. The countdown timer flaked out the whole time, sometimes working, sometimes showing 00:00:00:00. Then at launch time it stayed there, with the button still in the disabled state. I even tried switching to another game and back to see if it updated the button. Nope.
Finally I try pressing the button, even though the coloring and text clearly indicates the button is disabled. The button works, and begins unlocking the game. Whatever.
Then the launcher starts downloading 38 GB of data. What is it downloading? I already downloaded 48 GB when I bought the game. What did I download two days ago, if not the game? Is this a patch, or did it only download half the gameFor the curious, the final size of the install is 41GB.?
For comparison, Steam and GoG unlock a game automatically with a small download, right at release time. That means the game is ready to go when you are.
In Bethesda’s bizarro world, your game sits there in a locked state until you attempt to launch it. So if you went to bed on Thursday night, then when you got up in the morning you’d still have a 38GB download to wait for. Doesn’t this system sort of defeat the entire PURPOSE of a preload, by forcing you to wait when you expected to be playing, and by making sure the servers get slammed with maximum load at launch rather than spreading the traffic out over the previous week?
So we end up with buggy software, with a horrible interface, nonsensical design decisions, brazenly cut corners, and a horrible sense of entitlement on the part of the publisher that the public should just choke down this half-assed software.
It sucks, but I guess Bethesda is staying on-brand. It wasn’t what I wanted, but it was pretty much what I expected.
 My preferred platform.
 This isn’t really a platform since (last time I checked) it doesn’t have a proper client. It’s just lame corporate spyware with some social-media clinginess. But Ubisoft seems to THINK they made a platform, so I’m going to include it here.
 I think they dropped the Social Club branding? I haven’t really checked it out since they Trojan Horse-d it into GTA V.
 Assuming you didn’t pay $60 for it.
 Like having clients able to set their own status without any checking from the server, allowing people to teleport, modify inventory, and even invisibly rob other people in close proximity.
 Protip for Americans: In all area codes, 555-1212 is a reserved number. In the old days it was Time & Temperature, but these days I guess it’s directory assistance. Either way, it’s a great number to give to creepy companies that bother you for your personal details. The area code will match your region, and you won’t be sending the callbots after a real person.
 And perhaps, many times more than twice.
 Not to mention their games!
 The release date tells you the date, but not the hour or the timezone. So some games release mid-afternoon, some release as soon as the date rolls over in your timezone, and some release when the date rolls over GMT. Kind of annoying if you’re eager to play as soon as the game goes live.
 Yes, really.
 Three stacked horizontal lines.
 For the curious, the final size of the install is 41GB.
The Strange Evolution of OpenGL
Sometimes software is engineered. Sometimes it grows organically. And sometimes it's thrown together seemingly at random over two decades.
Marvel's Civil War
Team Cap or Team Iron Man? More importantly, what basis would you use for making that decision?
Who Broke the In-Game Economy?
Why are RPG economies so bad? Why are shopkeepers so mercenary, why are the prices so crazy, and why do you always end up a gazillionaire by the end of the game? Can't we just have a sensible balanced economy?
So what happens when a SOFTWARE engineer tries to review hardware? This. This happens.
Good Robot Dev Blog
An ongoing series where I work on making a 2D action game from scratch.