I have been set free from education, but not yet found employment or training. Which means I am now free to spend a week developing, uh, this!
I have explored many things this jam! First of all, I can now add images into a game and have them automatically turn into Box2D objects. This is a vast improvement over previous games where I’ve had to manually define the polygons, either in code or using box2d-editor, which crashes if you look at it funny (better editors are available if you spend money).
This is also more visually interesting than all, or most, of my previous games. It’s still a hodgepodge of free graphics that don’t belong together, but there’s much more life to it! The water wobbles about, affecting anything that swims inside, steam rises off of it, helicopters above sway and have a clouds effect applied.

Of course, this wouldn’t be possible without the libGDX Jam. Other jams exist, but… I don’t know, they’re not the same. So a big thanks to the hosts, and, as always, I await the review livestream!
A word on AI
Oh no, here we go again. So we’re at the point now where some people have what I term “AI fatigue”, as the novelty has long worn off. Substitute “AI” with “slop” if you prefer. I’ve been thinking about a discussion I had with Adrien, host of the Game Breaker’s Toolkit Jam, in July.
He’s right. The AI images (and videos) I see today are… alright, they’re still a mixed bag. Some are still those generic ChatGPT characters. But others can be really quite good! Except there’s still something subtly off about them. Features are often exaggerated, e.g. an elderly (or even middle-aged) person may have unrealistically deep wrinkles. This is often apparent even when viewed at thumbnail size, but frustratingly at such viewing conditions it is only a feeling and difficult to point out any actual evidence.
I’d be lying if I said I don’t feel similar about the libGDX Jam images in the Discord server’s announcement channel. They used to be cool, then come mid-2024 I guess the guy who did them no longer had the time. That’s speculation on my part. It gets the job done, but also, what are these characters? What is it supposed to convey? It doesn’t really come across as an attempt at absurdism or anything either.
Now, as far as code is concerned, I don’t really have an issue with it. Within reason, of course – if the entire game is written by AI then you’re doing yourself a disservice. And obviously if doing something where security plays a large role, think about it.
I understand certain jams disallowing AI-generated code, and platforms such as Steam and itch.io requiring disclosure for it, but without access to source code that is, in my opinion, impossible to police. Especially if any compiler optimisations, plus limits of the decompilation process, distort the original further. Which also means the user will be oblivious as to the extent of AI assistance programming-wise and not be subject to any uncanny valley effect.

Now, my bias here is that I have found Gemini to be very useful. In this game, the wobbly water, shaders, image to physics body conversion, and jigsaw generation were written by Gemini 3 Pro. I can’t tell what the difference is between it and 2.5 Pro. Other parts of the game were written with either a little AI assistance, like figuring out how to position things in Scene2D, or no AI.
The way I stay in control of this is very simple: don’t use “vibe coding” solutions. Anything that has access to the entire code base is not something I find appealing. Copying code back and forth between a website, however, is something that I am happy with. Or not even copying, if its answer is something trivial like “this sprite isn’t appearing because you aren’t drawing it.”
This approach may also disincentivise over-reliance on AI. We’ve all heard the study by now about AI use slowing developers down. If you’re working with something you are knowledgeable about, I absolutely believe it. But in the case of, say, creating a mesh to make the water wobble… I know from prior experience that this is something I find difficult to get working on my own. If it wasn’t for the AI, this feature would either be absent from my game, or I’d have stolen a solution from someone else. Which is probably what the AI does, to be fair, but it does so faster.

