LD21 August 19–22, 2011

Where we write stuff no one reads

I always wonder who reads these posts, there are so many and they keep coming in so I guess we might as well focus on the games..

However, I do feel that granted the premission I have a few things to write about Ludum Dare  21, My first LD was 20.
Unlike my first LD, this time I only completed nearly 20% of the features.
This Theme was actually one I wanted long before the LD21 and I ended up coming here unprepared to make an exquisite submission.

I spent the entire first day on perfecting the first feature that hardly affects gameplay(random maze) and only using one sample so the player doesn’t benefit from the variety of having a fresh new maze each time we play.

The game I wanted to create, a rougelike inspired shmup,  (Think Metroidvania meats Powder)where you play as a space traveller caught in a massive (not so) abandoned  space station looking for some spare parts to fix his rig and save some bucks.

Requires improvement:

The game was suppose to introduce the story to the player in game amongst other things, like powerups, enemies, bosses and traps, this feature will only be in a future version.

The good:

I learned something I should have known by now.
How to blit fast in AS3 which I never tried before.(I actually used shapes)
This was very refreshing and got me highly excited near the last hours.

What I learned:

I really should focus on making gameplay elements first.
Making and playing with the actual player experience is far more important than the technical aspects, cause if the game ends up not finished, I would like to think that people enjoyed my submission.
Otherwise it would be a technical demo competition and not a game making event correct.

Anyhow I’m sure tomorrow I’ll play all the great games and enjoy and start getting some code ready for the next LD.

Thanks for reading.

Comments

Petzi
22. Aug 2011 · 16:16 UTC
You were wondering who would read your post, well I happened to stumble upon it and did read it. I was also tempted to go for a maze-generator, as it would give the player lots of variety and replay value while taking away the player’s ability to learn the stage. Fortunately, through another project I’m working on I discovered that generation is often a huge pain to make, so after a bit of pondering I realized that it was a terrible idea. Even if the game had an infinity of levels, people usually don’t play Ludum Dare submissions more than once or twice.
vandriver
22. Aug 2011 · 16:42 UTC
A lot of us read these!
22. Aug 2011 · 16:56 UTC
If you’ve done randomly generated levels before, it doesn’t take too long as my LD entry has randomly generated levels. =] I usually take my further after the compo so I’m not too worried about people not playing through it enough.
22. Aug 2011 · 16:56 UTC
Heaps of people read these posts. I read a fair chuck as they scroll past, but rarely comment on them. It’s especially interesting seeing the postmortems – especially the things that almost everybody does wrong, repeatedly, even though we all know we should avoid them!
22. Aug 2011 · 17:32 UTC
Whenever I visit the site I skim through every single post on the front page, but I almost never bother commenting on them anyway, so don’t feel down if you think nobody’s reading..

Postmortem

Hi,

It’s a day after my first LD.

Unfortunately I didn’t have too much time for coding and game doesn’t looks as good as I want, but the first pancake is always spoiled 😉

I was writing in technologies which I never used before. I’ve chosen flash to be able to create web version of game. To make it simpler I used FlashPunk and Box2D (with box2fp as a wrapper).

I don’t have graphic talents but I was trying to create something better than classic programmer art in GIMP (with Bamboo tablet) and of course Paint :)

It’s also my first game in which I generated sounds by myself, but when you use Bfxr it can’t be difficult.

In general it’s possible to finish this game. Just remember a few things: sometimes you need to move back, it’s impossible to destroy TVs and grenades doesn’t hurt you.

Yes, I know, my English is terrible so maybe more visual rest of the text could be better.

Photo taken before start:

You can see here my desk, Lech Poznan match, yerba mate, two energy drinks, some other not important stuff and of course pierogi!

History of creating:

Theme announcement – 4AM here:

Start coding after night:

…

real life :(
…

First prototype:

Graphical corrections:

…

sleeping, bowling and party time %)

…

And final version without any significant progress since last day:

 

Thanks and congrats to all that participated in this LD.

Maskl

Tags: postmortem

Post mortem of sorts…

So… the day after. I spent some time playing my oh not so great yet almost promising game and found out I made it tooo hard :) It really needs few fixes and tweaks, especially island generation, I’ve fixed most of the stuff even before submitting, but I forgot about the grass which plays vital role in successfully escaping from the island. So I’m considering doing some kinda “enhanced” edition with some more stuff.

Looking back, the biggest problems were:

not getting motivated enough, didn’t like theme and couldn’t think out anything really good… It was better second day because it seemed that I might have a chance to finish it in some sort of playable version.

having too much ambitions instead of sticking with something much simpler, but which would be more playable.

and doing everything from scratch just with openGL via OpenTK – I lost few hours doing stupid things like something resembling GUI (btw coded so ugly my head hurts even now), on the other hand, I took the whole competion more as experiment (my first Ludum Dare, although I participated in global game jam).

And too bad I just hadn’t time to make some sounds :/ I started to implement them about hour before the submission hour and realized I never worked with openAL and that there’s no way I could even play some simple wav without looking through some tutorial. Too bad, since I’ve bough a microphone to record some screams and other sounds just for the Ludum Dare :)

 

 

 

Crap – I didn’t write anything!

So, I didn’t write about anything in my journal. To be honest I didn’t have time! I was too busy making that damn game! HAHA. But maybe I can write something now. Mainly about what I have learnt in this contest.

Time: Well, I kind of didn’t learn anything here. I like everyone wildly overestimated what i can get done in 48 hours. I spent ~26 hours. But I am always over-estinating time. At work especially where I’m making games daily, I still think – “a week, sure, no problem”… Then I get bitten by time for disrespecting it. I usually double estimates to stop this… :o)

Instructions/GUI/Intro: Never spend enough time on these and they’re really important. Far too interested in the idea of the game, the mechanic and how it plays. Never on how to teach a player to understand it. The GUI needed an overhaul or actually doing in some cases (falling back to the default Unity stuff).

Planning: I need to plan and timetable stuff out next time. I think I spent 45 minutes modelling a gun, but it’s not visible and should have stuck with something simpler. If I planned everything, allotted time to each part with contingency then maybe the GUI would have been better.

Too big: Next time I’m going to aim for a 12 or 6 hour game. 24+ hours of coding over the weekend on top of all the game coding I do in the week means I didn’t have a proper weekend. I may have gone out for dinner so my wife didn’t kill me for ignoring her that long, but today, on Monday, I’m zonked.

I think that’s it for my thoughts for now. Hope you enjoyed my game…

http://www.ludumdare.com/compo/ludum-dare-21/?action=rate&uid=4757

Jasper

Tags: LD48 LD21 Alpha Centuri Unity Game Entry

Time Laps

time laps now online

day 1
day 2

first youtube vids ever 😛 enjoy!

And its up

The menu for our game

Almost finished!

We’ve got the mechanics working and now we just need to utilize said mechanics in some sweet levels.

What we have so far:

  • Running
  • Wallrunning
  • Walljumping
  • Sawblades
  • Sliding
  • Ramps
  • Crushers
  • Flying enemys
  • Glass which breaks
  • Particles
  • Checkpoints
  • Health
  • Slowmo/bullettime
  • AI
  • Background tiles
  • HUD effects

Standing in the gunfire of some drones, surrounded by sawblades.

You control with the arrow keys, Z and X. You jump higher the faster you run, if jump while running towards a wall you will run up it, and if you press up while wallrunning you will jump off the wall.

If you press Z you will turn on slowmo/quicktime which drains the yellow meter in the lower-left. It will make you run faster, make bullets show trails, and makes it easier to avoid stuff.

link to game: http://www.ludumdare.com/compo/ludum-dare-21/?action=rate&uid=4909

Tags: game progress

Black Hole: A Synopsis

My game for this compo was Black Hole, a game where the objective is to escape both the horde of Drones who cornered you, and the black hole which they cornered you against.

Fortunately for you, a long-dead alien race left a platform here, which feeds off of the emissions of the black hole and broadcasts energy to all nearby ships. You have moved in close to this platform and the black hole itself, and thus avoided the gigantic Drone Mothership which was chasing you. However, the smaller Drone forces can and did pursue you, so now you must hold out against them to recharge your Jump Engines, allowing you to jump to beyond lightspeed and escape to your home.

The coding process was quite frantic. I had to write the entire game engine, and at one point ended up re-writing and re-integrating the entire collision engine, as I had failed to discover that my method of detecting overlapping rectangles was not accurate if they were rotated. Fortunately, I’m quite skilled with circle based collision, and it only took about 20 minutes to switch and integrate.

Another thing to note: I was high on Oxycodone and other painkillers the entire time, having gotten my wisdom teeth removed on Thursday. This caused many dumb mistakes, the majority being simple math related. I persevered through it though, and ended up coming out with what I think is a fun game!

Plans for the future: to continue to develop this game. I want to add more enemies, powerups, and new game modes.

Timelapse Part One is here.

Timelapse Part Two is here.

I’ll be writing a Post Mortem at some point… Thanks for the fun times all! Cheers!

Edit: 1814 lines of code, for those of you who care. 😀

Tags: Black Hole, BlackHole, CSharp, finished, LD21, xna

Strategy Guide and Tech Talk

The compo is over, my game is finished and the rating starts. For anyone trying out my game (if you haven’t yet: HERE), I will explain some strategies to survive, just in case you have trouble with it. Additionally, as I tried to get some advice from my wife for setting up the level generator yesterday evening she wasn’t really enthusiastic, to say the least. So for anyone more interested in the tech behind I will explain, why the level generator currently doesn’t work that good for providing difficulty.

The game mechanic basically works with to values that decrease as long as you are digging tunnels (and even when passing existing ones). The first value is food/hunger. You can find three different kind of food which will give you 5 to 15 points back. Food, if there is any, is only revealed if you enter a cage. By that, it is often necessary to leave the direct path and search adjacent rooms if you are low on food. This strategy also has a second benefit related to the second value, hope.

Hope is generated by spotting new cages around you. So progressing the level is the key to prevent death by starvation.  The hope mechanics leads to another point. Often it is better to move to the center of the level because chances for revealing cages is better in free field than at the level borders. This seems contradictory to the aim of getting to the upmost row or the rightmost column which are the only places to escape the level later on. Remeber that you can see 2 spaces horizontally and vertically and one space diagonally (not if you are digging). So if you already are two rows below the top border and there is no cage above, you won’t find any if you dig that direction.

The cacti walls are revealed by digging, so sometimes a tunnel can give further information for planning your path. This only applies if you have enough food/hope left.

To summarize the strategies:

  • try to reach upmost row or rightmost column of the cages but pass the center of the level
  • don’t dig to places where there can be no cage (2 spaces between player and border)
  • don’t hesitate to search rooms for food
  • progress to keep your hope filled

Headed to the center and didn't took the direct path to replenish food and hope. Else I would have died short before exit (Difficulty: Hard).

With that you should be able to beat all difficulties after some tryouts. At this point the random generator sets in. The design I used is rather insecure in providing the difficulty level. Instead of spreading a fixed amount of cages for each difficulty, I implemented to check a percentage to set a cage for every field of the grid (e.g. 33:67 that there is a cage on a field in normal mode). Instead of filling one third of the level with cages, this leads to very unsteady number of cages. By that, an “insane” level could have more cages than an “easy” one. Same applies to walls. By that the difficulty selector is a rather vague adjuster. But nevertheless you will notice the difference if you give it some tries (one playthrough is quick; around 15 seconds). So go and play. Good luck.

TL;DR:

Just a game design related teaser for the post mortem coming soon.

Tags: game design, procedural generation, pygame, python, screenshot

Comments

foobaz
27. Aug 2011 · 00:29 UTC
I could be wrong, but I don’t think the random cage generation would make such a big difference. I think the binomial distribution is sufficiently concentrated that you would get close to your expected number of cages every time. I think that the variance on the number of cages on the top and right border is greater and, in my opinion, impacts the outcome much more.

Not Finished

Didn’t finish. I’m just too tired right now, and it’s nowhere near done. Thats what you get for slacking off I guess…

Things that went well:
* Forming idea’s

Things that didn’t go well:
* Always putting my idea’s in and wasting time instead of working on the core game
* Internet on computer
* Notch livestream

Overall a great experience. I feel ready for december. I’ll try not to get distracted as easily.

share: http://uploading.com/files/c6859f6b/WhaleEscape.zip/
movement = arrowkeys
rest = R
if Stamina = 0, you need 20 rests. (should have lowered, didn’t… méh)

Turn based gameplay, but with buttonbashing, feels reamtime-ish

TimeLapse day 1: http://www.youtube.com/watch?v=WZ8XI1YOXMY

TimeLapse day 2: http://www.youtube.com/watch?v=vjmUgS86rW8

Tags: fail, LD21, TimeToSleep

What a difference some feedback made

I showed my game to a friend on facebook and decided to make some changes and enter it into the Jam.  Enjoy, even though the FPS still sucks when there are lots of blocks

Post-apocalypse

I was relieved to get everything in Escape the Fate working in due time. However, some problems arose after entering.

One tester quickly reported the game crashes for him on startup. I spent a while Googling about py2exe’s quirks and isolated the cause to the font. Had to include that in the download (it’s a free font, don’t worry) and force users to install it before playing.

Later on, people complained the game was confusing with its two different types of falling. Instead of throwing the player straight into the action, I added an intro level which limits the interaction to a minimal amount of tiles. It’s amazing how the mechanics of falling suddenly became self-explanatory. This was on the extended time, so with the slight addition, the game still qualified for the compo.

Just a moment ago, I was giving tips to a player who seemed a bit lost. I wondered why, he hadn’t even gotten to the tricky part yet. Apparently, the game was too big for his laptop screen, and parts of it were cut off so that the level was unplayable. Yesterday I realized this might happen, but I kind of forgot about it when I was busy fixing collisions. That goes under bugfixes, so it won’t get me disqualified from the compo either, especially when I posted it as an alternative download. I should know since I’ve answered several questions about an update’s validity on #ludumdare.

Speaking about IRC, my username is different between the site and the channel. I’m also known as Jiggawatt; I simply failed to predict I’d be using the IRC channel much, so I registered here with something else than my standard issue IRC nick.

For those who actually got the game working and even understood what’s going on, the feedback’s been positive. So go try it.

Comments

JohanAR
22. Aug 2011 · 18:28 UTC
*spoilers* I also had problems getting past level 3. From a design perspective I think having to jump outside the screen and the jump mid-air back in is a little bit too strange. Personally I would either shrink the level horizontally or at least introduce double jumping and going off screen separately :)
22. Aug 2011 · 18:42 UTC
Mid-air jumping is necessary to get the hearts in the two first levels, so it’s not that far-fetched. Especially in the intro level, I figure some players will wonder how to get the heart (since there isn’t much else to do there) and stumble upon the technique.

Finished

Yeah, we finally have a completed game for our first LD jam!

This has been a lot of fun – Now I am courious what you guys did with the theme!

Happy testing! 😀

Fireflies – Post Mortem

Well, that was manic. I had family stuff to do this weekend, but I didn’t wanna miss LD, so I’ve cobbled together what turned out to be pretty much the tutorial level of what I originally had in mind…

