Pixel City Redux #6: The Distraction

By Shamus Posted Tuesday May 15, 2018

Filed under: Programming 99 comments

What do you do when you want to look something up but you don’t know what it’s called? Sometimes you can just type what you know into a search engine and it will sort things out for you. I just typed “part of the car that covers the engine” and I got:

thing that you type sentence fragments into for information
thing that you type sentence fragments into for information

It’s not a perfect result. A careless reader might look at the text and think the answer is “trunk”. But it’s still really incredible that a search engine can come up with answers like this. If you’re willing to read more than the first sentence, you can find what you’re looking for, even if you don’t know what a hood was called when you started.

Sadly, things are not always this easy. Right now I know what I want to make but I don’t know what to search for. I know what it looks like and how it behaves, but not how it’s created or what you call it. In fact, I can even draw a picture of it. It looks kind of like a stained glass window. Here is one I made by hand:

Uh... Something like this.
Uh... Something like this.

You generate this by putting a bunch of points on a plane and… doing some sort of math to them. I want to use something like this to divide my city into regions. Let’s see what Google has for me:

Continue reading ⟩⟩ “Pixel City Redux #6: The Distraction”

 


 

Diecast #210: Mods

By Shamus Posted Monday May 14, 2018

Filed under: Diecast 70 comments



Hosts: Paul, Shamus. Episode edited by Issac.

Show notes: Continue reading ⟩⟩ “Diecast #210: Mods”

 


 

Avengers Infinity War: Spoiler Party!

By Shamus Posted Sunday May 13, 2018

Filed under: Movies 218 comments

On Friday I finally got to the theater and saw Avengers: THE BIG ONE. Like everyone else who’s seen it, I immediately had the urge to talk about all the most spoiler-y bits. So let’s do that. We’ll start with the ending…

Continue reading ⟩⟩ “Avengers Infinity War: Spoiler Party!”

 


 

Black Desert Online #4: The Final Straw

By Shamus Posted Friday May 11, 2018

Filed under: Retrospectives 105 comments

Good combat, pretty visuals, lots of fun, blah blah. Enough screwing around. Let’s tear off this band-aid and see how bad the infection is.

Like I said last week, I was willing to put up with the lousy translation, the bad balance, the inconvenient “simulation” elements, the offensively priced cash shop, and the lack of interesting long-term goals. I guess I was just really into electrocuting huge groups of dudes and was willing to put up with a lot of nonsense to keep doing that.

Until I reached level 50…

Level 50 is PvP

I'd just refuse this quest and stay level 49 forever to explore the rest of the PvE content, but once you hit level 49, every single time you earn XP the game floods you with little BONK notification sounds and flashes a warning that you need to take this quest. It's the same sound the game uses to let you know something is WRONG. (Like your mount is being attacked.) It's maddening.
I'd just refuse this quest and stay level 49 forever to explore the rest of the PvE content, but once you hit level 49, every single time you earn XP the game floods you with little BONK notification sounds and flashes a warning that you need to take this quest. It's the same sound the game uses to let you know something is WRONG. (Like your mount is being attacked.) It's maddening.

I’ve said before that’s completely moronic to make PvP the endgame for PvE content. People looking to fight other players don’t want to have to play all these hours of single-player content to get to the “real” game, and people looking for a good old monster-bashing power fantasy don’t want to be shoved into a world where they can be randomly insta-killed by some jackass ten levels over them. That’s a hell of a reward for the PvE player. “Thanks for putting in all the hard work to level up and reach the endgame. Your prize is that the game is now ruined for you.” These are two different groups of players with different needs, and it makes no sense to connect them like this.

Yes, I know this is common in MMO design and not limited to Black Desert Online, but this is what killed the game for me. I hit level 49 and the game told me the next step was forced PvP. That was it. I was done.

PvE and PvP really are two different games for two different audiences. Imagine if the football league had people play football all year until they reached the championship where the winner was decided via baseball. This is a complete gameplay non-sequitur and I can’t believe developers are still doing this.

Black Desert allows you to opt-out of PvP. However, players can still attack you, even if you’re flagged as not willing to participate in PvP. As the game itself explains:

Continue reading ⟩⟩ “Black Desert Online #4: The Final Straw”

 


 

The Witcher 3: Novigrad, Part Two

