There’s not much else to do. So I pulled the trigger and let Microsoft know the game is ready. Now what???
Unity Pro Woe
Once upon a time you paid money for software. What a wild time that was. Tipping Goat paid $1000 (or roughly 100 full price games sold on Steam) for the Unity 5 Pro license. The idea was I’d have the best version of Unity and not have my customers sit through a Unity logo while my game had to sit there waiting to load.
I even streamlined my whole loading process to get Xbox players to the title screen as quickly as possible because nobody likes progress bars, spinners and unskippable logos. Unity had other ideas and shortly thereafter switched to a Subscription model where the software is now a “service” and you have to pay $400 per year (minimum) to get rid of the Unity logo. I’m stubbornly principled so I’ve been on Unity 5 ever since.
Updating in general has always been a headache. Every time there was a new Unity 5 version, I would have to: Uninstall Unity, uninstall the Xbox XDK, install the new XDK for that version of Unity, install the new Unity version, install the Xbox addon, update all the plugins for things like controllers, storage, etc. And something would always break or go wrong. This would cost me days to weeks of head scratching and frustration just to get back to where things were before the update.
Even the process of figuring out how to do all that was a massive headache of trial and error and rebooting throughout, only to find that now there was some new unspecified requirement for Visual Studio add ons or game-breaking changes to the way Unity worked. For a solo indie dev, this is practically crippling. So long story short, I was on an older version of Unity and with the arcade project catastrophes, side gigs, personal problems, mental health and the Covid-19 pandemic it was waaay out of date by the time the game was “finished”.
Ripping the band-aid
So one of the first things I talked to Microsoft about was this issue, and they kindly suggested I update to the latest version I could. Once more into the breach. How bad could it be?
After a few tries and a few reboots, I got as far as the above error message, nonsensically informing me I should have Visual Studio 2015 installed, because of course I should use an older version of Visual Studio than the one I was using before the more recent update. That’s how things work, right?
Go ahead and search the web for this phrase “please provide a location to search for the packages“. You’ll find lots of people having this problem because the installers are broken. Here’s the best part though, it asks you to provide a location, and you can try:
Except, no, it won’t accept it. It won’t download it from the internet. But it will, quite terrifyingly, let you “Skip package”!
I had little faith this would work, and after umpteen of these errors I was finally able to get Visual Studio 2015 installed. Except:
It turns out I also had to check “Visual C++” on the Visual Studio 2015 installer.
No problems. I love babysitting installers and hitting skip dozens of times I’ll just
Fortunately for me and all of humankind the file Unity was complaining about (“cl.exe” in the VC/bin/amd64 folder if you’re into that sort of information) was actually where it should be! I was afraid to cancel the installer because it might delete all the files in that folder, so I just killed the installer. 9pm. Done.
This is me with a hammer folks. Now it compiles.
Out of the woods?
Not yet, there’s more things to do before final cert approval!
There’s so many different ways a modern game can break and I’ve been doing a lot of testing to try to find ways of breaking it. When something does break, it’s often baffling, hard to reproduce and I don’t have much information about it to work with.
By stripping out the extraneous lines, I can quickly see only the parts I care about. Thanks RegEx!
So my plan is to submit the game to cert once everything looks good, probably fail, fix and repeat until the game is certified and can finally, finally, finally be released on Xbox.