Some subtle tells and anti-tells, and some fonts leakage: Release v0.1.4434.0

One of the mechanics SpyParty shares with poker is the concept of a tell. In poker, a tell is when a player has some behavior that gives away information about their hand, like whether they’re bluffing. In SpyParty, we use the word tell to indicate something that implicates a character as the Spy; we have hard tells, which are things like animations only the Spy will do, so if you see one of these, shoot the person, soft tells, which are more deductive, like an audio cue that somebody in a conversation is the Spy, and behavioral tells, which are characters acting in a way that raises suspicion.

We also have anti-tells, which is what we call things that only an NPC can do, so if you see one of these, you know you can safely lowlight that character. Hard anti-tells are always high-priority bugs that need fixing relatively quickly, because a good Sniper can get a lot of 100% safe lowlights over the course of a game if there is an extant anti-tell.

These tells and anti-tells are usually very subtle, as this post about a walking anti-tell demonstrates. The finder of that anti-tell, canadianbacon, has become known for finding these, and today’s examples are no different.

So Rude!

First up, sometimes when the Spy would talk, and an NPC would interrupt the Spy, the other people in the conversation would not look at the interrupter. What should happen is the latest person to talk always gets looked at, and I was never able to figure this one out completely, but I think I fixed it anyway, along with three other bugs that popped up along the way.

In this example, the Spy is “yellow Danger”, and “Blondo” interrupts while the Spy is talking, but you can see everybody is still looking at the Spy.

interrupt-ignored

In real life you should ignore people who interrupt, but that wasn’t what the code I actually wrote was supposed to be doing. Perhaps it was trying to tell me something about etiquette.

This is the kind of subtlety we’re talking about. In the bug report thread for this anti-tell, even other elite players were impressed by canadianbacon‘s observation skills. Here’s kcmmmmm, one of the top players, commenting in the thread:

kcmmmmm-bug

So I fixed this, and while I was in there, I added a long-requested feature. In live games where you’re the Spy, you get to see arrows in the conversations that tell you who is talking, who the previous talker was, and who is going to be next. This lets you exactly mimic the NPC conversation etiquette. These arrows were not shown in replays, though, which made bugs like these hard to narrow down, and also made closely studying the conversation flow harder, so to help debug this problem while I was doing it, and to help with problems like this in the future, I added the conversation arrows to replays and spectation:

arrows

Everybody waits their turn to talk. Sometimes.

I’m a little nervous this is going to get more Spies shot as players like canadianbacon make a study of NPC conversation behavior, but we shall see…

In adding the arrows, I found and fixed a subtle timestamp bug in the replay events, so hopefully those will be a bit more accurate in the future, it turns out they could drift a bit if a bunch of events happened close together. And then there was another bug where the talk spawned by contacting the Double Agent wasn’t changing the previous talker arrow, and potentially didn’t get recognized as a full talk, and that’s fixed too. I’m sure there are more in there that players will find.

Pick a Direction

The second tell canadianbacon reported recently had to do with differences in the way Spies and NPCs stopped when they weren’t stopping on ground pads, so for example to pick up the briefcase in the middle of the party, or stopping before entering a conversation because it became full while you were walking towards it. The (kind of crappy) SpyParty pathing system uses a grid and characters can only path along the 8 cardinal directions (North, Northeast, East, etc.), but in some circumstances when stopping in the middle of nowhere, or in the middle of a turn, the Spy character could stop non-cardinally, and sometimes NPCs could. Hopefully now everybody will always either use the pad orientation, or adjust to a cardinal direction when they stop. Hopefully.

We Fear Change

Finally, I updated this build to fix these tells and anti-tells, but the main thing I’ve been working on has been the new User Interface update, which is going to be huge and buggy and has a ton of work left to do on it. But I needed to fix these bugs now, so I disabled most of what I’d been doing so I could ship the update.1 I could have branched the code from the previous update, but I don’t like to do that if I can help it, and so some of the new UI work leaked into this new build in the form of the new font system.

You can see it in a few places. First, the action UI has a new look because I needed it to be scalable and anti-aliased. I tried a bunch of different typefaces:

atfonts

A small sampling of the 120+ typefaces I tried.

Choosing typefaces is hard, especially for body text, but I settled on Open Sans Condensed Bold, which is free,2 has really amazingly good hinting for small letter sizes, and has a really pleasant weight. Sadly, it doesn’t have an italics or oblique, but it looks pretty good with synthetic oblique3 so unless I can convince Steve Matteson to make an oblique face, synthetic it is.

New Action Font!

Open Sans Condensed Bold…it still looks a bit weird to me, although now I’m used to it and like it better than the old typeface.

The other place you can see a change is in the game timer. I am using the same typeface for the clock, Digital-7 (mono) by Style-7, but it looks slightly different than before because of the anti-aliasing, and when a “green time-add” splits the clock, I’m temporarily using Open Sans Regular for the “Spy:” and “Sniper:” labels, mostly because the old aliased text looked out of place and was using different measurement units next to the clock. I need to figure out this UI a bit more, but here it is for now:

new-time-font

Yes, I cheated and added time.

Okay, back to making the UI pretty! I will show some screenshots of the new UI design at some point soon!

  1. In truth, I tried to get the build out before the recent Balcony tournament last week, but failed. []
  2. Thank you Google! []
  3. Sorry, typeface snobs! []

SpyParty Gallery from Day of the Devs 2015

As with the PAX 2015 Picture Gallery, I’m a bit late on this one, but Day of the Devs was a blast this (last?) year, and I took pictures!

