So, I’ve been working on a new board game for the past couple of weeks. It’s an Ameritrash style, programmable action, character building, arena battle game tentatively named Junkyard Mechs. I haven’t talked about the game before (because it predates this here blog), so I will start us off with a brief explanation of the core mechanics.
In the game, each player has an action deck, consisting of Attack, Move, and Scavenge cards, and a play mat representing their mech’s upgrade slots. Players draw five action cards, and then place three face down in front of them. Once everyone has finished places their cards, all players flip over their left most action card, and the actions are resolved in priority order (lowest going first, ties broken via dice roll). This repeats for the other two action cards. After all three action cards have been resolved, all players draw back up to five cards, and a new round starts.
On the battlefield are 12 junk piles. These are piles of cards players can scavenge (draw) from in the hopes of uncovering useful upgrades they can install in their mech. Upgrades increase the effectiveness of the regular Attack, Move, and Scavenge actions, or provide alternate abilities triggered from those action cards.
The results of the early playtests have been encouraging. The action cards, the junk piles, upgrading your mech—all that feels fun and exciting. However, what I’m not satisfied with, and the subject of this particular post, is the current winning condition. The current way to win the game is to be the last mech standing. All mechs have 10 health, attacks deal various amounts of damage, and when a mech’s health reaches 0, naturally, that player is eliminated from the game.
Now, this of course works fine in a 1v1 duel style game, and it might be the default rules for 2 players. And honestly, it has actually worked fine for a 3 player free-for-all thus far. The first player to be knocked out of the game was eliminated within 10 minutes of the game being finished. But I can bet that you have already spotted some potential problems…
Programming for the Edge Cases
In software development, the difference between an experienced programmer and a newbie is the former’s ability to consider, and properly handle, edge cases. An edge case is when something unlikely, but totally valid, happens. In a programming context, say you have a function designed to sort a list of integers. What happens when it receives a list that is already sorted? That would be an edge case. Or, say (totally hypothetically), you have a board game where players draw random cards to upgrade their character coughmechcough, and one player keeps drawing nothing but useless, or junk (teehee), cards—that’s also an edge case.
Any game based around player elimination can result in a situation where one or more players are removed from the game very early, and are then just forced to sit and watch the better (luckier) players finish the rest of the game. Perhaps it’s not likely, but it definitely can happen. Terrible design. No self-respecting modern board game relies on player elimination as its winning mechanic.
So clearly Junkyard Mechs will be laughed out of town if we can’t come up with something better. However, the solution to this problem is well known. Everybody say it with me now: Victory Points!
To the Victor go the…Victory Points
Nowadays—in the future—the winner of a board game is the one who has the most Victory Points. These Victory by Victory Points games typically come in two flavors. Either, the game immediately ends when a player acquires the number of Victory Points needed to win (Catan, Twilight of the Imperium), or the game ends when a certain condition is met. This condition could be a predetermined number of rounds (7 Wonders), or when one player accomplishes something, like placing all of a certain token (Scythe). With this style, after the game ends, Victory Points are calculated for each player based on certain public and/or secret objectives.
Now, as of this writing, I haven’t playtested any alternative winning conditions. I wanted to write this post first as a way of documenting my thought process. Why I think the current condition is not good enough, what I theorize to be a better system, etc. Obviously, the winner of Junkyard Mechs needs to be the player with the most Victory Points because we are young and hip and cool. Hmm…health is basically just a point system in reverse. You start with max points, and then lose them over the course of the game. Instead of winning when you hit a certain number, you lose when you hit a certain number. So why don’t we just flip it? Doing one damage to another mech gives you one Victory Point. That’s easy and requires very little rework.
In keeping with the Ameritrash nature of the game, I don’t want to bust out pens and paper just to figure out who won after we’ve already finished playing, so no complex point earning mechanics. Doing damage nets points, simple as that. And the game ends when a player gets a certain number of points. The number needed can be based on the number of players: first to 10 points in a 1v1, first to 20 for 3 players, etc.
We could hid points in the junk piles as well. That could encourage scavenging. But scavenging is already encouraged since upgrades are so powerful (many allow you to do more damage, after all). No, let’s just keep it simple for now. Damage = points. Cool? Cool. Now I just need to find victi…I mean, willing volunteers to test it out with me.
Bonus Edge Case: The Never Lucky
If we left it there, this post would be far too short, so lets talk about an arguable more interesting (but harder to make into a funny title) edge case: the Never Lucky. As I alluded to, ever so subtly, in the preamble, it’s totally possible, however unlikely, that a player could draw nothing but Junk cards every time they scavenged from a junk pile in Junkyard Mechs. Obviously, for that particular player, this would not be a fun experience. But even for players who aren’t only drawing Junk, perhaps they want/need a specific upgrade, and are just not getting it. That can be frustrating too.
My solution to this particular edge case is a “store”. Well, it’s not really a store, more like a pit stop. At the beginning of the game, three low tier upgrades are placed face up on the side of the board. Any player that gets their mech to either side of the arena (far from the players’ starting positions), can use a Scavenge card to choose one of the three upgrades and install it. However, whenever any player scavenges from a junk pile, all the upgrades they choose not to install are placed over the existing upgrades in the “store.” This creates the choice: gamble on the junk piles or take the guaranteed one upgrade in the store.
It also creates another interesting choice for players. Say you scavenge at a junk pile and draw two upgrades. One upgrade is very useful to you, but the other upgrade is very useful to an opponent. What do you do? The upgrade you don’t install will become available to all in the store. A delightful pickle.
That’s All I Got…For Now…
Well, those are my current thoughts on improving Junkyard Mechs based on these 3 or so weeks of playtesting. Let me know in the comments your thoughts on these proposed solutions, or if you have any other ideas. I will try these out and let you guys know what I find. Also, I really think I need to cut back on my use of ellipses…