About the Author
Mass Effect
Final Fantasy X
Batman:Arkham City
Borderlands Series
Weekly Column
Champions Online
World of Warcraft
DM of the Rings
Good Robot
Project Frontier
Forums
"Music"



Upcoming Attractions

By Shamus
on Tuesday Jun 5, 2018
Filed under:
Notices

On Wednesday I’ll be streaming some Destiny 2. I plan on starting around 8pm Eastern time. (Which works out to midnight UTC.) More importantly:

E3 begins this weekend. I’m hoping to re-stream the show, although Twitch hasn’t given their official blessing for re-streaming in 2018. It’s been standard practice for the last three years, but usually we get a post with a list of rules and guidelines.

Assuming it all works out, I’ll be streaming with Ross, who you might remember as part of the Good Robot dev team, and who is now working for Ubisoft. Ross and I will watch the shows, talk about the games, make fun of suits trying too hard to be cool, and generally fill in the slow moments with commentary.

Here is the schedule for the big events at E3: (Events I’m interested in streaming are marked with an asterisk, although I could be talked into covering others.)


Saturday, June 9
* Electronic Arts: 11 AM Pacific / 2 PM Eastern

Sunday, June 10
* Microsoft: 1 PM Pacific / 4 PM Eastern
* Bethesda: 6:30 PM Pacific / 9:30 PM Eastern

Devolver Digital: 8 PM Pacific / 11 PM Eastern

Monday, June 11
Square Enix: 10 AM Pacific / 1 PM Eastern
* Ubisoft: 1 PM Pacific / 4 PM Eastern
PC Gaming Show: 3 PM Pacific / 6 PM Eastern
* Sony: 6 PM Pacific / 9 PM Eastern

Tuesday, June 12
Nintendo — 9 AM Pacific / 12 PM Eastern


The rumor is that Gearbox will probably talk about the next Borderlands this year. If so, I wonder where they’ll show up. Borderlands is published by 2K Games, and 2K doesn’t have a big press event. Which means Gearbox will probably crash someone else’s party. Maybe they’ll show up during the Microsoft or Sony events, or maybe they’ll just announce on Twitter and put a trailer on YouTube. Or maybe the rumors are wrong and there won’t be any Borderlands news.

I notice they gave the PC Gaming Show lots of breathing room this year. In the previous years the PC show always ran really long and another (far more important) event would start, so everyone would drop the PC Show to cover the other one. This year they’ve got three whole hours to burn before Sony’s show starts. I do 90% of my gaming on the PC so I really ought to watch. On the other hand, the PC show is always slow and cringe-y and short on actual news / announcements. We’ll see.

So that’s the plan. I know this stuff disrupts the usual schedule of analysis you come here for, but I really want / need to watch this stuff, so the stream is simply the best way to turn those hours into content. It’s this or a blank page.

We’ll return to our regularly scheduled complaining once E3 blows over. Thank you for your patience. As always, my stream will be on my Twitch page.


 
 
Comments (36)



Diecast #213: Early Consoles, Starships, and Flawed Games

By Shamus
on Monday Jun 4, 2018
Filed under:
Diecast

Heads up! I plan to stream a little later in the week. I’m thinking maybe some Destiny 2? I’m aiming for Wednesday, but I haven’t picked a time yet.


Direct download (MP3)
Direct download (ogg Vorbis)
Podcast RSS feed.

Hosts: Paul, Shamus. Episode edited by Issac.

Show notes: Continue reading »


 
 
Comments (48)



Return to TIM Island

By Shamus
on Sunday Jun 3, 2018
Filed under:
Random

I’m sure most of you remember that one time I did a massive, 50-part retrospective / critique of the Mass Effect series. As part of that critique, I had an entire entry dedicated to tearing apart the notion that a terrorist organization could recruit, train, equip, and deploy a fully mechanized military force capable of waging war on a galactic scale, and furthermore that doing so in secret wasn’t just implausible, but laughable.

Imagine my surprise when I ran into this video, detailing how the US Government did exactly what I said was impossible. From 1942 to 1945 they hid an entire city of 75,000 people – the fifth largest city in Tennessee – and used it to build a superweapon in complete secrecy.


Link (YouTube)

To be fair:

  1. This was done by a world superpower, not a terrorist organization.
  2. The city wasn’t COMPLETELY secret. I mean, people knew it existed and knew how to get there, it’s just that the goings-on inside the city were secret.
  3. This secret city was only secret for 3 years, not a generation.
  4. They only needed to build 2 weapons, not fleets of tanks, ships, or supplies for tens of thousands of space marines.
  5. The people signing up were serving a country they loved and fighting against a regime they hated, and not joining a sketchy mass-murdering megolomaniac with no coherent goal that would appeal to the masses.
  6. While the US government did many things that would be considered sketchy or “renegade” by today’s standards, they didn’t casually kill their own people by the hundreds for trivial reasons.

