Posts Tagged ‘libgdx’

MF100 – Post-Mortem

Posted by
Tuesday, May 9th, 2017 3:07 am

If you are bored with gamedev or programming, game jams is a thing you need to try. In october 2016 I found my self bored with c++ madness. Suddenly, I found a blog post about great game jam, that will help you to re-think your skills.

Ludum dare is one of the worlds largest and longest running Game Jam events. Every 4 months, people make a game from scratch in a weekend.

Sounds neat right?

I though, I will have a try. My first LD (37), I wrote an RPG-kind of game:


It was my first experience of java game development, I was completely to game jams. Any way, I did a great job, and I was proud of my self, because I did compo first try. Things I noticed:

  • Ascii art is great, but doen’t fit game jams
  • My java framework was buggy
  • I did not have any clue, how to make music

But, what I enjoyed a lot, that I got new inspiration from the jam and the positive feedback from people. It was so lovely, to hear great words about your game!


Till the LD, there is always a few streamers, that stream their development. When I saw that on LD 37, I thought, that it would be nice to try this. I wrote a small plugin, witch can be found here. Not the best code ever, and the idea is taken from Drunk Devs on twitch.

The plugin it self is a twitch chat bot, that displays all of the users, that had typed something in the chat, on the screen. And every 7-10 minutes happens a random event, that users can vote for.


The truth

My stream got 0 viewers :) Strange, isn’t it? Also, my PC was not powerful enough. When the chat bot was active, my PC was lagging so much…

Another way to do this

Next LD (it will be in summer 2017), I will record a time lapse, and post it on youtube. Hope, that it will go better.

Wait, but what about LD 38?

Ah.. it was a complete fail.. First of all, in a few hours before jam, i found pico-8. I thought: “Well, I write a game-emulator, this can fit almost every theme..”. I created a prototype console, and got to bed.

When the theme was announced (it was Small World), I though, that this theme is great for writing an emulator.

The first day went alright. But on the second day, I just did not know, what to do.. I mean, I run out of ideas. My game was not playable enough. There was not enough time to start another game.

I just failed.

By the way, game is here:



Never start a brain storming before LD. Otherwise, you will fail.. Trust me. Next time, I will use lua + love2d for my game. And no ascii art!!

Breakdown of LD38: Little Fortune Planet

Posted by
Sunday, May 7th, 2017 4:26 am

Timelapse of Junk in the Bunk Programming

Posted by (twitter: @roaringcatgames)
Tuesday, December 20th, 2016 9:55 pm

Checkout a short time-lapse of the development of our game “Junk in the Bunk” for #LD37. Play and Rate Here Junk in the Bunk

Some Tools for LibGDX & Tiled Users

Posted by
Thursday, April 14th, 2016 8:18 am


Hello everyone! Over the past week or so, I’ve been working on some tools I used in past game jams. The first is MetaMap, a program for adding collision & other meta data to TMX maps. The original version exported this to a JSON file, but now it can save straight onto the map file. The extra data is stored on a new tile layer with the name “meta”. An early version of this tool was used for my LD 33 entry, Dis-o-rder. Download the tool here:


The second tool I’ve been working on is a libGDX base template. It uses Groovy, contains generic Ashley components, tween accessors, and a premade main menu. The code can be found here:


Me and my team are very in for LD35. Good luck to all of you!

Mount FuJ Post Mortem – LD34

Posted by (twitter: @roaringcatgames)
Sunday, December 20th, 2015 6:31 pm


The Game

Mount FuJ is a take on tower defense, or defend the castle style games. You play as an active volcano trying to protect the village that has popped up just below at your base. The village is under siege from an unknown enemy that is sending wave after wave of pikemen and horsemen units. The village will fight back, but it is no match for the army. You must use your volcanic ways to rain down lava balls on the enemy before all of the buildings are destroyed.

[Features that didn’t make it: If you are successful, the village will flourish and grow. However, as the village grows, it begins to spread into the range of your lava, so you have to be very careful to do more protecting than damaging.]



Zoe Blackwell – Music and SFX
Loi LeMix – Art
Barry Rowe – Programming

