Well its that time again, time to sit back and reflect on this past Ludum Dare. Even without knowing I undertook Sol_HSA’s challenge of using a new language. Normally I used Actionscript 3 with the Flixel Framework, but this time I used Unity 5 with C#. After LD31 I promised myself that I would switch from Flash to Unity. Talk about timing Anyways, let’s move on…
What Went Right
Let’s start off with some good news shall we :).
1. I finished my game using a new language! This is always a great thing no matter how good or bad the game is.
2. I had a good idea of what I wanted to make. There were some bumps along the way but I’ll discuss those down below. This kind of theme really fits any genre and also lends itself to be interpreted in some really unusual and downright funny ways. Unconventional Weapon… could be anything! I chose love as my weapon and I have to say I really had fun making my game.
What Went Wrong
Alright its time to get to the meat and potatoes of this Post-Mortem :).
The Original Art
When the theme was announced my initial idea was to do a platform style game. Seeing how I wasn’t really limited in the size my art needed to be I started to draw my heroine, Lizzy Lovesalot. Believe me when I say I can not draw to save my life! She looked horrible and I really had no idea how I was going to animate her. That is when I scrapped the idea of a platform game and came up with the game that I submitted. Which is kind of funny as I started using Unity for its 2D features and I ended up making a 3D game lol.
The Inexperience Factor
Having not used Unity for an LD before I was not prepared for what lay in store. I was not prepared for some of the issues I would have. So let’s talk about those issues and perhaps someone might be able to give me some advice or insight.
1. My third person player controller wasn’t the greatest. I think it had something to do with the camera, you know, no rotating I know I need to work on a better third person controller. I know Unity comes with a first and a third person controller. I may look into those or just try to build one myself. Would give me more practice, which is something I really need right now. While I am disappointed in the controller, I thought it was neat how the player rotated. Perhaps that style of controller would have worked if everything was in front of the player. Something to look into I’d say.
2. I pretty much understood how collisions and triggers worked, but for the life of me I could not figure out why the player character stopped colliding with the walls I made around the play area. I tried everything I could think out. The player always had a rigidbody component attached. The walls didn’t have one so I tried putting one on them. nope they fell from gravity, so I turned off there gravity. nope, I could still pass right through them. I removed the rigidbody and made them triggers then added a script which would push me in the opposite direction if I touched them. nope, that didn’t work either. Now that I think of it, the only thing I didn’t try was recreating them. Not sure how I missed that one. Should have been the first thing I tried. Derp!
3. The relationship between a prefab and its script. I was under the illusion that a prefab with a script was a self contained thing, which means if the prefab had a button that turned it on and off I could put out multiple ones and they would work independently. Umm, yeah no that is not how it works :). In hind sight what I should have done was have a List or Array of bools in an empty gameobject who’s job would be to keep track of which prefabs were on and which were off. You know what they say about hind sight
That is about it. It really came down my inexperience with Unity, which will get better with time and practice… lots and lots of practice I may have to add learning Blender in there too as I might just need some 3D models someday beyond the basic geometry Unity supplies.
If you’d like to Play and Rate my game, you can find it here. The instructions from the game are posted for you to read as are some Notes and Tips. I know the controls are a little clunky but since there are no wall collisions you can move outside of the play area and practice controlling the player! See its not a bug, its a feature! Just remember the player will move forward in the direction the crosshair is facing.
Using Unity was a great learning experience and I can’t wait for LD33!