So while this doesn’t exactly excuse the limitless power of Cerberus, but it does make it very slightly less comically implausible.

But now I’m wishing we could have gotten more details on Cerberus. Previously I’ve said they should be excised from the Mass Effect series. Now I’m thinking you could tell a really cool story about some sort of alternate version of Cerberus that was like a scaled-up version of Oak Ridge: The government deliberately makes a secret project and then looks the other way, leaving the (sigh) Illusive Man free to tackle some sort of galactic-level Manhattan Project without much in the way of supervision. Nothing could justify the way Cerberus stole so much of the limelight from the Reapers, but you could tell a really cool story about a secret city with a doomsday weapon and an “Ends Justify the Means” mindset.

Still, interesting bit of history. I can’t believe I’ve lived my whole life without hearing this story.


 
 
Comments (122)



E3 Approaches

By Shamus
on Thursday May 31, 2018
Filed under:
Video Games

It looks like a couple of companies are trying to get a jump on E3. On Tuesday, Bethesda promised they had a special Fallout-related announcement. They started a livestream that was nothing but a plastic Fallout Boy. And they streamed that for 24 hours. At the end of the wait, Todd Howard came out and gave everyone a teaser trailer for Fallout 76:


Link (YouTube)

As publicity stunts go, I found this to be more annoying than intriguing. But that livestream maintained between 50k and 150k viewers for those 24 hours, so I guess it was making somebody happy.

According to lore, Vault 76 is a vault that was intended to open just 20 years after the bombs fell. On one hand, I think rewinding the timeline is a very good idea. On the other hand, this trailer gave us not a clue as to the nature of the game. Mobile game? Another shooter? A sim? It’s a bit early for them to be talking about a sequel to Fallout 4. The rumor is that this is going to be an online game. Some are guessing it’s a late-to-the-party DayZ clone. I suppose for a company habitually incapable of writing, designing, animating, and scripting NPCs, the idea of just crowdsourcing the entire mess by letting players populate the world must be pretty appealing. Still, it sounds like something I’ll be avoiding.

The more interesting news is that Intellivision is making a new console and no that’s not a set-up for a joke that’s a real thing that’s happening in the real world, really. Continue reading »


 
 
Comments (129)



Unity Week #9: Preemptive Premature Optimization

By Shamus
on Tuesday May 29, 2018
Filed under:
Programming

“Premature optimization is the root of all evil.”

That quote by Donald Knuth gets repeated a lot in programming circles. It dates back to 1974, which means that by the standards of computer science it’s more or less the Code of Hammurabi. While I freely admit that Knuth is a better computer scientist when he’s fast asleep than I am at the peak of a caffeine high, I do have some reservations about this particular bit of wisdom. Specifically: Is premature optimization really that dangerous, and what’s the difference between “premature optimizing” and simply building something properly the first time?

In my professional career, I can’t remember a single instance where premature optimization caused a serious disruption. Maybe that’s a side-effect of the domain I work in. Games have very strict performance requirements that would seem completely unreasonable – bordering on fanatical – to someone working on (say) database administration. The performance of your program is continuously expressed to the user through the framerate of your full-screen application. If a thread stalls, if a frame is dropped, if texture data isn’t fetched in time, if you run out of VRAM, if you oversaturate the memory bus, or if one of a dozen or so other systems falls behind, then it will create problems that a human being can see and feel.

Contrast this with something like a Pixar-style render farm that chugs away rendering gigantic images all day long. Both the game and the Pixar-renderer are rendering images. Time is money so there’s a huge financial incentive to get the Pixar program to run as fast as possible, but if there was a bug that wasted 15% of the available processing power, how long would it take someone to notice? Would they? Meanwhile in a game, dropped or late frames give the user a realtime visualization of your sins. It’s hard for the user to not notice performance problems.