The Team

Left to Right: Loi, Barry, Zoe

This was Zoe’s first game jam, and first game related project. Loi and Myself have been working together since Ludum Dare 30, and have formed Roaring Cat Games under which we publish our work. Our team formed as we were brainstorming at the live Ludum Dare meetup with GameDevLou. This was the first time that Loi and I have worked with a dedicated musician and sound designer (which was awesome).


Zoe used Logic Pro to record, mix, and compose music. She user her Casio Privia PX-160 keyboard as a midi controller to write the segments needed for composition.

Loi used his usual package of Adobe products but heavily worked in Photoshop to generate the art assets. However, this jam, he added a new tool into the mix with Spriter2D. Spriter really let him focus on the art and fluidity of the animations when during previous jams he was having to worry more about manually framing animation sizes and pivot points.

I chose to go with libGDX for this game jam as it is the framework I have the most experience with for games. While I’ve been doing some 3D work and learning unity since Ludum Dare 33, we knew we wanted to go with a 2D game for this jam, and I wanted to eliminate engine knowledge as a possible roadblock. We always like to challenge ourselves in some way with our projects though, so I did decide to throw Ashley ECS into the mix. I had used it for LD33, but only sort of embraced the ECS approach. For tooling I used: IntelliJ as an IDE, GIMP for placeholder art, and Git for version control.


