Experienced Points: Unbelievable Tournament

By Shamus Posted Tuesday May 20, 2014

Filed under: Column 34 comments

My column this week is about the baffling announcement that:

  1. Epic Games is making a new Unreal Tournament. Despite the fact that Epic has been focusing so much on consoles, the game…
  2. …is planned to be a PC exclusive that…
  3. …will be completely free and…
  4. …developed in collaboration with the community.

So yeah. Strange things afoot.

 


 

Diecast #59: Bombshell, Dark Souls, Marvel Comics

By Shamus Posted Monday May 19, 2014

Filed under: Diecast 103 comments

Download MP3 File
Download Ogg Vorbis File

Hosts: Chris, SuperBunnyHop, Josh, Shamus, and Rutskarn, with a secret surprise guest that you can probably guess.

Show notes:

1:30 Bombshell

Behold the Bombshell site, in all its kitschy glory. Maybe they’re serious. Maybe it’s ironic. It’s definitely unapologetic.

The whole thing eventually degrades into yet another ride on the “what do we REALLY think of Duke Nukem?” rollercoaster.

25:00 DARK SOULS 2

If you only listen to one 80’s sitcom-style song about Dark Souls 2, make sure it’s THIS one!

30:00 If one Marvel hero was set up on a blind date with one DC hero, what would be the most interesting pairing?

35:00 Talking about Dark Souls 2 again.

48:00 Shamus and Mumbles talk comic books.

1:03:00 Mumbles is playing Diablo III for Xbox.

 


 

Frontier Rebooted Part 4: Stuck in a Rut

By Shamus Posted Sunday May 18, 2014

Filed under: Programming 87 comments

I’ve implemented erosion simulation a few times in my career. My usual technique has you begin at a single spot on the map, landing like a virtual raindrop. From there, you examine the immediate surrounding points and see which one is lowest. Then you move there and repeat the process. As you go, you shave a tiny little bit off of each point. If you want to get fancy, you look at the steepness of the slope. If you’re going on a nice downhill then you assume this theoretical trickle / stream / river is moving fast. You might pick up a little extra dirt (thus making the riverbed deeper) and taking it with you. When the land levels out, you assume the flow has slowed and you drop off a bit of what you’ve collected.

And if the erosion code doesn’t pan out, maybe we can repurpose it into a sled-riding simulator.
And if the erosion code doesn’t pan out, maybe we can repurpose it into a sled-riding simulator.

Eventually you hit the ocean or find yourself at the bottom of a hole. Here you drop off whatever you’ve collected, which ought to help form sloping beaches, river deltas, and gradually fill in craters. At this point you’re done. Now pick another point on the map, drop another raindrop, and start the whole thing over.

It’s not perfect. This would be useless to a geologist or other science-type person trying to study science-type stuff. But it’s perfectly good for making a plausible landscape.

This is nice, but shaders simply can’t do this kind of processing. You can’t say, “I’m done with grid coord X, Y, now let me move next door to X+1, Y”. You can’t just store values globally, and you can’t stop processing when you feel you’re done. (Unless you don’t want to generate any output. In which case you just wasted your time.) When your shader is executed, you’re dropped into a situation where you’re expected to do the calculations of one pixel, and only that pixel. You can’t change any adjacent pixels and you can’t carry values between them using variables. You can LOOK at adjacent pixels, but because processing is heavily parallelized, you can’t even guarantee that points will be handled in any particular order.

So how do we handle large processing jobs like this, where we have a lot of inter-dependency and changes that need to propagate in unpredictable ways?

Continue reading ⟩⟩ “Frontier Rebooted Part 4: Stuck in a Rut”

 


 

Skyrim EP33: Aquaman!

By Shamus Posted Friday May 16, 2014

Filed under: Spoiler Warning 81 comments


Link (YouTube)

So that’s Markarth. I guess. I wish I’d played through this quest before we covered it in the show. There’s obviously a lot wrong with it, but really charting out the wrongness and identifying the failure points requires more than just watching Josh glitch his way through an endless procession of inventory screens and dead bodies.

 


 

Skyrim EP32: Arrested for Lollygagging

By Shamus Posted Thursday May 15, 2014

Filed under: Spoiler Warning 81 comments


Link (YouTube)

I really feel like I’ve failed you here. How it usually works is that once Josh begins a quest the intro will trigger a few memories and the whole thing will come flooding back to me. I’ll recall my initial impressions and be able to talk about the game. But for some reason it didn’t happen here. I remember having a lot of complaints about this quest back in 2011. I remember being annoyed, frustrated, and bored. But now can barely remember any of it aside from the forced-surrender thing.

