Game Career Guide is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Get the latest Education e-news
 
  • Postmortem: Eastshade

    [10.15.20]
    - Danny Weinbaum

  • What Went Wrong

    Launch Bugs

    We had quite a few bugs when we launched. Even now a few remain. So what could we have done to prevent the bugs for Eastshade? In hindsight, honestly, nothing. As I look back on the final months of production, I do not believe we could have prioritized any better. We cut exactly what we could cut, and got all the right bugs and polished all the right things with how much time/money we had left. And I most certainly cannot say we could have worked any harder. I do not think hiring QA would have been particularly helpful, as our bottleneck was diagnosing and fixing the bugs, rather than knowing of them. Our most time consuming bugs were the ones I am confident QA would not have been able to identify a repro for.

    A lot of the biggest bugs were fixed within the first few weeks after launch, but the scars remain in our review scores. While I'm not sure it could have been helped on Eastshade, bug fixing is something we need to plan more time for and devote more energy to on our next title.

    Regression Bugs

    Post-launch, I would occasionally drop an update and about 6 hours later find in horror that I had broken something somewhere in the game. One of the most tedious parts of releasing an update was actually testing. Both Jaclyn and I got to the point where playing the first few hours or so of Eastshade to make sure there were no regressions was quite a loathsome task. It would have benefited us to run through the entire game to verify updates, but this would take nearly a work day, and neither of us could bear it. I think this sort of verification testing would be a good avenue for outsourcing. If we had a partner QA house who could handle this, they could rotate testers, and it wouldn't be quite as horrible for someone who hadn't run through the game 300 times already. It would also free us to keep polishing other parts of the game. I've also heard of some studios successfully automating their testing, but the notion of that sounds pretty alien to me (basically making an AI that can play through the game). Maybe that's an avenue I need to look into.

    Version Control

    It's kind of a silly thing to get wrong, but we struggled with version control nearly the entire project. We used Unity Collaborate for most of development, and it was an ongoing nightmare. We wrestled giant changelists of files that had not been changed, server issues that could only be resolved by ferrying changed files to another workstation and then reverting, absurdly long check-in and sync times, and a plethora of other day derailers. It was a very serious source of day-blockades for the project. At one point I attempted setting up Perforce on an Amazon server, but after two days of tinkering it seemed the rabbit hole was going to be so deep, and the learning curve so steep, that it would take too much time from development.

    I wish we had ditched the idea of using a cloud server at all. For our new project we are using Git and Sourcetree on our local network, and it has totally changed our lives. With the speed of a local network, it takes mere minutes to sync. On the one hand, storing data locally seems risky, but if you're abstaining from checking in for days because you're scared something will get stuck, or the commit will take 30 minutes, that is actually more risky! We just need to remember to back up our repository every few months, either online or on a flash drive stored somewhere other than our house, and that way we have some insurance in case the house burns down. In reality, the biggest risk for data loss is file corruption, or hard drive failure, and since Git is decentralized, we are always protected against that, since every workstation has a full copy of the repo.

    We Got Ransomwared

    I'm not sure this is necessarily post-mortem material, but rather just a story I wanted to catalogue. It's true. Yours truly actually fell for a ransomware email. It was the Locky Virus, and it came in the form of a fake invoice. I had never seen or heard of ransomware up to that point. I opened the attached file and off it went, encrypting every file on my workstation. It got through about half my files before I realized what was going on and pulled the plug on the computer. What's worse-it was in 2016, and I was not using any version control at the time, other than Google Drive. And the Google Drive client had already been busy detecting changes and uploading all the encrypted files-overwriting the old ones on the server.

    That was it. Those were all the places the project was stored at the time. For a few hours, I actually thought I'd lost Eastshade, 2+ years in the making at the time. I remember I called my brother at 4 am, who was trying to console me that typically paying the ransom on ransomware actually does decrypt the files, since, in a sick way, they do have a "reputation" to uphold for future ransomware victims.

    It was a terrible night, but eventually I found that, astoundly, Google Drive actually does have a version history. There was no batch tool to download old versions of thousands of files, so it was just a tedious matter of going through each file and downloading the previous version manually. It took a few days, but after the night I had on the mountain of solitude when I thought I had lost it all, I did this task with joy and a renewed passion for life.

    Things That I Am Still Unsure Whether They Went Right Or Wrong

    Animal Folk

    I suspect we just shouldn't have done it. I was taking a page out of Elder Scrolls. I thought it would make the game feel more unique to have animal folk. And it did to a certain extent. We started to realize the mistake after feedback from Leaving Lyndow, prompting us to make massive improvements to the designs for Eastshade, but I don't think it was enough. It was a huge turn off for so many people. It's hard to quantify how many potential players we lost for this, but it really wasn't an important aspect of the game, so no amount was worth it. I've always cared a lot more about what the Npcs say then how they look, and the game would have been much the same with normal humans.

    If we were going to go the animal route, they should have been considerably more stylized, with bodies more like the animal. The issue with that is that it would have required unique rigs for each character, and therefore a unique set of animations. I'm not sure we could have pulled this off, me doing all the animations and rigging, which is something that is not at all my wheelhouse. And I suspect it would have been prohibitively expensive to find an animator for this on the industrial scale we needed. So we probably should have gone with regular humans.

    Self-Publishing

    On the one hand we didn't have to give away substantial portions of revenue, but on the other I was stuck doing a lot of things that aren't game dev; most of which I don't enjoy. What I'm still unsure of is if a publisher would have truly offloaded these things from me, or if I'd be stuck doing parts of them anyway in one way or another.

    I'm sure they would offload some things, but I'm not sure if it would be enough to account for the type of percentage most of them take (tends to be 30% for a non-capital fronting publisher). I suspect the best reason to go with a publisher is still if your primary need is development capital. It was tight but we made it, and we certainly don't need capital now. I'll also never know if the audience of an established publisher would have springboarded us into a substantially bigger sales curve, or if we made enough of a splash that most of our market found us anyway.

Comments

comments powered by Disqus