So here’s what I learned:

  • Don’t try to Ludum Dare on a weekend when you have other commitments :)
  • Importing a rigged & animated character into Unity with ONE anim is not a sufficient test case for importing a rigged and animated character with SEVERAL anims. This cost me hours of trawling the internet and experimentation. FWIW…the problem was that either Blender didn’t export (or Unity didn’t import) the entire timeline – only the active preview range.
  • Rigging for forward kinematics is a doddle (if you’re not too concerned about balancing the vertex weights). Setting up the armature for IK makes my head hurt, and there seem to be as many variants as there are riggers.
  • I have noticed a pattern in my LD projects already. All three are heavy on polish and embarassingly light on content. This, I think, is the habit of over a decade of AAA development where the level designs are handed to me and I need to focus on getting the implementation just right. For the next miniLD I must deliberately make an ugly game that is fully featured and balanced.
  • That said, I did go into this one deliberately intending to kickstart my character modelling/rigging/animating skills. I’m quite pleased with the results. I had to force myself to stop at the minimum set of anims, otherwise I could have blown the entire weekend doing anims for every situation. Also, I made no effort to make the feet match the floor on the walk, and I know the recoil is abysmal. But I’ve seen worse in retail games, so nyer.
  • The actual mechanics I intended to implement were much more elaborate – with three colours of firefly, three colours of flower that they like to hang out near, and dark levels that you can only traverse when carrying a firefly – so you would have to do elaborate back and forth puzzles to get all the fireflies back to the jar. I’ll knock a couple up this week and see if it turns out as fun as I’d hoped…
  • Tags: animation, blender, fireflies, postmortem, unity

    Freeway Escape

    This was my first time i entered Ludum Dare.

    I only had 12 in total to work on my project.  But somehow i got something working.  I decided to create a game where you have to escape the cops on the freeway.  I tried to make it not to complicated,  so i could finish it in the limited time i had.  I started by creating some of the base code and the graphics for the game.

    Freeway Escape screenshot

    The base code was nothing more than an applet with double buffering,  a thread with frame limiter to progress the logic,  a key-listner for user input and a loader class to easily load resources into the game. I lost almost a hour figuring out why my applet didn’t draw a thing.  It was a stupid mistake.  I called thread.run  (which doesn’t start a new thread)  instead of thread.start  (which does start a new thread).

    The graphics took me most of the day.  I spend around 3 hours drawing the cars and the road,  and another half hour for the lights sprites.  Regionally i wanted to add different road tiles,  so the road wouldn’t be boringly repeating itself,  but there was not enough time.  After this the Saturday was finished for me. I didn’t even had a single car driving yet.

    Sunday i started on the main code,  unsure if i had enough time left.  First i got the player car driving,  which was actually quite easy.  After that i worked on the other cars.  After an hour or 2 i got a “working” game.  But it was still quite boring,  because you could drive through everything.  So Time for collision detecting.

    After the collision detection and writing code for the sprites.  I had to create the title and game over screen.  Which got finished just in time.  After this i had to go away for a while so i shut down my computer.

    After starting my computer back up…  disaster strikes.  All my images where gone…  I think eclipse throw them away,  but i’m not sure about that.  I tried a recovery tool,  but no luck there. Luckily i had posted an screenshot on twitter from where i could recover a lot of the graphics.  It took me a pressures hour to restore the damage.

    I still had to code the police cars but the clock was running out.  So i hadn’t much time to tweak the behavior.  Especially the detection if it can go left or right is a bit broken,  so it can happen that police cars overlap each other a bit,  or drive full speed into an other car.

    I haven’t had any time to include sounds,  so the game is a bit silent.  On the other hand it saved me some time programming a mute button.

    Lessons learned:

    • Try to make more time free,  12 hours is really tight.
    • BACKUP!!! It could save me an hour.
    • Basic code,  so i can start on the game code directly.
    • Graphics are hard and cost a lot of time

    You can find the game (including the source) here.

    Comments

    panzermancer
    22. Aug 2011 · 18:30 UTC
    This looks, sounds, and most likely plays almost exactly for the highway-driving example game released for GM6 and GM7…

    NO ESCAPE Compositing/Layers Breakdown

    I knew that if I wanted to sell the ‘story’ of my game NO ESCAPE, I was going to need a strong atmosphere. I’m guessing not many game devs consider After Effects an essential tool for their process, but because I do motion graphics work for a living, I knew that AE could give me solid results quickly. So, here’s a quick breakdown of the my layering/compositing process:

    Layer 1: Background 1

    Initially my background only had one layer, but the result looked fairly flat, so I decided to break the background elements into two layers, which allowed me to get a better parallax scrolling effect.

    Layer 2: Background 2

    The ‘main’ background. The buildings were modeled and rendered in Cinema 4D. I used the Environment tool to add a layer of fog, which is why elements that are farther away are more faded.

    Layer 3: Foreground

    Also created in Cinema 4D. I rendered everything out using an orthographic projection, which is why the foreground looks flat even through it was modeled in 3D.

    Layer 4: Rain

    The rain was added in After Effects with a very useful third party plug-in called Particular. I created one single rain drop and set up a particle system to do the rest. If there’s anything I’ve learned from rainymood.com, it’s that rain makes everything better!

    Layer 5: Smoke

    The smoke was rendered in Cinema 4D using its PyroCluster shader, which creates pretty convincing little smoke puffs fairly easily.

    Layer 6: Water Overflow

    This is a small detail, but one of my favorite things in the whole game. After I was more or less done with coding, I knew I wanted to add a few more details including this little water overflow coming off of the billboard. I set up another particular system in After Effects, this time using the built in CC Particle World and this was the result.

    Layer 7: Lightning!

    The last thing I added was a few lightning strikes, which I thought came out pretty cool. Created in After Effects using the built in Advanced Lightning effect. I timed the strikes so that they would come a few seconds before the thunder claps in the audio track, and positioned them to where the player would likely be at that point.

    So there you go – a HUGE downside to doing things this way is that having this video background increased the size of the .swf dramatically. If I was a more competent programmer I would have tried to create these effects dynamically, but alas. Hope this was somewhat interesting, feel free to ask any questions about Cinema 4D or After Effects if you’re interested.

    Here’s a link to my entry:

    http://www.ludumdare.com/compo/ludum-dare-21/?action=preview&uid=5821

     

     

    Comments

    sfernald
    22. Aug 2011 · 19:46 UTC
    This stuff is gold. I have never used After Effects and it’s great to see how it is put to use. Keep up the great articles? How much space did those videos add to your swf anyway?

    The Blueprints Timelapse

    Well here is my timelapse for this LD.  This time I got a good chunk of uninterrupted work in on Saturday (about 18 hours) .  All total I estimate that I spent around 27 hours on LD this weekend. Woot!

     

    Tags: timelapse

    We’d like it if you Stay: Done!

    I have finished my jam entry, and titled it 😀

    I’m quite happy with this, my first ludum dare game, my first decent game, and my second game in total. I have achieved what I set out to do, which is not something that usually happens.

    Click to play!
    Click image to play!

    This event was great fun, I’m glad I decided to give it a go. And now, it’s time for me to play some of the other entries :)

    Full time lapse up

    Time lapse up on You Tube with music!

    Susan

    Prison Break – I’m finished.

    This is my first time entering LD _properly_. I didn’t have much time due to real life getting in the way [/symapthyvote] but that’s what the Jam is for, I know.

    I’m fairly happy with how much I’ve managed to do in such little time, but I’m not proud of the end result as a concept as a ‘game’ however.

    I’m still not a professional Game Dev yet, but I’m definitely going to get there one way or another, and this competition was a great experience…and sleep depervation.

    I’m fed up with staring at code at the moment, and I have no artistic abilities, so that’s why I’m stopping here. Personally, I think I’ve done enough even for a simple entry.

    Oh, and I advise you don’t look at the code, I can’t promise the stability of your mental state.

    I wasn’t gonna take part to begin with, but I’m glad I did. Like I mentioned, it was a nice experience, and it also actually got me off my butt to make a game.

    Good luck to the other LDers!

    P.S You can view my entry Here.

    Comments

    sfernald
    22. Aug 2011 · 19:35 UTC
    Being a professional game programmer ain’t all that. Better to do if for fun on your own and make the next Angry Birds..

    Musings on my entry.

    For my entry the level was stored in RAM as an array of characters, and each character held 8 blocks, which means that each block only took 1-bit (on or off). So theoretically a level 1000 x 1000 would take 125 kilobytes, a 10,000 x 10,000 level would take 12.5 megabytes in RAM.

    Ofcourse, saved as a text file that’s easy to edit in notepad, the same file would take over 8 times as much space.

    Death Boulder Jones Post Partem

    I’ve got two comments so far, both mentioning the complete lack of a difficulty curve (it just gets difficult too quickly).

    I’ll agree with them. I’ve only beaten it once. :-) Unfortunately, I ran out of time before completing any levels other than the first one, which wasn’t anything but a tutorial. As such, I copy/pasted a bunch of obstacles and placed them at semi-regular intervals throughout the level and called it a day. Too bad. The game supports loading multiple levels and I was planning on having a nice difficulty ramp across them. The first level was originally supposed to be the tutorial and like one more trap.

    One commenter (Notch) said it feels like trial and error, which is actually partially what I was going for. I remember the game n+ where you just try each level over and over until you’ve mastered all the traps and the like, and I kind of wanted that feel. Part of what I was missing, I think, is the everything-on-the-screen you get from sideways 2D. The perspective the camera has and the amount of playing field you can see makes it very difficult to see far enough ahead of you to make any sort of difference. Basically the only option is to die and restart several times so that you know where everything is beforehand. And get a bit lucky.

    Last minute I added in a bullet-time ability that really helps a lot, but having made it a limited timer (1 second of bullet time, takes 2 seconds to charge) means you don’t really get it enough. In retrospect, I think it would have been cool to subtract money from your character as you use it, thereby giving you as much as you want bit still adding in the pressure of not using it too much.

    The biggest problem though I think is just the curve. Level 1 should be a piece of cake, and there should be around 10 very short levels. That way when you restart you’re not forced to redo the whole thing. That or checkpoints, maybe.

    I still think the game is a great idea and I’d love to see it on iPhone some time in the future. Just needs a bit of tweaking.

    Comments

    wallacoloo
    22. Aug 2011 · 23:28 UTC
    I loved N! I used to mess around with the level code for hours and find glitches that allowed me to make really cool levels. Never played N+ though. Bringing back the memories… But I think you’re spot-on with your analysis of your game.

    We’re done already?

    Hehe. The luxury of 24 extra hours. What to do with them but gloat that you actually managed to finish everything and to have time to spare.

    At any rate, we (Joszs, Ever121 and myself) have just finished our Jam entry. The game, called Left – for what better name than a non descript name? – is an action/agility flyer based around a small craft in a large facility. Loads of explosions and gunfire, as one might imagine.

    Go have a look!

    I have some minor things to fix, but I’d be just as happy to leave it in its current state.

    We’re all pretty surprised at how fluent everything went. The amount of technical hickups was remarkable (one might say miraculously) low, we all shared a similar vision and we were all deeply impressed by eachothers work.

    Loved the experience.

    Tags: postmortem

    Timelapse!

    Finished uploading my timelapse. 8 hours in 8 minutes (:

     

    Pygame Programmers!

    How the heck are the pygame users among us planning to port your game to all platforms?

     

    I’ve been trying with py2exe and py2app and having absolutely no luck; I’ve been seeing crashes everywhere. Any tips?

    Tags: oh god the pain, port, porting, pygame

    Comments

    22. Aug 2011 · 19:50 UTC
    I know your pain. Mine crashed unexplainably on everyone else’s computer but worked fine on mine when I first submitted. Used py2exe to compile it.

    Escaping the Rat Race… The game wot I made

    As I failed to post a single blog entry whilst I was actually making my game I thought I’d instead lump it all into some horrendous mega-post after the event.  Only the brave should read on.

    So my game, Escaping the Rat Race…, is all about how working for the man sucks and how we all would like to quit and make a shed load of cash doing something infinitely cooler, like developing our own indie games (if we haven’t done already!).  That’s the escape, the escape of being your own boss.  I have to say I made this game from the perspective of someone who’s never done it, I’m sure it’s not all wonderful and rosy, but the feeling of getting up in the morning and knowing you’re going to work on something you personally care about and have a massive stake in is frankly intoxicating.

    In with that context in mind that you should play the game.  Some of the design and content decisions I made were extremely specific, including making some elements of the game frustrating and annoying because I thought it best represented my message.  Please don’t hate me for them, and, in hindsight, maybe you should turn down the sound in the rat race section…  There are a couple of annoying bugs with some of the variables and the rats tail is still hilariously disembodied but I probably wouldn’t change a great deal about the game apart from a little spit and polish here and there, including spending more time on the frankly very crude graphics.

    This is the first game I have made in a long time, probably something ridiculous like over 10 years.  I used to make little games on Klik and Play in my mid-teens and then I didn’t even think about making any for ages.  It’s only recently I’ve decided I do really like games and want to have a hand in making them.  Alas I’m not a programmer, or an artist, or anything particularly useful for making games (I’m a mechanical engineer in another life) so it’s always been that nagging hobby I’ve never indulged again until now.  Therefore I ‘cheated’ and used Scirra Construct Classic which was only mildly frustrated in places.  Ludum Dare has been such an awe inspiring and encouraging event for me and I cannot fathom the quality of some entries.

    I realise I’m probably rambling by now so I’ll finish off – it didn’t turn out to be that epic a post after all.  Please let me know what you think of my little entry, I’d be intrigued.

    Postmortem of The Wave

    Well, I have to say that compared to my last Ludum Dare, this experience was COMPLETELY different. The first difference that comes to mind is how I didn’t waste all of my time trying to create a physics/movement engine. That thing sucked up, probably, about 80% of my time and I certainly wouldn’t call it “complete” even now. Also, it was more laid back since I only got around 14 hours to work on the game, as opposed to the 24 – 30 that I had last time.

    What Went Well:

    • I, once again, was focused the entire time. I was so focussed, in fact, that I forgot to finish off a delicious beverage (although don’t worry – I drank it now).
    • My game concept was simple enough to leave me a whole day to work on assets & the front end.
    • Audio. It existed this time. I think it sounds pretty nice for, like, 30 seconds on a loop.
    • I had lots of screenshots & some demos to share before the compo ended (although I don’t think I packaged the demos correctly, and the LD site was down)

    What Didn’t Go So Well:

    • Uploading. I wasn’t good at it. I gotta remember to include sndfile.framework & to add other frameworks to the “Copy Frameworks” step in Xcode. I actually lost $5 here because I bet my brother that I uploaded something correctly and it didn’t work.
    • I didn’t test all the “pipelines” involved in my game; 1 hour before the contest ended, I realized that I didn’t know how to get audio into my game. I figured it out though.
    • All my ideas at the start were basically the same; I was only considering ideas where you (singular) were trying to escape from something, which isn’t really thinking outside of the box. I was actually really displeased with all of my ideas, and wasn’t having much fun developing them until I thought of the evacuation idea.

    Overall, I am once again pleased with the product that I produced, and think that it is a pretty big step above my last entry, and am looking forwards to December. I might keep working on my entry (after the ratings though; programmers = good playtesters) since I can think of a few ways to spice it up.

    (If you are some sort of STRANGE ALIEN and have yet to play my game, it’s over here)

    Tags: postmortem

    Death Boulder Jones timelapse

    Here you are. Just over a minute of goodness. I spent about 14 hours working on it.

    The music is from Conker’s Bad Fur Day.

    Timelapse of my failed entry

    Comments

    24. Aug 2011 · 00:06 UTC
    That is a really good video. Not sure what to do in the game. Next time I want to try HTML5 if they ever figure out a good way to do sound.

    Our jam entry – espace – is done!

    Finally, after several hours of troubleshooting some audio issues on Windows I finally managed to squeeze a build that works. So yeah, we were done at around 44 hour mark, but I ended up using 14 hours for fixing issues that rised during porting and making the release packages.

    Go check it out!

    Now it’s back to the daily grind for me, hopefully I find time to do a linux port, write a post mortem and compile my time-lapse. Thanks to Hasis for joining the ride, it was a nice experience and showed me that yes, I can squeeze a cross-platform game engine and a game out of me in less than a week. 😀

    – eimink

    Pastagus Fantasy is submited !

    Hi all !

    Uchuu Sentaï Pastagaga’s first game is submitted. Named Pastagus Fantasy, we hope you will enjoy it !

    Please give it a try :)

    See you soon for a post mortem, at least one update of the game, and for another jam !

    pastagus-fantasy-1

    May the Sentaï Force always be with you!!

    Stratus Postmortem

    So enough time has passed since finishing that I can look back objectively over Stratus, found here: http://www.ludumdare.com/compo/ludum-dare-21/?action=preview&uid=5541

     

     

    The game I initially envisaged is *roughly* what got made, but I had all sorts of ambitious ideas about minigames and complex interactions with the objects on board.. frankly the initial design was laughably ambitious, but hey I’ve never tried to make a game this quick :). But I kept the scope as far as the airship design is concerned, and poured a lot of effort into the design and execution of the ship. For me, the key thing for this game was the experience and atmosphere, and anything else came second- so I pressed ahead with the art and particle effects, and ditched some of the ambitious interaction mechanics.

    what went right:

    – the atmosphere I was trying to create, I think for the most part came together.. I really wanted you to feel the wind in your hair, high above the ground in a flying machine.

    – the shooting sequence, while brief, I find enjoyable. I can play it a few times and be happy, so maybe I could have made it longer.. I really love making low-fi particle effects so the explosions were fun to make

    what went wrong:

    – probably having slightly too wide a scope for the concept left me really stuck for time to code the actual game and mechanics. I had to cut a bunch of ideas to finish the game which is always a shame

    – sound, about the only sound effect I’m reasonably happy with is the wind, which was done by modulating the frequency of some pink noise. I really really wanted to devote some proper time to creating nice sound effects because they add so much to the atmosphere of the game, but unfortunately apart from the wind it’s all sfxr (I still love sfxr.. but all games sound the same when they use it. and you can have really blocky graphics but if the sound gets a little extra love, it can really add to the experience)

    -testing: I didn’t get anyone to test my game, because I left it so late to get the mechanics in place. So, if there are some major bugs lurking then that’s why!

    overall, I hugely enjoyed the weekend, even the massive stress on sunday :) This was my first compo, and I would definitely come back again. It’s a great community here!

    cheers,

    -RichMakeGame

    Comments

    wisnoskij
    25. Aug 2011 · 18:14 UTC
    Great game and the only game of any note I have seen come out of this round yet (might even be my favourite ludum dare game ever).

    But it is obvious that it could be added to, to become truly terrific.

    First LD: Recap

    Well.. It did went as I was hoping. However I’ve submitted it.

    On the bright side my idea for the game engine worked quite well. However I did spend a lot of time on the mechanics (or rather lost it, for example for stuff to move properly around took me like 6 hours) and actually almost finished it. And of course barely any graphics and no sound at all. Levels are also only two. Maybe I’ll try to finish the game just to see if it will turn something interesting.

    After the submission found a major controls problem, do not use trackpads for development ! :)

    Here is a link to my entry:

    http://www.ludumdare.com/compo/ludum-dare-21/?uid=5130

    Henchmen, Attack! postmortom

    This was my 2nd Ludum Dare (you can play my LD #20 game here) I was a bit un-prepared this time, since I only found out that I would have the weekend free about 45 minutes before Ludum Dare started. Talk about timing!

    Once again I chose to use the Flixel engine. It’s a powerful and simple little engine, and developing in Flash means just about everyone will be capable of playing my game with no trouble. For my IDE, I used Flash Develop running in Windows 7, running in a Parallels VM on my Mac. I don’t recall exactly why, but that’s what I did last time so I stuck with it. Once again, sounds were recorded on my iPhone and edited in Audacity (cfxr doesn’t work on OS X Lion. I might need to fork it and fix that…) Also, I recorded a time-lapse of the whole thing using ScreenNinja, a Mac app I developed for exactly this purpose. One minor hiccup: I didn’t have Photoshop installed on the machine I was using, so I grabbed Pixelmator from the App Store. It’s a nice little photoshop replacement app suitable for most tasks, but unfortunately making pixel sprites isn’t one of those things, and I think that may have cost me some time.

    The main frustration I had with my previous Ludum Dare game was that it was very short, so this time I knew I wanted to have some sort of endless map (plus, I think it fits with the theme) – so that’s where I started. Progressive level generation is tricky to get right, and looping though a single map just isn’t the same thing. What I ended up doing was designing a number of levels (at first 3, in the final entry I believe there are 11), each only slightly larger than a single screen, and as you approach the edge of one level, the game randomly picks another level and inserts it on the screen. Because the ‘levels’ are tile maps, and each is loaded from a .png file, I was able to design levels in Pixelmator and easily see how each level would look next to all the others, and make sure the edges lined up right.

    Once I got that working I quickly threw together some basic player and enemy logic (it’s fun seeing the henchmen jump off cliffs, lemmings style), then it was just a matter of throwing things together and seeing what was fun. In action movies, the gun is a versatile tool. Along with killing the bad guy, guns can also be used to open doors, disable equipment, activate buttons or traps at a distance, or anything else an escaping hero might need to do. So I thought a game based around a sort of chase sequence might be fun. One of the things I programmed and didn’t end up using was for the wall mounted turrets to fire missiles that would destroy the ground under you. It looked really cool, but unfortunately the player could get stuck in the craters, so I had to take it out (although it’s still in the source code if you’d like to see how I did it)

    Bugs. Hopefully there are no major bugs in my game, but there’s always a few weird ones. Occasionally the henchmen just won’t jump off the edge of a cliff, and I can’t figure out why. I’m pretty sure 30 lines of AI code isn’t enough to gain sentience, right? Also, sometimes the door spawner will spawn a henchman 32 pixels lower than it’s suposed to (and he ends up stuck in the ground below) But, since neither of these were game breaking bugs, I said screw it and worked on new features instead.

    And finally, I tried to add a little humor and competition to the game in the final few hours with the game over screen. Much like in Super Shotgun Deathrace, the final text is assembled from many different pieces so it’s different each time. After showing a near final prototype to a few friends online as well as the IRC, it was suggested that I should have some stats besides distance displayed at the end of the game. So, I added the damage values and a henchmen killed counter. Took all of about 10 minutes to do, and I think it significantly improves the game, so thanks everyone who suggested that.

    Oh. One more thing. Play (also, please vote and comment on) my game here, then you can click here and watch the timelapse

     

     

     

     

    Finished!!!

    This has been a good experience, which I will sure repeat again in the future.

    At the end, I have only spend about 12 hours into developing the game, as I was sick and was sleeping almost all the time.

    I hope you like the concept behind the game and I look forward to the next Ludum Dare!

    Reveal Postmortem: Ludum Dare is Awesome.

    Hey All!  I wanted to do a quick postmortem on the game we submitted to the Jam, Reveal.

    What went right

    A solid  artistic vision.  Most of the artistic vision for this game came from @pixelbutterfly,  who also did the art.  At the core of the game, it’s about uncertainty in a world where the media tells you who to be and how to look.  But as you scratch deeper below that, and peel away the superficial layers, the world only gets uglier.  Finally, as my own little nihilistic touch, you realize that the escape you sought from your uncertainty wasn’t exactly as you had planned it.

    A simple mechanic.   We wanted a game about systematic destruction.  What could be funner than that?  Unity3d has a great support for physics at its core, so it lent itself quite naturally to such a game.  Almost everything in the game (except the wallpaper) is powered by pretty standard rigidbody physics, so it was very easy to implement and get running quickly.

    What Went Wrong

    Startup time issues.  We had some initial creative differences and as a result, ended up not getting started until Saturday night.  As a result, we ended up cutting out several of the more meaningful layers for some of the less intensive ones.  Oddly enough, this didn’t really get in the way of development too much…after cutting the more time-consuming room layers, we finished the game way ahead of time (even submitting before the contest deadline).  That gave us more time for audio and testing.  Sure, it’s not perfect, but for 24 hours of dev it’s pretty good :)

    Learning.  I’ve done a lot of game jams in the past, and every time I go into them with the mentality that I want to learn something new and significant.  This is either something specific like, “I want to learn how to write 2D physics and do pixel-perfect collision from scratch,” or something more general like, “I want to think about Level Design in a new way.”  Unfortunately, I can’t say that I learned that much from this game development, and the same goes for @pixelbutterfly.  Because of the vision and scope for the project, she didn’t have any game assets to create from scratch, and her dev computer was out of commission for the weekend.

    Summary

    Ludum Dare is great!  I’ve followed the Ludum Dare scene for the past year or so, but this is my first time participating, and I’m astounded by the level of creativity and enthusiasm that has come to the table from all over the world.  At Uni, our game development club would host game jams a few times a semester, but they were generally ill-attended affairs with 2 or 3 teams coming out with something to show, and solo development being a rare bird.  As I look through the 500+ game catalog of LD #21 and wonder how I’m going to be able to rate them all in the next 21 days, I know that this is something I want to be a part of for years to come :)

    I made it!

    I had to sacrifice any community effort to get this in…  It’s 3AM and I’ve just finished!

     

     

    A ZX Spectrum RPG

    Here is the link: the link

    Escape from Monster City: Postmortem/Timelapse

    My entry: http://code.kevinworkman.com/EscapeFromMonsterCity/index.html
    Timelapse: http://code.kevinworkman.com/EscapeFromMonsterCity/timelapse.html

    I only worked for about 12 hours, so instead of making a video, I took screenshots as the program changed. You can check them out if you feel like it!

    Escape from Monster City timelapse

    This was my first Ludum Dare, and I’m pretty pleased with how everything turned out, especially considering that I had never used Processing prior to the contest- learning it was half the fun!

    I stuck with the bare minimum considering the time constraints, but I’m surprised to see how many other entries were pretty similar. I guess that’s the nature of working around a theme, but I think next time I’ll work at coming up with something a little more different.

    There is one bug left in the final version that causes the program to freeze occasionally- this is due to logic I attempted to write to prevent monsters from spawning inside buildings, which doesn’t work anyway. Lesson learned, next time I’ll stick with something that definitely works instead of trying to implement algorithms I know might break things.

    Also, I didn’t have time to implement a goal, or score, or an ending, which I think hurts replayability. I did manage to throw in a title and game over screen, which goes a long way to making the game feel more legitimate.

    However, I think I came pretty close to my original goal of capturing a creepy mood, so I’m happy with the outcome. I wanted to create a spooky feeling as the player rounds a building and almost runs into a monster, and I think I came pretty close to that. Yay!

    I’m also satisfied that I met the theme, which is extra awesome because I wasn’t really thrilled when it was revealed (I was hoping for evolution or adaptation). The main focus of the game is to escape the city, with the added terrifying mini-games of escaping monsters that wake up. Yay again!

    Escape from Monster City

    All in all, I had a bunch of fun, and I love the Ludum Dare community. Awesome job to everybody who managed to put together something in 48 (or 72) hours! You guys are all rock stars.

    Escape The Void: Post-Mortem

    Thought since others are doing these after-submission look-backs I would too!

    What went wrong:
    >The physics from the start were a shambles, collision detecting is a very awful thing to deal with when you don’t have some solid code for it, and mine wasnt! All through the game I continuously made changes to the physics.
    >I didn’t brainstorm… Being my first game to complete, I had the idea for a game where you smash into atoms, then just dove into doing the physics, graphics etc, and didn’t brainstorm any features, so I ended up making them as I went along.
    >Coded in GameMaker, not the best idea if you want a retail quality game, or a game thats cross-platform… So I started learning Flash(FlashPunk) straight after my entry…

    The main point i’m disappointed is not following the storyline, I basically said at the beginning “Go smash into atoms” then didn’t elaborate too much.

    You can play it here:
    http://www.ludumdare.com/compo/ludum-dare-21/?action=preview&uid=5696
    Some screenies:

    BEF Finished and uploaded!

    Wow it’s done kind of BEF

    Not sure if it’s a fun game but mechanically it ‘works’.

    Quick Postmortem:

    The concept was viewing the Evacuation of Dunkirk as an Escape, the problem how to implement that in 48/72 hours as a game!

    Initially I just though it was the wrong way to go but the idea stuck and after thinking I could make the whole game in a Narrow almost 2D path then maybe it could  work ( I probably should not have stayed up until 3am to catch the start of the compo).

    Also I thought that if I restricted the actions on the Units (yep it was turning into an RTS) then maybe it could work!

     

    What went right:

    Modelled the units, used a simple style for the troops but differentiated their helmets ( Well I liked it ;o).

    The combat system, I thought how to get the units to fight, and realised that a simple D20 style combat would help prevent predictable/repeating outcomes but outcomes with trends.  I think I had it up and running in a few hours, initially the German army just stormed the French lines and that was my way of testing it out!

    The idea of a slider driven scrolling map area works well.

    Keeping the control simple was a great help, only allowing units to move left or right/ fast or slow, stop and dig in.

     

    What went wrong:

    The UI was complex well you have 3 cameras one for the Main View, another for the Map and a third overlaying the controls.  This combination was arrived at after a great deal of hair pulling and dead ends were tried to resolve UI issues and get it all to work.

    I didn’t get the Spitfires and Stuka’s in the game, yes the plan was to have the full blitzkrieg style of battling to occur, after all the game was 2.1D.

    The Ship, well if you want to take soldiers from England to France you need a ship, how to load it and get the troops on probably one of the most complex and convoluted aspects of the game.  The ship has ended up being a 2 door system with a locking when docked mechanism (it’s frustrating to lose troops to the deep when in the dock)!

    LOL the best bit was when I was struggling to get the Units to stay on the ship while crossing the channel, I did have to use physics didn’t I, anyway after much tweaking I managed to get it to work only for the Tommies to shoot across the channel and then fly out into France, over a hill and into the German army Angry Birds Style! ;o)

    The game is not really balanced, it just about plays but it needs quite some time spent on it adjusting the combat parameters and unit speeds, tweaking and fixing a few bugs!

    No Textures, Music, Explosions, Stukas, Spitfires, Little Boats, Re-Supply Trucks, Ambulances, Prisoners of War, Injured, Blood Splats, Artillery, Historical List of Casualties/POW’s/Medals!  ( I need to learn how to work faster!)

    Conclusion:

    I am very pleased with this game, not sure how fun it is, I’ve had fun making it and I’m very pleased with what I have managed to get working!

    Hope you enjoy it, any and all suggestions welcome!

     

    TIP#1: Get troops to Dig-In downward triangle makes them tougher.

    TIP#2: The last troop in a row of three can push the two ahead of it.

     

     

     

     

    Tags: postmortem, screenshot, unity

    Jammin’

    Well, I finished my first jam game (Escape Velocity). I’m pretty damn happy with it too! My goal was not to make things “simple stupid,” but stupid simple. It worked like a charm :). It’s funny because the gameplay is by-far the most fun of anything I’ve made – all from trying not to work too hard. Weird, huh?

    Anywho, there’s only two levels and no score but I’m already addicted to my little game. Then again, I’m very, very biased ;). I would’ve liked to take more time on the music, and at least have an indicator for your ship’s delivery destination.

    I wanted to have a small map popup before each level so you wouldn’t die right away but c’est la vie. I also realize, just now, that extra lives would be a good idea :/. Funny how that slipped my mind *shrugs*.

    Also, I haven’t actually beat it yet but I’m pretty sure it’s doable (I haven’t had much time). I do know that the first level is doable, even with less fuel than I give you.

    Why are you reading this? PLAY MY GAME! :)

    Postmortem for Real Live Avatars Inc

    Hi everyone!

    First of all, I’d like to say that I’m really happy with finishing my game. Unfortunately, due to the site’s issues, I couldn’t log my progress. I guess this isn’t just a postmortem but rather also an “I’m in” post. :)

    So far, this is the third game I made for LD. I made a game for some miniLD or another (I don’t remember which), and another for LD20. However, I wouldn’t count either game as a “full” game (for some definition of full corresponding to the 48 hour time limit). The miniLD entry was a game where you shot enemies that came at you (sort of like asteroids but with people) but had no video feed; instead you had the audio of creepy footsteps, gunfire, and screams. While it didn’t turn out bad, it wasn’t quite complete because it had no graphics. As for the LD20 entry, I made an (almost) exact clone of part of the original Legend of Zelda game. So finished or not, it wasn’t really my game. That’s why I’m extra-proud of finishing this time.

    Before I analyze what happened, go play my game :)
    Here is the entry page:
    http://www.ludumdare.com/compo/ludum-dare-21/?action=preview&uid=3743
    and if you won’t vote anyway, here is the game:
    http://mr.galacticgaming.net/Real%20Live%20Avatars%20Inc/Game.html

    What went wrong:

    1. Sound – I wasn’t planning to make sounds and I didn’t, so no loss here.
    2. Community – I didn’t even say that I was in :(
    3. Physics Bugs – There are two bugs with the physics in my game. Because the rest of the physics went well, I’ll address these bugs in the What went right section.
    4. Presentation of the story – First off, I’m about to talk about the plot of the game, so if you haven’t played it and will, skip this part for now because there are SPOILERS here. The story turned out to be almost exactly the same as I envisioned it when I came up with the idea.Real Live Avatars Inc is a company who pray on weak civilizations. They abduct people and take control of their bodies via implants. The controlled people are then sold to members of more developed civilizations as avatars for a game. I had hoped to create a cutscene for the start of the game. It would feature people talking about what they would do if the rumors of the company coming to your home planet to abduct people turned out to be true. All the things I explained could thus be introduced. Then the screen would shake and the game would begin with you running away from the company. A side effect of this is that in the process of running, you could see all the other people from the conversation caught and abducted.When you won the game, a person would walk in from the right (throughout the game you run to the right and away from the right-advancing enemy) and proclaim that your implants are working perfectly; just look how well you did in all the tests. If delivered well, this could have resulted in a realization of the futility of the situation; Even as you were “escaping,” you were actually only being tested. The player, who was supposed to sympathize with the abducted peoples, would be horrified to find that they were actually controlling one of these people in the exact way that Real Live Avatars Inc would.Whenever you lost, you would be presented with that same person saying something about testing implants which would make sense in the context of escape, but would take on a whole new light in the context given by the “winning” cutscene.Of course, I didn’t get to ANY cutscenes. Instead, I have Bob, an employee of the company:
      Bob
      While Bob got across all the facts I provided above, I doubt he got any of the emotion across.
    5. Level generation – The procedural generation of the obstacles in a level made winning or losing a level sometimes a simple matter of luck. Also, I wanted to include caves into the floor (I wanted the ability to have more than 1 floor at a certain x coordinate and potentially have ceilings). As it stands, the framework only supports a single floor height and no ceilings per x. Inherent in the idea of ceilings is the idea of low ceilings; the player was supposed to be able to roll or crawl, depending on their speed, under such obstacles by pressing down.

    What went right:

    1. Graphics – I think the graphics were a great success. At this point, those of you who have played the game are probably raising an eyebrow and wondering whether this was supposed to be item 6 in the above list and only ended up here accidentally. For those who haven’t, here’s a screenshot:
      screenshot
      Frankly, the graphics suck. Despite being a person, the player has no head and no appendages, and only a rectangle for a body. Similarly, Real Live Avatars Inc, who by virtue of traveling the galaxy we know must be very technologically developed, are represented by a simple beam into the sky. The reason the graphics are so bad is two-fold. First of all, I’m not an artist; my best is only ever programmer art. And second, I took Baby McFunkypants’s advice. I didn’t waste time fleshing out the graphics, but rather tried getting something playable ASAP. Had I spent time on impressive machines on the part of the company, or appendages on the part of the player, I might not have finished.
    2. Physics – I made it from scratch without any tutorials, libraries, or previous experience with in game physics. Each case in the algorithm for deciding the player’s motion is based on real physics, but by virtue of it being composed of various cases, the result is “weird” (the first person to play the game said that they liked the weird physics, so I don’t mind the label). Since I made the thing from scratch, there are several idiosyncrasies which probably contribute to the weirdness. For example, while jumping, none of the keys do anything.Another example is how jumping works. When you press up, a vector in the direction of the normal to the surface where you are standing is added to the current velocity vector. Thus jumping on an upward slope pushes you back towards getting caught. In order to find the normal, I needed to find the slope of the tangent to the surface where you are standing. I approximated by using the secant between the point on the ground one to the right of you and the point on the ground one to the left  of you. Unfortunately, this results in the first bug: If you stand right before the ground drops off, then when you jump, the point one in the direction of the drop is much lower, resulting in the jump propelling you almost horizontally. I have no clue what caused the second bug: sometimes, you get stuck on the edge of a drop. You would expect to fly off, but instead, you suddenly stop.
    3. Code – Quite accidentally, my code ended up very organized. Usually, it sort of builds up in a couple of classes. This time it didn’t. I could probably tell you exactly where in the code any specific functionality came from, and what any piece of cod does. I could probably draw a diagram of the way the game was structured without looking at the code.
    4. Hosting – I placed my last LD entry on my dad’s website. It kept crashing and people couldn’t get to the game. This time, I got lucky. the31 graciously offered to lend me a sub-domain of his website to hold my game. I took him up on that offer, and my game can now be reliably be accessed. Thank you the31!
    While there are more cons than pros, closer examination shows that the pros are much more significant. Hence, regardless of how Real Live Avatars Inc gets rated, I’m satisfied :)

    Thanks for reading,

    —
    Mikhail Rudoy

    Tags: flash

    The Vault is no longer impermeable

    I found out today that the last level was impossible in the game I submitted last night. This was due to some last minute changes that I thought were too small to merit testing.

    Oh well! It is at least good to know that players made it that far in!

    I fixed that level; CLICK HERE FOR THE UPDATED VERSION.
    Or CLICK HERE FOR THE SUBMISSION PAGE – the update is linked on there as well.

    The leaderboards are growing, and I am both sad and happy to say I’ve been dethroned on all levels – except of course that last level on which hamburger holds the first and only score.

    Tags: bugfix, impossible, post-compo, update, vault

    Glissaria Timelapse

    I put it off long enough! Here’s my timelapse video of me creating Glissaria:

    Timelapse

    I have to say, reliving an entire weekend of your life in 6 minutes is kind of fun. :)

    You can rate and play Glissaria here:

    Glissaria

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    Caramelo

    Hi,

    This is my first time in Ludum Dare, I don’t know if you already saw it but anyway I would like to get comments from you if it’s possible :).

    This is my entry for the competition: http://is.gd/qrkSjE .

    Maybe it’s a bit annoying that you have to download the game instead of playing online but I worked in XNA, next time I’ll try to do it easier and use Flash.

    Here is a screenshot of the game, as you can see it’s very simple, a platform runner. You are the rounded piece of candy and the goal is to escape from the walrus. I hope you enjoy it.

    Caramelo screenshot

    Broken comments!

    The comments section on my submission page (for Goat Milk) is broken! HALP!

    Finally got the game up and online!!!

    That’s right, I finally uploaded the game, with 2 minutes to spare! And after trying about 5 time times, I managed to complete it (I guess a one-level game’s gotta be hard, huh?) with a score of 2605, try beat it 😉

    -Will be adding a scoreboard within the next few days

    Tags: jam, score, sheep, upload

    Enrique Iglesias’ deadly a capella performance in a mall – Elgriego – Jam Entry

    It was supposed to be Flash, goddamit. But the Greek… he owns a Mac with Gamemaker. And he cannot code a single line.

    The Greek listened to Enrique Iglesias Escape Album the whole weekend. He should go see a shrink or something.

    Right now, the Greek is sleeping. He told me to promote his game. Right. He deserves to have nightmares. He made his game for OS/X! But we love the Greek and maybe we will port his game to Flash, make some original artwork and polish the gameplay.

    Enrique Iglesias on a game? Only the Greek can come up with something like this. He wrote some description before passing out:

    In 2001 people in the United States were terrified. Something terrible had happened. Something that frightened even the bravest ones. Enrique Iglesias released a new album in English: Escape.

    There was more. Enrique decided to make surprise appearences around the States. In shopping malls. It was said that listening to his new songs would blow your mind. Literally.

    In the game you are a shopping mall security guard. You should protect visitors from him. You should find Enrique Iglesias among the visitors and click on him. Then, people could escape from Enrique.

    But fail and people would listen to him.

    More info: http://www.ludumdare.com/compo/ludum-dare-21/?action=rate&uid=5634

    Download (OS/X): http://dl.dropbox.com/u/2051675/EnriqueEscape.zip

    EXTRAS

    Who is Enrique Iglesias?: http://bit.ly/WhoIsEnrique

    Listen to Escape album: http://tny.gs/EnriqueEscape

     

     

    Tags: LD #21

    Done!

    phew, this was tough!! I’m way too tired to write a post mortem right now, I wanted to enter the main compo, I couldn’t make it, but I submitted it to the Jam.

    3 days of non-stop work. I need a rest. I put a lot of heart into this game, I hope somebody can play it and appreciate it :)

    cheers!

    EDIT: Timelapse video is up :3

    YRGBO Timelapse

    Spiders v. Aliens post-mortem

    With all the server problems, I wound up using twitter (for pretty much the first time) instead of posting journal entries here. I did take timelapse screenshots. I just need to figure out how to turn them into a movie.

    Anyway, let’s see:

    What went right:

    • Flixel  turned out to be a great choice. The debug layer (available by pressing the backquote key) was slick, and every time I went looking for how to do something, it turned out flixel had a simple way to do it built in.
    • DAME completely rocks. It’s a lot more than just a tile editor. I was able to set up initial states for each sprite (dead vs live aliens, powered vs unpowered machines) and even set up relationships (this lock powers these portals, and this portal leads to that one).
    • Pomodoro technique (when I remembered to use it) helped me be a lot more self-aware. The break time would come up, and I’d realize I’d drifted into a low priority activity like polishing graphics instead of sticking with the core work to be done.
    • Having a walkthrough. Maybe that’s the wrong word, but once I mapped out the basic solution to the game, it was easy to see what items and features needed to be in each room so that by the time the player makes it around to the other side of the ship, he knows everything he needs to know to solve the puzzle (ie, how do you actually reach the door that you can see from the first room?). I actually mapped this down to narration that was supposed to appear in each room, for a “learn as you go” experience. Even without the text on screen, I think there’s a pretty clear logical progression to the encounters.
    • Font-based graphics. Except for the ghost and the background tiles, pretty much all the graphics came from standard fonts. (Webdings for the spiders and aliens, Consolas for the player and most of the other things) Even the hero’s ship outside is made from various symbols.
    • The “grab/drag” mechanic. I really like how this turned out. I’ve been playing a lot of Arimaa lately, and I had a hunch the push/pull mechanic would work well in a video game. Once that was working, lots of other neat effects just sort of happened: things like slinging spiders around, carrying items through portals, and letting the ghost drag objects through walls.

    What went wrong:

    • Learning curve: most of the time I lost had to do with not knowing enough about flixel. Most of what I wanted was easy to find, but one or two small gaps lead to massive disasters. In particular, my dragging and portal code both tried to move sprites around by setting their x and y values. This appears to work, but causes all sorts of trouble with collision detection. All I needed to do was also set last.x and last.y but that small oversight had me pulling my hair out for hours, because I thought the problem was with my game objects. I think the fix here basically just boils down to experience.
    • Polishing Early. I spent WAY too much time on the graphics for this game. It was originally going to be straight ANSI art (Kingdom of Kroz style) but I got carried away, and pretty soon I had gradients and two layers of shadows and way more detail than I needed. I should have limited myself to solid colored rectangles until I had the basic gameplay working.
    • Not having a walkthrough up front. In Arimaa, you capture pieces by dragging them into traps, and I was going to use that idea, too. I also planned to use expand on the push/pull concept with machines that moved whole rows or columns of boxes. So I drew graphics and wrote at least some code for all that, when it turned out I didn’t really need those things (mostly because I hit on the idea of using the spiders as a weapon instead of as an enemy). There’s also a fully working implementation of on/off switches that I wound up not using. So lots of waste in this area. The walkthrough really clarified things for me, but I didn’t do it until the second day. Next time, it’ll be first thing on my list.
    • Too many contraptions. I really thought I was aiming small, but… portals, dragging, machines with various states, keys and locks, combat and health, and an NPC that passes through some walls but not others… That’s quite a large scope for such a short game. I’m actually pretty proud of all the neat gizmos in the game, but in terms of a 48-hour contest, the cost was too high.  Toward the end, it was too late to design a new puzzle, so I was locked in to finishing the implementation for all the machines instead of adding the narration, which would have wrapped everything up into a nice coherent story. Here again, the walkthrough would have helped, and perhaps even an iterative walkthrough: start with nothing but the hero and an exit, make sure it works, then design and implement one obstacle at a time. At least that way the game would always be playable start-to-finish and I’d have more flexibility in choosing what to add next. Basically, I should have adopted a more agile development process.
    Anyway. I’m exhausted. Gonna go for a swim here and get some sleep so I can start checking out all these other games tomorrow! :)

    Advantages in using an existing Library

    Hi,

    There is nothing like LD to clear up misconceptions and bring you up to speed:)
    Since the a few LDs ago, seeing some brilliant games made in Flixel I’ve always wondered what are the advantages of using a Library like that?
    (Please be patient, I was quite a noob at game making for the web, let alone a 48h competition)
    After all, it seems that all the tools that are available in AS3 API, are sufficient to create great games quickly.
    After this LD I finally understand, even though I do not use that library because I enjoy learning to make stuff myself, I now know why it is so great and helps a ton.

    Here are some reason you would want to use Flixel instead of writing more code yourself:

    1. You can talk to people about something in Flixel, there is a community.
      Having conversations is beneficial to learning for beginners and advance users.
    2. You get every tool neatly organized and handily available during the competition when you really need.
      Doing well in the competition may require preparations and knowing Flixel well covers that.
      If you write the code, you still may need to organize it properly.
      You may have a ton of code but is it handily available?
    3. The tools are tested for bugs and they do what is expected.
      If you write it yourself, you still need to test for bugs and even if you do, one person testing in 48 hours or a few weeks does not match with ? thousands that are constantly testing it during the whole year.
      Having bug tested code saves you unwanted surprises.
    4. You get really high performance, this is something I did not know. These tools are tweaked for high peformance.
      I made a huge maze for the competition and I know Flixel handles tile based maps, however I did not know it does it really fast and takes advantage of the best ways this can be accomplished in AS3.
      I actually learned and used Bliting in AS3 for the first time this LD which was really exciting to me.
      Flixel would have done that for me and I wouldn’t even need to know it is doing it. The same principle is true about other tools. Flixel offers an answer to the need for speed. This is very important for games where low frame rate ruins the experience.
    5. Bottom line: If you understand how Flixel works, you can focus much more on the game instead of writing the “low lvl” functionality.
      Sure writing an engine is a wonderful learning experience but when you compete to make games, you can use this precious time to work on other aspects of the game itself.

     

    So basically I’m not planning to use it but by I highly recommend it for most AS3 based game projects.:)
    Now I finally know why. If you have any comments on the advantages of using Flixel please share.

     

     

    Comments

    marudziik
    23. Aug 2011 · 18:30 UTC
    There’s also an alternative – FlashPunk, which I was learning during the compo and it went quite good. Flixel is next on the list. :)

    However, your question shouldn’t be really connected to the competition. Using libraries for making games is something necessary anyway. As in “it’s very nice that you want to do all the stuff by yourself, but inventing a wheel all over again is generally not the right thing to do” – at least if you want to finish any game at all.

    Done done done!

    Here is a gameplay video (*spoilers*):

    If you want to try it out yourself, there is a fancy new windows build courtesy of Wallacoloo that you can try out:

    LINK

    Please give it a try, and don’t forget to leave a comment if you have a moment!

    I kind of like how this game concept turned out, so perhaps I will try developing it post competition into something more substantial.  For now though, it is time to sleep!

    GaolBreak – Postmortem

    This was my first Ludum Dare competition (but not my first 48 hour competition) and I’m very happy with how my game turned out. When the theme was announced, I was disappointed — I didn’t think I could come up with anything good, but eventually settled on a sliding block puzzle with patrolling enemies.

    By the end of Friday, I had all the sprite-work done, a player that could move around the screen and some basic level collision stuff. Saturday was much more productive, and by mid-afternoon I had most of the game mechanics finished.  Saturday evening was divided between making music/sound effects, making title and instruction screens and trying to come up with more levels.

    On Sunday I made the animation smoother (originally characters moved an entire square with each step; a quick hack changed this to a fluid motion over several frames), added some slightly better music and introduced pressure switches.

    I also redesigned all of the levels except for Level 3, making them more compact and placing more emphasis on the puzzles. In hindsight, leaving Level 3 alone was a bad idea, and it seems like the game for most people ended up looking like this:

    …which is a shame, because Levels 4 and 5 are my favourites.

    Lessons:

    • I need more practice with LMMS/Musagi/Sfxr.  The music and sound effects definitely need work.
    • Programmer art can sometimes be charming. 😀
    • Running all the way across the screen to reach a puzzle is not fun, and neither is a puzzle so dependent on perfect timing that it frustrates people.

    Comments

    Felipe Budinich
    23. Aug 2011 · 13:08 UTC
    “Running all the way across the screen to reach a puzzle is not fun, and neither is a puzzle so dependent on perfect timing that it frustrates people.”

    Beak Free – Timelapse + Postmortem

    Beak Free Birdie

    Beak Free Birdie

    Entry: http://www.ludumdare.com/compo/ludum-dare-21/?action=rate&uid=5470
    Timelapse: http://www.youtube.com/watch?v=HQfTh-Z26wU

     

    This is my first entry to Ludum Dare, and one of my first Unity games, as I’ve only recently started using it. Development went fairly well and I was on time for most of my goals, I only had about 8 hours sleep during the 48 period though, but not all of it was spent at the PC.

    What went right:

    – The competition began at 11AM local time(JST), meaning I basically woke up normally and was right into dev
    – My game idea was really simple to pull off, in fact, the core gameplay was done in about 30 mins, the rest was spent polishing everything
    – The artwork turned out better than I expected

     

    What went wrong: 

    – It took me over 5 hours to come up with a game idea based on the theme
    – My library had some bugs in that I spent some valuable time fixing
    – My library lacked some features like the ability to swap out textures for UI elements, this meant I couldn’t implement a mute button in time without using major hacks
    – I didn’t have any plan about how to make music, so I didn’t
    – I didn’t have  any generic code to handle 2D animations, so I had to settle for very basic texture swapping which took a while to write and didn’t allow me to implement anything complex
    – Apparently the sound effects caused people to want to vomit, even though I thought I set the volume quite low :'(
    – I had no code ready to make creation of collision meshes easier

     

    Summary: 

    It was a great first attempt, next time I’ll be far more prepared and way more code ready to save me time during development. The IRC is cool, it’s full of helpful people and the structure of the competition is very nice. Next time there’ll probably be even more entries, so that should be fun!

     

    Some Afterthoughts

    I finished my game over a day ago. I expected the event to be over then too. But it certainly is not! There are still 200 people hanging out in irc! I very much like the social aspect of this event, so I’m trying to participate in that a bit more. I’ve uploaded a timelapse of me developing my game, “Who let the robots out?”

    I also helped some kind fellow port his game to Windows, which is something I’ve never done before. It’s always been the other way around for me, porting Windows applications to Linux. Can you believe that Mingw doesn’t implement all of the standard library? Some functions, in particular drand48, are completely missing! Perhaps this was just an oversight?

    Getting back into the swing of things has been pretty difficult. I had a hard time sleeping during the competition, and briefly broke my polyphasic sleep schedule since I was too excited to nap. And it doesn’t help that tennis just started today and I had to do an hour long run. I also look back onto the project I was working on up to the competition, and think “there’s no way I can go back to the normal, slow-paced programming I normally do. But if I write sloppy code on such a big project, I’m screwed”!

     

    Bunnies, Back Into Your Cage! – Post Mortem

    “Bunnies, Back Into Your Cage!” was my second Big Ludum Dare game, so I didn’t expect anything surprising here. Of course I was wrong.

    WHAT WENT WRONG?

    1) Idea and tools

    I began my 43 hours of game development (I woke up ca. 5 hours after the theme was announced) without any idea. I already knew I wanted to use Unity3D though (because I use it at work and made my last LD game with it), so I tried to make my concept fitting a 3D engine. After some time I had the idea of  a guy running faster and faster as long as he doesn’t hit anything concrete. If you run fast enough (e.g. after running in circles quite some time), you could break certain walls and destroy enemies. Objects would have different values to which speed they react.

    So I started Unity3D and did a small prototype. One of the first problems here were the physics though. Smashing through walls only looks good with falling and tumbling pieces of trash, but physics aren’t much controllable. As soon as the player runs into something, he becomes slower. When there are many bricks (sized 2*1*1 meter or so) lying around, the player becomes slower constantly. Which is tedious and not much fun.

    The lesson here: Don’t add physics unless they are part of the core gameplay.

    2) Motivation

    In the end, the prototype just didn’t make any fun even after some hours of work, so I started to distract myself with things on the web and IRC. Motivation was completely vanished – the fact that the theme “Escape” wasn’t really to my liking didn’t help much either. But as soon as I realized that I was more procrastinating than working on the game, I stopped. Grudgingly, I closed Unity3D.

    Even though this was bad at least it led me to using Flash, with which I made my final entry: “Bunnies, Back Into Your Cage!” – a game about capturing bunnies that escaped.

    3) Again, theme

    My second idea didn’t fit the theme any time. I had the idea of a really minimalistic Minecraft which I would call “Pixelcraft”. From there, I began to write code, with more motivation, and at some point, the prototype was playable, and even a little bit fun.

    Of course, it was missing the “Escape”. :(

    4) Controls

    The player controls were wonky from the beginning, and still are wonky. “Tedious” is the adjective I hear most as feedback to my game.
    This is because everything moves/works block-wise. A block was originally meant to be pixel-sized, so this is why I chose to do the movement this way. Now, to add a little bit detail, the blocks are 8*8 pixels (they really are 32*32 pixels, but you can’t see that, hehe), and the controls feel strange. It feels like you often can’t direct the protagonist where you want him to be. Of course, I have no problems with the control scheme, but I am the creator, so this is expected.

    The lesson here: Take the time to let your game test by others. They will crush your ego by pointing out all the bugs, but it will be worth in the end. I think. (Of course, the *real* problem is that in the Ludum Dare IRC channel were 330 people who all needed game testers. Try another channel or your girlfriend then. ;))

    5) Being not Notch

    With ~600 entries, not being the creator of Minecraft can draw some of the attention off your entry. You have to compensate it with marketing. And like most people, I hate doing marketing.

    Lesson learned: Be notch. Top notch!

    6) inudge

    I like inudge, but the music sounds just like the one from my last entry. Also, there still is no way to export to WAV or MP3, so I had to record the tune with Audacity. But whatever recording method I tried, it either didn’t record or it all sounded strange and noisy. Even other recording tools made it sound like some horrible sound experiment.

    The lesson learned: Sometimes, just rebooting your computer can help. It’s some kind of magic.

    WHAT WENT RIGHT?

    1) Flash. And FlashPunk.

    I just began to love this combination, because you get results so fast. I started my second try at 18 o’clock, so I only had 34 hours left – sleeping included. Yet I came around to make full game, with levels. Cool!

    2) FlashDevelop as a level editor.

    This is a screenshot of my “level edtor”.

    As you can see, you can edit not only rows, but also columns with FlashDevelop. This made it much easier to edit my ASCII array level definitions. Also, I am happy that I decided not to dwell into level definition files, but just hardcode the whole thing. I got levels pretty late, about 8 hours before submission, and yet it didn’t feel like “too late”.

    3) Pixel art.

    I often hear “nice art” or “I love the graphics” for my entry. This baffles me – everything is just 8*8 pixels. It was a piece of cake to do the graphics. I don’t even have animations, or different frames for walking left/right. OK, color selection may be a factor, but that isn’t hard to get right, either. Just choose colors with nearly the same saturation. Bang, instant good-looking art!

    The lesson here: Minimalism is for teh win!

    …

    That’s it for now. Thanks for reading, and don’t forget to play my game! :)

    Tags: flash, LD21, post-mortem, postmortem, screenshot

    How I rate your games for theme

    In case anyone is wondering, here’s how I reason when I hand out Theme-ratings.

    The main question is how important is “escape” to your game? It’s very easy to start any game with a text box saying “you have to escape this XXX!”, but in how many of these games could you replace that sign with “you have to find the treasure” or the “…evil XXX hiding in his dungeon”?

    Many, you say? Indeed. If you could simply exchange one or two dialogs and the game would still play exactly the same, that’s going to give you a lower Theme score. Not necessarily a 1, but low. Notch’s game is an example of this. Overall it’s a fun game and incredibly impressive for being made in 48 hours. But IMHO it’s more a game about killing monsters and gathering trinkets than an escape themed game. I’m not going to give him all 5s just because he’s Notch 😀

    On the other hand, if something is so intimately tied to escaping that it would be an entirely different game without it, you get higher scores. If you look at ChevyRay’s Flee Buster the escape (though technically, it could equally well be “chase” but I’ll let it slip this time) is very central to how you play.

    And I might have to add, if you write a story driven game and it’s about escaping, it’s of course possible to get a high score – if the story actually is about escaping. But I’m not sure there are too many of that kind here, most games I’ve played yet focuses on gameplay and mechanics. Nothing wrong with that though, there are a lot of good games where the story is unimportant! :)

    Finally, what do I consider perfect (theme) score? I had a look at my ratings and the only game that has a 5-star theme so far is Gjarble’s Beyond the Fourth Wall. In other aspects, it might not rate as high as Notch and ChevyRay, but it’s a solid mini-game 100% dedicated to an escape. Flee Buster could still be a cool platformer, but take away escape from BtFW and you pretty much have nothing left.

    So there you have it. Luckily there are many aspects to give points for, and personally I’m basically focusing on humor and theme (guessing I’ll have pretty low scores for overall and fun, because as a game it really sucks). If you’re going for a high theme rating, or perhaps got lower than you initially expected, hopefully this provided something to think about.

    Now I have to go back playing all your entries. Having great fun doing so! If you know any game that took good advantage of the escape theme, please post a link in the comments!

    UPDATE EDIT:

    I also rate [theme] based on how originally it is used. Bonus points for not using the most simple and common “escape from prison-like facility” and “escape from XXX chasing and trying to kill you”

    Tags: chevyray, escape, gjarble, notch, ratings

    Comments

    23. Aug 2011 · 04:41 UTC
    What about escaping from an infinite map?
    23. Aug 2011 · 11:09 UTC
    Ha, my game is exactly that!

    Newer & Better

    I used the extended submission time (I started very late) and made jam my game much better!

    • Resampled my song so there’s one simple download
    • Fixed a HUGE white-whale of a bug that was a show-stopper and took me over an hour to track down – and now I don’t remember what it was :/. LOL.
    • Added another level and made some fuel tweaks to make the game more accessible and fun
    • Cleaned up distribution zip (all media is in media folder :) )
    • Made a slighty less cynical and more rewarding win screen

    This game is FUN! At least, in my forgiving eyes it is ;). I submitted it less than 2 minutes before the final-finalest deadline and I just finished beating that version. I’m brimming with pride!

    I’ve really enjoyed this whole experience and I want to thank the awesome people who put in extra work behind the scenes to make LD happen!

    There’s a time-lapse (with plenty of time-lapses 😉 ) on the way but if you haven’t yet,

    GO PLAY [Jedi’s] ESCAPE VELOCITY!

    The Melancholy of Right 31

    (EDIT: You may want to play the game first. It’s a platformer game about throwing blocks on enemies. Timelapse: http://www.youtube.com/watch?v=TNpejFN19pQ http://www.youtube.com/watch?v=E5rtT8qZgyo )

    Right! 31 hours of coding out (yes, I was fixing bugs after LD), and I could write up an explanation of how the game worked.

    Main.java: It was supposed to run either the Game class or the Server class. That’s about it.

    Common Files:

    Block.java: Defines the block behaviour. Instead of playing with (co)sines, I decided to hardcode the directions, getting:

    This is how real men write last-minute hacky code.

    Yeah, it wasn’t as good as you think.

    Enemy.java: Enemy behaviour. Falling code was a copy-paste from the player code in Game, and the rest is straightforward.

    Map.java: Map code. Also, the most complicated part of the game.

    First of all, “if(r>11) enemies.add(new Enemy(this,(i*16)+4,(rand.nextBoolean()&&(currpos<6)?(((currpos-1)*16)+8):((height-1)<<2)+8)));” Try to find out what this code does. DO IT

    Second of all, it stored the player movement checking code. That wasn’t half bad for a simplified collision detection attempt, but it could be done easier (and faster (and better)).

    Third of all, map painting code.

    WHAT IS THIS CARP

    This shows how hacked it was (I was adding wraparound near the end, mostly).

    Fourth of all, I had a very easyway of checking whether a player was on. If they weren’t,

    	px[i]=-1299293;
     py[i]=-9238223;

    Straightforward, isn’t it?

    Fifth and final,

    THROB OFF

    block throwing functionality.

    MyRandom.java: A version of java.util.Random with a visible seed. Was experimenting.

    CLIENT CODE:

    Canvas.java: Basic canvas rendering code. Not half bad.

    Game.java: My… what? It handled player movement, key handling, ticking map and network code, almost everything D:

    First up,

    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

    WAAAAAAAAAAAAAAAAAAAAAH IM SCARED

    That leaves the key handling mostly alone, other than a trick that made moving faster when jumping, but… meh.

    JUMPING AND FALLING WHAAAAAT

    The Integrated Data Sentient Entity, after analyzing the subject, decided that a comment on this subject is not necessary.

    Net.java: Fairly sane (but buggy) networking code.

    SERVER:

    Server.java: Uhh… fairly sane server connection acception code. Except this snippet:

    LONG LINES

    Client.java: Again, fairly sane networking code. Only pretty buggy.

    How did I manage to LD without a PC?:

    Battleship ASUS (EEE Pad Transformer) running a quickly hacked up Ubuntu. Which I had to fix 6 hours into the LD before I could finally start:

    Battleship ASUS in action

    Obligatory anime girl album cover on iPod connected to surround speakers included.

     

     

     

    What did I learn?:

    • Race conditions will destroy your sanity. ONCE AND FOR ALL
    • Sometimes, generic code is better than making a solution yourself. Not always the case.
    • I should try to plan out work more than “Singleplayer: Day 1, Multiplayer: Day 2” next time.
    • NEVER WORK ON GNOME AGAIN
    • BUGTEST EVERY SECOND

    Thanks for reading. If you tl;dr, :<

     

     

     

     

     

     

     

     

    Timelapse of NO ONE CAN STOP THE HARDWARE HERO!

    Here’s the timelapse of me making my LD entry:

    I made it with chronolapse, taking screenshots every 20 seconds for the 2 hours of development.

    If you haven’t played my game, you can check it out here. I made it with Multimedia Fusion 2.

    Incredible! 599 Entries! Time to rate games!

    Absolutely incredible. All of us are amazed at the sheer numbers we did this past weekend. When the smoke cleared, we were left with 599 entries! To compare, Ludum Dare 20, an event taking place just 4 months ago did 358 entries (288 Compo). Yowzers!

    Of course, this weekend wasn’t without its share of problems. You can visit this link to read my postmortem of how things went Saturday and Sunday.

    Even still! After getting the site usable, Phil had to come back several times to HEAVILY optimize the site code. We still can’t even turn the sidebar back on yet due to the extra load! Yikes!

    But no matter. We are on top of this. Lets talk judging.

    For the next 3 weeks, entry voting (judging) is on. Everyone that entered is strongly encouraged to play and rate games. The Rate Entries page will give you a custom random selection of games for you to play. The more games you play, the better the averages, and better the results. Still confused? Check out this guide by matthias zarzecki.

    And remember! Only people that submitted a game can vote!

    Still no matter the results, be proud of yourself! Whether you finished or not, you did something amazing this weekend! You did in 2-3 days what large companies take months, even years to do (well not exactly, but you get the point). Job well done!

    That’s all for now. Thanks everyone for coming out and making this our biggest event yet!

    The Melancholy of Right 31, part 2

    I guess I could write up how I coded the thing as well. (The thing being my game, also time is shown from 00:00 being the beginning of Ludum Dare. Add 4 hours to get the time in my timezone)

    Beginnings:

    A day or two before the Ludum Dare I realized i’m going to my grandmas, which meant no PC. I was, therefore, stuck with an Asus EEE Pad Transformer – a tablet running a Tegra 2 clocked at 1.2GHz/core. It also had two cores.

    Thankfully, someone fixed the build of Ubuntu available for it to support the touchpad, making work on it a few times easier. Granted, the driver was quite experimental, but I used it anyway.

    After fixing the WiFi issue, I was ready to go.

    06:00: Let’s go!

    I downloaded the JDK, then XChat and Pidgin. Configured everything so I could easily and effortlessly work. I also set up scrot to take screenshots every minute. On this part, no problems appeared.

    06:50: Coding!

    First, I wrote the basic canvas code. Next I added scaling for it (I decided lo-res pixelart is easy enough to draw for me.). It scaled from 160×128  (the resolution of the game) to 640×512  (sorry, VGA screen owners, you’re out of luck).

    Next, I drew the tiles. I decided they’re going to be 16×16, creating a tile resolution of… 10×8. Yes. That made everything easier.

    Then, I created the code to load tiles.png and render it from an array. Good.

    07:30

    After a while, I added code to make it scrollable. After a few bugfixes, it worked. By 08:40 into the LD (I had breaks, mind you) I drew and rendered the player properly. Finally, I coded a simple mapgen (whose general concept stayed up into the final).

    08:45

    Until 09:30, i was preparing mencoder/ffmpeg for timelapse rendering. Then I took a break. Up to 10:20 i was busy IRCing and IMing, as well as replying to people on /compo. Then, another break.

    11:00

    At this moment, I started adding physics for the player. At 11:45 I was improving the mapgen code.  Then, mostly community activity from 11:50 to 12:30. Finally, another break.

    12:50

    I tried setting up the microphone so I could live stream. That failed (stupid buggy drivers). At 13:00 I was designing the enemy “bug” graphic. By 13:40 they kind of worked. Major IM/IRC activity until 14:20, then a break.

    From there, I forgot to timelapse, but IIRC i was improving enemy/player physics code.

    16:20

    Code/IRC intertwinned until 17:00.  Then I released the first beta (of mostly working singleplayer). I showed it off to people, finding bugs, chatting, procrastinating and fixing a bug until 17:45.

    SLEEP

    (remember, it was 21:45 in my timezone!)

    27:07

    I’m up and running again! Time spent chatting with GreaseMonkey and coding until 27:25, after which I went fully into coding mode. At 27:45 i released another beta on IRC, because why not? I spent time discussing it with people until 27:53. Then, EARLY MORNING LUCKY STAR WAKEUP SCHEME

    28:15

    Until 28:35 I was bugfixing. Then, I designed the “story” title board until 28:50, at which point it was in the game. Then I started work on wraparound and called off singleplayer as complete. Mostly chatting until 29:30, after which I rendered the first part of my timelapse (on an ARM tablet, in “high” quality!) and uploaded it to YouTube.

    30:30

    Hardcore mutliplayer Googling/coding with minor IRC. (I had some knowledge on how to code multiplayer right from a sandbox game, 64pixels, that I made in 2010-2011.) At 31:00 I took another break.

    33:00

    By then I had multiplayer about 50% done. But enemies were a LAGFEST. Too many packets, even for loopback :< Tried fixing until 33:20, then IRC. Fixing/IRCing until 34:15, then break.

    34:30

    Screw enemies, I was trying to get block throwing work right. Of course, I couldn’t, because ENEMIES ATE ALL THE BANDWIDTH (and CPU). Then, IRC from 35:00–35:10 and I was forced to go outside for 3 hours.

    38:10

    THE PERFECT IDEA – I made the client do enemy movement prediction! Sure, I had to throw out random movement but IT WORKED! Multiplayer was closer to being completed than ever. Hardcore fixing until 39:10.

    40:00

    Hardcore fixing/online testing until 42:00 ON MY OWN, FAST COMPUTER. Yay!

    42:30

    I realize I made a fatal bug after release. Can’t sleep.

    48:30

    I wake up, realize I can’t fix the bug anymore. Major depression until 49:50, including crying and loss of sanity.

    50:10

    PoV saves the day, telling me crash bugs are fixable. Attempting to fix a few (with lots of breaks) until…

    57:30

    I fixed all but one, released a “fixed version”, then stopped it.

     

     

    Comments

    23. Aug 2011 · 06:22 UTC
    I love reading posts like these.

    Escape from Dorf Bay – Post-mortem & Lessons Learned

    Today I posted EfDB post-mortem.

    I made the fix everyone that played requested, now the navigation arrows will always appear, instead of only when your mouse cursor is hovering them.

    This is a simple problem, even simpler to fix, but annoied a lot of people.

    It also is a problem that, without proper testing, will surely go unnoticed, as when I was deving it, I thought every path seemed very obvious, and everyone would be able to find their way easily.

     

    I also learned that sometimes you don’t need to do the art to make a game, but without a script, it’s way harder…

    Time Lapse

    Here’s a time lapse of my LD21 entry! Enjoy.

     

    I hope to write a post-mortem in the next couple days as well, time permitting.

    AWOL – My Timelapse

    Hey guys, finally got round to editing together my Timelapse footage! For your viewing pleasure!

    enjoy!

    Presentation of Faceless

    Hello there. May I present to you my jam entry: Faceless. I hope you will like it, or at least the idea of the game :p

    You can test it and rate it there: http://www.ludumdare.com/compo/ludum-dare-21/?action=rate&uid=5454

    Faceless Screenshot

    It’s the first time I participate, and I had a lot of fun improvising a game within 3 days.
    As I didn’t release a single game nor demo for some years, I feel relieved that it can still happen to me haha.
    It’s a nice and refreshing boost before going back to my main project ( http://www.youtube.com/watch?v=g4O71nPsJmo ).
    I’m definitely becoming a regular, too bad I couldn’t set up a timelapse this time tho.

    Good luck with your games,
    DragonSix back to rating!

    I could not escape : Leveldesign

    I entered this LD21 with my own additional theme : “No level Generator”.

    I’m designing game for a long time now and I have always eluded the leveldesign problem by programming levelgenerator for any game. Breakout generators, sokoban generator, shmup generator, etc.
    I was pretty proud of it. Knowing that my game have sort of infinite ammount of levels feels powerful and trying to make them fun althought they were not craft-handed was challenging.

    Back when I was 14, My iconic game was Frontier Elite 2. I had no clue what a random seed was, but having a universe on my 3.5 floppy disk sounds magic !

    When I started to read the LumdumDare blog, I was surprised by the time spent on leveldesign. Filling a .txt file with “O” and “X” was the kind of thing I totally wiped of my mind. It feels like and old age thing.

    That’s a very twisted point of view, but I cant help thinking like this

    Enough with the psychoanalysis, what about the game ?

    In Rainbow Jail I tried to design the level instead of procedurally poping block and baddies by reversing puzzle solution.

    and… Hell, it’s hard work !

    For manually designing these kind of puzzle, you have to think hard ! First you have to make some easy level. Not only player must achieve them by doing almost anything, but they must feel like they made some wise move to do it. After that, more challenging levels. For achieving this, you have to test.

    A lot.

    And I’m awful a this too.

    Spending all my time playing my own 48h game seems like a nonsense.

     

    The hope : A Solver !!

    So of course, I want to create a a LevelSolver that will check for me the ammount of solution for the current level so I can, just by blindly add or remove block, navigate between 0 & infinite number of solutions until I reach the “only 1 path” holy grail.
    Well that would still be leveldesign, but it seriously take the generator twist. And moreover dealing with the fact that player can push some blocks ( sokoban factor ) is not making it easy.

    Back to reality

    I had to face the harsh reality. For every single level, I will have to check

    •   is my level possible to finish ?
    •   is my level fun ?
    •   is my level erhh.. beautifull ?
    •   is my 12 move ultra-smart solution is not overlaped by a 2 move solution I didn’t notice ?

    I did my best and I think the result sucks

    The problems :

    • My urge for quantity over quality made me add those grey dots (random color block  ) so I can easily create enough room for my game. Most of these levels are untested and boring.
    • Not enough testing : maybe 10% of the room are truly tested. It turned out that making a good level take me 30-45minutes. I should have spend 6-8h on 12 good level instead of this zelda-ish interconnected room map.

    The good sides :

    • Creating an ambiance for your game is easier with a manually drawn map, I could for example create some kind of jail look level.
    • Thinking and testing each of your level really shorten the distance between you and the player.
    • Testing specific features of the game is easier : Just draw the situation and test it !

    I wish I could design fantastic puzzle like chocolate castle, or better,  mix procedural generation and leveldesign to produce gem like spelunky…

    Well you can’t become a good leveldesigner in 48h, but a sure thing is the LD competition help me to progress in this way !

    I Will Ramble Over Your Game!

    Oh hi there, you’re looking fabulous today. That Ludum Dare has really done you good…

    I’m dogbomb. I do silly things. One of the silly things I do is play/review/mock/love indie-games on a weekly basis. This week I’d like to tickle a few of your Ludum Dare entries and see what happens.

    I did this last time; it was my 50th review so I decided to cram 50 games in.  You can see how that turned out here:

    50 Indie Games in 10 Minutes

     

    I truly wish I could play/record all of your games, but I can’t due to time constraints, so please leave a note if:

    • You want your game to be played
    • You want to recommend someone else’s game for me to play
    • You really DO NOT want me to play yours. I’ll take you off the list.

    I’m quite kind, but I can understand that you won’t want this British chap with a weird accent pointing out bugs in your 48 hour game or swearing at it because he doesn’t understand it through his drunken haze.

    This is pretty much first-come-first-served, though I already have a small list I’ve put together myself. I will get upset if people WANT to be reviewed and I have to say no… so I’ll close this when I need to, to stop me bursting into tears.

    TL;DR : This dude wants to play your game and put 10-15 seconds of it on youtube while shouting over it.

     

    EDIT: I HAVE A 50+ LIST NOW. YOU’RE TOO LATE FOR A GUARANTEED SLOT IN THE VIDEO. WORTH GIVING IT A GO THOUGH… I MIGHT ADD YOU IF SOMEONE ELSE’S GAME DOESN’T WORK OUT. ANNOYING ME ON TWITTER IS MORE LIKELY TO GET MY ATTENTION IF YOU’RE DESPERATE! 

    p.s. I love you all. Thank you for the great response. x x x

    Comments

    digital_sorceress
    23. Aug 2011 · 10:28 UTC
    Feel free to crash at high velocity into brightly coloured squares. 😉
    23. Aug 2011 · 10:36 UTC
    I’m British – so your accent will fit!

    Go ahead. Love your work so far :o)
    23. Aug 2011 · 10:37 UTC
    Haa, this sounds hilarious.
    23. Aug 2011 · 11:35 UTC
    Sounds like it would be pretty awesome. Please do my game 😀
    23. Aug 2011 · 11:43 UTC
    I love the concept. I’d be really thrilled if Left’d make it on.
    angrygeometry
    23. Aug 2011 · 11:47 UTC
    if you have time/space!!
    23. Aug 2011 · 11:51 UTC
    You were already on the list! :-O Also, I’m from up that way, yes… Durhamish… but I’m in Yorkshire now. My accent is all over the place.
    dray
    23. Aug 2011 · 11:52 UTC
    I made a perfect game for you to be frustrate!
    23. Aug 2011 · 11:52 UTC
    Ah this sounds fun 😀 Count me in if you still have room :
    23. Aug 2011 · 11:58 UTC
    Ahhhh, please don’t let me be too late…
    23. Aug 2011 · 12:00 UTC
    Also probably waaay too late, but this game doesn’t take long, isn’t hard, and you don’t have to take it if you don’t want it.
    23. Aug 2011 · 12:04 UTC
    You could take a look at mine if you have the time! Had a lot of fun watching your previous video.
    23. Aug 2011 · 12:08 UTC
    Hello there, you scroller! If you read this, then that probably means you were too late. :( I’m sorry.
    gokuhd
    23. Aug 2011 · 13:09 UTC
    Oh man! I didn’t read this in time well… anyway, if you have some time at least check it :)

    EscApe Post Mortem

    EscApe was my first entry to Ludum Dare and I did it mainly to learn stuff. I’ve had a lot of programming experience before, but I’ve never done any graphical games. Although I use C++, Python, PHP in everyday manner (work stuff), I decided to go with FlashPunk, having no knowledge at all about either the framework or the ActionScript 3 (besides that they exist) – but being familiar with object-oriented programming, this issue itself didn’t turn out to be that much of a problem.

    I’m quite happy with my creation. I’m unhappy with the code, but I decided on developing speed, not beauty. As this is my first game, and done in only 48 hours, it feels just O.K. in my opinion (that is, I could do better, but it’s not awful). :)

    See below for idea explanation, “what went right & wrong” and playthrough video.

    Entry (rate): http://www.ludumdare.com/compo/ludum-dare-21/?action=rate&uid=5431
    Timelapse: http://www.youtube.com/watch?v=OdJtfPLA9kc
    Full playthrough: http://www.youtube.com/watch?v=WCgw09ZlRhY

    I recommend playing the game instead of watching the playthrough. It’s web based anyway! :)

    The idea.

    I didn’t like the theme that much, and didn’t have any prepared idea. In the beginning I decided only that this will be monkey – related game (“escape” – “esc ape” – “ape”: see what I did there, mwahaha?), rest came to me when I rememberd that recently I’ve seen “Ugh!” gameplay video, a DOS/Amiga/Commodore64 game from 1992. It bringed back lots of memories, since I friggin’ loved it when I was a kid, so I decided to try and make something similar.

    What went right.

    • I used all the time I could get. Compo started at 4 a.m. and I stayed up until then just to see the theme, then I got some sleep. I worked the next day all the time, taking some short brakes, and went to sleep around 3 a.m. On Sunday I worked until 3:30 a.m. or so and then submitted.
    • Ogmo Editor, level creation. I really didn’t expect to be able to pull this one off.
    • Mechanics/Physics. I like the look and feel of them, and that the game is quite hard. I feel the mechanics are quite similar to “Ugh!”, although they could get a little polish.
    • Graphics. I have no talent at all, so producing such animations (especially flying machine, death sequences) was really hard and really rewarding (It’s nice to see that people generally like my flying monkey).
    • Good general workplan. I wanted to have all the mechanics on the first day and do the animation – intensive graphics on Sunday, and this went well. Also, I’ve done most of the mechanics I wanted to do.
    • Timelapse video. Chronolapse FTW! It’s full 48 hours of my life in 7 minutes.
    • I learnt a lot: AS3, FlashPunk (+some drawing). I wouldn’t do this without the deadline, so this is something I’m satisfied with.

    What went wrong.

    • I neglected most of the things to do at the weekend. Without my girlfriend, I would die of hunger.
    • I didn’t check my software and then wasted some time on installing (Audacity), learning (GraphicsGale), or figuring what’s wrong with it (FlashDevelop 4 beta 1).
    • I didn’t prepare. It’s nice to know I still can learn a programming language and make a game in 48 hours, even when not prepared, but a little basecode would get me a long way.
    • Learning language on the fly was a generally bad idea, but it could be worse. I do a lot of programming, but doing more FlashPunk research BEFORE the compo would help a lot. Also, there isn’t a lot of FlashPunk documentation. There are some basic tutorials, but I kinda hoped for more – google helped a lot, but this is something to consider next time.
    • I wasted a lot of time on graphics, having not much of a talent. I should be making more levels instead.
    • I waited with the submission until an hour before the original deadline and the site problems kinda freaked me out (although I managed to submit on time).
    • The code looks horrible. Half-way I decided to speed up with the development, so there are lots of hacks here and there.
    • There is no ending. I had no time to do it.

    Summary.

    It was great! Finishing a game within 48 hours leaves a scent of accomplishment and I feel I REALLY needed that right now. I got really hyped during the development process, especially when I knew the game will be finished (i.e. playable and with graphics) before the submission deadline. Next time, I will be more prepared (unless I switch to a different, unknown language:P), especially in terms of base code or prototyping. I’ve had so much fun developing my game, I’m sure I will be doing this again!

    And hey, maybe I will work on EscApe more, so maybe this isn’t a post mortem after all. :)

    Tags: escape, gameplay, LD21, playthrough, post-mortem, video

    McPixel hasn’t said the last word yet!

    So, I am really satisfied with what I achieved this LD, and I must say that good planning is to blame for that :)

    I got all excited and uploaded the game to Kongregate, but then I thought “Wait! If I made 6 levels in one day, how many could I make in a week?”
    So I took it down from Kong, and I plan to make many more levels now!

    Here are the six original levels

    Play it if you dare!

    Comments

    ippa
    23. Aug 2011 · 10:55 UTC
    We need a jungle-level.. kicking those crocodiles in the nuts!

    Black clouds above my residence

    Fixed the event in the fifth level, which was broken by bugfix 1.0c. Squish a bug, create a new one, it’s the circle of life. Go try it now.

    Escape the Fate

    GTFO – The Game (afterthoughts)

    Phew, now that this crazy 48+something marathon is over, I finally got the time to think about it without having to worry about the deadline.

    It’s time to ramble! ^^

    I finished my game just in time, ten minutes before time was running out. Without the extension of the deadline it would’ve been just a row of levels with some hastily written tutorials. There are still a lot of things put in without much testing, but overall I’m quite pleased with the result, it is very close to the idea I had in mind when planning it.

    Of course not every feature I wanted to do made it in, the most obvious being the missing background music. I’m not sure if I will expand the concept and keep working on it to make it a full-fledged game – it certainly will also depend on the feedback I get – but I still have the feeling that the concept holds enough potential to keep the motivation up for a longer time (and I mean both my motivation to upgrade it and the player’s motivation to play it).

    After all, I’m really glad I decided to participate. This was my first Ludum Dare and it was really a thrilling experience. I guess it’s always easier to get something done when you know that it will have some meaning (in this case, that a lot of people will have the chance to see and play it).

    I’d like to thank everyone who played it and would really appreciate some feedback! 😀

    Kinta

    #gallery-1 { margin: auto; } #gallery-1 .gallery-item { float: left; margin-top: 10px; text-align: center; width: 33%; } #gallery-1 img { border: 2px solid #cfcfcf; } #gallery-1 .gallery-caption { margin-left: 0; } /* see gallery_shortcode() in wp-includes/media.php */ screenshot101 screenshot102 screenshot103
    screenshot104

    Tags: LD21, postmortem

    Extended Submission != Extended Development?

    I keep seeing posts or chat entries that say things like “I used the extended submission time (12 hours) to add XYZ to my game”.

    Is that valid? I know the competition is a bit laid back, so I’m not too worried about it, but does this bother anybody else?

    I’m kind of kicking myself, because I purposely stopped a couple hours before submission time to make sure I had everything deployed correctly, which meant that I had to stop myself from fixing a few bugs, one of which occasionally freezes my game. If I had also used the extended submission time, I’d be a lot more confident that everything in my game worked. But I didn’t want to abuse the extended submission time.

    Oh well, I guess I’m just ranting and wondering if anybody else feels the same way. I still had fun, so I’m not getting too worked up over it, but it does seem a bit unfair. Oh well!

    Comments

    Doft
    23. Aug 2011 · 11:28 UTC
    I feel the same way. 12 extra hours is a lot, I could fix some bugs, polish my game, add more stuff…
    Alexbrainbox
    23. Aug 2011 · 11:36 UTC
    I don’t think you were really meant to, as the extra twelve hours was only really on an honor system (i.e. the organisers said to stop at the normal time and just upload later). But hey, if people used the extra time, it’s only their sense of satisfaction they’re losing out on.
    marudziik
    23. Aug 2011 · 11:37 UTC
    I agree, although think of people that wasted a lot of time, uselessly trying to submit their stuff, or people who started later. I think that’s within the rules, but it’s a matter of personal good taste. IMHO this competition is about finishing a game before some deadline and under 48hours. If the game feels unpolished by that time, people should just let it be unpolished – this is a proof that they tried their best, but something still could be done more efficient and faster. Next time they will know better.

    That’s why there’s no ending in my game, anyway. The last level just loops. :]
    23. Aug 2011 · 12:55 UTC
    Thanks guys, at least I know I’m not crazy.
    23. Aug 2011 · 14:25 UTC
    >which meant that I had to stop myself from fixing a few bugs, one of which occasionally freezes my game
    23. Aug 2011 · 23:00 UTC
    Interesting, I didn’t know that! I still think it would be a little dishonest to fix it now, so I think I’ll leave it in. But I still think it’s abusive for people to add features after the deadline.

    Post-Mortem (And by god, there almost was mortem)

    Seriously, my top tips? Nothing about sleep, organising your time or what to eat. I’m not going to talk about thinking out your idea before going into it headlong. I have two tips that will help IMMENSELY :

    – KNOW your software, now is not the time to try out a new IDE or use a language you don’t know very well, and make sure you can and HAVE compiled stuff with this software that WORKS. Trying to understand the quirks of VS2010 isn’t what you want to be spending time on.

    – KISS : Keep It Simple Stupid. And I don’t just mean the concept. In general in OOP it’s a good idea to make classes for each concept, but here you need speed. Just make a BIG mainloop with ALL your code in it, and make classes for the few things that REALLY need them. Remember, simple doesn’t mean elegant. Simple means an O(n²) algorithm is better than an O(n) if it means you get the job DONE.

     

    To be honest, the game I put out has the gameplay I originally imagined when I started pondering the theme. So in that respect, I succeeded in building the idea that I wanted. But I didn’t respect the two previous points, so my game is SEVERELY lacking in aesthetics, and features.

    I usually code in Linux, with gedit or Eclipse, in C++, and I’ve done some SFML stuff. And since I was making my game in SFML/C++ I didn’t think coding on a Windows machine with VS2010 would hurt. Turns out it does. First, SFML hasn’t been compiled for VS2010 yet, so you have to build it from source WITH VS2010. But that means knowing how VS2010 works IN THE FIRST PLACE. I could have done it, given the time to consult a few forums and manuals, but time wasn’t available.

    Another mistake I made was that I made classes for everything, the was a state manager, an assets manager, a game loop manager, a class for monsters, a class for turrets and a class for the world, a class for tiles that compose the world, and I think that’s it.

    Now given more time, this is a great idea : OOP allows for amazing flexibilty and extensibility if you structure your code nicely.  My original design would have allowed easy creation of new monster types, turret types and tiles. It would allow quick and easy mainenance of code, and since only the asset manager had access to SFML, it would be a cakewalk to port to a different graphics engine.

    While all these features are nice, it quickly devolved into spaghetti code as I tried to beat the clock with an ever more complex code, sleep deprivation and panic started to settle in by the next day and I no longer understood my own code, and even switching to my trusty linux netbook that I’ve been using to learn coding for the past year didn’t help. My code was a beautifully designed mess.

    I eventually bailed and posted an “I’m Out” blog, sat down and gave up.

    But then I came to, realised that I COULD do this, and with less than 20 hours to spare, sat down and did it right.

    The new code is a messily designed beauty, there’s a huge, unwieldy main loop with monster spawning, monster update calling, turret spawning turret update calling, points counting, credits counting, event handling all bundled up in a big mess. There is a class for monsters and a class for the turrets, and they contail their own rendering code. I do everything WHERE I NEED IT.

    But the end result was that I made a game in 14 hours whereas I totally failed to do anything in the 20 or so before.

     

    I’m going to learn VS2010 now, it seems to me like an interesting IDE, and there’s some stuff I’d like to use, and I’d like to develop for WIndows, but I’m going to do it now that I’m out of a time-limited mess. Expect my next LD to have a lot more content, and work better on Windows (My Windows build still fails on some machines, and I have no idea why, if you have SFML1.6 for Windows, please help me compile a version that will work for everyone : http://www.ludumdare.com/compo/ludum-dare-21/?action=preview&uid=1561 )

    Comments

    Felipe Budinich
    23. Aug 2011 · 11:45 UTC
    This should be called “Main Loop Private Function FTW Programming Paradigm”, and yes, I agree with most of what you said there.
    bitbof
    23. Aug 2011 · 14:08 UTC
    I created quite a few classes but I kept them very simple and predictable in their functionality. So I didn’t really run into too many problems. Making pretty much everything public saves a lot of time too.

    Postmortem for Lost in The Shadows

     

    This competition was very exciting for me. The Theme was “escape” this time. While that is a very good theme, its actually used in lots of games already, so its hard to come up with something entirely new.  I did the game “Lost in the Shadows“.

    The game is a rogue like adventure game where a dwarf is lost in the mines and tries to escape without dying. You have to find the exit, dig for water to survive and collect as much gold nuggets as possible on the way.  Sounds like some fun, but actually the game gets boring too fast. Its probably a content problem but also a design issue as well.

    So here is my postmortem:

    What when right…

    Level generation
    Level generation was done very fast and the rocks are layered, rooms where cut in after the rocks were calculated. There are 4 different rock types, the easiest which the  level is filled from the start. The second rock type is generated with rectangles. The third layer is more complicated, because it can only exists on the second type of rocks and the same with the forth type. So when you dig the rock gets harder step by step. This makes the game much better and more appealing. The rooms where cut in after the rocks where generated. That was ok, but I would change the now and cut the rooms after the first rock type is set. That should make the levels even better. The hardest rock types sometimes reveal hidden items. You can find gold nuggets and water. While the distribution is ok for this small short game, it needs much more improvement  for a decent experience. So balancing is still a big issue.

    Sfx
    The sfx creation was a lot of fun. I went out with a hammer to hit some stones in the park, fiddled around with water in the sink, walked around to record footsteps and so on. That was really cool and exciting. The recordings have a not so good quality due to the iPad2 microphone, so I pimped them a little with audacity. That was fun and didn’t cost too much time.  The mining sound worked quite well, so I synchronized it with some particles. That is actually my most favorite part of the game yet.

    Character pixel art
    The character creation was ok as well. You have to know, that I am very inexperienced in creating pixel art, so it was really ok for my knowledge level!

    Gameplay and gui implementation
    The implementation of the gameplay and the GUI was working out very well. Actually I had only a few minor bugs nothing I to worry about and it was done quite fast. Well the code is far from optimal, but that was not the purpose of that competition.

    I got it done:
    Well it was my first official game jam ever and I got the game done. That’s was and still is really good for my ego! I overall invested around 20hours into the game creation.

    What went wrong…

    Tileset creation
    The tileset creation was really bad,  it took me ages, at least 2-3 hours which is, compared to what is looks not worth 15 minutes. There is still a bug in the tile set. Connected to this my biggest time consumption was the FlxTilemap class from flixel. I never used that before and it didn’t work at all for my game. So I decided to implement it by myself, which isn’t too complicated, but I was a little frustrated already about my progress and made bad mistakes.

    Game design and game mechanics

    The  idea was to create a rogue like adventure, but without monsters, just the mine and the dwarf with a tight storyline etc. Sounds ok so far, but the most important part, the storyline, was done in the last half an hour before submission. So  just a few atmosphere texts made it into the game, thats it.  Well, actually the story wouldn’t have made sense at all, at least for what I have planned for, because you can die quite fast and so everything gets repeated, which is not a good game experience.
    The water and the nuggets worked ok as items, but I would have needed some traps and enemies overall. The game is lacking lots of content here and so its really not that much fun. So all in all the game mechanics are quite poor. You walk around dig some rock, try to find water to survive and if you are lucky you will find some nuggets.  I have to invest much more time thinking about the concept before starting coding and art creation.

    Music
    No Music, I have never done music and I started to use musagi 2 hours before I wanted to submit. I realized that this would take me at least several days, because I have never created any music. The game doesn’t feel complete without music to be honest.

     

    Overall I am quite happy and I am will pimp the game so I can release it  later on. Thanks to the ludum dare team for all their hard work. I am happy to be part of such a great community and this was definitely not the last ludum dare for me! :)

    Fixed an issue with integrated GPUs

    Hi all,

    My entry

    I just realized that the characters in my game are not centered when playing the game in a notebook with integrated GPU. The issue was that textures dimensions are not power of 2.

    Here you can see the main character looks small and “uncentered”

    I changed the texures dimension in this new version. So if you experiment the graphic issue please try the new version. I didn’t add anything just change the texture dimensions

    Fixed version

    The fix

    Please don’t consider this for the compo, of course.

    Best luck

    JF

    Tags: bugfix, screenshot

    Linux Packaging Help =)

    Hey there guys! I am just offering help to package games on Linux. I know some people are having issues on compiling and distributing their binaries for Linux, so if you are in that group, leave a comment =)

    So far, I’ve ported this game:
    The Power of Escape – Rate Link

    I hope I can help some of you!

    and just like that – a Post Mortem

    ELL DEE TWENTY ONE LET ME HEAR YOU SAY UWAAAAAAAAAAAAAAAA

    This was my first LD proper since LD15 (which had a baker’s dozen entries (144)).  I love love love Ludum Dare as an event (it feels like THE WHOLE WORLD is building and learning and having fun together), and I’m pleasantly shocked to see 4x as many submissions just two years since my last one.  I promise to not let two years pass again my next one! I’ve always been building small games, but my spare time for a FULL WEEKEND of something has been so limited that it’s been challenging to get my Compo Wind back.  BUT HERE I AM!  Despite having a new baby in the house (my second kid), I was able to carve enough of a weekend away that I got a completed game done ON TIME WOOOOOOOYAAAAAAAAAAAAAAHHHHHhhhwwwmmm.

    I had an absolute blast building this little thing (here’s a link to rate it, bros!)

    So v1 of my game was done at like 6pm EST on Sunday, 4 hours before the deadline, and I was shocked.  I actually got to submit before the site exploded!  Here’s my somewhat standard Post-Mortem-formatted Thingie!

    What Went Right

    • FLIXELLLLLLLLLLLLLLLLLL is always fantastic to use.  I was there when @adamatomic put out the first release, and I’ve kept up with it since the beginning.  The version I use now is an ever so slightly modified version of 2.4.3 as well as the FlxBitmapFont add-on.  I had just used Flixel for something quick a few months ago when I quit my job at EA, and although I now use Push Button Engine on a daily basis for my Make Money Doing Things part of the day, I had to go back to my old friend.
    • MUSIC / GARAGEBAND YEAH!  Part of my responsibilities at my new job include composing music, and it’s been great to keep that part of my life alive (a long, long time ago, I started college as a classical saxophone major).  I use logic for work, but I don’t have that at home so I booted up another tool that I’ve loved since v1.  I have a simple MIDI keyboard hooked up that I’ve used for years, and man nothing relaxes me more than getting to lay down some melodies.  I wanted the music in this game to be kind of sad, and kind of melancholy like the ticking of a clock (there’s a line in the dialogue that says “You’re only getting older.” and I really wanted to have that feeling of climbing some monotonous, mechanical wasteland).
    • Tiled: simply the best map editor around.  For making maps in flixel I’ve used DAME in the past, and FLAN before it (I own a FLAN license!), but I really love the file-format for Tiled.  Even if as an editor it’s not as good as DAME for sidescrollers, I have to use it on a daily basis for building isometric maps (again at the Make Money Place) and I’ve grown super-used to it.  If you want to figure out how to load a Tiled map in flixel, there’s a really good example out there.
    • I liked the story of the game, and I liked the setting, mood, and dialogue.  However…
    What Could Have Been Better
    • I really wanted to spend a lot of time on art, and I just couldn’t.  I had a lot of pixel work started but unused, and too many maps to apply it all to.  I wanted to have more than just clouds on blue for the backgrounds (to give a sense of a giant world that’s sort of collapsing around you), but it just didn’t get finished.  I’m happy with the way the game looks, but I know I can do better.
    • I had to cut too many levels, I feel.  The game has a decent length for a compo entry now, but it’s not quite as good as I’d like.  I hit two problems with them, however: 1) many of these levels were much more difficult, and needed a ton of time for tuning that I didn’t have, and 2) I didn’t have time to build in a save-game system that I would have wanted if the game grew much longer than 10 minutes in length.  I know it’s easy to do, but at some point we have to prioritize our TODO.txt guys!  That said, I’m going to release a Director’s Cut in the next few days that adds all that content back in!
    • About 10 hours into coding (so, roughly 18 hours into the compo), I realized that I really wanted to have built a roguelike and used this same sort of mood and “the world (or an unreliable narrator) talks to you” motif, but I was already kind of deep into this one at that point.  At that point I lost a bunch of steam and drive to really make this My Favorite Thing I Ever Made, although it’s still in My Top Ten Things I Ever Made.
    • I really didn’t get much sleep; my family kept me up late and got me up early.  This isn’t something I would ever trade for more time to program, mind, but it definitely took away time that a Real Super Nerdguy could have used in 48 hours.
    • I was done about 4 hours early, and was so tired and the game was tested pretty thoroughly so I just submitted it and started playing other people’s games.  It turns out, I just barely beat the rush that took down the site (along with the help of that pesky bug), so at least I was able to go to bed without worry.

     

     

    Comments

    Felipe Budinich
    23. Aug 2011 · 13:48 UTC
    What can I say, this was just beautiful mate, can’t wait for the director’s cut version :-)
    Mjiig
    23. Aug 2011 · 15:19 UTC
    Hey, amazing game! I didn’t get to see either of the screens you posted above though? Were they removed or in secret areas? (any tips on how to get to the secret areas? :) )
    23. Aug 2011 · 21:12 UTC
    Loved it!
    20. Sep 2011 · 11:53 UTC
    <3 <3 <3
    homemrobo
    01. Oct 2011 · 22:57 UTC
    Hi bburbank! Just wondering.. I’m looking at your code, which class/library do you use for ‘Vector2’ movement? Thanks!

    Elastic Prison Gameplay

    Here are a few minutes of gameplay of my compo game “elastic prison”. I think the compo went quite well for me. Considering this is my first time here and that I haven’t really finished a game in a loong time.

    Go to the entry page to download it.
    I’ll post my time-lapse later today. And maybe a complete playthrough sometime this week, because I like the ending.

    Tags: java, lwjgl

    Post Mortem: The Hooks, the Lava and Me

    First time writing a post mortem. Woohoo.
    Before we start, have some pigs.
    Times are noted from the start of LD. That means 0:00 would be 4am in my timezone, and 24:00 is 4am the next day.

    ~ PHASE 1 – THE IDEA ~
    I woke up at 5:00 – 2 hours later than planned. What I thought to do is to look up the theme, then take a walk, play some games, relax a bit while thinking of ideas.
    Sadly I had to go at 5:15 so everything was in a massive hurry. I managed to get my idea at 5:30 during a car drive – I arrived at 5:35, and finished the sketch at 5:45. So while I was not relaxed at all, I was able to come up with a nice idea.
    What went right: Got my idea quickly…
    What went wrong: …while being stressed as hell

    ~ PHASE 2 – THE CODE ~
    5:50. I jumped on the closest PC, got Dropbox and grabbed all my stuff. I jumped instantly into it. It all went very well, though I encountered some really wierd glitches. (I should have saved them to showcase them here. Just imagine the ball goes apeshit and that’s about it)
    The biggest timewaster happened to me at about 15:00. This is when I started to work on the lava.
    Originally, I wanted to make the Lava Minecraft style, expanding block by block, getting quicker with every km (sidenote: km should actually be screens. Every screen is 1 km) you pass.

    Dramatization. A death by lava is not that painful. After all, it's pretty quick and your brain is fried pretty early.

    Sadly, for some reason, the collision code decided to be evil. The first time the lava source was created, every single tile would think it collides with something, even when it doesn’t – resulting in no spread at all.
    The second time the source is created every tile would think it does not collide, resulting in lava flodding into the walls, and massive lag since it wouldn’t check if there is lava already.
    At 19:00 I decided to screw it. I made an enourmous picture of lava, almost increasing the filesize 3-fold. It’s an ugly workaround, but it works.
    Finally, I have finished the basic gameplay one minute before german midnight – 19:59.
    What went right: Most stuff was pretty easy to code…
    What went wrong: …and then there was lava

    ~ PHASE 3a: IMPROVING ~
    The next morning, 27:00… switching on my computer. Checking the code.
    What happened was the same thing that happened the last two times I participated at the LD:
    “*stare* what the fuck did I write? I should use comments next time.”
    First thing I did was implement scoring. For that I just counted how many screens you went right, how many you went down, and -pow- done. Then there were two nightmares at once.

    ~ PHASE 4: MUSIC ~
    After the crimes against humanity which I call music in my previous two entires (#19, #20) it was easy to understand I tried my best. Sadly, I had to leave Ubuntu for it and boot into NightmareOS. You might know it under the name of “Windows Vista”. First thing I noticed is that the internet connection didn’t work again. My WLAN stick only works in one of ten cases when starting Vista, needing about 1 hour of fixing every time I want to play something on Steam. I didn’t have the time, so I just started pxtone and planned to save it on my disk instead of Dropboxm then copy it over.
    Now, I was in pxtone and started throwing some note bars here and there. The result should never be mentioned again.
    I spent half an hour just doing random stuff until I hit the effect window and heard a sound. THE sound. It was exactly the sound I wanted to do in sfxr later. Then then idea hit me like a train. After (ab)using pxtone to make my sounds, I left Windows behind, went into Ubuntu Studio where I used Hydrogen to make two drum loops, one fading in when you get closer to the lava. Huge success!
    What went right: Everything!
    What went wrong: Nothing! (except having to boot into Windows)

    ~ PHASE 3b: IMPROVING ~
    Back into Ubuntu, I smacked the sound files into my project. It sounded wonderful.Next thing to do was more obstacles, as it was pretty repetitive. After looking at my code for obstacle generation, I knew this would be hell. Thus, I made a level editor. It is included in my source archive, already compiled, in the subfolder “editor”. It’s a bit hard to use though, as the black walls are hardcoded and there are no buttons. D/Right resets everything, S/Down removes blue walls under your cursor and A/Left will put the code into your clipboard to paste it into the game code.

    Dramatization. The game is not as friendly as this screenshot suggests. It will eat you alive.

    The last things I did was adding online highscore, adding a texture to the lava and a bit of a backdrop. Then I submitted that thing. Done!
    What went right: Level Editor! Online Highscores! Had tons of time left after all that was done…
    What went wrong: …but wasted it playing Hatsune Miku Project DIVA on my PSP. derp.

    ~ PHASE 5: POST-COMPO ~
    I was flattered by the feedback. “Oooh this is a nice game! Sounds, music and everything!” – “Amazing, just amazing.” – “The most fun LD game I’ve tried so far.” First thing I did that morning was celebrate that occasion. By playing some more PSP. Then I went back to coding.
    After the compo, it didn’t change much things. I added a glow to the lava, a preloader, and fixed a GFX glitch with the motion blur. Then I submitted the game to Newgrounds, where it had a “GREAT” entry rank and has a current score of 3.33. Weee!

    And that concludes my tale of my third Ludum Dare, and I hope I will get even better by next time!
    Although honestly, you know what makes everything better? Bacon. (I bet you thought I was going to say “taco”.)

    This post has just been made better with bacon.

    Thank you for reading!

    Tags: postmortem

    Comments

    siebharinn
    23. Aug 2011 · 13:59 UTC
    Mmmm….bacon

    Wallpapers for all 599 LD#21 games!

    Here are updated versions of the wallpapers I made earlier, now including the jam games!

    This is getting ridiculous! :D

    DOWNLOAD

    Tags: wallpaper

    Comments

    23. Aug 2011 · 13:50 UTC
    599 entries… Wallpaper is a full rectangle of 24 length and 25 height…
    Jedi
    23. Aug 2011 · 14:40 UTC
    I <3 it! I can see my game XD
    23. Aug 2011 · 15:17 UTC
    This is getting ridiculous!
    peterstock
    23. Aug 2011 · 18:54 UTC
    I can see mine! My choice of colours is approaching the awesomeness of Tom Sennet’s, so it stands out quite easily. Bright green, top row.

    Hello World

    Unfortunately I only just joined up after the competition finished. But I’m very eager to participate in the next Ludum Dare
    So watch this space.

    Dinosaur Liberation Front – postmortem

    HOORAY for Ludum Dare!  I’ve been watching my friends do Ludum Dare compos for several years now, but as a dude with a family it’s been hard to commit to spending 48 hours of weekend time on a game.  But last Friday, after putting the kids to bed, I sat at my PC, bored, and thought “Hmm… Escape, huh?”

    Before I knew it, I’d started sketching out some ideas and downloading Flixel.  I knew right away that I should definitely NOT attempt a game that took 48 hours of time to complete, because there was no way I’d actually be able to spend 48 hours working.  I quickly latched onto the basic idea that rather than the player himself escaping, the objective would be to help some other things on the screen escape… by hurling them through the exits.

    Check out and rate the finished game! It’s only 8 levels – try to beat my time :)

     

    My buddies skelethulu and ExciteMike pointed me to excellent resources like Tiled and BFXR as the weekend went on, and I was able to spend a good 12 hours or so between Friday night, Saturday night, and naptime on Saturday and Sunday.  I actually “finished” the game mid-afternoon on Sunday, then ended up adding Mochi leaderboards and a couple of extra levels before submitting since I had to wait for my LD-n00b WP registration to go through anyway.

    What Went Right:

    • I chose the correct scope!  I’m super-happy that I kept my goals modest and was able to do something that, though it’s not sprawling or super-ambitious, is still a “finished” game, and in only 12 or so hours. I think I made some wise (though painful) priority choices along the way.
    • FLIXEL is fantastic.  I went in knowing nothing about it, but with the help of a few great tutorials out there, I quickly had basic platforming, pickups, dino-hurling etc. I was pretty astonished at how fast the basics came together in Flixel.
    • Tiled is also fantastic.  With a few hints from skelethulu, I was able to have my levels completely data-driven, loading TMX files from Tiled for the map itself as well as all the game objects, triggers to show and hide text, etc. Making new levels was so trivial and fun with Tiled!
    • The pixel art ain’t bad! I did it all by hand in Paint.NET and I think it fits together for a nice consistent look. Sadly I think this is about my limit pixel-art-wise, though.
    • It really amuses me that I didn’t implement player death. If you fall out of the level, you are just unable to help those poor dinos any more, which means you’d better reset the level! Meanwhile the timer up there just keeps running…
    What Could Have Been Better:
    • The pixel art – I ended up with only 5 tiles and 2 sprites. I’m happy with it, but I had some grander plans for more of a “laboratory” feel, with bubbling beakers and such, which was unavoidably a lower priority and never happened.
    • A few bugs (like jumping out an exit with a dino) – I found several of these but judged that it was a better use of my time to actually give the game an ending than to fix these relatively rare cases.
    • More levels would have been good – although to do many more I would probably have needed more gameplay elements as well, like fans or “bounce pads” or such. I seemed to be reaching the limit of variety possible with these mechanics. Maybe I’ll revisit this someday outside of LD!
    • Perhaps music would have been nice, but like most things, I judged that opening that can of worms was less important than getting a finished game.  Next time!
    All in all, I had a fantastic time, I was very pleased with my simple game, and let this be a lesson to anybody out there who wishes they had time for LD: You Don’t Even Need 48 Hours! Plan something reasonable for your own timeframe, and spend the time that you do have wisely! I’ll definitely be trying to do this again – it was a great time. Thanks, LD community!

    Well… That’s It

    48 hours of fiddling with GLUT and GLEW while building my new workstation.  In fact, I just finished setting up sound on my workstation this morning!  And I just got the details worked out for building a couple binaries.  You can now download a 32-bit Windows binary and an x86-64 Linux binary here.

    For anything else, you’re welcome to grab the source and try building it.  Heck, feel free to contact me if you are trying to build it for anything else.  Whether or not you encounter any problems, I’d like to know!

    Post-mortem of Soul Hellscape

    My first post-mortem for my first finished game for my first LD (entry here). Those are all stand-alone firsts. I have never actually finished a game to a point where I post the .exe for others to play. It’s just never good enough for me (we’ve all heard that one before). Anyway, post-mortem:

    Idea

    Not much to say here really. My first thought was — who wants to escape the most? Well, trapped souls from the depths of hell, obviously. In retrospect, that being my first answer says something about me. I also knew I’m not doing a platformer. From then on, I just kept adding random ideas/features with a promise to not go back and redo stuff.

    I think the idea/concept turned out fine (or at least we’ll see after ratings ^_^). I didn’t expect to come up with any groundbreaking ideas and I didn’t have all day to think of one either. I saw a few people bail out and rewrite their code, so I’m happy I managed to stick with mine. I also saw too many people going “need more levels”, “need more level ideas”, “I only have 524 levels, help!” One of the reasons why I did not go the platformer route.

    Schedule

    Day 1
    10am (5h in) — wake-up
    10am-5pm — code
    5pm-6pm — break
    6pm-8pm — code
    8pm-9pm — blog post
    9pm-1am — Assassin’s Creed Brotherhood

    Day 2
    10am — wake-up
    10am-3pm — code
    3pm-330pm — break
    3:30pm-4:30pm — code
    4:30pm-7pm — beach
    7pm–12:30pm — code furiously
    1am-1:30am — blog post, submit

    That’s a total of 9h+11h=20h out of 48h. Sure, I could have spent more time coding. But if my overnight Uni reach-the-deadline coding sessions have taught me anything, it’s that I don’t like them.

    Gameplay

    I think I oversaturated the game with features, especially since they all are accessible at once (if not usable). I didn’t think it was possible to have too many features for a 48h game, but there you have it. I have a nice tutorial screen to introduce everything though:

    Only now do I realize this, but there are 600 games and finishing every game is near impossible. You have to keep it simple, stupid! Who has the time to read all that verbal diarrhea? I foyu skip the “help” button, you have no idea what you are doing. That said, there is nothing bad with complexity, in fact many games are known and praised for it. But you have to take it step by step. Introduce gameplay elements as the player progresses and plays, not throw everything at them at once. I think this may have be my biggest design flaw (besides lack of music). But then again, an in-game interactive tutorial in 48h? Moving on…

    “Art”

    Let my art speak for itself! (more likely growl out “kiiill meee”) Here’s the entire sprite-sheet:

    I’m not an artist, I’m a programmer. All my units are either static of flying, so my “move” animation is 1 frame :) One thing I did wrong is make all the terrain colors too dark. Units and props stand out OK, but the terrain itself has too little contrast, and it really shows in screenshots. My Holy Light could have been more impressive too. I wanted a magnificent beam of shiny and awesome, but all I got is this lousy flashlight.

    Audio

    I’ve done very little with sound and games, so this wasn’t my strong side. I did decide to try out sfxr, which was a super-easy and quick way to produce relatively awesome sound effects. Ended up with 8 different sound effects. Obviously, I have no music and I couldn’t make any myself anyway. I’ve played around with Fruity Loops or whatnot in my day, and concluded I have no musical hearing. Not that my music teacher hadn’t made that perfectly clear back in grade 3.

    Dirty code

    Spaghetti code! Argh, my eyes! Not a single useful comment, dirty inefficient hacks, integers instead of constants or enums, … That’s K.I.S.S. and time limit for you! *shudders* I don’t think I could go on working with this code much longer. Then again, I’ve seen much worse too.

    What I do appreciate in my coding style is the object-oriented design. Even with the number of classes spanning into second dozen, I didn’t get any game-breaking bugs that were more than careless copy-pasting.

    In conclusion

    Can’t say anything went terribly wrong. I probably would not have done much better with any other themes anyway. I could have spent more time coding/drawing, but then I would just exhaust myself beyond “fun”. I’m proud of myself for sticking with this till the end, even if my first thought was “Escape? What bollocks!”.

    I love C#, XNA, and ReSharper and the speed at which I can chunk out code/features. I also know how many raters I’m losing by not having a “Web” play link. It would’ve been better if I had a Flash or Unity or something entry. But then I would have had to learn it first :)

    Ludum Dare has been great so far, I love the community activity, and I can’t wait for the super-secret-October-make-a-buck type challenge.

    Tags: CSharp, post-mortem, postmortem, xna

    Interesting..

    I just saw my game in the first picture of the LD article from Rock, Paper, Shotgun.

    That I approve ^^

    Also: ‘Dodge – DYLC’ ad in the indie(magazine); at http://indiefunction.com/issue11.php

    Abstraball postmortem

    When I saw the theme list on the final day of voting, I was rooting for one of the stealthy themes. They didn’t make it, but escape allowed me to work this idea I had for the past week into a game. I wanted to try and create a top-down game with true line of sight. The end result is Abstraball, a game with true line of sight, so I guess I succeeded with that. But it could’ve been so much better if I changed some things at the start.

    Day 1

    I did my usual routine for making an XNA game. Create a simple screen system, a world class, entities, and fix up drawing things. This time around I wanted to use polygons instead of using the spritebatch, and I wanted to make variable sized geometry rather than tiles. So I worked on that. The camera would be orthographic instead of perspective, and not being limited to square tiles would mean I could make simple big geometry for large portions, and resort to more complex (read: diagonal walls!) shapes when I wanted fancy things. After doing that, I worked on the shadow effect. First I made the area next to and behind you black. Then I added the effect on geometry. And that’s when I should’ve made a different decision. An orthographic view with ‘shadows’ like that is practically the same as a perspective view with pillars reaching to infinity, but without the texture support, and the without ability to easily prioritize what should be drawn. At first I didn’t realize that, but now I do, and I definitely would’ve done it differently if I had known at that point.

    Anyway, I continued with that, thinking I could make it look better later on. I started working on the map. I had the ability to make any shape I want, to make any complex level I wanted. But I had no level editor, and placing things by hand was a pain. So I resorted to creating a bitmap, and importing/parsing that. So at this point I had fancy, unstructured polygons shaped as square tiles, without the benefits of a tile grid. That was mistake #2. I should’ve made it tiled, then I could index things more easily and efficiently, and also easily make a bit more diversity with other shaped walls. But I didn’t. Pathing the world was tiled, but they didn’t support each other. I also had to make some optimizations so unnecessary geometry wouldn’t be added.

    Day 2

    At this point I started to realize the mistakes I made during day 1. I lost some motivation, but kept on going anyway. I worked on the AI, and after a few hours I got a nice and robust AI system that got the job done very nicely. But again, I had optimization issues because of the way I built the world. So I had to cut on a few things to make it playable. Pathfinding was just bad, and occasionally it would take a second to calculate a path. Line of sight calculations were bad as well, and many other things were bad too. But I worked around most of them. Next to those things, I added the footstep sounds, and the positioning for it. So by now I sort of had a playable game. I named it abstraball because I knew I couldn’t fix the graphics, so maybe coining it as an abstract game would help.

    With about 8 hours left I started talking to a friend. He playtested my game and gave a bunch of tips for features and gameplay changes. I added difficulty modes, tweaked the AI, added a compass, the energy bar, fixed a few glitches, added the plague bearer mode, and did some other minor things. He wants to be credited for being awesome, which he is, so his name is savooipeerd. With about 4 hours left I added a few final touches. I composed the music with iNudge in about 10 minutes, added keyboard configuration options, and started to playtest some more for balancing changes. I fixed a few annoyances, and with an hour or so left I was done.

    Final thoughts

    While I’m not that happy with my game (it could’ve been much better), I still greatly enjoyed creating and playing it. I feel my previous (and first) entry of LD20 is a lot better overall, but during the creation of this game I learned a lot of new things and tricks, which I am sure to use next time. I’m going to stay away from the spritebatch completely now, as I now have a relatively good understanding on how to work with primitives. For the next time I’m going to roll out my own engine/framework/toolset/whatever to prevent having to search for and redo basic things, and to do it right. The current code is such a mess, it’s just plain terrible. I broke so many best practices because of laziness, and while it’s part of LD, it still feels terrible for doing so. 😀

    In any case, I really enjoyed this LD and I’ll participate next time as well! I’m also going to attempt to do the october challenge as a motivator and deadline to finally do something with a project I’ve been working on and off for over the past year.

    Get an RSS Feed for Comments on Your Game!

    (this is a repeat post of one I did for the last LD, but we have so many new people that it is probably worthwhile to post it up again)

    While you can subscribe to an RSS feed of comments on a blog entry, the LD website doesn’t have anything like that for comments on your game. So I made a bookmarklet that uses some Yahoo Pipes magic to make one!

    Screenshot of me checking my game’s comments in Google Reader!

    WordPress wants to mangle it so I can’t give it to you directly in this blog post, but you can get it and see instructions for using it over here.

    It is a bit fragile in that it is looking for particular bits of html, so if the site changes a little it will probably break horribly, but so far so good!

    GET IT HERE

    Post Mortem: DRUGSDRUGSDRUGS

    Firstly, timelapse:

    http://www.youtube.com/watch?v=M5UoTeDj7jA

    Well, that’s my second LD done. As with last time, I’m very pleased with what I got done in the time I had.

    This post mortem is very long. Sorry.

    The finished drug - uh, I mean product.

    PART 0 – The Idea (03:00 – 16:00)

    After seeing what the theme was, I was  initially disappointed. Escape wasn’t one of my favourite themes on the list. But, as it was 3am in the morning for me, I went back to sleep.

    I had a longish car journey the first day too, so that set my back a few hours, and by the time I could finally get started, it was 4 in the afternoon, 13 hours gone. D:

    Luckily, that car journey had given me time to think of an idea I liked – the idea of drugs, and them being your ‘escape’ from reality.

    What went well – Got an idea fleshed out

    What didn’t – Lost 12 hours of time.

    Part 1 – The Base code (16:00 – 21:30)

    I started by creating a simple platformer base. One of the things I had in mind to do was to create a system where you could walk through things, but jump on top of them too, if that makes sense. Somehow, this took me about 4 hours, and it didn’t even make it into the finished game.

    I then started work on the hand – this turned out quite well, but again, I wasted a lot of time debating about the best way to do it – in the end I ditched the walking animation completely and ended up coding the punch animation. However, having the hand as a separate entity worked in my favour later.

    What went well – Got a well fleshed out base code written.

    What didn’t – Messed about doing features I didn’t need and took ages.

    The Doctor Spritesheet.

    Part 2 – Enemies (21:45 – 00:40)

    I then started work on the enemies – I used quite a lot of the code from the player, which saved a lot of time. I took a break from 22:00 – 22:30, then started working again.

    I bumped into a few problems with the hands – before the enemies were introduced, the hands were referencing the player directly. However, the enemies needed hands too, so I thought instead of having 2 hand classes, have one, and make it reference a new class, HasHands, which the Player and Enemy will extend from. I love OOP.

    I finished up the enemy code, then headed off to bed.

    What went well – Created robust enemy code.

    What didn’t – Spent a lot of time on polish that could have waited.

    Part 3 – Sleep (00:40 – 8:30)

    ZZZZZZZZZZZ (etc.)

    What went well – ZZZZZZZZZ

    What didn’t – ZZZZZZZ

    DRUGS

    Part 4 – DRUGS! (8:30 – 10:20)

    Woke up refreshed after a good sleep and willing to start working again. I started work on the main point of the game – the drugs. I made the enemies drop them, and when they did, I made them fly out. Again, this polish could have waited, but in the end I think it was worth doing.

    I also created the explosion effect you see when you punch a doctor whilst on drugs – again, this is polish that could have waited, but it was something I always wanted to have, and I think it adds quite a lot. I ran into some problems getting the colours correct, and in the end, I ended up creating three different explosions all of different colours at the same time to give the impression of different colours. However, thanks to Flashpunk’s Emitter class, this was a doddle.

    What went well – Got another piece of the main game done.

    What didn’t – Got stuck on the explosion code for a while.

    This place is beautiul.

    Part 5 – Walk #1 (10:20 – 11:45)

    I’m on holiday on the Isle of Skye at the moment, so we went out for a walk for a bit.

    What went well – I got some fresh air and a break.

    What didn’t – Lost time.

     

     

    Part 6 – Finishing gaps (11:45 – 14:00)

    I finished up most of the core game code here – made enemies able to hit you, made you able to pick up drugs, etc. I probably should have done this slightly earlier, but hey, at least I got it done. I got stuck on a bug, but it all worked out.

    What went well – Got things neatly finished up.

    What didn’t – Wasted time squashing bugs I made by trying to save time.

    Part 7 – Walk #2 (14:00 – 17:00)

    Went on another walk.

    What went well – I got some fresh air and a break and some ideas.

    What didn’t – Lost lots of time.

    Part 8 – Fail hour (17:00 – 18:00)

    This was probably my worst hour in this whole process. With 10 hours to go, I decided it would be a good idea to completely revamp the base game code and do something I’d never done before – pseudo 3D/2.5D or whatever – basically, I decided to try and add another dimension to the game, so it resembled the flash beat em ups you see.

    To make a long story short, I failed. Miserably. I wasted an hour. Luckily I had made a backup, as I had an inkling this would happen.

    What went well – Nothing.

    What didn’t – Everything.

    How I made the trippy background.

    Part 9 – MORE DRUGS! (18:00 – 20:15)

    Feeling a bit let down by my fail, I decided to create the background I had wanted – white tiles normally, and flashing coloured tiles when high.

    To start with, I tried having the Tiles tint a random colour, then use alpha to fade them out. This ended up lagging the game hugely. I mean a 60fps to 30fps drop. This obviously was not the way to go.

    After dinner to think about it, I tried reducing the explosion size, thinking that could have something to do with the lag, but no.

    I then tried having the 18 predefined tile colours you see up there, and selecting one of them randomly, but no, that didn’t work either. I then realised that it was the alpha that was the problem (which I should have realised, duh), and so created 10 tile sized white squares, each with a reducing alpha, and layered them over the top of the tiles. Horrah! It worked!

    I then finally started work on the effects of the drugs, which was really fun (in my timelapse you can see my playing the game for quite a while :’) )

    What went well – Regained my urge to work on the game, and created a nice looking background.

    What didn’t – How long it took me.

    Part 10 – The aim of the game (20:15 – 22:30)

    Running around punching doctors and getting high is all very well and all, but the game needed a real aim. So I added in the Craving Bar. The real pain here was making it balanced – having drugs restore the right amount, etc., but I think I got the difficulty ok.

    (I also had a pokemon battle against my brother here.)

    What went well – Had an awesome Pokemon battle.

    What didn’t – Took ages to get the balance right.

    Part 11 – EVEN MORE DRUGS! (22:30 – 00:30)

    Having three different drugs wasn’t really enough, so I started adding more. I ran into some problems with Flashpunk’s code – the screen’s xScale affected the whole screen, but with some quick poking round I was able to fix it.

    I also played the game a lot here. Which is a good sign, as it means it’s fun… or maybe I was just sleep deprived.

    What went well – Added a lot more fun to the game.

    What didn’t – Wasted time playing it.

    Path 12 – Death & Polish (00:30 – 3:00)

    I realised I hadn’t actually made you die, so I hastily coded that in.

    I created a title screen, and added in some instructions that appear at the beginning.

    With about half an hour to go, I felt like just surviving wasn’t enough. I quickly added in a high score system in for collecting drugs, and with about 15 minutes to go, I had finally finished. I gave it to IRC for some testing, fixed a few bugs, submitted it and collapsed into bed.

    What went well – I finished!

    What didn’t – I had to rush to do it.

    All in all, I think it went very well. And I just realised this turned into a 1300 word essay. Ah well. Have a cookie for getting through it: http://www.techbusy.org/wp-content/uploads/2011/04/web_browser_cookie.gif

    Tags: post-mortem, postmortem

    Comments

    Felipe Budinich
    23. Aug 2011 · 17:09 UTC
    Thanks for the cookie, and don’t worry, I actually like long detailed post mortems