We worked the entire Jam at the Game Dev Lou “real-world gathering” working alongside at least 8 other teams. (See all of the GameDevLou games here:


We presented a less finished version of the game as the real-world Jam wound down on Sunday about 7PM:


Our brainstorm session was a bit longer than usual this time around. The existence of two possible themes really seemed to throw a wrench in our creative process. We kept falling into the trap of trying to force both themes into the game rather than focusing on one theme and discarding the other. Loi and I had also discussed trying our best to find a hack’n’slash to fit the theme, so I think that had us always coming back to “is this better than just building a hack’n’slash?” In no particular order, and with no further explanation, here is a list of some of our ideas:

  • Auto-run with Attack, Duck, and Jump all in two buttons
  • Snake/Centipede style game
  • Save the iceberg
  • Ninja absorbing souls into an ever-growing sword
  • Volcano Game
  • One-punch man training simulator (w/ boss fight)
  • Planet Building
  • Tree vs. Lumberjacks Survival game
  • Avoid the expanding Objects
  • Dark Maze Puzzler
  • Grow and Shrink objects to get out Puzzler
  • TRex growing up
  • Lion hunt and roar

When we got to the end, our top 3 ideas were between a Growing Sword hack’n’slash, One-Punch Main Training Sim, and a combo of Volcano and Protect the Iceberg.


As a whole we were most interested in the One-Punch Man game, as it had the opportunity for lots of humor, and working with a story/world we all enjoyed. However, as we started designing out how the game would play, we realized that the mini-games were fun as a concept, but boring in actual gameplay. We came to the conclusion that we couldn’t make the game fun enough to move forward on.

Next in line was the Hack’n’Slash with a growing sword. We discussed it, and the game play was going to be pretty simple and fun, and the environment had a lot of potential for interesting visuals and sound. Unfortunately, once we started looking at some of the features that would need to be implemented and the number of animations and art assets required to match our vision, we realized that the scope was just a bit too much. I personally had some major concerns that I wouldn’t be able to figure out how to implement the sword mechanics we wanted in code. I kind of regret giving into that fear looking back, but it was probably the right call. Loi can blame me for dashing his Hack’n’Slash dreams until the next jam.

As we began finalizing our third choice, the volcano game, we all kind of realized it might fit our strengths really well. Zoe seemed confident that she could produce the tense, dramatic soundscape we were designing toward. Loi found the concept might lend itself to a painted style he’d been wanting to try out. I felt there were some interesting challenges in the code, especially with only my second project using Ashley ECS, but was all doable in a Jam time-frame. On top of this, once we all got on board, we began expanding some of the possible mechanics, and the game was sounding pretty fun.


Our process for building out the game was straightforward.

  1. Work up a list of all the known assets (art and sound) we would need
  2. Work up a list of all the programming features we need
  3. Task out the features in order
  4. Build each feature to implementation
  5. Repeat 3 and 4 until the Jam ends

Check out this timelapse of the programming effort over 3 days:

While there was no intention this jam of keeping Loi and Zoe from playing the game until the end of the jam…it still happened. Due to the development tools, having the game up and running where we can all play it isn’t as simple as I’d like it to be. This means that unless everyone on the team sets up their machine for development, the only way to play is to jump on my machine.

I think we should have done more small 5 to 15 minute breaks where we all get together to test a mechanic, listen to a piece of music, or analyze an animation or set of art assets as a group. This is something that was missing from our process this Jam, and I think it did limit what we accomplished.

What Went Well

The art and music for the game turned out fantastic. Zoe and Loi nailed it, and I love the feel of the game with them in combination. The soundtrack is nice and tense, with a subtle yet still noticeable buildup of urgency. Combined with the SFX and the lava animations, it makes for a very cacophonous battlefield scene. Yet, somehow with all the explosions and battlefield tension, there is a soothing calm to the experience as well. About halfway through the jam I could see that the music and art were going to need to take the main focus of the game.

The collaboration between the team went smoothly. We were each able to spend the majority of our time in our own tasks but were able to stop and discuss next steps/changes as needed without any issues. I think being in the same location really helped with that, and I can’t recommend enough that you try to join a real-world meetup if possible.

Coming together on Monday after our day jobs, we were able to pull off a lot of work right at the end. Sunday at the end of our day, we barely had a game. The wave system didn’t work, there were no sound effects, there was no balance to the enemies, and worst of all the game didn’t do anything to highlight the great soundtrack. On Monday we were able to take a step back, prioritize the features to make it a game, and knock them out with just a few minutes to spare for submission. This final crunch period went really well, and it was very satisfying to see how quickly we could get things accomplished under pressure.

What Didn’t Go Well

Coming up with a damn name for the game… This is the first jam I feel like we never had a clue what to call the game. If anyone has any great ideas for what this game should be called leave it in the comments below. We were just drawing blanks the whole time.

I feel like I was the weak link in this jam. I’m not sure what happened, but between saturday about lunch all the way through sunday about 10am, I just couldn’t get anything going. I was writing code, but it was all non-essential background placement or environment building code that I could have (and should have) knocked out towards the last few hours. I think I was dealing with a rough combination of:

  • Exhaustion (I had not been sleeping enough all week prior to the Jam)
  • Doubting my abilities to implement features
  • Lack of clarity on how some of the mechanics needed to work
  • Worry that I may have talked the team into a game that just isn’t fun

I definitely should have started working on having the lava destroy enemies much sooner as that is the key mechanic of the game. I had the lava-firing and charging really quick, and it then just didn’t do anything with it for almost 24 hours. I made the mistake of not building the basic mechanic up front so we have time to tweak and make it fun. On the plus side, I’ve learned that lesson (for at least the second time now! :)) and will be able to remember this instance to hopefully keep it in my mind going forward.

What’s Next

In the end, we feel our game has a pretty fun mechanic hidden inside of it. We’d like to tweak some of the known issues (spamming lava is an auto-win, no visual indicator to know how charged up your lava is) and add touch controls. This would allow us to release the game out for mobile devices as a little time sink. We’ll definitely need a scoring system, and a way to indicate that fun you’ve lost. The win sequence needs some work as well.

Team Thoughts


“I was very excited for this Jam and challenging myself with Ashley ECS. While I’m disappointed in my output for the Jam, I was able to build out some pretty generic Systems and Components that will be useful for games in the future, and I plan to clean them up so I can open source them as an additional library for other libGDX developers. I’m very proud of the work our team produced, and I hope the shift in focus on Art and Sound comes across for those playing our game. It was an exhausting, humbling, stressful jam for me, but as always I’ve learned a ton and am even more ready to jump into our next projects.”