I’ve spent a lot of time in this domain that’s obsessed with performance and maybe a little negligent when it comes to maintaining code, and perhaps that time has blinded me to the wisdom of Knuth’s words, but what’s the actual damage of premature optimization? I get that a programmer might blow a bunch of time squeezing an extra 2% performance out of some system that ultimately doesn’t matter, but aside from the squandered programmer hours I don’t see how it hurts a project. And if we’re worried about wasted programmer hours then we have bigger fish to fry than this. Unreadable code, dependency hell, lack of documentation, failure to abide by best coding practices – all of these have devoured far more of my hours than someone’s mis-spent weekend tinkering with trivial concerns. I can believe that premature optimization is a bad thing, I just can’t get behind the notion that it poses a serious threat to our productivity. At least the premature optimizer is wasting their own time instead of mine.

Continue reading »


 
 
Comments (107)



Diecast #212: Destiny 2, Critics, Rage 2

By Shamus
on Monday May 28, 2018
Filed under:
Diecast


Direct download (MP3)
Direct download (ogg Vorbis)
Podcast RSS feed.

Hosts: Paul, Shamus. Episode edited by Issac.

Show notes: Continue reading »


 
 
Comments (39)



Unity Week #8: Some Thoughts on Variable Names

By Shamus
on Thursday May 24, 2018
Filed under:
Programming

Like I said over the weekend, my series on Grand Theft Auto 5 has been delayed. But I can’t bear to leave the Thursday spot blank, so here are some meandering, dashed-off thoughts on the problem of variable naming in C#. To be clear, the problems are mostly with me and not C#. Specifically, switching languages is forcing me to shift my coding standards a little.

For years I worked for a company with a mature (meaning large and resistant to sweeping changes) codebase. In 1993 or so it began as a pure vanilla C project, but sometime around the turn of the century we began migrating to C++ while disrupting the existing code and coding style as little as possible. C and C++ are different languages and the practitioners of each language often have very different ideas about how code should be formatted. Since our codebase was a hybrid, our formatting standards were a slightly strange and anachronistic blend of old and new. Since I used these standards for years, they eventually became part of my personal style. I wasn’t even really a fan of the standards, but after you look at one particular style of formatting for a decade or so, everything else starts to look a little strange.

Let’s look at an example. Earlier in the week I created a SpaceMarine class. Here is how that class might look in C++:

Continue reading »


 
 
Comments (86)



The Witcher 3: The Good Ladies and Keira Metz

By Bob Case
on Wednesday May 23, 2018
Filed under:
Video Games

This week I want to cover a few different topics, with my comments on each.

 

The Crones of Crookback Bog

The Bloody Baron got more press, but to me personally, Geralt’s interactions with the Crones (and the even more mysterious being they deposed, so mysterious that fans usually refer to it as just “the thing in the tree”) are the highlight of Velen.

For those that don’t know, the Crones are the beings Anna Strenger went to for help when she was pregnant with the Baron’s child. They’re three… things. Witches? (Demi)gods? Former Druids? It’s not clear, but whatever they are, they’re powerful and extremely unsettling.

Left to right: Whispess, Brewess, and Weavess.

Left to right: Whispess, Brewess, and Weavess.

This, to me, is top-notch character design. Even after having seen this scene before, playing it this time creeped me out all over again – the wicker cage thing over Brewess’ face, the twitchy, almost insect-like movements of Weavess, the profoundly obscene way that she strokes the severed legs she has strapped to her belt, Whispess’ necklace of severed ears… and the music, too. Even going back to the orphanage after the quest is over, hearing the music makes me nervous. (Here’s a link if you feel like listening.) The game’s composer is a man named¬†Marcin Przybylowicz, and as Nobuo Uematsu (composer for the Final Fantasy series) is celebrated for his work, so should¬†Przybylowicz be if you ask me. Eastern European folk music is rich ore to mine, and he mines it well. I think more of this game’s unique mood comes from its music than people realize.

Continue reading »


 
 
Comments (106)



Unity Week #7: Why Would You Want to do That?

By Shamus
on Tuesday May 22, 2018
Filed under:
Programming

“Huh. I’m keeping an awful lot of these widget objects in memory. I need them while generating the scene, and I occasionally need them later, but once the game is running they’re mostly just taking up memory. I wonder if it would be better to keep them around all the time, or throw them away once I’m done making the scene and re-create them if they’re needed later?”

Let’s assume, for the sake of argument, that these objects have a non-trivial size and also require a non-trivial bit of processing power to create. We create lots of them, we use most of them at startup, and then as the program runs we occasionally need a few of them. (But we can’t predict which ones ahead of time.)

This is a classic memory vs. CPU performance problem. If we had infinite memory, then there would never be a reason to get rid of these temporary objects. If we had infinite processing power and could re-create the objects for free, then there would be no reason to keep them around. But in this universe both of these resources are finite, so we need to study the problem to know what the right thing to do is.

