SpyParty Competitive League Season 2 Update

The second season of the player-run SpyParty Competitive League (SCL) is well under way, and krazycaley has written an update for all the divisions. Please ignore the part about me losing all my matches this season, I’m sure there’s been some kind of mistake…

Thanks to magician1099 for the intro trailer!

Oh, and If I was better at blogging, you’d already know there are now two live casts for the SCL this season, the regular one Sundays at 5:30pm US Pacific time, and then the new one in a more European friendly timeslot, Saturdays at 10:30am US Pacific.  Both at the official twitch channel http://twitch.tv/spyparty of course!  You can follow the twitch channel, or follow the SpyParty Streams Notifier on http://twitter.com/spypartystreams if you prefer your notifications in the twitter flavor.

Take it away krazycaley

Season 2 of the SpyParty competitive league has just completed its sixth week of regular season play and the playoff races are starting to heat up. Let’s take a look at the standings.

In the new Challenger Division, the strong early performers have been moth and trevor, both of whom have yet to suffer a defeat. trevor has fewer games since he’s been paired up with a couple of the folks who have dropped out, but he’s performed strikingly well in the games he’s played thus far. papers is also looking like a safe bet for inclusion in the end-of-season Challenger division tournament, which includes the top 6 regular season finishers. With three members of the division apparently dropping out, that leaves three more slots in the tournament for four more people. Of these, evilsnake and gmantsang got off to fairly hot starts to the season, but have been slowed down by defeats in recent weeks and will be looking to bounce back. malexmcblat is currently the odd man out of the tournament at this point, but is still very much in the race due to a pair of very scrappy draws. Leading this pack of four is steph, who reverses the story of evilsnake and gmantsang – she started slow, but has been performing strongly in recent weeks, and has a couple of winnable matches against malexmcblat and gmantsang coming up which could propel her into contention for a first-round bye, which requires a 1st or 2nd-place regular season finish.

Iron Division has been completely dominated by its two leaders. One of these, unsurprisingly, is moriarty, a longtime veteran entering SCL this season and very likely under-placed in Iron. But he is the runner-up as things stand, the surprising story from Iron has been new player havrd, who has 4 wins and a draw, including a win and a draw over moriarty. havrd and moriarty look like a safe bet to be in position for potential promotions at the end of the season. In Iron Division, anyone finishing in 4th or below is in danger of demotion to Challenger, so the remaining players have plenty to fight over even if havrd and moriarty run away with the lead. nanthelas and progamingeithed are in a tight fight for 3rd place, while igounseen has endured a tough winless season so far and is staring down a demotion to Challenger.

It’s a pretty tightly-packed race in Copper Division, where division leader pwndnoob suffered a recent defeat at the hands of at-the-time-5th-place aforgottentune to level the division out. pwndnoob and yeesh are the prime contenders for the divisional championship, but falconhit, catnip, and aforgottentune still all remain in striking distance. falconhit looks to be the most likely of these to challenge the leaders given past results, although aforgottentune has proven to be the bane of division leader pwndnoob, and catnip has put up strong, close results even in her defeats, and is a threat to any opponent in this division.

Bronze Division has seen veteran elite player wodar finally play up to his skill level rather than down to his competition; he is cruising through week 6 with 5 wins and one postponed game. The race for second place is between the strong-performing teetery and potential comeback player of the year rjwut, who are neck and neck for the spot. laplace, perhaps suffering against more experienced competition after being double promoted at the end of last season, looks to be locked into a potential demotion match even if the currently-absent butterscotch does not return.

Silver Division is currently all about the battle for 1st place between elvisnake and fearfulferret. Both are undefeated, and in their lone match so far they drew, but fearfulferret has the division lead on the strength of having more wins against the rest of the field than elvisnake, who’s earned more draws. There are four points between elvisnake and the next contender, iceman. iceman, lthummus, and sgnurf are in the fight to avoid finishing in 5th; iceman has the best score of these, but lthummus has the inside track since his low point count is mostly due to his many postponed matches. SpyParty developer checker looks to be a lock to finish in last as his priorities likely lie with improving the game rather than mastering it right now.

Gold Division has seen the powerful ascension of pires, who has played an astonishing 5600 games since joining the game in December of 2015, an amazing clip of over 1,000 games per month. He and longtime veteran warningtrack went neck and neck with a winning streak to open the season, but when they met in week 3, pires earned a decisive 5-2 victory. pires has let the rest of the field linger by conceding a large number of draws recently, including a week 6 draw against warningtrack, but the division is still his to lose. cameraman, scallions, and warningtrack are all crowded close behind in a tough fight for the 2nd place spot, while james1221 and briguy look likely to finish in 5th and 6th.

Though cleetose looked to be the early favorite in Platinum Division, it is slappydavis who has made a remarkable return to form over the long haul here, and he holds a three point lead over kikar and cleetose, who have also had very strong seasons thus far. sharper, the division’s last-place finisher last year, has enjoyed a resurgence of his own, as he’s in a comfortable 4th place at the moment, only a win away from challenging for the 2nd place spot. varanas is in the more tenuous 5th place spot, though he is only a point behind sharper. royalflush, doubly promoted last season, looks to be suffering the same fate as laplace, as he is struggling against this class of opponents.

The League championship contenders of Diamond Division have a much closer race on their hands than last season, which was dominated by krazycaley and scientist. While krazycaley remains the leader, his lead is a narrow one after a recent defeat at the hands of kcmmmmm. bloom, magician1099, and canadianbacon all trail krazycaley by two points (though magician1099 has one fewer match than the others), while kcmmmmm sits in 5th place, but only three points behind krazycaley himself. It’s been a disappointing season for scientist, who is winless in 6th place, but has plenty of postponed matches to play that could get him back in the picture.

 

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? []