Pixel City Redux #3: Shader Rant

By Shamus Posted Tuesday Apr 24, 2018

Filed under: Programming 122 comments

Last time I talked about making a special shader in Unity. It turns out that writing Unity shaders is a mixture of awesome and awful. But before we can get into that, we need to fix these buildings:

Bah. Close enough. Ship it.
Bah. Close enough. Ship it.

See, I’m going to be writing the lighting shader. My hope is that I’ll be able to use Unity to save me from the arduous task of writing my own shadowing system. I want buildings to be able to cast shadows on each other, the ground, and even themselves. But a cube doesn’t have any overhanging bits that might cast shadows on itself. So before I go messing around with shaders, let’s make some more complex buildings.

I don’t need to make the full building generator just yet. All I need is something complex enough to self-shadow.

Kind of amazing what a huge improvement it is to just add ledges.
Kind of amazing what a huge improvement it is to just add ledges.

I’ll probably throw most of this code away later. These buildings are stupidly primitive. There’s a triangle pair for every single window, there aren’t any “gaps” with no windows, the ledges all look the same, there’s no street detail, and there isn’t any clutter on the roof. But these buildings can self-shadow, which is what counts.

So let’s work on that shader…

Continue reading ⟩⟩ “Pixel City Redux #3: Shader Rant”

 


 

Diecast #207: Minecraft Scripting, Aer, Business Rant

By Shamus Posted Monday Apr 23, 2018

Filed under: Diecast 109 comments



Hosts: Paul, Shamus. Episode edited by Issac.

Show notes: Continue reading ⟩⟩ “Diecast #207: Minecraft Scripting, Aer, Business Rant”

 


 

Black Desert Online #1: Strange But Cool

By Shamus Posted Thursday Apr 19, 2018

Filed under: Retrospectives 183 comments

It’s been a while since I played an MMO, hasn’t it? And I’ve never played one quite like this before. I’ve mentioned Black Desert Online a few times in the past and nobody really took much of an interest, so I suspect most of you are indifferent to this thing. But I’ve never let indifference interfere with my blathering before, so we’re going to spend a month with this game.

Over the past couple of weeks I had a blast in Black Desert Online, and then I stopped having a blast and the whole experience felt more or less like a waste of time for reasons I’ll get into later. But first let’s talk about what drew me to the game.

Familiar Yet Strange

White people in Medieval clothing on cobblestone streets with Tudor architecture and a temperate climate. This is about as European as you can get.
White people in Medieval clothing on cobblestone streets with Tudor architecture and a temperate climate. This is about as European as you can get.

Black Desert Online is a Korean MMO and almost everything about it is strange to me. The design is strange, the release schedule is strange, the business model is strange, the setting is strange, the interface is strange, and the dialog is strange. I can’t tell how much of the strangeness comes from the developers and how much comes from its home culture. Note that in this context, “strange” does not mean “bad”. It’s just, you know, unexpected.

I understand that Korean games are ridiculously grind-y by reputation. When I hear something described as “grindy”, I think of the ancient past of 2002, when I played Dark Age of Camelot and the most expedient way to level was to stand in the same spot and farm the same cluster of mobs for an hour. Black Desert might be grindy, but it’s not that sort of grindy. Maybe it’s grindy by the standards of kids today, or maybe it breaks from the norm set by other Korean MMO titles, but it’s not a grind in the sense of killing the same monster 60 times in a row.

The strange thing about the release schedule is that they didn’t immediately target the North American market. They went for South Korea first (which is pretty understandable) in 2014, but then in 2015 they released in… Japan and Russia? They finally got around to North America and Europe in 2016 and South America and MENA in 2017.

This isn’t a complaint or anything. It’s not like North America is automatically entitled to get stuff first. It’s just an unexpected choice because NA is often thought of as a very lucrative market so developers like to target it as soon as possible. Conversely, Russia is often a low-priority market because it has a reputation for being a difficult place to operate. I wonder if this unorthodox release order means the usual conventional wisdom is no longer true. Is Russia an easier place to do business? Is North America not as lucrative as it used to be? Or does Publisher Kakao Games have other practical / logistical reasons for pushing NA and Europe off for a couple of years?

Continue reading ⟩⟩ “Black Desert Online #1: Strange But Cool”

 


 

The Witcher 3: The Geralt Question

By Bob Case Posted Thursday Apr 19, 2018

Filed under: Video Games 72 comments

Last week we advanced the Novigrad storyline, and I had a specific reason for doing so that’s turned out to be a bust.

You see, this part of the Novigrad storyline involves trying to track down the vanished bard Dandelion through a list of his now-abandoned romantic dalliances. One of these was with a Nilfgaardian noblewoman named Rosa var Attre. Rosa is a swordfighting nut, and Geralt at one point gives her fencing lessons with a wooden sword. In previous playthroughs, I could’ve sworn you got to keep the wooden sword afterwards, because I remembered keeping it as a comedy item to use occasionally. However, they either changed this for some reason or my addled memory got the Rosa var Attre wooden sword mixed up with the “prop sword” you use in a much later quest.

