So, we barely managed to finish the game on time (I strongly encourage you to give it a try). I would like to share what I can gather from our participation.
There’s really nothing like it. Period. It was fun, it was challenging, it was stressing yet exciting. Sometimes I kinda felt like we were on a time-critical mission to save the world.
It’s THAT epic.
If any of you registered into LD and in the end didn’t feel like entering (either the Jam or the Compo) I strongly suggest you to give it a second thought next time.
It was really cool to work together as a team with my friends. Things like this make you really realize what teamwork is all about. Sure, we won’t get the fame nor the recognition of the Compo dudes but believe me, it’s awesome.
Ok, it would be a lie if I say that everything was rainbows and cotton-candy-flavored clouds. We spent a lot of hours (more than half a day, actually) struggling to get things done with the framework we chose (Java + libgdx). None of us had a clue on how to use the library (we bravely chose it because we wanted something multiplatform and powerful enough to make good games with it). We gave up on that because we found no way to make the things we wanted to and it was overly too complex (OGL for a tile-based game seems like an overkill to me) for our purposes. We switched in the end to C++ and Allegro (since we already knew how to use it) although we knew that it would mean making a lot of things from scratch that most libraries already have in their core (Animation support, dynamic resource loading, collisions, physics, etc).
So, first leasson; Know the tools you are using. I know it was a foolish move to choose something no one of the team was familiar with… but we dared to try, at least. I’m sure libgdx is really powerful, but probably maybe way too much for what we needed.
Second, try to keep your code tidy, but don’t over-do it. I think I spent a helling lot of time commenting classes and creating methods that probably we didn’t even use (mostly “setters” and “getters” for all or most of the exposable properties of each class). Some of them came in handy, but others are probably there, unused.
Third: Try to keep it simply, don’t start with things like “the game will have 100 levels and a neural-network-based AI for each one of the 50 bosses”. Don’t aim too low either (e.g: “the game will be a single screen with a static ball on the screen and you earn score by staring at it”). We set our goals in a realistic way (but given our impasse with the lib we chose we had to make some adjustments).
Fourth: Don’t make final adjustments if they can impact the game. In the final hours we decided to limit the reach of the Hook weapon because it was traveling endlessly until hitting something. Now the game is deployed, we can see that if you are given the hook in the third stage you are totally screwed up. The limit we set for it make it impossible to reach what you need to advance . FAIL.
We think it would be interesting to complete the game, add the whole selection of items we had in mind (one or two more than the ones that made it into the game) and add a nice background story (in fact, the game was supposed to be about a kitty fighting fields and fields of domo-kuns (just because “in soviet russia, kittens chase domo-kuns” ) we even made the domo-kun sprites. We also want to rewrite all the parts of the code that we pretty much stuffed inside wherever they fitted (In the beginning I attempted to make everything perfect and tidy… Don’t ask if we still had that coding style by monday…)
We are also interested on making a codebase for future LD. I’ll be sharing the Map Editor I made so stay tuned. Now I need to sleep…. like.. for 2 days in a row.
P.S: Thanks for everyone involved on this event. I loved being part of it. I’m looking forward to participating again.