Monday, June 9, 2014

LowRezJam #1 - Post-Mortem


I kind of failed to do a blog posting about it because I'm terrible at self promotion/social media, but I ended up doing something for the LowRezJam. After the Ludum Dare jam I wasn't really feeling too great about game dev skills and I really wanted opportunity to rectify that. I kind of felt like none of the games I'd made so far were very "true to myself" or "an indication of what I'm about", or however a wanky artist would phrase it. So: Shogun Assassin. Where the goal was to make a well presented action game with samurais, because that's what I'm about. Play it here at GameJolt if you haven't already.

The LowRezJam had a pretty interesting limitation: The game could only be presented through a 32 x 32 pixel window. Everything else, like theme, was entirely up to the creator. I like working in pixel art so this was exactly what I needed.

If you've seen many samurai movies, you'll know it's obviously heavily inspired by Lone Wolf and Cub, but also by previous-gen beat 'em ups like Devil May Cry and Dynasty Warriors. Oddly enough there aren't many games based on Lone Wolf and Cub. After I'd finished I found an old arcade game that actually had a bunch of similar elements, but it's not surprising considering the strength of the source material. To be honest, I'm surprised there haven't been more games based on it.

Anyway... on to the standard Post-mortem.

The Good

I'm a lot happier with the overall state of this game compared to my other jam games so far. I think I'm a lot better when it comes to hard restrictions on the end product, rather than restrictions on how it's made. This obviously goes double if the restrictions mean it has to be done in  pixel art, since I feel I'm pretty capable with that style. In terms of volume of sprite work, I'm using slightly less frames of animation than Apex Diver, but I'm reusing stuff better. Background art is more varied as well, I was pretty happy at being able to match so many staple locations from samurai films and have them blend so well into each other. I'm also proud of the little touches like being able to cut down the grass, trees and bamboo. Having to only worry about 32 x 32 pixels at once certainly made it a lot quicker to make more content.

I really wanted to hammer that classic samurai feeling where the player is surrounded by enemies, then in a flash everyone freezes, before all the enemies collapse dead. It wasn't easy to do with only such a small playing area, but I feel like I pulled it off. Using the screen area successfully was also a challenge I like to think I handled well. An action game needs to give players plenty of time to react to danger, so almost every dangerous element was designed to give the player enough time to anticipate and then handle. I'd liked to think there's never really a moment that feels unfair or confusing to the player in this game.

Going into the jam, the biggest improvement I wanted was to make the gameplay simpler and feel better to play. I feel like I've done a lot better this time and a lot of that is thanks to Vlambeer's awesome "art of screenshake" talk. In terms of simplicity, it's certainly a lot easier to pick up and play than my previous games. I'm particularly happy with the in-game instructions and how they convey a lot of information via a small amount of pixels. There is still a lot of ambiguity in this game that I'm going to have to keep working to improve, but I'll cover that later.

This is also the most sound complete game I've made so far. Having such primitive graphics meant I could use old school beeps and boops for sound effects. I also had a chance to mess around with some music programs and make my own music this time, which was a lot of fun. It would've been great to be able to spend some more time on it to give it some more depth and character, but I am most pleased with the way the gameplay music transitions when the player dies.

