May Game Dev 013: Download and Play

Get the game here.

Rag Doll Fight 1

You can download it for Mac OSX, Linux, and Windows.

I love how easy it is to build for other platforms in Unity!

I got rid of the control screen and figured out how to just use the Unity Input Manager. So now when you start the game, you can set up the inputs however you like. I would like a custom in-game input manager, but that’s for another game and another time.

Enjoy! Tell me what you think! Remember, this is a game that I threw together in a month. Don’t expect anything epic or unbreakable. 🙂

May Game Dev 011: Nearly there but gotta work out the kinks.

I’ve worked on it quite a bit, but I’m at a place where I think I should leave it.

I really don’t like the way the animations play out. Next time if I’m doing a fighting game, I’ll have to draw out all of the animations with sprites. I can see why it’s been done this way more often. Obviously 3d is a different story, but still the animation can’t be done with bones alone and look nice.

Tomorrow’s the last day. I’ll fix up a few bugs here and there and then post it. Not bad for a month’s work for a fighting game. It’s really a lot to think about in terms of hitboxes and interactions. Not as simple as you might think.

I think I’ll call it “Rag Doll Fight 1”


May Game Dev 010: The Start of a Game Controller

I’ve been working a little bit to get a main game controller and the text up and running to the game with a countdown timer.

So far so good!

Again, learning more about unity, and how easy it is to talk to each component and set things nicely. It feels like writing a web page… except better.

May Game Dev 008: Health bars and hitboxes working!

Que Felicidad!

I now officially have a way in which to measure winning and losing the game. It’s by no means perfect, but I got something up and running, and I understood a bit more about unity and the physics and colliders.

Unity is a BEAST! But it’s also a pleasure to work in. I’m getting much more comfortable writing out code for it.

The sad thing is, I want to code pythonically with very expressive property and method names, and I want to stop using CamelCasesForEverthing. But oh well. I should write expressively, but the camel case will have to remain in order to not confuse myself or others reading my source.

Thanks to a wonderful tutorial from this guy inScope Studios on Youtube, I was able to understand a lot more about how to make better object oriented code for Unity. I was also able to make beautiful health bars that work really nicely! I also found out what lerping variables can do. (Linear Interpolation).

I made the bar smoothly fall and change color as the player takes damage.

Here’s a quick video of my progress so far!


May Game Dev 003: Sprites Or Bones?

It’s the first of May.

After spending hours animating a simple 3 frame idle stance, I decided to go with bone animation for the fighting game instead of the sprites. I want to get a good fighting system up and running first, and I realize that I don’t have much time to pump out all of the animations for each character.

Here’s the sprite animation. It’s not pretty, and it would take dozens of hours to get it right and make more in-between animations to get it to look right.

Rigged Bone Dummy

Rigged Bone Dummy

Time for bones? I think this is my only option to get a game up and running. I spent a few hours learning how to rig up a character, and it’s looking pretty nice so far! I can focus on the programming parts which will take more time. After that, I can switch out the sprites for the skin to make a new more appealing character.

So bones it is! YAY!

Game Development for May 001

FIghting Games.

Complex, beautiful, and you don’t have to program AI if you don’t want to.

I’ve been learning quite a bit about Unity2D for the past couple of months learning from some good courses on Udemy. I think I have enough knowledge right now to go out on my own and build a simple fighting game for May’s 1GAM challenge.

Last year I built a fighter from scratch in Python. The only trouble I had was when I couldn’t get CX_FREEZE to work! So annoying! GAH!

With Unity2D, that’s not such a problem. There’s no slapping together a bunch of dependencies manually and throwing wrenches at my computer as I try to compile an executable that doesn’t cause a segmentation fault.

Geeze that was scary to see the first time. I’m sure if I had the patience, though I could have stuck with it and figured out how to snap everything back together to get an executable file to work. But it still runs on the interpreter.

Teddy Fight Screen Shot, mid development

Teddy Fighters. My first Game built from scratch in Python.

I still love Python, and every once in awhile I go back to my old code and play the little overhead fighting game. I remember when it took forever to try to get all of the weapons to move together with the character at the correct angle with some trig functions. That was a great learning experience. I had to go back to highschool Algebra again.

Now, back to the game!

I have a little bit of time to work out the details with Golden Week coming up. It’s nice to get some time off from the daily grind.

For the simple fighting game, I’m going to try to learn from other fighting games by implementing all of the basic concepts of your standard fighting game.

High Speed Chess

All the competitive fighting games out there are like a high speed chess game in a way. Moves counter moves. You must know when to play defensive and when to go on the attack. And you have to react as fast as possible in the moment.

Dance Dance Revolution

In many ways, fighting games are like any other timed sequence game. You have to hit the right buttons at the right time and train your brain in order to master the game. This comes even before the strategy of the high speed chess game comes into play. You have to know a good range of moves before you can feel out the strategies.

Super Moves, Normals, Throws, and Combos

This is where the meat of the programming and animation will come into play. Each move will need to be mapped out. The time window to chain moves together into combos will also need to be carefully tested. This is why a fighting game takes so much time to develop.

Beautiful Animations

Fighting games can be really showy, and let’s be honest, you’re probably not going to play something with bad animations. Even those stick figure fighting games have beautiful flowing animations. It takes time, patience, and Oh geeze did I mention time?

I might have to look at bone based animations, but It will be something I’m not used to and haven’t done much of. It will be a learning experience. On the other hand, I am more comfortable on sprite animations. Learning something new might take just as long as pushing all of those pixels. It’s a hard choice I’m going to have to make after a bit of research.


Having a limit is the wonderful thing that makes the animators and programmers jump for joy!

Although there are some very complex fighting games out there with many characters, Usually fighting games don’t have more than 50 different ones. And usually, the 2 player fighting mode is good enough.  The backgrounds don’t have to be a functional part of the scene and can be done very simply if time is running low. Also, the range moves can be limited if I need them to be.

I’m going to need to limit myself this month on characters, AI, Background art, and moves in order to finish a polished working version for the May 1GAM challenge. We’ll keep you informed on the progress. Good luck out there to those that are cooking up a fighting game.

Do you have any experience building a fighting game? Do you have any tips on how to go about Bone based animation in Unity 2D?

Let me know in the comments!