“So, the whole week leading up to Ludum Dare 34, I was filled with excitement! Excited to create something new! Excited to take a break from RCG’s personal 3D project and get back into designing 2D characters and environments again. In the days leading up to the Jam, I started playing around in Spriter 2D (an animation creation and management program that I had been wanting to learn since the last Ludum Dare), because I was looking forward to making a hack and slash. Spriter 2D would have been perfect for animating action frames, as one of its unique features is bone-rigging and attaching them body parts and objects. Spriter 2D was very productive; it saved me a lot of time with image file management, ease of exporting animated frames, and having a simpler, yet more extensive, animating options that were non-existent in Photoshop. It allowed me to focus more on content creation rather than spending a lot of time on filename and manual frames export, which can be tedious and time-consuming when you trying to create a smooth animation sequence.

As always, I wanted to challenge myself to a new art style every Jam. This time, it was watercoloring in Photoshop. I haven’t used watercolor paint since I was a wee-lad, and picking it back up again felt a bit strange, especially now that I am doing it digitally and my paint brush is my tablet pen. The hardest part in the beginning for me was getting the brush settings just right to give it that wet outer-edge water-effect look. Below is my custom brush settings that I used throughout the Jam (works best with a drawing tablet, as it emulates brush pressure and strokes). It was nice to use watercolor inside of photoshop without the mess to clean up afterwards”.



Thanks for reading, Thanks for playing,

–Barry, Roaring Cat Games


I’m In

Posted by
Tuesday, December 8th, 2015 2:26 pm

Looking forward to this, got no plans or distractions all weekend and Monday off work so I can work up to the deadline without worrying about sleep. I’m going to be using the following

  • Language: Java with the LibGDX framework
  • IDE: Eclipse
  • Art: Paint.NET, Gimp, Inkscape
  • Sound/Music: BFXR, OpenMPT, Guitar with Rocksmith Cable

Hoping for a good theme but I’m going to sketch out an idea for all the final ones to make sure I have something.

LD33 Post Mortem – How I spent my time

Thursday, September 3rd, 2015 3:00 pm

This time I tracked my time using ManicTime so I can present you this fancy table of how I spent my time:

Saturday Sunday Total
Programming 7,79 h 10,09 h 17,88 h
Sleep 3,31 h 4,11 h 7,42 h
Playtesting 1,47 h 3,53 h 5 h
Research 2,66 h 1,58 h 4,24 h
Music 2,09 h 0,92 h 3,01 h
Art 1,1 h 1,81 h 2,91 h
Physics Editors 2,88 h 0 h 2,88 h
Breaks 1,61 h 1,17 h 2,78 h
Brainstorming 1,09 h 0,18 h 1,27 h
Sounds 0 h 0,61 h 0,61 h

Friday is not on that list because for me Ludum Dare started at Saturday 3am. For simplicity I didn’t list Monday either, instead I just broke the 48 hours down into Saturday and Sunday. ManicTime tracks automatically which application has focus and I later assigned one of the above categories to those applications. I may have miss assigned some, so those numbers probably aren’t 100% accurate but close enough.

How it went down

For me the jam started at 3:00 am and I woke up at 3:45am and started right away. I brainstormed ideas for an hour and played the winners from the “You are the villain” Ludum Dare for inspiration. I decided to go with a physics heavy  approach. At one point I was thinking about naming the game QWOPzilla, so you you can see what my inspiration was.

I’ve never worked with any box2d physics editors, but thought that it would save me some time. So I went searching but it seems there are no decent free programs that can handle joints. There is R.U.B.E but that is not free and there is  box2d-editor but that can’t handle joints. Since I was working with LibGdx I had the option of using Tiled Map Editor in combination with Box2DMapObjectParser. But that turned out to be to uncomfortable to work with. In the end I build everything in code so I wasted almost 3 hours on the editors (plus some odd hour programming some useless stuff in). My experience with box2d is very limited so that wasn’t very efficient either, I had to look things up constantly (research category in the table above).

At the end of the first day the game was barley playable and I had started drawing some art and composing some music. But none of it was in the game. I wasn’t really satisfied with how far I had come but I was tired so I went to bed around midnight.

