Sunday, February 16, 2014

Frenzy, Agile Game Development & Sprint Reviews

Frenzy is a fundamental part of Vampire: the Masquerade and should be carefully ported to Bloodhunt in order to capture the struggle between the vampire's decreasing humanity and the inner Beast. Here's a first sketch of the Frenzy interface. It's all blurry and tinted in a deep blood color. Since the player loses control over his vampire during Frenzy, a progress bar shows how long will the Frenzy last. In general terms, however, I've just adapted the Bloodlines Frenzy interface almost as a 2D demake.

Also, I've been playing with the character sheet. All Feats and derived information will be shown as pop ups or contextual menus, leaving more room to the essential stats of your vampire: Attributes and Abilities. I'd like to add backgrounds, merits and defects, or virtues but for now let's keep the character sheet at a minimum.

On the programming side, I've ended the monthly sprint so it's time for a sprint review. But what exactly is a sprint review? Following agile development, a game is developed in short iterations (i.e. sprints) of 2-4 weeks. After each sprint, the team evaluates the game and the process, trying to enhance the game experience and development for the following sprints.

Allow me to show my sprint review in a post-mortem manner, exposing what went right and what went wrong in the past 4 weeks of Bloodhunt development.

What went right:

Turn-based combat is fun. This was the main goal of the sprint, testing the turn-based combat system. Square grids are super-easy to code and most VtM mechanics were fairly easy to implement too. Piece of cake.

Intellij IDEA + AS3 + Flixel. Shifting from Unity to Flash at the very beginning of the project has greatly improved productivity. Each new feature takes a lot less to integrate and Flixel offers all the good old pixel lore that Bloodhunt needs.

What went wrong:

Turn-based combat is slow. Even though the turn-based combat prototype is fun to play, it lacks rhythm and feels more like a board game than a videogame. This is not inherently bad. There are lots of turn-based games and they are awesome. However, after some weeks of development I have realized that maybe a real-time combat system is more suited for Bloodhunt. Which leads me to the next point.

Horizontal prototyping versus Vertical prototyping. Prototyping is great, but being indie and agile often means that not all techniques are good for you. I need to try things quickly in order to maintain development momentum. Thanks to the horizontal prototype of the turn-based combat I can analize combat after just a couple of weeks of development. However, if the prototype fails (which will often happen since its function is to try new mechanics), my perception is that after all my efforts there's nothing to show. Here is where vertical prototypes come into play, showing a vertical slice of the entire game to see how it all integrates in a coherent form. Which again leads me to the next issue.

No final integration of the game. All that I can show of the turn-based combat prototype is a bunch of screenshots and nothing more. This has to change in the following sprint. The sooner Bloodhunt gets into player, the better.

Assets loss. Morality loss. Character editor on hiatus.

Conclusions. In the following month, Bloodhunt will grow following these steps. First, I'm not focusing on a single combat prototype anymore. I need to try a second combat prototype so I can compare turn-based and real-time combat. Also, I'm planning to add a vertical slice of the game in full detail: the first 5 minutes of game, from intro to gameplay. The logos and the initial cutscene will not be definitive (since I don't have a logo), but even a mockup screen will serve the purpose, as long as it is fully functional. And that means that by the next month I'll have a playable version of Bloodhunt on the internetz. More to come soon!