Developer Diary - Neptunalia (Codename: Coral Flute)

Mon 27 May 2019

I am starting this diary a couple of months into development, so this first entry will be a little bit of back-story and catching up. I doubt future entries will be as long.

While working on a previous design, Cheap as Ships, which centres around a variety of different auction types, I decided to experiment with adding an optional digital app component. This would add a couple of new real-time auction types into the mix. It was positively received, so much so that in one of the playtests they remarked “Why isn’t it just all the app?”

In my next playtest I tried out an all app version of the game. While the core set collection mechanism was the same, the app would decide whether you were doing an English or a Dutch auction and count up/down in real-time to/from £80. Players would tap their corner of the screen when they wanted to bid.

It was a disaster. Player interaction was minimal, a lot of time was spent just waiting for your number to come up, and several players ended up not engaging with the game at all.

A large part of the problem was that, in an attempt to reduce the amount of time players were waiting to get to a number they could afford to bid, I had sped up the counter. This made it too fast, to the point where some players were overwhelmed.

Switching back and forth between English and Dutch auctions proved to be confusing, leading to even myself making several silly mistakes as I used tactics appropriate for the other auction type. Completely reversing the mechanics provides interesting flavour to the original turn based design, but when combined with a real-time aspect it leads to unsatisfying mistakes. Bez did point out in a later playtest that some of the confusion may be alleviated by switching up the physical mechanism by which people bid: English auction your finger starts off the screen and you tap to bid, Dutch auction your finger stays on the screen and you remove it to bid.

In the original turn based design the amounts you were bidding were high (20-80) in order to leave room to build tension. Keeping those same values in the real time design led to very little competition. Players would decide how much they wanted to bid, wait for the app to count to that number, and try to bid as close to it as possible. The result is very low player interaction. You were playing against the app rather than the other players.

Because winning an auction was all or nothing, players felt that if they weren’t able to compete aggressively to win, they may as well not engage with the round at all.

I decided to start again from scratch, the only constraint being a digital app driven real-time auction game. It had been on my mind for a while to figure out how to treat digital apps more like board game components: indispensable but not consuming. They should allow you to do things that you couldn’t do with just cards or dice, but the game should still feel like a board game, sitting across the table with friends.

The Dutch auctions had always been the most liked auction type in Cheap as Ships, so that felt like a natural auction type to run with. Rather than start at a high number and force players to wait before a bid they could afford, I took inspiration from Bausack (which we had played right after) and collapsed it down to starting at 3. With such a drastically smaller range, the countdown can be much slower, giving players the chance to look across the table and second guess each other and their own decisions. “They didn’t bid 3? I thought they’d bid 3. Maybe I should bid 3 and get in before them?”

In order to avoid the issue of people being unable to compete, I decided everyone should have the opportunity to get something. Rather than bidding on a specific item, you would be bidding on your position in a drafting order. The game then becomes evaluating whether it’s worth paying more to get a better something.

With the digital app for this new auction mechanic written, I now needed something for you to draft. I did a quick playtest with my wife, drafting cards from the Wibbell++ deck and using them to build and claim words. The auction mechanism was fun. Building words using the Wibbell++ deck will always be fun. The design perfunctorily connected the two mechanics up, but they didn’t feed into one another.

I was unable to come up with anything more exciting than basic majority wins set collection before the next London Playtest UK session, so I didn’t book a slot. Nether the less, I threw in my iPad and a deck of abstract set collection cards I had from another design into my bag just in case.

As fate would have it, Bez and I ended up staying after the official end and ran through a few games with majority wins set collection. We tried a few variants, including some with the older fast higher range auctions from the earlier designs. Although pretty much all of the variants we tried had promise, my earlier bad experience with the fast higher range auctions had soured me against them.

While we were figuring out the economy and how much money everyone would start with, Bez casually threw out “and we’ll get two money each round.” I had resisted the idea of income each round in Cheap as Ships because I felt like it would be patching over a flaw in the economy of the auctions. But it quickly became apparent how many problems such a simple idea fixed. Even if you go all-in on a round, you will still be able to bid in the next round. And because everyone can get something, it can often still be a meaningful bid. But going all-in still neuters your ability to be strong in the next few rounds.

I took it along to the next Reading Playtest UK event. The only major changes were some tweaks to the numbers, a slightly more polished app, and the auction now started at 5 to give it slightly more nuance while still giving each number long enough for people to start second guessing their decisions. After bringing iterations of Cheap as Ships month after month, it felt great to be able to bring something new.

One big concern I had was the scoring would lead to a lot of ties. Figuring out the exact probabilities proved beyond my capabilities, so I knocked up two simulations: one with the players making random moves and another using a crude Monte-Carlo Tree Search algorithm to make somewhat informed moves. Both showed a greater than 50% probability of ties for first place, with ties in any position being even more common. While I don’t know the probability of ties in other popular games (that would be an interesting and instructive exercise the simulate), it definitely seemed too high. I figured I needed to find some other scoring mechanism.

One Friday I had taken the afternoon off my day job to take care of some admin. The admin fell through, so I raced down to the Friday daytime Playtest UK event and was fortunate that there was a slot free. I had come up with a few possibilities for alternative set collection that was I interested in trying out: triangular scoring for how many of a suite you have, triangular scoring but only positive for your highest 3 (shamelessly stolen from Coloretto), and the old method of scoring points if you have the most of a suite.

