The Animal Farm

March 13th, 2013

Fun With Chess

A week ago I sat down and programmed a basic chess implementation with full support for hot-seat play. It includes most of the rules except for conditions where you can force a draw.

It even includes en passant, which hardly anyone knows. For those unversed: if an opponent moves a pawn two spaces for its first move and it ends up side by side with one of your pawns, you can take the opponent’s pawn by moving your pawn into the space that was skipped over.

And for those not sure about how castling works: if you have an unmoved king and an unmoved rook, and the king is not in check, and there is a clear path between the two pieces, and the king would not move into or through a space that puts him in check, you can move the king two spaces toward the rook. You then move the rook to the other side of the king (jumping the king, essentially). This generally puts the king in a more defensible location and puts the rook in a more active role in the game.

The rules I haven’t implemented: the fifty move draw rule states that if there are no captures and no pawn moves in fifty consecutive turns by each player, a player can claim a draw. The threefold repetition rule states that if the board is in the same state three times with the same player to move, a draw can be claimed (I probably won’t implement that one). Pawn promotion is when a pawn makes it to the other side of the board and can be exchanged for any piece.

So yea. I guess RPG Chess is happening.

When I get some free time again, my next step is to setup the Game Center rig and see if I can’t get asynchronous play going. After that, i want to add a framework for using character powers.

And after that, the world.

March 3rd, 2013

RPG Chess Art & Technology & Love

I’ve been putting a lot of mental investment into RPG Chess. Thinking about technology and resources and time.

Technology was a decision practically made up for me. I want to support asynchronous play, and the only (free) system that supports this is Game Center for iOS. There are other systems, but they’re expensive or complicated or involve writing a lot of the back-end tech myself. There’s a limit to how much time I want to spend treading that kind of water. My knowledge of web development is already pretty minimal, and if I manage to get through life never touching JavaScript or PHP again I’ll consider myself a success.

Art is still a wide open question. I’m conflicted on a lot of things: do I want classes or not? If I have classes, it makes sense that every class would have unique pieces, but that’s visually confusing. I don’t want players to be uncertain about what image correlates to what piece. Do I want animations? That bumps up my art requirement considerably, but it could add a lot of panache to the game. Can I get away with just using stock art on the internet? There are some good sets out there, though less than I’d like. Is it morally reprehensible to take that stock art and sell it as IAP? It adds to the game, but it’s not something I myself created.

Monetization has been at the back of my mind. I came up with the idea for the game without considering how to make money off it, but I’ve made no money off enough games that it’d be nice to, y’know, recoup some of my investment. (Side note: Cuddle Bears actually lost me money, even if you don’t count the time we invested). I can sell: new piece sets, new boards, new board layouts, premium powers, premium classes if I introduce classes, avatars, artificial advancement. “Pay to Win” leaves a horrible taste in my mouth, but I hope to balance the powers in the game such that higher level players don’t have a distinct advantage as much as they have a wider selection on how they’d like to play. Do I include ads for non-paying players? That’s pretty common in freemium games, but I dunno.

Scheduling is a constant concern. I’m not horribly busy at the moment, but I’m busy enough to make a side project hard to manage. This thing will have to be scoped carefully - big enough to make it an interesting game but small enough that I can actually finish it. I’m already foregoing a single player mode entirely (no complicated Chess AI here!), so the ‘RPG’ title won’t be as descriptive as I’d like. I think once I sit down and start devoting my energies, things will come together, but it’s impossible to predict how long this will take or whether it will become another unfulfilled project.

Design wise, I’ve locked down a lot. I’ve got 20 different powers thought out. If I don’t have classes, that may be good enough for a first release. If I do have classes, I’ll need a lot more to support positive, constant player progression; at least 10-13 per class. The general flow and UI feel is coming together on paper. Communicating new concepts to the player has been streamlined, largely because the new concepts themselves have been streamlined.

During the course of writing this post, I think I’ve resolved on including classes. The major reason is that they provide a larger deviation on standard Chess and fit nicely into the RPG framework. I was starting to worry that simply ‘Chess + Progression + Powers’ was not enough of a difference to make this an interesting product. Allowing the player to have different characters that can each grow independently adds a whole new dimension. Balancing will be tough, and there are art decisions that come along with it, and it also slows down the new user flow if I’m not careful. But I think it’s the right call.

So now I guess all that’s left to do is, well, get started. Very little tech work has gone in so far, but hopefully over the coming weeks we’ll see that change. First playable by the end of March? I’m not going to commit to that, but it’s a nice idea.

March 1st, 2013

The Evolution of RPG Chess

Recall this post about RPG Chess - a deviation on Chess that introduced piece leveling and a new piece that leveled between matches.

As I tried to flesh out the game, I became increasingly dissatisfied with how hard it was to communicate all the information. First, every piece having different abilities depending on its level leads to a lot of information players need to manage. Of course there would be heads up displays, but as a player you don’t want to constantly reference a help section to determine if a pawn at level 2 can counter-attack your every move. Second, the inconsistency between an individual piece (which would not level between matches) and the new War Mage (which would) creates a disconnect between expectations and reality. Third, the new mechanics could not be conveyed without lots of tutorials and notifications and popups.

Everything was feeling unwieldy.

My first move to rectify this was to cut the War Mage. A new piece with disjoint mechanics lost its appeal. However, I didn’t want to lose the sense of progression, so instead I decided the player should level. Upon leveling, players would be rewarded with different abilities that can turn the tide of the battle.

The notion of abilities was a natural fit - it’s a more manageable chunk of information that’s easier to convey to the user. It also has parallels in other games which adds familiarity. Finally, there are more balancing options. Ability cooldowns can be introduced and tweaked based on level discrepancies between players. Bonus: it adds monetization possibilities in the form of premium abilities.

Once abilities entered the picture, individual piece leveling seemed less relevant. Instead of a piece gradually becoming more empowered, there could simply be abilities that did what those levels would do. So now instead of a pawn gaining the ability to move backward, we’d have an ability that moved a pawn backward.

It leads to a much more streamlined system. Most of the complications in terms of UI and messaging melt away without losing the crux of the idea.

The major open question that still remains: should all players have the same bank of abilities available, or should players bind themselves to a “class” where certain classes only gain certain abilities? The former seems the easier to balance - if players all have the same options available to them, there’s no possibility of one player being at a severe disadvantage. It’s also less work. The latter seems more personal, allowing players to choose a play style and bond with a certain class type as they would in any other RPG. The latter also has monetization options in the form of selling premium classes.

I’m not sold either way here yet. I lean toward giving players the same bank of abilities, but I remain very open to the idea of separate classes. There’s still some thought and opinion gathering to be done there.