So I’m writing a program in C# and I need to know how big something is in memory. In C++ I would just call sizeof (thing) and it would tell me how many bytes of memory thing is usingYes, you have to make sure you’re getting the size of things and not pointers, which means you might need to step down through the object hierarchy. The point is, this is easy to do.. This is a trivial operation, which means in C# it’s probably going to be a monumental pain in the ass. I do the usual Google search and as I feared I’m dropped directly into forum hell:

Continue reading »


 
 
Comments (143)



Diecast #211: More Mods, Thief vs. Thief 2

By Shamus
on Monday May 21, 2018
Filed under:
Diecast


Direct download (MP3)
Direct download (ogg Vorbis)
Podcast RSS feed.

Hosts: Paul, Shamus. Episode edited by Issac.

Show notes:
Continue reading »


 
 
Comments (61)



Grand Theft Auto V: Delay of Game

By Shamus
on Sunday May 20, 2018
Filed under:
Notices

Well this just sucks.

Maybe you were wondering where your Thursday post was last week? We recently finished up Black Desert Online, and it’s time to begin my next series. It’s supposed to be on Grand Theft Auto V, with a bit of a retrospective on the series as a whole. That’s still the plan, but I’ve had a setback.

How my workflow goes is this: Usually I play through a game a few times before doing a review. On my final playthrough, I’ll have Bandicam record all of the game footage. Then I write the review. Then I go back over the footage and gather up the screenshots and edit the whole thing together into blog posts. It’s a pretty good system and it’s served me well for the last couple of yearsBefore this, I used to take individual screenshots when it seemed like a good time. But I tended to miss a lot of stuff that way. Now I’ve got a few TB of storage so I just record everything..

Continue reading »


 
 
Comments (69)



The Witcher 3: The Bloody Baron

By Bob Case
on Wednesday May 16, 2018
Filed under:
Video Games

Last week, I had intended for this post to cover some of the game’s side content. I’ve since changed my mind – some of topics I wanted to discuss about that I’ve decided to put on hold until after I covered the main Velen quests.

The “Bloody Baron” sequence of events includes the multi-step quests “Family Matters” and “Ladies of the Wood,” which together see Geralt piece together the story of how exactly local warlord Phillip Strenger’s family was torn to pieces and came to various kinds of tragedy. It got oodles of acclaim – it won a Golden Joystick award for “Best Gaming Moment,” and both PC Gamer and Kotaku did write-ups on how it was made.

I’m of several different minds about this whole sequence. I’ve praised the Witcher games in the past for being “realistic” (in the literary sense of the word, not the literal sense), and this video covers the core of that argument if you want to know it in more detail. The Bloody Baron story meets many of my own informal criteria for realism: a believable messiness, an emphasis on the personal, events that are relatively small in scale in comparison to their surroundings, and characters who at least occasionally confound our dramatic expectations. And, broadly speaking, I like literary realism.

So I was surprised to find myself uneasy with this quest. It’s my personal – though relatively casual – belief that every good story has a moral. In some cases the moral is up-front and obvious, like with an Aesop’s fable, and in some cases the moral is complex and squirrelly enough that it defies conventional methods of explanation and can only be glimpsed through fiction. Put another way, even in literary realism, which tends to resist pat value judgments, stories are trying to say something about the world. And my personal reading of what the Bloody Baron sequence is trying to say is that the behavior of the titular character is at least partially excusable, and that perhaps the Baron shouldn’t be considered a villain at all.

Let’s look at that behavior. Our first direct contact with the Baron’s existence is at the inn we’re sent to to locate the Emperor’s spy. The village surrounding the inn is being terrorized by the Baron’s men, to the point where parents are disguising their daughters as boys in hopes of sparing them from being raped. Geralt has an encounter with them in the inn itself, and you can either fight them or talk them down.In a bit of reactivity I didn’t know the game had until recently, fighting them gets you banned from the Baron’s fort at Crow’s Perch, and you have to sneak in through a cave that leads to the bottom of the fort’s well.

No idea what this lot are on about, but I want some of whatever they're drinking.

No idea what this lot are on about, but I want some of whatever they're drinking.

Now I don’t necessarily mean to say that a commander bears full culpability far all the actions of his men in a situation like this, but surely he bears some. It’s not as though the Baron thinks the soldiers under his command are angels. In his first conversation with Geralt he says that they’re “good at pulling up the floorboards to find a peasant’s last sack of grain,”Or something like that, those may not be his exact words. so he’s apparently aware that at the very least his men are taking food from desperate people by force.

Continue reading »


 
 
Comments (73)