I dabbled with handing out small questionnaires to try and focus the discussion and have something I could look back over after the playtest. It’s hard to tell how effective it was at focussing the discussion, but I suspect it was no more effective than just having a list of pre-written questions in front of me. I’ve only really looked at them once afterwards, and that was to reminisce then throw them away.

The triangular/Coloretto scoring did not work. The drafting mechanic relies on there being tough choices to pick from, and the triangular scoring flattened the values of the cards. The fact that picking a suite you’re doing well on gave you so many more points that starting another suite also made the choices too obvious, and ended up reducing competition and hence interaction between players. For now I reverted back to majority scoring.

Mandela came up with the idea that there should be cards that had a negative effect for players doing well, or a positive effect for the other players. The player doing well might bid highly on it just to make sure the effect is ignored and play the card for it’s suite. Or other players may bid highly on it to make sure the effect is played. In the back of my mind I already had the idea for there to be non-suite cards that did...something different. This seemed like a great use for those, feeding back directly into the bidding mechanism to add more second guessing about how other people will value the cards.

In my next playtest with friends I introduced cards that would give you large negative/positive points if you have the most/least of a suite. The idea was that, rather than always playing a card on yourself, the cards would tell you who they could be played on (yourself, the person with the most of a suite, the person with the least of a suite, etc.). You then had the choice of whether to play the card, or discard it. If there is a tie for who you could play the card on (e.g. two people had the most of a suite) you could pick which player in the tie got it. The new mechanic worked well, adding more intrigue to the bidding as I had hoped.

This was also the first playtest with one of the players who had struggled with the fast countdown auction in the games first iteration. I was gratified to see how much they liked the direction it had taken, and how much they engaged with the game.

As well as the addition of who you can give cards to, I also introduced wildcards. These wouldn’t be assigned to a suite until end of game scoring. Because the scoring is based on who has a majority, the order in which players assign their wildcards matter. We ended up scoring the suites one at a time in a random order, and players could commit their wildcards to the suite currently being scored, and once it is commited you cannot uncommit it. This reduces the back and forth of someone deciding to use a wildcard for a suite, so another player uses their wildcard in the same suite, so the first player changes what suite their wildcard is etc. It...mostly works. It did expose some potential for analysis paralysis as one player was counting up how many points assigning it to each suite would give them. It’s not really a good sign when players are interrupting the collaborative scoring to do their personal scoring. You want scoring to be as smooth as possible. The only alternative we could come up with was assigning wildcards when you draft them. This reduces their power though, and makes them feel less exciting. I’ve decided to keep assigning them at the end, and monitor how much of a problem it becomes in practice. In all subsequent plays, players have decided where to assign their wildcards very quickly based on simple heuristics. Most of the time this has actually been sub-optimal for them. This may be because playtesters aren’t usually playing to win, and the end of the game moves onto discussion over min-maxing.

Over the course of the next couple of playtests the conclusions were all about balancing the cards, moving away from the prevalence of similarly valued ones and twos cards and towards a greater diversity, both in value and in the effects they have.

In the last playtest, I changed from giving a fixed number of points for coming first and second in a suite to awarding first place the total value they have for the suite, and second place half the total value they have for the suite. The idea was to reduce ties by introducing much more variability in what each suite can score. It worked fine, and will certainly reduce ties. Will need a few more playtests to see if it works well enough.

The next adventure is the UK Games Expo where I have a playtesting session booked on the Saturday. It’s a slightly daunting prospect, as I’ve not done playtesting in a big setting before. But I am looking forward to seeing how people respond to the game. I also need to make sure I have the app properly working offline before I go, as I suspect signal will not be great. The perils of technology.

Thu 30 May 2019

I had previously booked the playtest session at UK Games Expo for Cheap as Ships. After shelving that I decided to use the session to playtest the new design I’m working on. I had been assured by previous attendees that, as I had suspected, it wasn’t important what game I’d told them I was bringing, as all the details were only written up on the day. Then on Tuesday evening I got an email saying this year they were pre-releasing the game details so attendees could find games they were interested in playtesting.

With slightly more panic than was actually necessary, I decided I definitely needed to get the details changed, and I definitely needed a proper name for the game (even if it was only temporary).

To come up with a name, I needed to come up with a theme. I had been reassuring myself that the game was easy to theme, as you can stick any old set of things to collect on the cards. But I was quietly nervous that none of the themes made sense of the bidding mechanic, specifically that multiple people can bid the same amount but end up in different positions in the drafting order.

I talked through some possibilities with my wife. An early contender was pixies collecting flowers, the mischievous nature of pixies playing well with the light take-that mechanic of giving bad cards to players who are doing well in a suit. As I was explaining it, I struck upon the idea that you aren’t bidding money, but bidding energy. You’re racing after the items; if you expend more energy you get their earlier and get first pick; if you expend the same amount of energy as someone else you both get there at similar times, but one of you is going to have quicker reaction times to grab the thing you want. It felt gratifying to find a simple re-framing of the mechanic that opened up a whole new world of themeing.

In the end we decided merfolk felt like a nicer theme than pixies, though I couldn’t tell you why. We ran through The Little Mermaid quotes, synonym dictionaries, and Wikipedia articles for Roman and Greek gods. While reading the article on Neptune I came across the festival Neptunalia. This felt like the best name we’d been able to come up with. Taking some poetic licence with the obscure festival, I treated it more like a summer fête with Neptune giving out prizes for the best collection of things.

The game definitely doesn’t need a theme at this point, but it certainly makes me feel better that it is demonstrably possible to get one to fit snugly to it.