The stuff Rutskarn said about the horribleness of the Nepos conversation is really important. It’s not that this game sucks. It’s that this game could be so much better if there was even the slightest glimmer of emotional impact. There’s an entire dimension to this game that we’re missing out on because nobody has a character and everybody talks in exposition.

And while we’re here:

Note the contrast between the entrance to Markarth and the entrance to Solitude:

In Solitude, we have a long lead-up to a very public execution that’s just begging for the player to intervene, but inflexible scripting prohibits you from altering events. On the other hand in Markarth there’s a murder you CAN prevent, but it happens so quickly that you can only do so with foreknowledge. The person killed has no build-up, no identity, and their death means nothing. Since this is your first time in town and this is a huge vista, it’s very likely you won’t even be looking when the murder happens. So the game denies you agency when you really want it, but is happy to give you lots of agency when it doesn’t matter and you don’t care.

How much more powerful would this moment be if the victim was someone we knew? Even if we just shared a few lines of dialog and she mentioned that she was really looking forward to X someday, it would at least give us some impact. Something. Anything.

It doesn’t take a lot, either. I know I slag on BioWare a lot, but this is something they’re really good at. In Mass Effect, they managed to set up a small cluster of characters on Feros (the planet with the mind-control plant monster) that set the tone and gave the adventure some emotional heft. I wasn’t turning on the water because I wanted the XP, I was turning on the water because I wanted to help these people. And when I met the corrupt ExoGeni exec, I really hated his guts. I wanted to cave his face in. Compare him to Nepos here in Skyrim. Both are despicable guys, but I really didn’t get any meaning or satisfaction when we settled up with Nepos. He was just another NPC to kill between us and the end of the quest. His servants had the same depth of characterization as the average Drauger.

 


 

Frontier Rebooted Part 3: Act Normal

By Shamus Posted Thursday May 15, 2014

Filed under: Programming 43 comments

Working with shaders is a little strange. They’re programs that run on your graphics cardI don’t like to bog you down with terminology, but we’re going to need to use SOME. From here on, your computer is the CPU and the graphics card is the GPU.. The pathway between your CPU and the GPU is a bit of a choke point. These two devices can only communicate so fast, and they need to share a monumental amount of data. In an ideal world, you would shove EVERYTHING over to the GPU. Then each frame you would just specify where the camera is, it would crunch all the numbers for you, and in return you’d get the completed image to show to the player. That’s not really feasible outside of the most rudimentary example programs, but we do want to get as close to that idea as possible.

The GPU is very, very good at crunching 3D spatial values. It’s better than your CPU in the same way that a Formula 1 car is better at Formula 1 racing than a dusty pickup truckNo quasi-technical explanation is complete without a Terrible Car Analogy.. It sacrifices flexibility to excel at one very specific task. You can’t run Microsoft Office or a web browser on your GPU. It literally doesn’t have the ability to perform that sort of processing. But the one thing it is good at, it’s really good at. This creates an interesting challenge for us. Any job we want to give to the GPU, we have to first translate into the sort of job a GPU can do.

This first one is easy. We just need to calculate some surface normals.

Continue reading ⟩⟩ “Frontier Rebooted Part 3: Act Normal”

 


 

Skyrim EP31: Richard Scarry’s Busy Markarth

By Shamus Posted Wednesday May 14, 2014

Filed under: Spoiler Warning 92 comments


Link (YouTube)

I love how Eltrys decides that the best place for a clandestine meeting is the most illegal building in town. It’s always a little strange trying to figure out how this “Talos is outlawed” stuff works. You can find Talos shrines in the wilderness where the Thalmor have slaughtered everyone. But here we have an obvious temple and nobody seems inclined to do anything about it. We’re always having discussions about what stuff like this “means”. See? The Empire aren’t really enforcing the Talos ban! Or maybe this shows that the Thalmor are actually incompetent spies. But it’s possible this doesn’t mean anything. This setup could easily be the result of different teams of designers who weren’t all on the same page.

We mentioned the Oblivion Paranoia quest. You can read my write-up on it here. (Warning: This is a post from 2006.)

I agree with Rutskarn: Some of the accents here sound kind of Austrian to me. Actually, I guess it’s just one particular guard voice. (Also the voice of Balgruuf’s brother, if you remember him.) I’m not saying that’s wrong or anything. Skyrim can have whatever accents Bethesda wants. If the inhabitants of their quasi-Norse fantasy world speak faux-Italian, then fine. We already have iron Norwegian katana, so this is obviously a cultural free-for-all. But is this deliberate on the part of the game designer? Or is this a case of a voice actor who couldn’t nail down the requested accent and drifted off into something else? Or am I just not parsing this accent properly? I honestly have no idea.