Grumpy Gamer

Ye Olde Grumpy Gamer Blog. Est. 2004

Jan 9, 2018

I knew a lot of people would hate the ending, but a lot of people love it as well. I don’t find things everyone loves very interesting. They tend to be boring and not tell me much. The ending of Thimbleweed Park doesn’t come out of nowhere. It’s kind of the whole point of the game (and before the game). It only bugs me when people call the ending lazy. It was very purposeful and anything but lazy. You can call it stupid, dumb, pointless, or anything else, but don’t call it lazy. Of course, hating my endings is nothing new.

Gameinformer 2017 Adventure Game Of The Year Awards

Best Ending – Thimbleweed Park

This homage to older adventure games pokes fun at the genre as well as embraces it. Thimbleweed Park feels new and nostalgic at the same time, and it has one of the best endings we’ve seen this year. Seeing how just the story wraps up and how it takes its self-aware jokes to crazy levels, makes this a wild ride.

Jan 7, 2018

As I abandon Twitter and other forms of corporate social media, I am diving back into RSS and blog feeds. My RSS list is quite old and there are a depressingly large number of websites that haven’t been updated in years. To get started, I’m looking for good programming blogs. Currently, I follow:

I’d love to find some more. I primarily program in c++, so I’m not too interested in blogs focused on Java or Swift unless they also have good general programming articles.

Jan 6, 2018

I’ve never played a real-world escape the room game. I still haven’t, but last night we played an escape the room in a box game. It was fun, but also a little odd. I’m not sure how the real-world ones work, but this in-a-box one feels like a poorly designed adventure game. That’s not a bad thing, it’s a different type of game under very different constraints, so I give it a big pass. It was also fun, and that’s what’s actually important. I also don’t know that I could do better, but hey! This is the Grumpy Gamer blog.

We finished the game with 22:50 left on the timer. Not that I’m bragging.

Jan 5, 2018

David Letterman was the only late night talk show I watched (recorded on my VCR) and I loved it. I think I mesh well with Letterman’s dry humor and I’m really excited about his new Netflix show. I’m glad it’s coming out once a month and not 12 episodes at the same time that everyone will just binge-watch and forget.

Jan 5, 2018

Hey, it’s time for Friday Questions*, but since I’ve never done this before on Grumpy Gamer, there are no questions to answer, so you have a week to ask some. If you have a question, put it in the comments below and I’ll pick 4 or 5 and answer them with a stark honesty that will amaze you. Questions can be about anything, but please keep them game or game industry related. Please don’t ask the same questions I’ve answered a hundred times in a hundred different online interviews. Unlike the Thimbleweed Park Friday questions, these will be answered in old-fashion text-a-reno.

  • Friday Questions can be canceled at any time due to lack of interest. Both yours and mine.
Jan 4, 2018

It’s not uncommon for me to get asked on Twitter (when I was active there) why we don’t unit test games? They would mention how they work in blah blah industry and do unit testing all the time and it’s virtually eliminated the need for human testers. They then go on to call me a jerk face and tell me I make stupid games.

OK, I made up that last part, but sometimes it feels like they said it.

It does bring up an interesting question. Why don’t we unit test games like you would other software? I can’t speak for others, but for me, it just isn’t that useful.

What is unit testing you ask? It’s basically where you write programs that feed data (sometimes random data) into program’s functions or modules and make sure you get the expected results or proper errors. That’s an oversimplification, but you get the idea.

Unit testing texture or asset loading can be useful, as is unit testing many other backend engine routines like memory managers, but that’s just not where most (and by that I mean 99%) of the bugs comes from.

Most of the bugs in a game (or at least my games) come from users doing stuff, and not stupid stuff, but normal expected stuff and the game logic just being wrong. This is really really hard to unit test and the failure states are hard to identify.

For Thimbleweed Park, we had the TesterTron 3000™ that randomly played the game for hours on end. This was useful in that it found occasional crash bugs, but it wasn’t very good at finding game logic bugs because, after an overnight run, it was hard to spot that something had gone wrong 6 hours ago. This is especially hard if the logic issue was very room-local and hard to spot later.

TesterTron had a mode where it would jump into each room one-by-one and this was useful in catching missing assets or bad packaging.

But we encounter a lot of bugs where the game works fine, but something is just visually wrong. The Sheriff picks up the phone and his animation isn’t aligned correctly. Or worse, it’s not aligned correctly only after he’s also open the jail door. Or Delores stands in the just the right spot and she clips into the desk.

I just don’t know how to realistically unit test this stuff. It’s possible, but the cost and effort involved would quickly outweigh the benefits. We’re not making flight software for 777s. No one of going to die or lose their entire bank balance because of our bugs. We’re not writing enterprise level software, we’re making video games and the cost of most of our bugs are negligible compared to monitoring a nuclear reactor.

It’s not that we don’t care, we care a lot. One of the largest expenses in Thimbleweed Park were testers.

I say “most of our bugs”, but not all. Post Thimbleweed Park launch, we did discover some bugs that caused players to lose progress and these are very painful to us.

We fix them as fast as possible and release a new build, but with each of them, I don’t know how unit testing would have helped. We had a problem on the PS4 where savegame data would get corrupt due to threading. We could have built a stress tester for this, but that’s all 20/20 hindsight. I can think of 100 other places that worked fine and without that hindsight, we would have spent a lot of time writing stress testers.

Again, not impossible, just not economical.

But maybe I’m wrong. Maybe other game developers have amazing game unit tests that are enormous time and money savers. If that’s true, I’d love to hear about them. I’m basically lazy and more than happy for robots to do my work.

But it feels like the ability to unit test games would require a good AI that can spot perceptual issues that go way beyond just getting bad data out of a function. Or maybe that’s called Early Access.

Jan 3, 2018

If you’re wondering why Thimbleweed Park isn’t anywhere to be seen in the IGF awards, it’s because we didn’t submit it. I have some issues with the IGF. The IGF doesn’t do this, but I also won’t submit to any awards that make you pay just to be considered (BAFTAs, DICE). Awards are basically cool-kid popularity contests and often have nothing to do with how good the game actually is. This is also true for movies and music. The academy award isn’t the best movie, it’s the best movie made by people academy voters think are cool or “in”.

Update: apparently you do have to pay to be considered for the IGF awards… it’s only $80, but still.

Jan 2, 2018

Waldschattenspiel is one of the best board games I’ve ever played.

The gist of the game is you place wooden trees on the board, then one player hunts the other players (dwarves) using a tea candle. The candle cast light that creates deep shadows behind the trees, which is where the other players hide. It’s surprisingly effective, spooky and even (actually) scary.

The game is a little unbalanced in favor of the dwarves (the hiders), but I don’t think that distracts at all. Originally it was designed as a kids game, with the parent playing the hunter with the candle, so that makes a little sense.

If you play it, make sure the room is very dark. While playing one of the dwarves, I could feel my heart rate rise as the candle moves around threatening to reveal my position. If the room is pitch black, the player playing the hunter can’t see the dwarves at all, so becomes much more than a game where you’re arguing the technicality of if the dwarf was in shadow or not.