Posts Tagged ‘GLFW’

Mr Head and the Journey of Discoveries completed

Posted by
Sunday, December 19th, 2010 1:55 pm

Mr Head and the Journey of Discoveries has been completed. See the entry page.

Windows binaries | Source | Low framerate Timelapse (spoiler warning)

Controls are Arrow Keys and X.

Made in 8 hours, and written in D and uses OpenGL, GLFW and FMod. Sound effects (the few there is) from sfxr.

There was supposed to be some voice “acting” in there, but my microphone was really, really bad, so you managed to escape that. Sadly also lacking music. Would have been great with some light music, I think.

Main sprite is technically an old asset, but to match the last Mr Head game it had to be identical (see Mr Head and the Cow Drowning). I believe my entry is within the spirit of the rules.

A Transportation Industry Game Finished

Posted by
Sunday, June 13th, 2010 4:03 pm

I actually managed to finish, though I doubted it quite a few times in the last seven hours. There’s almost no end to the list on how many things were cut and it’s unpolished to no end. But still, you can sort of play it and enjoy it.

You can view the submitted entry here.

Also, here’s a new screenshot (included with the entry), showing truck editing.


Looking forward to test all the other games.

Cave Ninja – Post Mortem and Stuff

Posted by
Saturday, September 5th, 2009 12:31 pm

The Good

Fun tech. Not only does some tech idea stuff you want to try out make it fun to actually program the entry, it can also makes the entry interesting. Or so I hope it did. There was two things I tried out: Destructible landscape rendered with marching squares and some sort of fluid simulation.

I’ve wanted to try out destructible terrain with marching squares for some time. Mostly when thinking about doing Blastup 3, though I’m probably more for doing pixel perfect (with alpha) stuff. But still, wanted to try this approach out. It worked pretty OK, though it requires more work to be anyway close perfect. As a note, the collisions just uses bilinear filtering of the nearby grid points and checks it against the threshold, so the marching square output is just for rendering here (which really simplified things).

The fluid simulation pretty much just happened. I had a world which was a grid of values of 0 to 1. There’s a lot you can do with that. I’ve thought about similar things for earlier LDs, for the theme flood, but that theme never won. Basically, it’s like those old water simulations where each pixel is a water particle, and it can either go down or to the sides if there’s room. I just had float values instead, so the whole of it didn’t have to move. Then marching squares on top. Anyway, the lava seems to be what people liked the most, so I’m glad I did it.

The actual game idea. With the destructible terrain etc, I sort of wanted a game in between Worms/Liero and Lemmings. Which I think is what I got. It’s lacking things though (see below). Overall, I think it’s a good game idea.

Once again used the D programming language, which was good and makes most things easy (except in one place where a thing I did in a loop became very slow, which cost me some time). Also used OpenGL, GLFW and Fmod. Stuff that works pretty well and that I’m used to.

The Bad

Time, time. Lack of time. Or too ambitious project, perhaps. I spent 4 hours away from the compo helping some people to move, but I’m not sure those 4 hours would have made a lot of difference. The time issue had most impact on the level design, I feel.

The level design started out sort of OK. I wanted to introduce every new element by itself in a single level, then start combining them and creating puzzles.

Well, to start with, not all elements that I wanted to introduce got introduced. There was only one weapon, there was only one enemy type. I had planned for more there. And I had planned some cool movement tools, like a jetpack (and if I really had had some extra time, a ninja rope).

Anyway, as it were, I did get the elements that existed introduced in the way I wanted (though some levels was a bit too long, making them annoying). But then suddenly I didn’t have time to introduce more elements, yet I didn’t have enough materials or ideas to make good puzzles. So that first lead to a platform/jump level.

Then there was the last level. It got too hard. A little too busy. Even its name gives it away, it was named: A little bit of everything. Basically it had become apparent that it would be the last I had time to do, so wanted it real, if you know what I mean. Nothing tutorially. As a base there was a single good puzzle. But after making it, there was lots of room left, so got another semi-puzzle, some jumping, some digging, and some kill things. Too much. But maybe it suited as being the last level. I can tell you, even I have had trouble completing it sometimes.

That’s not the only bad thing with the last level though. The last level’s win condition check is bugged. So you only actually need to reach the star to win. I realized this bug existed after having gone to bed after just submitting my entry. So I got up, “fixed” it, and re-uploaded (it was within the deadline, don’t worry). Only the next day I realized the check was still bugged. I had added the correct check, but I had also left in a call to the base class update function, which just checked the star. So that was a waste of time.