This is a great tragedy because I was hoping to use the wooden sword. Swords have instant-kill animations when used on foes knocked down by Aard or stunned by Axii, and certain monster trophies give Geralt a certain percentage change to “dismember” (ie, use one of the instant-kill animations). The thought of one day chopping the heads off the terrifying warriors of the Aen Elle with a wooden sword was very tempting, but alas it is not to be. I may just give myself the weapon with the console, once I figure out to my own satisfaction whether that counts as cheating or not.

I wanted to mention these at least once. The loading screens have these cool comic-looking images that keep you up to date on the main plot. I always like when a game takes the time to do something interesting with its loading screens.
I wanted to mention these at least once. The loading screens have these cool comic-looking images that keep you up to date on the main plot. I always like when a game takes the time to do something interesting with its loading screens.

Fortunately, with the support of friends and family, I eventually overcame my disappointment. Seeing Zoltan again helped. For those that haven’t played the series, Zoltan is one of Geralt’s dwarf friends who’s shown up in all three games. Zoltan is also an avenue into understanding my own answer to what you could call the “Geralt question.” The “Geralt question” is basically this: does Geralt suck?

Continue reading ⟩⟩ “The Witcher 3: The Geralt Question”

 


 

Pixel City Redux #2: Unity Week 2

By Shamus Posted Tuesday Apr 17, 2018

Filed under: Programming 59 comments

On the first day(ish) of the project I made a working proof-of-concept demo. Today I’m going to pull a Nightdive by throwing everything away and restarting the project in Unity.

This isn’t as stupid as it sounds. I’m only a day or so into the project, so I’m not going to be throwing away a lot of code. Also, I think writing something in C++ and then re-writing it in C# is a good learning exercise. A year ago I took a swing at learning Unity. The problem is that once you’re done with the tutorials, you need to start making something real. But this leaves you with a three-pronged problem:

  1. Learning a new programming language.
  2. Working in a new programming paradigm, with strictly enforced object-oriented design structure.
  3. Trying to solve this new problem. (Whatever it is that I’m currently working on.)

That’s a lot of unknowns to juggle. Things go wrong all the time when you’re programming. In a situation like this if I do something and I don’t get the result I expect, I won’t even know where to look. Yes, maybe there’s a flaw in my design. But maybe the design is sound, but I’ve somehow expressed it incorrectly in the C# language. Or maybe that stuff is fine but I’m misunderstanding Unity. Even trivial problems can take ages to sort out if you don’t know how to find them.

But re-writing something I just wrote is a pretty good exercise. If nothing else, I’ll know the logic is sound.

Continue reading ⟩⟩ “Pixel City Redux #2: Unity Week 2”

 


 

Diecast #206: Another Funeral for Half-Life

By Shamus Posted Monday Apr 16, 2018

Filed under: Diecast 67 comments

Yes, SoldierHawk is back for another funeral for another doomed series with a bad ending. I swear we’ll talk about something happy / satisfying one of these days.

I wonder if she’s played KOTOR 2?



Hosts: Shamus with guest Brittany. Episode edited by Issac.

Show notes: Continue reading ⟩⟩ “Diecast #206: Another Funeral for Half-Life”

 


 

Wolfenstein II Part 11: Beating a Dead Panzerhund

By Shamus Posted Thursday Apr 12, 2018

Filed under: Retrospectives 101 comments

So the gist of this mission is that Frau Engle flew the Ausmerzer to Hollywood California so she could appear on the Jimmy Carver show, which is obviously based on The Tonight Show with Johnny CarsonCarson took over the Tonight Show in 1962, which means this is about the right point in the timeline.. He’s going to interview her on the show and talk about the time she executed Terror Billy.

Based on this setup, you’d think she’s going down to the surface, right? Like, Carver must have a studio in Hollywood and that’s where she’s going. But when you get to the control room of the Ausmerzer you find out it has a copy of the Carver set. Or maybe Carver runs his show from the Ausmerzer? But then why did the ship need to go to Hollywood?

Revenge. Sort of.

Are these two really supposed to be the final boss? Because we faced a bigger mech like five minutes ago. The only thing that makes these guys the ULTIMATE THREAT is their HP, and we can't see that.
Are these two really supposed to be the final boss? Because we faced a bigger mech like five minutes ago. The only thing that makes these guys the ULTIMATE THREAT is their HP, and we can't see that.

This is one of the reasons the ending feels so abrupt. The “final fight” wasn’t telegraphed at all. Two nameless robo-Nazis drop in and we kill them with no ceremony or buildup. After that we sort of blunder into a TV studio and the end of the game without realizing how close we were to Engel.

BJ’s allies all show up. He’s taken control of the Ausmerzer and shut down the automated defensesApparently you can’t shut off the anti-air systems without an access code only kept on Venus. This seems like a TERRIBLE security system, but whatever., so the rest of the rebels can land their chopper on the roof. They all meet up in the TV studio and his allies point guns at the TV crew to make sure they keep broadcasting.

BJ slips into the theater. Carver and Engel are doing the show to an empty room. It’s just the band and some camera guys. The audience is all cardboard cutouts. BJ slips in and executes Engel with an axe to the face on live television. The good guys win. Game over.

Continue reading ⟩⟩ “Wolfenstein II Part 11: Beating a Dead Panzerhund”