The next morning I implemented the art and began building the level. I was rested and could use the stuff I had build the day before so I had a motivational high as there seemed to be a lot of  progress.

At that point my idea for the game was that you could decide which monster you want to play. Either the monster on the unicycle (pretty much what the finished game is like), or you could play the audience which is throwing tomatoes and booing at the monster. I had the tomato throwing in the game but those made the game crash sometimes and I wasn’t able to track that bug down, even though I spent quite some time on it. That feature would have given my game more depth and more points in theme and probably graphics but in the end I had to cut it.

The result is a finished game and I think out of my LD entries this is the most fun one. Before the compo my main goal was to improve in the fun and overall categories and personally I think I succeeded. Also I wanted to compose the music myself instead of relying on generated music. I reached that goal too, so I can’t really complaint. But given that I had envisioned something else, it leaves behind a sad afterthought.

Play it and tell me what you think. I can’t wait to see what the ratings look like.

Lessons learned

Finishing a game still isn’t easy for me so I came up with the following lessons for myself. Hopefully I will heed them and handle my time more wisely next Ludum Dare.

  • Avoid tools you are unfamiliar with.
  • Kill features that turn out to be time sinks early. Think of a simpler alternative instead. I’m sure the tomatoes would have made it into the game if I had taken an alternative route.
  • Do your homework. Decide beforehand what tools and libraries you want to use and familiarise yourself with them.
  • Don’t be afraid to fake it. For example instead of implementing proper collision detection I limited the jump with a simple timer. To my knowledge no one noticed. And having an imperfectly implemented feature is often better than not having the feature at all.


Posted by
Saturday, August 22nd, 2015 4:13 am

So big, scary, evil monsters are boring. What about cute monsters? I vowed to myself that I must make a game involving a cute monster and demanded that others take part:

Perhaps not a fantasy monster either. Something many people view as a monster, but is actually quite cute!

A shark! That’ll show those evil monster folk how it’s done! So my game is about a hungry shark, hence the name, Same no Kuufuku!

It’s 4am Central Daylight Time, 8 hours into the jam, and I have basic movement, framebuffer low-res rendering, and collisions down. I’m targeting a resolution of 320×240 statically, which will scale up based on chosen window size, with a default of 640×480. For the collision code, I implemented a few simple tests using the ScalaTest framework that ensures it resolves correctly. Ideally these tests should ensure I don’t run into stupid collision issues at the last minute during gameplay testing. However, …

So uh, we’ll see if that turns out to be useful.

I’m in and I’ve a new site

Monday, August 17th, 2015 4:01 am

I’m in for LD33. This will be my 4th time and I’ll be using LibGdx again because it’s awesome.

In preparation I’ve compiled a new website with all my past Ludum Dare entries and possible future blog posts and games. Tell me what you think:

My miniLD59 entry

Posted by
Sunday, May 24th, 2015 10:44 am

So, the game i’m planning to post on mini-LD59 is almost ready… EXCEPT IT ISNT, it’s my first LD entry, so i want to make a really nice game, with all my love and passion, but bugs keep appearing, and the more i fix, more show up, like an Hidra. I’m developing in Java with LibGDX and Box2D, but the major problem is that the screen keeps flickering after a certain time, and its really annoying to play the game with that flick, well, it only starts after 2 our 3 days in-game (wich is a couple minutes). i tried to implement lighting too with box2dlights, but it only gave me headaches, i’m really newbie in game developing, but my dream is work at Blizzard, so i have to keep practicing and never give up. Here are some screenshots of the game. its all done. i just have to figure out how to end with these flickering.
Also: english is not my native language, so i apologize for grammar mistakes

View post on

Yeah, the menu is crap, i’m not good at art

View post on

There is this “no-enemy” area where you can buy upgrades to your character

View post on

I’ve only made some minor changes on the spritesheet, only made a fireball, and a ice flake, and improved the tiles a bit with TileStudio.

View post on

I’m here, like it or not

Tuesday, April 14th, 2015 2:13 pm

This will be my third Ludum Dare.

I entered the previous two as ElectricSeagull, but I’m a bit tired of that name.