Graphics. They turned out rather bland and boring. And dark. Noticed today that even just making the game 50% brighter helped a lot. But I’m not good at creating good textures or animate stuff, so perhaps it’s OK given the time available.

The Other

Sounds. It’s thanks to sfxr that I got any sounds at all. All in all, it might have taken 15 minutes to get all the sounds in. It was a great improvement over no sounds, but beyond that it was lacking. In addition, it seems that the sounds cut out for quite a few people — I have no idea why.

Heads up

I really recommend maximize the window to get a look at the whole level (if your screen is big enough). It’ll look bad that the level just cuts off if you have too large a screen, but even then it’s well worth it.

There’s a skip level cheat — it’s pressing F1 and F11 at the same time (as in most of me entries with levels).

I used a bit of base code and some utility code for rendering, fonts, and sound. Not really a library, just some random stuff (it’s what’s available in stdf in the source folder of the package). This is probably bending the rules a little, but I hope you guys are OK with it. Absolutely not game code.

Also, it’s not like I came up with marching squares during the compo. I’ve written a few application using it earlier, and actually adapted some old code. Writing it completely new might have cost me extra 15 minutes or so but it seemed pointless. The idea is really quite simple: For each square in the grid, start making a polygon. Check one corner, if it is within the threshold, make a point. Check this corner against the next corner — if one is out and one is in, find the point in between. Then do the same for the three other corners and edges. And that’s it.


There were probably some other things worth mentioning too, but none that I can remember now. Think I’ve responded to most stuff that I’ve got comments on as well. Overall, people seems to have liked the game, so I’m pretty happy. It’s been a good LD.

Something of Doom Something Something Non-entry

Posted by
Sunday, April 19th, 2009 1:29 pm

Right, so I decided to post this as a non-entry. Reasons include laziness and stuff. Here’s my last progress shot re-used as the ‘final’ shot.

While ‘playing’, press keys 1-3 to build stuff:

  1. is a tree zapper, it gets you power for nearby trees. It costs 15 power.
  2. is a mini tower of darkness, it creates darkness nearby. It costs 30 power.
  3. is an attack tower, it shoots blobs of darkness at the poor butterflies. It costs 50 power.

To goal was supposed to be getting everything dark, sort of. There’s not actually any winning condition, but there’s not much other things either, so that’s all right then.

Don’t resize the window (don’t tell me I didn’t warn you).

Download Something of Doom Something Something (Windows binary, uses OpenGL, should work in wine).

Mr Spider and the Search for Evolutionary Powerups

Posted by
Sunday, January 11th, 2009 5:22 am

Here’s my entry. You control a spider that is in dire need of getting more legs. Sort of.

Windows 32-bit binary with D source

Collect all powerups to complete level. This will give you a time bonus.
If time runs out or if you fall outside the world, the level ends, but you are left with the score you got for any collected powerups.

Enter to start game.
Esc to quit (also at level over etc).
Left click/hold to set target. Speed based on distance.
Right click/hold to set target and jump.

You need to walk slowly to round edges.
You can only sort of jump away from the current surface you are on.

Some source was previously written, but only sort of texture loading, font rendering and some init code.

Uses GLFW, FModEx, sfxr and some other stuff.

Also, note that the title bar is a total lier. The game did not take 32h to make, but 40h. That math is tricky stuff.

(For the framework stuff, the score is read from and written to ‘score.txt’.)

The Tower of You

Posted by
Sunday, August 10th, 2008 3:03 pm

I’m finally finished with a version that both runs and could be classified as a game. So here it is. All important information is available in the game, really, if you just pay a bit of attention. I might include play information here later when I don’t need to sleep so much.

If you want another screenshot, here’s after having won.

The Tower of You, Windows binary download + D source.

Update after deadline: I’ve updated the above link to include zlib1.dll which was missing. The original package is still available.

Post-48h version of Col-4

Posted by
Friday, April 25th, 2008 7:22 am

I’ve made a few improvements to Col-4, so that now at least I think it’s fun.


Relevant changes are:
– Smaller playing area, but higher.. kind of
– Different speed scale
– Special block
– Now middle area swappable instead of the upper one
– Preview of next block

Download source and Windows binary. Extra clarification note and reminder: this is post-48h, and shouldn’t be used for the voting.

Col-4 Final

Posted by
Sunday, April 20th, 2008 1:14 pm

