About kreddor

Entries

 
Ludum Dare 26

kreddor's Trophies

kreddor's Archive

Mini Circle Wars post mortem

Posted by
Monday, April 29th, 2013 5:47 am

This Ludum Dare has been a triumf for me personally, being the first time I’ve participated in a game jam. I never would have guessed how much is possible in less than 48 hours when you put your mind to it, and the community is fantastic. I will definitely make time for something like this again in the future.

I ended doing a small game called Mini Circle Wars.

Theme: Minimalism
I didn’t like the theme initally. It didn’t really spark my imagination and it seemed like a carte blanche to just do anything minimal and simple. But I quickly got an idea and started working on a minimal RTS with circles battling each other. So the gameplay is simple (build circle towers), the graphics is simple (circles in a handful of solid colors), only three sounds, and one game mode. I think it fits the theme well.

Gameplay
It’s sort of like a Tower Defense in survival mode where you are attacked from all sides until your base is destroyed. I like how you need to spread out your towers to extend the area you can build on, yet you need to keep towers close to each other to protect them. Balancing the game turned out to be hard. I think I spent three hours going back and forth between “this game is too simple” to “this game is too hard”. I still don’t think the balance is quite right, so I might fix that up in a post compo release.

Other than that, I think it turned out quite well. I especially like how you can zoom in and out and watch your creation getting attacked. Of course I can think of a lot of features that could be added in a future version, like more game modes, several difficulty levels, mission based instead of survival mode, more upgrade types, more interactive environment (like mining resource from circle rocks instead of just harvesting them out of thin air), and so on.

Tools
Picking Java and IntelliJ was a no-brainer for me, since I’m pretty fluent in Java (having used it since 2002 for various projects), and IntelliJ is so much nicer than Eclipse for general development. It’s not necesarily the best prototyping environment (I’m considering learning Lua for that purpose), but developing in Java is pretty fast if you now the language and your tools. Libgdx is also a really great framework that supports plenty of platforms. The only other tools I used was Aseprite for … well, mixing colors, and bfxr for the three ingame sounds. That’s it! And the GWT-version of the game is compiled in Eclipse since I never have gotten that to work in IntelliJ with libgdx :)

Implementation
I’m actually quite happy with my code quality. It’s nice and clean and I can still find my way through it the day after. Not so sure about the overall architecture, since it’s neither MWC or anything else I know. It kinda just evolved dynamically while I made the game. It might need some refactoring if the project is to be extended.

I’m not nearly as happy with my rendering code, since it’s a mix of libgdx’s SpriteBatch and ShapeRenderer. One for text and one for interface and circles. They don’t mix that well since you have to end the SpriteBatch before issuing shapes with the ShapeRenderer and vice versa. I assume the ShapeRenderer is really meant for debugging mainly and not actual ingame graphics. But hey, it works :)

Some of my basic helper classes resemble stuff I’ve made earlier, so I’ll most likely create a small library from them for future use. Just basic stuff like Timer, Animation, and asset loading classes that fits my workflow.

What went right

  • I made a game. Succes! 😀
  • Tools and frameworks just worked. I’m glad I didn’t try to learn a new framework during the compo.
  • I like the sounds in the game, they fit well. Should have made some more.
  • Good code quality I think. The architecture might need some refactoring.

What went wrong

  • I would have liked to spend more time on the visual part of the game, but didn’t really have time for it.
  • Working past midnight on Saturday was a mistake. I didn’t really make much progress in the last 2-3 hours before sleep and was quite tired the next day.
  • I underestimated the process of balancing the game.
  • I spent entirely too much time thinking about pathfinding until I realised that the game AI didn’t really need it after all.

That’s all I can think of now. I’ve uploaded a timelapse video here: http://www.youtube.com/watch?v=xJ4yL3SKeXI

Timelapse video

Posted by
Monday, April 29th, 2013 4:28 am

Timelapse video capture of my desktop while making Mini Circle Wars.

 

 

Game balancing

Posted by
Sunday, April 28th, 2013 10:19 am

 

I’ve spent the last 2-3 hours balancing the game, which is actually a lot of fun. It’s actually an reward in itself to get to play and tweak your creation. And I invented a few new game mechanics too while I was at it. The game is more of less done, though I’m considering adding music maybe? We’ll see.

Also, I managed to get both the Java Applet-version and the HTML5-version up and running, so that was nice. I never take for granted that GWT actually works and compiles my stuff into something useful. It’s still black box magic to me.

ld26screen4

Signing off for the night…

Posted by
Saturday, April 27th, 2013 4:23 pm

Spent an hour trying to math slightly sleep deprived, but made it work in the end. Time for bed. Hopefully tomorrow will be just as productive as today. Good night everyone.ld26screen3

Another WIP

Posted by
Saturday, April 27th, 2013 12:00 pm

I think it’s going well :) I have circles moving and stuff!

But I wonder how long I can keep coding before I need sleep.

ld26screen2

Four hour status update – Minimal RTS

Posted by
Saturday, April 27th, 2013 4:57 am

Didn’t like the theme initially, but I think I’ve got some good ideas now. I’m going for some sort of minimal RTS/TD-thingie. Early screenshot below. I wonder if I can finish it in time. Now for some lunch :)

ld26screen1

First timer signing in!

Posted by
Sunday, April 21st, 2013 2:20 am

This is my “I’m in” post, and I’m fairly excited. This will be my first LD :)

I have no idea if I’m in any shape to complete anything interesting for the compo, but I’ll give it a try!

My tools:

IDE/Language: IntelliJ IDEA and Java

Libraries: libgdx and template project for IntelliJ (here)

Graphics: Aseprite

Sound: SFXR, Audacity, maybe others…

[cache: storing page]