Archive for September, 2009
Adding an overall game flow loop
In playing through people’s entries I found a lot of them just jump straight into the game and stop when you win or lose. This is a post intended to inform anyone who doesn’t know how, about a quick and dirty way to create a simple ‘start screen’ -> ‘game’ -> ‘end’ -> ‘reset’ loop in thier game. I’ve no idea if there is a more ‘proper’ way to do this, but this is quick, dirty, and works. There may be some differences depending on how your game is structured, but you can fit the idea to most.
CaveBounce 1.1 and postmortem
Made by myself, Matthew Hyndman.
I present: Cave Bounce version 1.1 (Windows executable, 1.8MB)
The premise is simple: there are two superimposed caves on top of each other, and you can change which is active at any given time. By doing so you must navigate through puzzles, collect coins, and dodge missiles.
A pretty screenshot: (the player just died and was reset to the start of the level point, hence the seemingly floating)

Changes include:
-drawing the thin outline of the back layer in front of the frontmost layer, so you have an idea of the shape of the back layer.
-a color indication (light/dark green) of whetehr or not the player is currently able to change layers.
-Several minor changes, including slight tweaking of missile speeds and such; they’re still roughly the same, but they are a little slower/turrets fire a bit less often.
-A subtle gradient background (before it was solid black)
-More levels! I scrapped and redesigned some of the ‘boring’ older levels, and added more new exciting levels, some of which are puzzle only and some of which are missile oriented. There are now 25 levels to the old 20. Some of the coin locations are now more realisticly obtainable (the staircase screen should be doable for 100% coins now), and there are some new difficult to obtain coins.
-Before, as long as the centre of the player was not a wall on the back layer you can switch, which caused curious half of the player is in a wall situations. I added in a quick feature so that if this is the case, the player should be popped a little bit over to be out of the wall.
-I added some more HUD ocunter stuffs: you now see the FPS and how far you have progressed. seeing that you are on screen 22/25 is more motivation to finish than just knowing that you’re 20 some out of who knows how many
-When the player dies, he is reset to the start of teh screen. Before this did not change the layer, so it could potentially stick him in a wall, so it now also reverts the active layer to the layer of incoming.
-I reduced the number of particles somewhat so things will run a bit faster (not a lot), while still looking the same.
-
-
Postmortem stuff: (After Death?)
Woo! This was my first LD ever, and I loved it, came out great. I’ve entered another 48 hour comp before, but I was less experienced and more or less failed at that one. ( We made a game, it just wasn’t very deep)
The good:
no big problems, I had a fairly cool idea and it all seemed to flow.
Missiles and coins were both last minute additions, and yet the game would’ve been pretty boring without them. I’m quite glad they ended up there.
I made a game. in 48 hours. that is fun to play. I’m happy.
The bad:
No music or sound effects. They are, at the moment, somethign that I do not do. Sorry all.
I overused particles a bit, and so it runs slowly on weaker machines. this slowness can cause bugs like skipping through walls in extreme cases.
the art really wasn’t great (the player is a circle), although it did end up being fairly stylish.
Map design was somewhat rushed, and so wasn’t great (although it’s still good)
Difficulty level is a bit high and intimidates some. Unfortunately for them, I like action games as well as puzzlers, so this is likely still the case. Fear not, it is all quite doable, and there are several screens that are missile free.
Summary:
I had fun and am looking forward to future LDs
A Post-Compo Revisit of Byte Vs GNOME
Edit: I’ve gotten the GoogleCode page up!
I’ve decided to keep working on Byte Vs. GNOME.
I’ve recieved some encouraging comments, and feel that it could become something really nice with some polish.
I’ve got the following planned:
- Actually making the random world generator
- Multiple weapons, including a machine gun and a rocket launcher
- Multiple types of enemy, including bosses
- Activators including doors, retractable bridges, and switches
- The game-type bits that were missing from the compo version, like a health bar and a score counter
- User-configured key bindings
- And perhaps even more as it evolves
I’m currently tearing my code apart to allow it to be extended. This is the most troublesome part, after which Good Things can happen.
I’ll be making a GoogleCode page. Once it has gotten reasonably nice, I will likely make a SourceForge page.
Here’s to having a good idea in a crucible, and then refining it into a jewel.
—Mr. Dude
Adrift: Post-compo version
I haven’t fixed the help yet, but I have added another control scheme, improved the ship-to-ship combat, and (in my opinion) improved the graphics.
Windows zipped folder with .exe and all required .dlls here: http://jerryfederspiel.org/exes/PostCompoAdrift.zip
LD15 Voting – One Week to Go!
Voting is going well, but we can always use more. We’ve hit the 1 week mark now, which means there’s one more go. So if you haven’t already, make some time this week to check out some of the games.
http://www.ludumdare.com/compo/ludum-dare-15/
Results will go live shortly after the deadline.
Coming up this weekended, hot on (in?) the heels of Ludum Dare 15, it’s MiniLD #12 hosted by GirlFlash. So if you’re looking to get some more practice in, or keep the good LD vibes going, tune in. For more information, see the announcement post.
http://www.ludumdare.com/…/september-mini-ld/
Something of interest, we did a user survey over the past week. We polled 100 people and the results are now live. You can check them out to learn all about your fellow LD folk, colorful graphs and all.
http://www.ludumdare.com/…/ludum-dare-demographics-survey-results/
That’s it for now.
Suggestions
If you have any suggestions for the compo, post them in the comments here:
http://www.ludumdare.com/…/suggestion-post/
Thanks everyone for helping make Ludum Dare 15 such a big deal.
- Mike Kasprzak (aka PoV)
PS: Prior post here.
Blind Date Micro-LD
A few of us in IRC did a Micro-LD to test out the blind date concept – each participant makes a set of graphics, and then gets assigned someone else’s set to use to make a game.
Myself, Edwardoka, fydo, Almost, and MrDude did graphics. Fydo didn’t start on a game, and Edwardoka and I gave up – that leaves two (very good) entries:
FLUTTER by Almost (MrDude’s graphics): http://filesmelt.com/downloader/FLUTTER.zip
Space Dodger by MrDude (fydo’s graphics): http://pycron-ld48.googlecode.com/files/Space-Dodger.zip
Just thought I’d give a shout-out
Shafted! v0.3
Sunday, September 6th, 2009 12:37 pmI have yet another version of Shafted! with the following changes
1) Increased deceleration when parachute is open
2) The game now keeps track of your high score
3) Fixed collision problems while running on platforms
4) Bats now fly properly in Mac version!
Get it for Windows here
Get it for Mac here
Windows Version is In!
Many thanks to mjau for porting my entry to Windows!
So far, it’s only been tested with WINE, but it should work okay.
Sorry it’s so late, but my source link was broken, and I was absent for a while, so I didn’t find out until a couple days ago. ^_^;
Still, it’s there now! Yay!
Preparing for Mini-LD 12
I know it’s just under a week away, but I’ve got some ideas for my Mini-LD 12 game.
First of all, I’m going to use another programming language I’m unfamiliar with. It’s a fun challenge. This time, I’ll be using Ruby.
I’ve used it before, but not often, even though I really enjoy it. This gives me a chance to really get familiar with it.
My library of choice here is Ruby/SDL. I’ll fiddle with gosu/RubyGame at a later time.
Also, I will be using nothing but my netbook for development. I want to see how it fares with development, and Ruby is a good starting point for that.
As far as genre goes, I’m thinking about making a tile-based side-scroller. Something akin to the shareware of yesteryear.
I want to use an 8-bit pallette to give the game that classic shareware look.
I will also be using SFXR (Like most of us, I suppose) for sounds.
I’m not sure about music. I don’t think I’ll really have time, but we’ll see.
I may need a Windows port again, but I’m not completely sure how to convert a Ruby application into a native executable.
I’m looking forward to this one.
—Mr. Dude
Cave Dangerous Post-Mortem
Saturday, September 5th, 2009 7:21 pmI figured now that I’m done rating everyone’s game, I’d sit down and write up a little post-mortem for my game, Cave Dangerous. Cave Dangerous is a fun little exploratory platformer with a minimalist inventory system. I had lots of fun creating it for the Ludum Dare 15 competition.
The good
- I actually finished this time! The last Ludum Dare I was in (Roads), I did not finish due to some unfamiliarity with AS3, among other issues and time constraints. So, yay for finishing!
- Even though I did suffer through a short internet outage, I managed to make good use of that offline time to work on some pixel sprites for the game, which really helped to set the artistic “vision” for Cave Dangerous.
- First time using Visual Studio in a compo, and it was quite enjoyable. Well, except for some major deployment issues (see below)
The Bad
- Originally planned to do something in 3D, but was feeling uninspired facing the modeller. Also, a quick test revealed my .obj loader was (again) not working correctly. So, scrapped that idea.
- As with every platformer I’ve made for a compo, I spent too much time tweaking / fixing the jumping and collision code. I think in the future, I’ll see about preparing some basic tile-based collision code ahead of time so I can focus more on the actual game.
- This was my first time trying Visual Studio with a compo entry, and it was very enjoyable up until I had to package it up to release it. I ended up almost pulling my hair out in frustration (why do I have to package a C++ redistributable? argh!). A website that I found (here: http://llbit.se/?p=19) explains pretty much exactly what happened to me. I ended up using mingw32 to compile the exe, which worked perfectly. Sheesh.
- Didn’t have enough time to add an explosion sound effect for the bomb. Apparently this is what most people complained about (aside from the length of the game) judging by the comments I got from the ratings.
As another “behind the scenes look”, here are some pics of the miner before I settled on the final image:
Updated version of Cavern Chase for those who wanted to see more :)
This has more content. I couldn’t really think of more stuff to add, but it should be more interesting for those who thought it needed a bit more variety.
If you play and start to wonder “where did that background go?” Not a bug. Took it out because it was UGLEH.
*1.2p = 1.2 post LD
Source Download Link Fixed
It’s a little late in the game, but I’ve fixed my source download.
This should help my case a bit in getting a Windows port.
Cave Ninja – Post Mortem and Stuff
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.
Outro
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.
Some food that i’m eating.
Because it never occured to me that I should do foodpics during LD48 itself(too busy coding!), here’s one.