Here’s my 10 hours entry: Col-4. It’s based on Columns, with the biggest difference being that you can swap the upper part of the playing field. This isn’t really so useful, but it can serves as a few extra lives, or half-lives, rather.

I didn’t much like the theme in the end, and that was why I didn’t start on an entry until today (well, partly — I couldn’t come up with a fun idea). And even then, I did a minimal effort. For matching the theme, there’s lots of minimalism. Columns to begin with is a very minimal game. Then I added minimal innovation that had minimal usefulness. Improvement in fun over the original is extremely minimal (probably negative). Readme is pretty minimal too. Features in game are minimal. Graphics are minimal.


Line up three or more blocks in same color to get points and remove blocks. Left/Right/Down keys to move moving block. Space to drop it. Up to rotate colors. A/D to swap upper part. Esc to quit.

Windows binary and source. Compiling for GNU/Linux shouldn’t require more than a small effort, but I’m not sure it would be worth even that.

Mr Head and the Cow Drowning

Posted by
Sunday, February 24th, 2008 10:18 am

Mr Head and the Cow Drowning is now complete. Or as complete as it will get this weekend. I have many ideas on improvements, but they must, alas, wait. But I’m getting ahead of myself.

As said earlier, the game is about drowning cows to prevent them from dying. Granted, they die anyway, but in a much more nice way, and outside the screen, mostly. Anyway, to drown cows, you must use key 1-5 to select which slot is currently bouncy, which will make any cows falling there to bounce out into the water. If you fail to catch a cow, you lose a life, but if you catch two in a row, you gain a life. You can have ten lives, and if they run out, the game is over.


During the game, Mr Head will observe and give you points and make announcements. He’s the mastermind behind everything, but exactly how is not certain. Do use his combo scheme to get many, many points. I’ve gotten 22 million as best so far. There’s no highscore in this version, but maybe I can add one later.

So, except for what has been told here, and what can be seen, there’s also a fancy intro, and mighty fine sound effects.

You probably want to download Mr Head and the Cow Drowning. Binary and source are included, the binary is for Windows, but with the right libraries and some changes to the makefile, you’ll be alright on other platforms too. Hopefully.

Also, make sure you don’t miss the Banana Ship text adventure non-entry, also made during this warmup.

Evening Journey – LD10 non-entry

Posted by
Sunday, December 16th, 2007 3:37 pm

Right. Didn’t get any game done this time, but I give you a fabulous non-entry called Evening Journey.


Download Evening Journey. It’s for Windows and comes with source.

How to ‘play’
Get ship (red beacon) to the jump gate (strip of green/yellow dots). You can add a thrust with right mouse button. There’s a time line at the bottom where you can select what state to do an action in (only action is the thrust). There’s infinite random levels.

What would have existed
A challenge.
More kinds of actions.
Actions limited by pickups.
Increasing difficulty on levels.
Levels connected so you can go back to previous level and get different pickups.

Stay tuned for post mortem tomorrow.

Moon terraform pong

Posted by
Monday, December 3rd, 2007 6:44 am

Moon terraform pong was a rather half-hearted entry for the LD 8.5 warm-up compo, with the themes Moon and Anti-text. It was an experimental entry, as it was my first using the D programming language. I don’t think I spent much more than an afternoon on it.

In the game you terraform the moon by playing pong using it. Get past the opponent paddle and you gain a bit of terraforming, if it gets past your paddle it loses a bit of terraforming. Also, when blocking successfully, speed is increased and size reduced, increasing the difficulty. Granted, it starts so terribly easy it’s only be the end of the game it plays at a decent difficulty, but hey, the moon really is rather big.


The game doesn’t feature any text, but an image at the ‘title’ screen really explains it well enough. Click to start, move mouse to move paddle. Easy.

You can download Moon terraform pong. It’s for Windows and requires OpenGL.

Ultra Fleet

Posted by
Sunday, December 2nd, 2007 6:48 am

Ultra Fleet was my entry to the LD8 Swarms compo. For a bit of background information on it, please read about The Hat Swarm Attack on Dance Islands.

Set in space, you controlled a fleet of virus ships that could convert enemy ships. Fleets of enemy ships kept on attacking, and you needed to keep your fleet alive so you could go on fighting, gaining points while doing so.


