Looks like ass, but it’s a fully functioning winnable game that is fun to play.
Not a shooter or a platformer, it’s a betting game for a change. Bet on creatures that compete in running, swimming and diving events. The key to getting to 1000 coins is to pay attention to which creatures tend to excel in each sport.
After learning the theme it took me about 30 minutes to come up with the game idea. The idea was to combine BoxCar2d with horse betting. I remember just staring at BoxCar2d hoping for the little cars to make it. I wasn’t quite sure of how the physics in it works though, so I went with what I know, which is just a bunch of vertices connected together with springs. Some strings are stronger than others (indicated by blue dots in the game) to try to maintain the overall shape of the creatures.
I didn’t use any physics engine and wasted some time trying to add angular joints in, but abandoned the feature after it seemed that it would take too long to get them working reliably. I wanted to have creatures that would have some muscles that would pulsate in unique ways and those muscles would then be inherited, the creatures getting gradually better like in boxcar2d. I abandoned the rapid evolution part and concentrated more on the betting aspects after it seemed that the engine would not be fast enough to get many iterations, and pure betting seemed to be more fun. There is still some evolution in the game though, the winning creature splits into two and mutates slightly.
What went right
I spent several evenings preparing for this LD by getting comfortable with Flash. Specifically I practiced coding stuff without looking up any function definitions or online help, starting a new project from scratch several times and trying to get sprites to move on screen, doing BitmapData manipulations, filters etc. without having to resort to docs. I felt that helped during the actual compo.
I hadn’t really used the Flash vector editing or components though, so I felt I was taking a risk in not doing everything in pure code, but it paid off. Laying out the controls using the visual editor was faster and it was easier to iterate.
What went wrong
Things went quite smoothly. As sol_hsa warned though, tweaking physics takes time. But on the other hand, that’s the most fun I had doing this. Flattening my creatures by having too strong gravity. Having them explode because of a bug or joints being too brittle. Subtly tweaking collisions to make damage look as satisfying as possible. It took time, but didn’t feel like work really.
I wanted to livestream the coding, but CamTwist + FlashMediaLiveEncoder were taking about 75% of my CPU which made development too slow, so had to shut those down and end the stream.
I read a bunch of tutorials about choosing a color palette and trying to learn about graphics layout, but when it came time to actually make an interface, it wasn’t really clear to me how to make it look better. I ended up just forgetting about making it look good and spent the time on gameplay tweaks instead. I figured a fun shitty looking game is always better than a beautiful unplayable one.