I dub it the tower of meat – It is very tasty.
That is, some fried burgers with chips and a healthy lashing of ketchup.
Caverns of Light Walkthrough
See, it’s not so hard…
Löve, You failed me
Hi,
I found out, that my game is not working on some computers. Grr.
After some tests I finally managed to reproduce it on my own computer and found out, that Löve is shipping without Microsoft.VC80.CRT .
If you look at the love.exe file, you’ll find, that the manifest describing dependencies explicitly lists this file.

So it’s nice from the Löve developers to ship msvcp80.dll and msvcr80.dll, but without the Microsoft.VC80.CRT is kind of pointless, because they won’t be find on computers that don’t have Visual Studio Redistribution Package installed.
I already filed a bug in the Löve bug tracker and added the file to my game. So if you couldn’t start it, you can now try again.
I assume it applies to all games that used Löve – so this is a nice standalone solution, that doesn’t force users to install VS redistributables.
Eternal Seeker Post Mortem and Post Compo Version
It’s been a while since I wrote one of these. Yet, I’m sure Eternal Seeker deserves it. So, I’m releasing a post-competition version of it along with this post; behold Eternal Seeker: Adagio for the Caverns of Doom!

New Additions:
-Quite different play styles for different classes (Assassin has a chance to assassinate, Barbarian is more resilient, Commander begins with a set of magical items, Dreamer is immune to traps)
-Potions: You can find and drink them
-Monsters: There are new monsters now
-Items: Added over 200 items; including a unique magical armor.
-Descriptions: There are new area descriptions
Download:
http://trialofnight.googlepages.com/EternalSeekerAdagio.zip
Now for the post mortem itself:
What I Wanted and Accomplished:
I wanted to make a roguelike resembling Incursion, which features zombies who are able to cast spells. Knowing there had to be funny bugs, I gave every monster the ability to throw knives, and deliberately made sure they would sometimes get struck into each other (by partially restricting some of their movement abilities). The game, in the end, turned out to be quite fun; it’s always nice to get attention.
Where I Failed:
I wanted there to be NPC’s you can talk to, and some fixed city areas. However, time was scarce and I had things to do; some of these features I had to dismiss. However, I believe if I added these features, the game wouldn’t be as good.
How Should I Improve:
It’s the design that can turn a potentially bad game into a good one. Creativity is what matters most; and it is creativity I need to, somehow, learn. Well, I’m not sure if that’s easy to learn…
Why I Don’t Have a Windows Port
No, it’s not some kind of Linxu elitist thing.
I’ve been feeling very ill the past few days. I apologize to anyone who wanted to play my game but couldn’t. I’m really sorry.
I seem to have come down with some sort of flu. I’ll be okay in a few days, I think, though.
I would really love it if a generous person could create a Windows build.
I’m sorry, but you’d have to set up the compile yourself. I used Code::Blocks, and didn’t have time to write a Makefile.
I still had a great time, and I’ll be here again next month, ready to try again!
—Mr. Dude
LD15 post post
Hello, I’m sorry for not writing more or getting on IRC during this LD.
Problems: Halfway through I got some bad news from a friend that took my attention for at least 12 hours and sapped my motivation once I did get back to finishing the game. I didn’t even try to name the game. There were other forces working against me during the compo. One was the unrelenting fury of the sun. A heatwave struck san diego with the start of the compo, and I was rarely in air conditioning. I did my best work under trees in breezy parks. I was also without my mouse during the compo, something especially useful in the game maker development environment, even more so as this was my second GM game and I was learning new tricks.
Concept: When I saw ‘caverns’ it only took a few minutes before I was thinking down the rabbit hole from alice in wonderland. I remembered the scene (from the disney version) where she eats to grow big and drinks to shrink. I had the concept of using size altering items with cavernous environments to create situations that could be easy, difficult, or impossible depending on your size. I remembered how mario also grows by eating mushrooms, and so a mario-alice hybrid was born.
Didn’t get to: NPC’s to push a story: The characters and story would have come easily, simply by mixing elements from super mario bros and alice in wonderland. A grappling hook to swing over obstacles. Flame jets, pools of lava, more ice, button switches, and assisting NPC’s through rooms. Multiplayer co-op mode which would open access to new areas, the players would be able to stack.
Bugs: Any size larger than default will have to jump to clear the crest of a slope. Eating two mushrooms simultaneously causes player to embed in floor. Other occasional oddities. For these reasons, I included cheats, F to shrink (Fan), G to grow, R to restart. I was considering making F to shrink an item to obtain, this is based on elements from the original version of alice in wonderland (Lewis Carroll). However, it is possible to pass all levels without the use of cheats.
I’ve started playing the entries, good job everyone, impressive games. Thanks for playing.
LD15 post compo coming along!
I’ve been working steadily on the post-compo of my LD15 entry, since it wasn’t a complete game, and I felt I hadn’t done the idea the justice it deserved. Here’s is the post-compo as of now with improvements such as better graphics and a quickly composed background loop. I plan to add combat and many other things outlined on my blog post here, if all goes well with development of the game.