The game was, if anything, more pretty than fun, but it really was playable once you got into it. Although you probably got bored within an hour or so. Don’t know how it placed, but it received OK scoring, and also got praise such as ‘The game I’m supposed to be reviewing is more like a screensaver’, ‘I liked Hat Swarm better, though’, ‘Without a doubt, Hat Swarm is WAY better’, ‘I honestly would have given the hat swarm a higher score though.’ But seriously, some people (including me!) actually seemed to like it.

You can get the Ultra Fleet compo version. It requires OpenGL and is for Windows, but I’ve been able to compile it for Linux, although I have no idea where that port went, but it should be pretty easy if you want to try yourself.

The Hat Swarm Attack on Dance Islands

Posted by
Sunday, December 2nd, 2007 6:20 am

The Hat Swarm Attack on Dance Islands is a game made within 14h for the LD8 Swarms compo. However, it was never really entered into the compo, because I felt it wasn’t quite enough, but also couldn’t figure out how to make something more of it. In the end, I abandoned it, and instead used it as a base for Ultra Fleet, which I did enter. This might not have been the best of decisions, but no matter.

You navigated your hat swarm around islands to destroy dancers that tried to defend the islands, while at the same time trying to avoid the deadly dances that was danced at you.


The Hat Swarm Attack on Dance Islands prime features was an intro, an island generator (that I later used as a base for rather prettier islands), the famous Hoids algorithm that simulates hats in groups flocking behaviour (later adopted for the fleets in Ultra Fleet), stick figures, and a lot of dancing. Strangely, it was also my very first LD game (together with Ultra Fleet) that didn’t use tiles.

There’s no dedicated distribution for The Hat Swarm Attack on Dance Islands, but you can get it as the bonus in the Ultra Fleet compo version. It’s for Windows, but if you’re a bit clever, you can probably compile it for Linux. It requires OpenGL with 512×512 sized textures support.

The People

Posted by
Saturday, December 1st, 2007 9:04 am

The People was written for the Growth theme, and in many ways it resembles my first two LD games—there’s the tiled world, and you can build things on it. Only in this case it looks more fancy due to some clever tile rendering. Like my two first LD games, it’s a puzzle game.

There’s seven levels of varying difficulty, with goals such as ‘reach a population of X’ or ‘get Y huts’, a sandbox mode, and a tutorial mode. While you build stuff, a simulation is going on where new people appear and so on. A good description of what you actually do is, as someone put it, playing a planetary engineer.


My ‘post mortem’ for the game was pretty much the following:

So how did the game turn out? Good, and bad. My first idea was a kind of God game where you created land and such and people appeared. And there was supposed to be a kind of currency, that I called belief. So I coded the tile system and the simulation first, then I started to try to get it into a game. Well, it didn’t work, or at least it didn’t work without very much job, so I dropped it (the game idea, not the simulation and that). So I figured out another game: You have a limited supply of different kinds of land, and you have objectives to complete. Then there’s supposed to be interesting levels that are fun and challenging. I fixed up a tutorial mode, and a sandbox mode. These are pretty cool. Then there was the levels. I managed to come up with a few OK ones, but then it went downhill. So I ended with 7 levels, of which some are OK. Most are pretty easy, you just have to wait a while. I’m not very happy about them. But on the whole, the game’s pretty OK.

If you’re to believe the unofficial results from my own vote counter, The People did indeed turn out OK, and placed first in ‘fun’ and second in ‘innovation’ and ‘production’.

You can get the Windows compo version, or the Linux port version. They require OpenGL with multitexture support.


Posted by
Saturday, December 1st, 2007 5:51 am

Uplighter was my entry for the Light & Darkness theme. It was a puzzle game centered on lighting up levels to certain percent by, among other things, placing lights, breaking down walls, and removing light sinks.

It’s was my first entry to feature 3D, although all gameplay and lighting is really in 2D, and it was also my first entry to not use Allegro. Instead it used GLFW, which is more lightweight, and I really didn’t need all the extra stuff from Allegro.


Uplighter is probably my best and most innovative LD entry so far—it placed first in ‘innovation’, second in ‘fun’, and also won the ‘Best In Show’ award.

You can get the compo version of Uplighter. It’s for Windows, but there’s a shell script (kindly provided by alar_k after the compo) that will fix stuff so it will compile for linux. You’ll need GLFW, GLFT, FMod and FreeType2.

Small notice: After the compo, it was reported to run very slowly on 3.0+ GHz machines. I’m still not sure what that was all about, but it has been reported that this can be fixed by compiling it in VS. If this is still much of a problem, I might get around to fix it myself.

[cache: storing page]