My sentiments exactly.

My sentiments exactly.

Local elite SpyParty players cleetose and slappydavis helped out in the booth this year, and I just noticed they’re right next to each other on the leaderboard as well:

slappy and cleetose on the leaderboard

slappy and cleetose on the leaderboard

We were also joined by Ocean Quigley, his son, and my daughter, and of course John and Alice on sales duty! Ocean is working on Atomic Space Command, a new team-based space combat game with some friends from Maxis and elsewhere, so check that out. Also, I assume I’m going to be on booth duty for them at some point…quid pro quo.

See if you can spot other indie game developers in the gallery below. Our space wasn’t quite as insane as last year’s bank vault/cocktail lounge, but it was a lot cooler temperature-wise, and way less humid. Thanks again to Double Fine and iam8bit for inviting us, it was awesome and we really appreciate it!

PAX 2015 Picture Gallery

In case you hadn’t noticed, it is no longer 2015, which means I’m extra late on this gallery of photos from PAX 2015. I also owe you the Part 2 to the SpyParty PAX Budget Numbers and Codecard Details, Part 1, which is actually a pretty interesting story, and there’s even a Part 3, but for now, here, have a zillion pictures.

Booth helpers from the community this year included krazycaleywarningtracksharperkcmmmmm, and virifaux, with extra volunteer effort from canadianbacondrawnonward (who actually did a twitch fund-raiser from the community to get to the show!), wodarlthummus, cleetose, and theoselk. Let me know if I forgot anybody!

You can also read warningtrack‘s writeup here at spypartyfans.comShaking the Hand of Someone You’ve Shot

On to the pics! Post a comment if I caught you!

The SpyParty Competitive League is now a Thing

As anybody who follows SpyParty knows, I’m drowning in stuff to do making the game, so sometimes (often?)1 I drop the ball with organizing things, so it’s so amazing to have a super-supportive community that pick up the slack and do a lot of the organizing that’s necessary for competitive play!

Hardcore camping-sniper and in-spite-of-that all-around great person and competitive gamer krazycaley has organized a league for competitive SpyParty with the totally nonintuitive name: SpyParty Competitive League!

Each week, there will be a big cast every Sunday starting at 6:30pm US Pacific on http://twitch.tv/spyparty

SCL-logo-draft

magician1099 whipped up a quick logo for the SCL!

I have joined this league, and I am very out-of-practice at my own game, so come watch me lose my first match with elvisnake today, Friday, Nov 20, at 6pm US Pacific at http://twitch.tv/spyparty.

krazycaley is a lawyer in real life, and the list of league rules reads like he’s a lawyer in the game too, so I won’t reprint them all here, but it’s a normal tiered league with divisions and a season and then championships to see who advances and who doesn’t advance and who does the opposite-of-advance (ie. me). He’s got a big pool of acceptable maps and game types, and then there’s even a ban phase so you can get rid of your least favorite maps before you match. All of these rules have been debated endlessly in the beta forums, of course, so when I lose I have plenty of leeway to blame it on krazycaley‘s rules, an important characteristic for any competitive format.

Here are the divisions for the first season:

Diamond Division

kcmmmmm
scientist
krazycaley
seizureman
turnout8

Platinum Division

bloom
canadianbacon
magician1099
sharper
slappydavis

Gold Division

cleetose
scallions
kikar
james1221
varanas

Silver Division

royalflush
checker
elvisnake
briguy
cameraman

Bronze Division

fr3ak2
iceman
lthummus
butterscotch
sgnurf

Copper Division

brad
creeperinblack1
fearfulferret
rjwut
teetery

It’s great to see some old-timers return for the league, and it’s also great to see new players in the mix too!

Of course, all of these division names of precious stones and metals started a debate since apparently platinum is worth more than diamonds, gold is worth more than platinum, and then somebody suggested updating the names of the the divisions based on daily market prices…

If you’re in the SpyParty beta you can find the link to the results thread here. If you’re not in the beta and would like to be, sign up here. See you in-game and on stream!

  1. usually? []

Bay Area Folks! Day of the Devs is Tomorrow, Saturday, Nov 7!

If you live in or near the San Francisco Bay Area, come over to Day of the Devs tomorrow, Saturday, November 7th, 2015!

dotd15logo

What is Day of the Devs you ask? It’s a really fun and free video game exhibition and show and circus and whatnot, kind of like a mini-PAX expo hall, but free and local. It’s put on by Double Fine and iam8bit and it’s a blast. There will be tons of cool games there this year, DJs, and it’s all-ages!

We’ve shown SpyParty at all of them so far, and it’s always been great. Last year, we transformed a small underground metal box into a cocktail lounge. What will happen this year? I have no idea, since it’s a whole new venue. Something magical, I’m sure.

We’ll have the latest build of the game with all the recent updates, like the Not-Strictly Ballroom Update and the Third Batch of New Art Characters, and this year both slappydavis and cleetose will be on hand to train people.

Of course, we’ll be selling SpyParty with the awesome codecards again, probably with a new discount for group purchases, but I still need to figure that out. That reminds me I also need to write up the Part 2 of the original codecards details post, oops!

Yes, this code is live. Well, it was, but it probably isn't now, but maybe you're the first one to read this?

Yes, this code is live. Well, it was, but it probably isn’t now, but maybe you’re the first one to read this and scan it?

So, come on down to the Dogpatch in SF to The Midway, 900 Marin St, San Francisco, CA 94124, from 3pm-9pm tomorrow and say hi!