I think that this is/will be the most well received jam game I've made so far. Its currently sitting at a rating of 4.5, which would be a little bit higher if someone hadn't given me a scumbag 2 rating (It's been nothing but 4 and 5 ratings otherwise). It's also got more views/plays than Scrolls of Candy and Apex Diver combined already, despite me not doing anywhere near as much promotion. It's unlikely it'll get featured like Ascii Bird did, but it's not that high profile of a jam. I don't think it's going to win the jam either, but it should get pretty high. Of course, that's providing the jam ever has a final scoring, which may not even be a thing any more since the host has seemingly given up on it.

The Bad

For the first time in my game jam history, I don't have any major problems with the core gameplay. I think it feels kick-ass and controls in a nice, obvious way. As always, there are things that could be done better, and as always they're kind of things that definitely could have been improved with more time. However, they're not as bad as say, the relative "samey-ness" of Apex Diver, or the confusing rule set of Scrolls of Candy. It's not a post-mortem if you don't address the issues though, so here we go...

The biggest thing missing is probably a lack of obvious goals. During the instructions I do the whole "Survive... Kill" message but it feels too open and doesn't give the player a hard enough objective or long term goal. It doesn't suggest to them how they should do it, where they should go to do it, or who they should do it to. All it basically does is tell them to do the thing they were probably going to do anyway. They already were expecting to hit people, and to try and not get hit back. It's an action game after all. I was aiming for something endless and open, but I think it would've been better if players had some kind of long term goal in mind like "kill 200 samurai" or "get to the Shogun's garden". Something that gave them a hard target to aim for (or ignore, depending on the player) which can then also provide a platform to gauge their progress against while playing.

Secondly, there's a problem of the player being a little too powerful and how that shapes the way they play. I really wanted players to feel like an unstoppable slicing machine, allowing me to just keep tossing more and more enemies at them to balance things out. I was really lazy and didn't want to do individual attack animations while running or standing or jumping. I basically implemented in each key press results in one slash, but it happens so fast the player sprite doesn't change. It felt great, but it had the knock on effect of making it too easy to just run along and hammer the attack button with no consequences.

I tried some things to limit the players ability to attack freely, like having a stamina bar or adding a recovery time, but it made the gameplay feel really bad. It wasn't a concession I wanted to make, so in the end I added 3 new systems to try and force the player to stop running and stop attacking: the arrows, the supers and the ranking system. The arrows did their job pretty well and I'm pretty happy with how they worked out. However, the instructions for the super didn't explain well enough that you need to stand still and not attack to charge the super. Similarly, the ranking system didn't get explained at all, so any effect it was supposed to have was lost unless players were replaying.

Both of these issues have a couple of different ways to fix:
For Supers:
- Change the instructions to include a message for "Stand Still / Don't A / Charge/ S = Super". This is probably the strongest change, but I was a little worried the instructions were too long as they were.
- Rework the instructions to only pass once player has demonstrated they could follow the prompt (i.e. dont move past the attack instruction until the player has pressed A). This still runs the risk of players not understanding what was going on and getting stuck and frustrated.
- Starting the player with full super bar, allowing them to call a super when the instructions tell them the buttons, displaying the value of charging the super. It still might not adequately explain how to get the charge though.

For Ranking:
- Tips on restarting that give details on how to get higher scores, i.e. "kill multiple enemies in a single slash for more points" etc. This doesn't really help the first play through though, so it's probably not the best option for a new player and therefore doesn't help with retention.
- An on-screen score counter, so people can directly see how much (or how little) their actions increased their score. I was strongly considering this but It would've been a lot of extra work to make it work with the 32 x 32 screen size and I'm not sure if it would've been able to fit on screen or look good anyway.

There were also some other possibilities I could have looked at as well, but those probably would've required extra systems/artwork and taken a lot of extra time. But because this also directly impacts the difficulty of the game, it might have been worth the time. Playing the game wildly slashing and running is easy but ultimately boring.

The final thing I've identified is a a lack of variety. I think I did better than previous games when it came to the sheer ammount of content in this game, but it still would've probably been better to add some different enemy types. I mean, for a game where the title is "Shogun Assassin" there's not really a shogun to assassinate. A boss character might have added that kind of final goal the game needed. Further, a blocking type character might have been the thing to stop the players aggressive running and slashing. Normally, this kind of thing might take too long for a jam but because of the small pixel count I probably could have added another specialist enemy. Maybe I need to look at my enemies less as complete "character" with multiple options and keep them as simpler threats that only perform a singular action?

The Ugly

It's hard to gauge exactly what time was spent on what for this jam because I did so much just here and there while doing other stuff. Further, I started the Jam late... then jam got extended. I ended up finishing a day early, so it's hard to gauge anything, even in terms of loose time frames. I should probably start noting down times or whatever so I can get this better understood.

I do remember the initial sprite work and background work taking quite a bit of time. Enemy sprites also took a while until I worked out some tricks to speed the process up. Actually getting in the functionality into the code didn't take anywhere long as I thought it would, and even now the way it's all set up makes it pretty easy to edit and add stuff. I remember that once again it took me ages to source decent sound effects. Even though I was using Sfxr and happy to use beeps and boops, it still took me a while to find effects that worked. Music didn't take too much time at all comparatively, and I managed to crank out 2 loops, an intro sting and an ender in an about an evening.

A Fistful of Dollars

I learnt a lot of little things this jam, or at least, had plenty to think about:
- That "art of screenshake" video is full of great practical examples of stuff you can add relatively quickly to make a game feel more fun. Not all of them were applicable here because of the tiny resolution and game concept, but I think anyone making an action game should check it out. They primarily focus on gun shooting action, but think about the genre you're aiming for an then think about what makes that genre stand out, then amplify those elements as much as possible. For gun shooting action movies its explosions and screen shake, for samurai films its flashes of light and blood spurts.
- Strongly consider the end goals the player is presented or expects while playing your game. Ensure that the way you present your game highlights exactly what the player needs to do, even down to the title. Make as many elements of the art/gameplay/UI/sound reinforce that goal as you can.
- I think I need to make a little personal database of sound effects to draw from quickly from, rather than try to source a new set every jam. Every jam I've done sound for so far, the time spent sourcing sound seems like the biggest stalling point.
- I really enjoyed making the music for this game, and trying to make the music match the theme. But I think I need to think harder about how the music reflects the action. I made the in game music driving to reflect how players were playing it currently, even though that's not necessarily how I wanted them to play it. I should've tried to make the music lead them to how I wanted them to approach the gameplay, or better yet, have the music adapt to how they play.
- I also need to do better at getting feedback from test builds. I think specifically I need to start asking friends to play and then begging for anything that felt bad/could be improved. I got some decent feedback towards the end but at that point it was too late to make major changes. Twitter/GameJolt feedback seems pretty useless at the moment, although judging by the high score table the game's either too hard or gets too boring.
- For objects that relate to other objects (specifically the enemy characters compared to the floor), let the dynamic object handle how interactions should work. Here, I had the floor objects tell the player/enemy how high they should be without using collisions, but this lead to issues where the floors couldn't tell specific enemy sprites where to go. I ended up having to cheat with the enemies to stop them from falling all over the place. I could have more explicitly created my enemies, but I think it would've been better to just have enemies check their collisions with floors and act accordingly. I'm pretty sure all computers would've been able to handle it.

For a Few Dollars More

I actually enjoyed making this game and am pretty pleased with how it turned out. Continuing it might be a little problematic though, since it's based pretty heavily on a known IP and the 32 x 32 resolution is a little limiting. I could go and rebrand it, expand the resolution, add a level progression, more content etc.  I think I'd also entirely restructure the attack system, give the player a 3 hit combo and make the rapid attacks a super or something. It might actually be cool to expand it fully to character action game standards, have multiple attacks, special moves, juggles, etc. I'm just not sure that's the best idea though.

So, do you have any feedback? If so, I'd love to hear it... Otherwise I guess just stay tuned for whatever is next.

No comments:

Post a Comment