Since I’ve not done any kind of game development stuff since the last LD (that was a whole third of a year ago!?!) and I haven’t left myself any time to practice new tools, I’ll stick within my comfort zone, using Java, libGDX, Eclipse. I wanted to try out Phaser, but…

Nevertheless, inspired by the great key note speech, I want to push forward into some new areas for me and try and do one or more (or none) of the following:

  • hand drawn/painted graphics:
    Drawing and painting are things that I do, but hand drawn animation is way out of my comfort zone.
  • narrative:
    always something I ignore … but could be really interesting to explore
  • nice acoustic audio:
    I don’t play a musical instrument, but I can try some kind of sound effects
  • joining in, Twitter, the site blog, IRC, etc:
    I’m absolutely atrocious at social media (or anything at all social for that matter (I’m nice really, just shy, don’t hate me!))
  • not using Box2d:
    It’s a great physics engine and it worked really well for my last game, but I don’t want to rely on it for some simple collision system I should write myself.

That’s about it, thankfully. Good luck everybody and god willing a good theme.

Here comes a new challenger!

Posted by
Monday, August 18th, 2014 8:25 pm

I have nothing better to do this weekend, the whole compo thing is quite encouraging and this would be my first LD so why not. I already have a couple of coding targets in mind far from finishing anything playable, but I’ll try to fit them into the theme.


Weapons of choice:

Libgdx + Artemis-odb + Overlap2D – based off previous works, check my github

Android Studio – Can’t beat Jetbrains at fast coding

MS Pain and GraphicsGale FreeEdition for graphics – errrrrr programmer graphics ahoy?



Windows (no happy about this one but I’ll make do)

Galaxy Tab 3

Xiaomi Mi2S



Pony placeholders

Swearing in Spanish

Too many pee breaks to count


I’ll try to setup live streaming, but don’t expect to get audio or anything.

My LD29 game is now on the Google Play Store

Posted by (twitter: @caranha)
Monday, May 5th, 2014 9:12 pm

I have recently made a small update to my game (post-compo). This update
fixes a bug on android related to putting the game in the background, and adds a much needed tutorial!
(Never underestimate how confusing your game can be, no matter how simple you make it)

Feel free to get it from this link.

And if you haven’t rated it yet, please play it from here.

My second game available to the public, all because of Ludum Dare. Love you guys :-)

Made a video introduction to my game + timelapse!

Posted by (twitter: @caranha)
Thursday, May 1st, 2014 8:00 am

This was a fun Ludum Dare. I think I really nailed the theme with my game, “Layers”. A few people were having difficulty playing the game, so I decided to make a video to give an introduction to it. I also tacked the timelapse at the end of the video:

Have fun!

Please play and leave a comment for layers. I am planning on making a video of some of my favorite entries in a week or two, once works lets up a bit.

Have fun!

Well! This is going better!

Posted by (twitter: @@UprightPath)
Sunday, April 27th, 2014 12:10 pm

I wasn’t certain if I would be in on this because of Graduate School stuff and other “fun”, but what I’ve got is going together better than I expected.


Information (Since I didn’t before. :3)

Platform: Java with libGDX


Sound: Random Generator and probably


Idea: Big surprise, it’s a dungeon delve/exploration platformer. Basically with the player attempting to collect all of the dragon idols beneath the surface (Hwa hwa hwa, I didn’t like this choice).

State: I’ve got the basic platforming functionality done including ladders (Static placed at the start) and ropes (placed by the player), fall damage, collisions and the like.



Unluckily, the area I’m in has been having high winds and it’s killing my sinuses/allergies.

Third pre-release! My game has everything but sound now :-)

Posted by (twitter: @caranha)
Sunday, April 27th, 2014 7:04 am

Welcome to Layers!


Layers is my long-desired QiX clone. I hope the relation with the theme is pretty obvious once you start playing. The game is basically feature-complete now, except for sound. The input method can use some work as well.

You can get the game here:

The game plays a little better on Touch surfaces than it does on PC, but it is quite playable in both platforms.

Please let me know what you think! 😀

[cache: storing page]