By Bob Case Posted Thursday May 10, 2018

Filed under: Video Games 32 comments

The bad part is over. Now it’s time for the good part!

Two of my favorite quests in the game are in the second half of the Novigrad storyline, and they’re both ones I’d like to cover in at least some detail, because I personally consider them to be examples of how to do it right. I skip over a lot of things in these posts, mostly because The Witcher 3 is a very long game and to cover everything in detail would take forever. But I’m not going to skip over these two quests, because (in my opinion) they’re instructive. They’re examples of two types of quest that you don’t often see anymore. I’ve named them the “nailbiter” and the “soother” (I’ll explain the names).

First up, the nailbiter. Caleb Menge, high-ranking thug in the employ of the Church of the Eternal Fire, is in possession of two pieces of information crucial to us: Dandelion’s location, and the location of the treasure looted from Dijkstra’s vault. Triss comes up with a plan for Geralt to “capture” her and deliver her to Menge, in hopes that Geralt can wheedle out the information he needs as payment. This requires Geralt to pay a part: he has to make the Witch Hunters believe that he doesn’t care about Triss, or even actively dislikes her. Triss, for her part, knows she’s likely to be tortured once she’s in Menge’s clutches.

This leads to a situation that is unfortunately relatively rare in modern RPGs: one where there’s meaningful gameplay to be had through dialogue. Geralt has to be careful what he says, what he admits to, how he reacts to provocation, and what information he presses for, because being careless will give the hustle away. And keeping Menge’s con won’t be easy – at a glance he looks like a dumb goon, but by now we know that, in his own way, he’s a canny operator.

Menge is paranoid about dopplers, one of many reasons that I suspect they played a bigger role in whatever the original incarnation of this questline was.
Menge is paranoid about dopplers, one of many reasons that I suspect they played a bigger role in whatever the original incarnation of this questline was.

I say that this is rare because too often in RPGs (or any kind of story-driven game) dialogue and gameplay are kept at arm’s length. Generally speaking, nowadays you can’t fail a dialogue section – the player can either exhaust all the various options or skip them, and their decision to do either the one or the other doesn’t affect anything else. But when talking to Menge and the Witch Hunters there are a variety of different ways to screw the pooch.

Continue reading ⟩⟩ “The Witcher 3: Novigrad, Part Two”

 


 

Pixel City Redux #5: Debugging Bugs Me

By Shamus Posted Tuesday May 8, 2018

Filed under: Programming 96 comments

In programming, sometimes things go very wrong and you have no idea why. Bugs happen all the time, and a lot of this jobOr hobby. Whatever. involves tracking down and fixing your mistakes. On any sufficiently mature project you’ll probably spend more time testing and debugging new features than you spend writing them.

So it goes something like this:

You’re busy playing the game you’re developing when suddenly you crash to desktop. Looking a bit closer, it seems like you got a division by zero error. It seems the variable named “distance_to” was somehow set to zero. The odd thing is,that variable is used for calculating the distance to the closest quest marker, and you know for a fact you weren’t anywhere near one.

So clearly this bug isn’t your fault. Obviously your code is fine. This is probably a bug in the compiler. Or maybe the operating system. Maybe even the processor itself. To sort this out, you’re going to need to send an irate email to the guilty.

But before you fire off that salvo of email abuse, you figure you’ll have a quick look at your code, just on the off chance that this is somehow your fault.

It’s true that you can “solve” this problem by having the program check for a value of zero before doing any division with this variable. That would certainly stop the crash, but it wouldn’t fix the bug. According to how things are supposed to work, it should be impossible for this variable to be zero. Stopping the crash won’t address the fact that something is going wrong.

The problem looks like this:

Continue reading ⟩⟩ “Pixel City Redux #5: Debugging Bugs Me”

 


 

Diecast #209: System Shock, TotalBiscuit, Minecraft, Mailbag

By Shamus Posted Monday May 7, 2018

Filed under: Diecast 43 comments

I’m really enjoying having these questions. As always, if you’ve got a question for the show please send it to diecast@shamusyoung.com.



Hosts: Paul, Shamus. Episode edited by Issac.

Show notes: Continue reading ⟩⟩ “Diecast #209: System Shock, TotalBiscuit, Minecraft, Mailbag”