Recent community posts
piotr-j, AKA EvilEntity, is working on a graphical editor for gdx-ai behavior trees. It's still a work in progress though, so don't expect too much.
However, I don't think that such an editor is crucial due to the power and simplicity of the DSL. Especially, gdx-ai-1.7.1-SNAPSHOT adds internal subtree references, guards, and dynamic guard selectors that allow you to write complex trees while keeping them pretty human-readable. Here is a sample tree. Unfortunately, the documentation for these new features is still missing, but I'm going to write it soon.
your game looks really interesting.
I just wonder why you used JBT instead of gdx-ai behavior trees.
Don't get me wrong, JBT is nice but from my experience you might encounter some major issues with libgdx due to JBT's multi-threading nature.
For instance, unlike gdx-ai, JBT parallel nodes are executed in their own thread. So, if you don't take special care, you might get unexpected exceptions since the entire libgdx API is not thread-safe.
Have you experienced something like that?
sorry to say that we gave up on jamming for various reasons, the main one being that I've quitted smoking right after the jam started and this killed all my enthusiasm :(
Anyways, 21 days without smoking... this is my personal success so far :)
jsjolund just recorded a short video showing a li'l intro screen and the step 1 described above.
The red/green line will become a spaceship. The white line will be a trail of asteroids the player will have to navigate through.
As you can see, there's still nothing playable in it, but this should give you at least a vague idea :)
Step 1: Following the tail of the comet
The very first step to breathe life into our game is to generate the tail of the comet, i.e. the path the hero has to follow.
To do this we have to simulate an endless random spline and make the camera follow the spline at constant speed.
We used a Catmull-Rom spline for that. While traversing the spline, each time you reach a control point you advance the spline by removing the first point and adding a new one at the other end. This new random point is generated by adding random components x,y,z to the last point of the spline. It's a simple and effective process.
davebaol and jsjolund here, under the name of Jam4Fun Team. :)
Unfortunately we are moving rather slowly since we both are pretty busy with real life these days.
So we decided to keep the game simple and try to make it cool.
Basically it's the typical endless run game, but you have to fly of course .
Here's the game's plot:
Thankfully it has been a long period of peace in the universe and life is thriving everywhere.
However a huge fearsome comet, known as The Big Mower, is destroying every life form along its winding path across the universe.
Your mission, as the hero of this story, is to follow the tail of the comet at the maximum speed, avoiding obstacles and restoring as much life as you can before it's too late to do so.
It is a desperate run, a necessary sacrifice...
May the force be with you!!!
I'm davebaol, enthusiastic contributor of the libGDX project and author of the gdx-ai extension (BTW you should seriously take it into consideration, if you plan to create intelligent agents in your game).
I've started programming when I was 11 on the good old Commodore 64 way back in '82 (yeah I'm getting old, I'm over-40 now). I loved C64 assembler and learned to love all programming related stuff, even that fu**ing COBOL lol.
I love hacking too. It's a great challenge that some years ago led me to hack the OS of the Wii console with some well known developers on the Wii scene. The result of this collaboration is the d2x cIOS, written in C and ARM assembler.
In the last few years I'm spending my spare time mainly working on open source Java projects orbiting around libGDX. The most recent one is GdxDemo3D by jsjolund (and me) that, among the other things, demonstrates several AI techniques powered by gdx-ai, such as navmesh pathfinding, steering behaviors, state machines, behavior trees and more.
jsjolund will be joining me in my first jam. Let's see what we'll be able to do.
Good luck to everyone, have fun!!!