About kuhnerdm


Ludum Dare 35
Ludum Dare 34

kuhnerdm's Trophies

kuhnerdm's Archive

I ‘ M I N

Posted by
Friday, April 15th, 2016 7:12 pm

Round two, LEGGO!


Gonna start streaming soon at https://www.twitch.tv/derekmk/

Conservation of Ninjutsu – Post Mortem

Posted by
Friday, December 18th, 2015 12:20 pm

Here’s the game page, for reference.


Alright, so this is my post mortem for my LD34 game “Conservation of Ninjutsu.”



General Idea


My main idea was to do something that didn’t involve movement of any kind, and had some kind of “turn-based” thing going on. In each turn, you could do one of three things, and it worked in a bit of a rock-paper-scissors style. This worked fine with the two-button controls, since you could either press button A, B, or neither. I came across the idea of fighting an endless wave of enemies, and decided to go with that because it would have been relatively simple to implement.



Roadblock 1: Scale in Unity


Jeez, Unity’s scale system is kinda weird. If you aren’t familiar, it has two scale values, global and local. The same goes for position and rotation. Instead of just having child objects inherit values from their parents’ values and let the programmer change them if necessary, Unity has child objects set their “local” values to zero by default, and any changes to those values change the position/rotation/scale relative to the parent object. The issue here is that Unity is rather finicky when it comes to finding out what different values LOOK like on the field. Countless times I’ve dragged the slider for position to a point where it looks good, noted “Okay, so I need to script this to move four units to the right,” write the code, test the game, and find that the object is now offscreen. This made things like positioning the indicator sprites in the bubbles a nightmare. The final code looks really hacky, and it took way longer than it should have to get it that way.


Roadblock 2: Animations in Unity


As it turns out, the way Unity handles animations is pretty convoluted. Instead of a simple solution where a programmer can script out how they want the object to respond to signals (i.e. when X happens, play animation A with looping parameter 1), you are forced to use an awkward plugin to design a finite state machine. Now, I know how FSMs work, but a lot of programmers will NOT, and this is a really horrible way to handle animations in general.




High Point: Audio Design


If you guys aren’t aware (and you very well may not be), in addition to game design, I spend a lot of time in electronic music production.¬†¬†This made creating background music pretty easy, and allowed for a fun break from programming. If you guys are interested, I would highly recommend picking up (read: obtaining) a DAW like FL Studio, and learning how to use it. This makes many things related to game audio trivial, ESPECIALLY in the compo, where you are forced to make all your assets yourself.




Need a sword swipe effect? Just open up Sylenth1 with a white noise oscillator and a filter envelope, and you’ve made a sword swipe sound effect in about 30 seconds. Likewise, I made my death sound effect by just taking a Massive preset I made a while back, and adding delay and reverb. Being very familiar with a DAW and your plugins lets you focus almost all of your time on composition, not “how do I make this sound?”


Final Thoughs


Overall, I really liked how this turned out, although I wish that I had spent some time figuring out how Unity handled some things like animation beforehand, so I could add more features. However, it IS a complete game, and I’m proud of it. Pretty good for my first Ludum Dare.


Posted by
Sunday, December 13th, 2015 8:53 pm


done done

done done done

done done done done


but seriously it’s done


pls and ty <3

I’m IN!

Posted by
Friday, December 11th, 2015 8:30 pm

First jam LEGGO.

Using Unity for engine, Sublime for scripting, and FL Studio for audio.

Streaming here!


[cache: storing page]