LD21 August 19–22, 2011

help

i know ludum dare 21 is over now except for voting but i was wondering if your entry had to be a .exe or could it be in its original type (for xample if i made a game in python could it be .py or does it have to be .exe?)
any help is appreciated.

Comments

bluescrn
24. Aug 2011 · 11:31 UTC
You can submit pretty much whatever you want – for whatever platform you want.
24. Aug 2011 · 11:31 UTC
Both. You have to include a download to the source code and the .exe.

Android post-compo version

Did a little post-compo work on my LD48 “pinball” game, Bounce-onium: Escape from Prof. Kitty von Doom’s Laboratory – there are now 25 levels, a level select screen, cool chiptune music and most notably: SPIKES!  Lots of polish added – for example, your mouse/ball now spins properly and there are lots of new block types that can be used for level designs.

I’ve also used PhoneGap to compile my HTML5 + box2d source code into a native Android app and it runs GREAT on my phone with super smooth FPS.  Coming soon to an app store near you… =)

Anyone who made an HTML game, be sure to check out PhoneGap – you can compile your app to Android, iPhone, iPad, Blackberry, etc.  Completely free, open source goodness.

Tags: android, PhoneGap, screenshot

EscApe Deluxe (Super Monkey King Edition)

Not that my game is that interesting, or have some kind of potential, but I spent a few hours today adding some of the original planned features and touched up some of the graphics.

Unfortunately it has pretty much 0 replayability so it might not be so interesting for those who already solved it (unless you really like monkeys with their arms swaying hypnotically).

Still no sound effects though 😛

Tags: deluxe, post-compo

Find comments you’ve left?

Hey again all,

I’m looking for a specific game that I know I commented on, but I can’t remember the name of it or the name of the developer. Is there a way to list all my comments?

This would also come in handy for keeping track of the various conversations I’ve entered in comment threads.

I know I can go to the comments section and search my name, but that only returns the most recent 20 comments. Is there a way to see them all?

Comments

JohanAR
24. Aug 2011 · 13:27 UTC
I think the comments section only include your blog post comments, not those made for games.
24. Aug 2011 · 14:45 UTC
google that!

Escape from Shimishland-Post Mortem

Wow, my first Ludum Dare was a lot of fun.

Some things I think we did well:

  • Practically as soon as the theme was announced, me and my artist came up with an idea. A simple one, and we decided to stick with it and not bother brainstorming other things.
  • Letting the level designer…well, design levels. He spent practically as much time as me working, and I liked the end result.
  •  Last minute decision by me, the programmer, to redo the artist’s stick figures into something a little nicer.

Some things that went wrong:

  • Last day spent begging people to test, and fixing their tiny suggestions, while ignoring the big problem-the collision engine.
  • Artist only worked for about 2 hours, so she never had time to make helicopter animations or anything.

What’s next:

Well, I liked how those human sprites turned out. I’m working on a game using them as a template now. I don’t think I’ll keep working on Escape from Shimishland. Depends on what my team thinks.

Postmortem: Poor Ball (part 2)

This is a second part of the postmortem for Poor Ball, read the first here.

Global impressions on this LD:

This LD was my second and it went much better, I’ve had more time to think about my game and to implement it (even if I haven’t had the idea directly) thanks to less chat on IRC, but I still talked quite a bit, because not being alone is what’s awesome in LD. I haven’t been affected by the site issue as much as I thought I would be, simply because it was slow but not unreachable when I needed it…

Impressions on my game and its creation in C++:

The development went very smoothly as I didn’t loose time on features I could obviously not create in time (I lost some time struggling with a library bug, though). I could easily add the things I wanted to because I didn’t force my to do an object-oriented design (I prefer using well-designed OO APIs like SFML but I cannot design good interfaces in a short time) and simply had one function per thread: display + input, gameplay, physics and music (which was handled by FMOD without my intervention); and one function to asynchronously play sound effects. Simple as that! I had to refactor some physics code in a new function and that’s all. The game was finished in time because I used placeholder graphics until the game was actually playable.

Impressions on the graphics and sounds:

The graphics in this game are really simple:

  • A dark background image putting an emphasis on the limits of the terrain and on the danger near them with a blurring effect;
  • Simple ball and wall sprites with brighter colors;
  • A title menu with some nice text giving a small background story (you can cry or laugh at it, as it is kind of simplistic and unrealistic 😛 ).

The sound effects are nearly perfect in my opinion: I used some bell sounds and small melodies instead of visual feedback for this such as level up, loss of life, etc, as the game requires a high focus on the ball’s position. Using sounds let the player know what happened without having to look at the HUD, which nevertheless exists.

Conclusion:

I enjoyed that LD as much as (or even more than) the first and I’m really happy to have a complete game, which I am proud of as I am not a professional (game) developer (yet) !

Congratulations to everyone and see you soon at LD22 or before on IRC !

Tags: postmortem

Viral Post Mortem

ViralEntry

Viral represents my first entry into the Ludum Dare. I’m quite pleased to have actually finished it. I’m not entirely pleased with the results, but I will bring that up in the What Went Wrong section of my post mortem. The objective of Viral is that the player is a Virus and has to run away from the big scary anti-virus programs. To assist with the virus’ flight, the player has the ability to lay two traps which hinder the pursuing anti-virus programs.

I chose to complete the Ludum Dare in AS3, using Adobe Flash CS4 as my IDE. I ran into some rather annoying issues during development, including the debugger no longer attaching itself to my game when I tried to debug. Unfortunately, I didn’t really have the time to figure out why. This particularly was painful, as many bugs that could have been caught much more quickly relied on the ‘ole debugging standard of dumping trace messages to the screen.

I have plans to clean up and further develop the game. I feel as if it has a strong base and a good potential to be fun with (much) more polish.

What Went Right

Planning
Surprisingly enough, within 30 minutes of the theme being announced in IRC, I had already determined what the game play was generally going to be. I was able to get a significant amount of code done Friday evening before going to bed. This was instrumental to being finished on time.

Productivity
This sounds funny, but I started from scratch. No base code or libraries were used. This meant I had a lot of work to do. A lot. I was able to get it all done. I ended up writing just a silly amount of code on Saturday. I had generally high productivity through-out the entire 48 hour period. This was the sole reason as to why I was able to actually finish on time.

 

What Went Wrong

IDE
Maybe I’m just spoiled by Visual Assist X and Eclipse. I just feel that Adobe Flash CS4 is just not up to the task of heavy duty Actionscript development. I’ll be trying out other Flash IDEs for any future projects in Actionscript.

Just-one-more-featureitus
Before the compo, I decided that I would feature freeze on Sunday morning and spend all day Sunday polishing. Of course when Sunday rolled around and I was behind in my envisioned complete feature set, I decided to just add one more feature and then one more, and then one more. My third anti-virus was implemented about 30 minutes before the end of the compo. In fact, I had almost no time to play test. I had other people do my play testing while I was busy implementing features, composing a 4 second loop of music, etc. Next time compo, I will definitely enforce a hard feature cutoff, which allow me to polish and play test more.

Wasting time on things that should have not happened in the first place
I wasted around a total of 3-4 hours on things that should have not happened in the first place. I spent a significant amount of time trying to debug a chunk of code. I eventually just got fed up re-coded the whole chunk. Surprise surprise, it worked nearly perfectly. Additionally, I lost a significant amount of time on a character encoding issue. Flash was treating my text file as Unicode locally when I would parse it. However, my FTP program uploaded the text file in ASCII. As a result, Flash would treat the file after upload as ASCII, which resulted in my game not loading properly at all.

Comments

Fififox
24. Aug 2011 · 14:42 UTC
Tools going wrong, that happened to me too! It’s really annoying to try fixing a bug you didn’t cause by any means, and after having lost a few hours, you decide to use something else and it just works directly. Then you realize you should have done this from the beginning, but I guess that’s what happens under tile pressure: you don’t want to try something else when what you have seems right!
24. Aug 2011 · 15:53 UTC
I strongly recommend FlashDevelop for writing AS3 code, it’s one of the best tools around, and it is free.
Felipe Budinich
26. Aug 2011 · 12:59 UTC
+1 FlashDevelop

Escape from the Dungeon, a Postmortem.. ish

Well, first off  “post-mortem” suggests this game is dead, that’s far from the case. In fact I will be enhancing and completing this game for some time yet and have some cool things planned. So instead of a postmortem think of this as more of a summation of the contest and the game to date.

When ever I approach something like the Ludum Dare contest I try to focus on a specific discipline with the aim of using the contest as a vehicle to improve my skills in that area. For this contest it was art and I think that although it went very well in general I spent perhaps a bit too long on polishing things and this hurt other areas. Also I really had no idea how to make good tile sheets! Hint for anyone reading this, there is a very handy plug in for GIMP that will help!

As for code, well I started with no pre-crated material at all, I like to write everything as much as possible within the contest. To me, starting with nothing seems more inkeaping with the spirit of the challenge, mostly though this way I end up with a bunch of new code that I can pull the gems from that might not have been written if I was locked into an existing framework. Using HTML5 and JS for this game was a lot of fun, and I am left with the feeling that I have barely scratched the surface of its capabilities. It will be excited to continue experimenting with it in the future. Choosing a language that I have relatively little skill with did prove to be a challenge but I think adding something new into the mix helped keep me motivated and interested. So over all it was a good choice.

And then we come to sound, well yeah, that should say it all really. Sound was very neglected in my game and really only got bodged in in the last 30mins before submission. Its a real shame that a tool as powerful at creating emotion, interest and atmosphere as sound is so lacking in my own person skill arsenal. So, improving this will be the focus for my next Ludum Dare!

Finally  the tools I used, I develop on Linux and my tool choices reflected that with one exception,  Mappy. This little tool is windows only and so I had to run it through Wine. Really the only reason I picked it as my map editor was familiarity, the tool itself isnt bad but using it via Wine was very cumbersome. So, inspired by tools like bfxr I will look into building an online tile based map editor using the tech I created in this LD. Hopefully this will prove useful to other LD’ers as well. Other than this I used GIMP, bfxr, MyPaint and Geany IDE, all were really good bits of kit and I will be using them again.

So thats a wrap, but look out for future versions of my game as well as a new map editor that may help with your next LD!

– Callidus

 

P.S. I guess I should link my entry here, on the off chance it gets a vote or two. Link

 

 

 

Your Favorite so Far?

As I’m going through and rating your games, I try to keep a mix of less-rated games (for fairness) and more-rated games (to check out the more popular ones). I’ve stumbled upon quite a few really awesome games, good work everyone!

That being said, do you have any favorites that I might have missed? Have you seen any games that you think deserve particularly high ratings in a particular category? Or even just games you’ve enjoyed for no specific reason?

I’ll start things off with a link to my favorite so far: Coin Runner

Comments

24. Aug 2011 · 17:06 UTC
I tried writing a post with my current favorites, but realized I’d be blamed for trying to skew the already skewed ratings. People on Ludum Dare are kinda anal about keeping a level playing field for all entries, and that’s why you can’t even see your own score, let alone anyone else’s.
sfernald
24. Aug 2011 · 18:02 UTC
Yeah, you should definitely wait until after the voting for these kinds of threads, out of fairness.
24. Aug 2011 · 23:40 UTC
Hmm okay, I was thinking this might be a good way to share the unnoticed games, but I’m all for keeping things fair. :-/

My game needs a walkthrough

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

The feedback coming in is that my game is way too hard. The level that I managed to build would normally be like the last level of a 20 level game. It has everything thrown in it and I made it as hard as possible. If I had had more time I could have made the tutorial levels necessary to make it not so frustrating for players. The one thing I really screwed up on was running out of time before I could build more levels. I had this wonderful toolbox ready and I could have easily built more levels (especially easier ones) if I had just had time. Oh well, I learned a lot with Stencyl so next time my progress will be better. Game difficulty is something that I just need to start considering when I’m developing these games. It’s just something else that I’m going to have to add to the list. Hopefully I learn for the next entry 😉

Due to people having so many issues with making progress, here is the walkthrough:

SPOILER*******************
Jump over the growlers and get a boulder. Climb the rope and jump on the cannon. The boulder should load into the cannon (if you aren’t standing on top of the cannon). Then the cannon should fire the boulder into the crane. Drop the boulder on the blue rock by controlling the crane. the rock should break if you hit it. By the way, due to a bug, always wait at least 10 seconds after loading the crane before dropping a boulder. Ok, now you have a way to get back down and get more boulders. Keep doing so and reloading the cannon and try to kill off as many of the obstacles (knifers and growlers) that you think you need to to make it easy to get more boulders. Once you feel safe, start dropping the boulders on all of the things above the exit. Once you have cleared a path to the exit, then this time load a boulder but stay on top of the boulder. This might take a few tries (you have to be on the boulder just right). But then if done correctly the boulder should shoot you up into the crane and you will be stuck in it. Now move the crane over to where the exit is and release down. You have escaped!
END SPOILER ***********************************

Post Mortem

The following content is a copy / paste from my personal website so there are maybe some useless information…

 

 

This game was made for the Ludum Dare 21 on the theme Escape.

When I was student, we had to make a game in 5 days and it was in team. That was hard. But the ludum dare performance is different for the following reasons :

  • working alone is easier for the organization
  • working alone involved to be skilled in the different domain (and’s that not the case for a lot of people… including myself)
  • working alone doesn’t help to find brilliant ideas… Especially when there is a short development time
  • 48h hours is twice shorter than 5 days…

What Went Right

No big issue with the development

I didn’t across any difficulty to develop the different features of the game. All the gameplay is simple, and unity offers lot’s of functionality easy to implements.

The music

Thanks to Otomata, I succeed to make a music in less than 5 minutes which is not too bad. It’s one of the thing I’m the most proud in this game. I think I’ll reuse this great tools!

What Went Wrong

The development choices I did

In hindsight, I don’t think I did the best choices. I should have work more on the narration, the atmosphere of the game instead of producing a game in which the player can absorb. It’s maybe the point of a game : talk to the player. If you don’t succeed, your game is useless… I might have done an useless game…

Lacks of skills

I have knowledge to design and develop a game but I’m not skilled in graphic and sound design… And without that, it’s hard to construct a coherent game.

What I’ll do for the Next Ludum Dare

Less Content More Feedbacks

Like I said earlier, my game is not really accessible… I should have develop less gameplay and add more feedback about what’s happening in game and add more clues.

Next time, I think, I’ll try to do something simpler and more accessible in term of gameplay. Here I tried to do something maybe too strange. Building a meta riddle which is not explain to the player is maybe not the best way to entertain people..

Upgrading my skill in the meantime

I have to do more games until the next Ludum Dare in order to improve my graphic and audio skills as well as my design and development ones!

For that, I’ll finish the development of a game I began three weeks ago, and then I’ll begin a new one I want to do for years. I think I’ll useFlashpunk or Flixel to develop it. But I have to try both before to choose between them or maybe do you have some advice?

A time lapse

I wrote a time lapse of my Ludum Dare on Monday. To avoid this boring and difficult exercise, I’ll directly record my performance next time! It’ll be more interesting and easier to share =)

A flash game

I’m currently working on a game made with flash. And it will be the same with the next one. That’s why I think to use Flash for the next Ludum Dare. I haven’t used Unity for few months before this week end so I lost precious time with stupid bugs… (like onTriggerEnter instead of OnTriggerEnter…)

Tags: 8 ways, cccp, post-mortem

The Getaway Car – postmortem.

Having never done a competition like this, I wasn’t really sure what I would be able to do.

As it turns out, I’m pretty proud of what I was able to do in such a short amount of time. I’ve only had my hands on the App Game Kit for a few months, and during the first 2 months it was in Beta, so it was a bit unstable and commands were unfinished. It was officially released on Monday August 15th, just 5 days before the competition.

What I’ve learned from this experience:

  • It takes a VERY long time to get good at making art assets.
  • Under pressure, and with some family support, I can accomplish more than I thought.
  • I love the App Game Kit. While it’s early in it’s development, it’s a great tool for making games.
  • Sirens are hard to implement in a game without them becoming annoying.

In the end it’s a game that I only spent 48 hours making, and still took time out of that to go have dinner with my family, and get a good 8 hours or so of sleep Friday and Saturday night.

All things considered I’m happy with it, and after some fixing up it will make a nice game to release commercially.

 

 

URTH escape gameplay video

I’ve gotten a little addicted to my own game, but much to my frustration I’m not the one with the high score. Since I’ve been playing it between ratings I decided to upload a short gameplay video.

The goal in this game mode is to get as far away from the central star as possible. There’s also a story mode which has puzzle elements to it. I might upload a play through one of these days.

VIEW VIDEO ~ VIEW GAME PAGE PAGE 

In case anybody wants to try beating my score even more, it’s worth nothing that only the web version submits to the leader board(and only after adding a name).

Tags: gameplay, video

Aftermath: The Collapse

Now, a couple of days went by and i got a lot of positive feedback, thanks to all of you <3

I must say i am pretty satisfied with my entry. But some comments had me frustrated (not the comments in particular, but the cause of them). People were experiencing crashes, or the game not starting properly, and if it works, they get stuck because i made some design fails in the early levels. Poeple weren’t able to experience, what i had worked on so hard, just because i made some mistakes in the development. It felt devastating.

When i read that submitting fixes were allowed, if they are dependant on having the game working, i was rejoicing. It still leaves me with a crappy level design, and that can’t be helped just yet. Just take it as a challenge. They are definately solveable.
I would love to record a play-through but my machine is too slow to have the game running and fraps recording at the same time :( I might be able to do it at a friends pc the next couple of days though, so look forward to it :)

So to mention the issues that came up:

1: Crash on startups
There were few occasions of startup crashes. One of them was a fault at the model loading in the collada parser. I used float.parse() without the ‘i-dont-care’ parameter (CultureInfo.Invariant) so it crashed for some localizations ( using ‘,’ / ‘.’ delimeter ). That was obviously fixed pretty easy once i knew whats wrong. I just had to add some basic exception handling to the code to find out about it. I should have added that long ago, anyways.

2. Levels only getting loaded partially or not at all
The building and collapsing animation of the level geometry was written in the last hours of the development, so it was a rather hackish attempt and i knew it wouldn’t be perfect to begin with. I also knew that my timing sucks, as i was using GetTickCount(); which is rather unprecise, only getting updated about every 16ms. Not quite enough for a solid physics simulation.

I started playing around with different timing methods that are available in .net, which boil down to GetTickCount()/Environment.TickCount and QueryPerformanceCounter()/Stopwatch, not being satisfied with the results of the latter, as it was jittering like hell. As i figured out after a couple of hours, the actual problem lies in the game loop. After reworking some basic orders (i fooked around in it while working on the game) it worked like charm. Physics feel alot smoother, and the levels construct/deconstruct correctly.

3. The goal model was not showing up for some
Actually, i have no idea what the cause was, i still don’t. It was fixed with the time/gameloop fix though. So it comes for free. (Although it still looks ugly whiteish as the texture is not working correctly. I won’t fix that for the entry, cause i’m not allowed to :p)

4. There is still a reported crash, without putting out some error message, besides “error” apparently, which i can only hope is unique to that one user. Although i’d love to fix it, i have no way to do so at this point. Sorry about that alexlarioza :\

 

If you experience crashes or other bugs, please let me know. You can find me on Twitter or irc://irc.afternet.org/ludumdare as wzl or redwater\wzl,

Thanks, it is really appreciated

 

Finally, thanks again to all of you providing constructive feedback. It really helps designing a solid concept to work on. If you liked it, you should look forward to the next iteration of the game :)

 

Enjoy playing, and good luck with your entries fellow luders \o/

Ludumdare Kajaani was a success!

Ludumdare Kajaani was a great success! We had 15 dedicated participants joining the competition and jam last weekend. Thanks to everyone who were involved!

Here are some games that were made during the event!

 

For more info you can check : http://ldkajaani.blogspot.com/

Comments

24. Aug 2011 · 19:23 UTC
Aijaa, Suomessakin järjestetään LD:hen liittyviä tapahtumia. En asu Kajaanissa päin, mutta kiva tietää.
24. Aug 2011 · 20:03 UTC
Varmaan etelämmässä majailis enemmänki LudumDare daveaajia ja ois hiano saada ympäri Suomee porukkaa devaa samaan mestaan vaikkapa Kajaaniin tai Helsinkiin dusailee LudumDare tuotoksia.
25. Aug 2011 · 00:23 UTC
Even after checking out the link, I’m still confused… what is Ludum Dare Kajaani?
26. Aug 2011 · 02:06 UTC
Congratz guys for another successful gathering. :)

Love users: Upload executables

I’ve found more than one Love user now who uploaded nothing more than their game’s .Love file. Now technically this is fine, since it’s everything needed to run the game AND source! How convenient!

Unless you don’t have the Love game engine installed.

Now in a normal circumstance it might be reasonable to ask someone to install the engine to run your game. However, in the case of Ludum Dare, we have a mere 599 games to play, test, and rate. When I find games that require much more work than “click link and play” or “download, unzip and run”, I find it very tempting to just move on to the next entry.

The fantastic part is that there’s a very easy solution to this! As detailed here, you can easily build executable packages for windows, linux, and mac! These binaries will be easy for users to download and run without being burdened with installing whatever additional software you might have happened to use in your project, making it quick and painless to rate.

Note that this process falls under “Porting” which you can do at any time after the submission window! So go forth my minions and make your entries ready to run!

and just like that – director’s cut music!

I’m fist-deep in the Director’s Cut for my LD21 entry (“and just like that“), and I just finished off some music for the challenge mode.

Check it out here (note that the first bit IS EXACTLY the original piano exercise sounding melody)

Comments

24. Aug 2011 · 21:47 UTC
YE WHAT HAVE HEARTED THIS, I HEART UUUUUUUUUUUUUUUUUUUUUUU

It *finally* works in Windows!

Well, I finally got my entry, Fred the Astro-Miner, compiled for Windows! It was such a pain! I tried Visual Studio, but after spending hours modifying my (valid) C++ code so it was happy and finally compiled .o files, it refused to link. Hours later, it linked. And it didn’t work. I threw more hours of work into it and then I got a window to appear! Yay! But it always segfaulted at startup, no matter what I did -_-

Then I thought,”Why don’t I use Eclipse and G++, like I do in Linux?”. So many more hours later, after compiling GLEW from source and remembering to use Mingw libs instead of VS ones (!!!) I got it to work! Then much jumping around my room screaming with excitement ensued (I’m not joking. I was that happy). I didn’t need to modify my code at all by the way, except for replacing gl.h includes with glew.h. I’m pretty happy with that!

So you can check out my entry here, now in Windows!

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

Comments

25. Aug 2011 · 07:24 UTC
Turns out glDrawArraysInstanced isn’t supported in OpenGL 2.1 and gl_InstanceId isn’t supported until GLSL 1.4, so GLSL 1.1 or 1.0 shaders is a no-go, sorry =(

Post-Mortem: The Man Who Sold The World

Creating a game is a passionate experience. Doing it in 48 hours is equal parts divinity and torture. As such, a lot goes down during the development process, laughs are had, tears are shed, and ultimately you arrive at the end product – your game.
Well, maybe I’m being overdramatic. But you definitely learn a lot upon completing a development cycle, even one as short as two days. The post-mortem is a great way to share that knowledge, imparting wisdom upon those who seek it. In this I’m going to examine what was successful, what were failures, and what just plain drove me nuts during my development of The Man Who Sold The World.

Play The Game Here

 

Play &quot;The Man Who Sold The World&quot;

 

The Good

Level Design Workflow (or “Levels are the meat of the meal“)

I had an excellent workflow for creating levels in TMWSTW. One of my favorite aspect of game design is creating levels, so I made sure that process would be as smooth as possible. This meant creating a method of designing, developing, testing and finaling levels in a minimum of time.

The first thing I did was create the character and camera systems, including physics and collision detection. This allowed me to get right into levels, as I knew how my player acted and moved within the first wee hours of development. The result was over a dozen enormous, hand-crafted levels that made it in-game; not only created, but tweaked and tuned for an ideal gameplay experience.

I had the time to fully explore what I wanted to with my level designs, creating many worlds in different environments, and even get experimental with more abstract locations. The process was effective, informative, mentally invigorating and, most importantly, fun.

Source of Inspiration (or “Why the Repeat Button is Your Friend“)

You’ll notice upon launching TMWSTW that a splash screen reads, “Inspired by David Bowie’s conceptual album and story, ‘The Rise and Fall of Ziggy Stardust and the Spiders From Mars'”. That’s there for a reason – it may sound silly, but I listened to David Bowie’s “Greatest Hits” album on repeat for nearly the entire Ludum Dare – having it on repeat allowed those songs to be constantly in my consciousness, influencing my design choices. Having that aural feedback not only encouraged me to keep working, but did wonders for keeping me focused and following a coherent vision for the game.

I did the same thing when I developed Nyan Cat FLY!, listening to the Nyan Cat song during development – I’ve spent over 100 hours of my life listening to that atrocious tune, but it helped the game reach its final state. Nyan Cat FLY!, like the meme itself, is cute. TMWSTW is, like the story it’s inspired by, an epic tale about the decline of humanity.

Plus, Bowie is pretty rocking, and helped me get through the long hours of the night.

Audio Design & Implementation (or “If it’s there, use it!“)

I’m proud of the audio in TMWSTW. I spend a liberal amount of time creating game audio tracks, and like to think I’m getting better at it. I primarily use Sony ACID Music Studio 8, of which I’m lucky enough to have amassed a liberal amount of assets I can use to develop custom music. However, that’s just so much bandwidth-drinking data unless you can get it to actually sound off in-game. Flash is notoriously awful at handling audio effects, and I didn’t want to struggle through creating my own audio manager in AS3.

This is where external classes and APIs come in. Guess what – you’re not the only programmer in the world, and other people have come across the same problems. I wish I’d realized this sooner, especially for audio. Matt Przybylski has creating an amazing tool in the AS3 Sound Manager v1.4, which controls the sound in TMWSTW (and all future AS3 krangGAMES projects). Unfortunately I implemented this system fairly late into development of TMWSTW, and had already lost time trying to foolishly use my own code. Had I gone straight for Sound Manager, I could’ve saved plenty of time and effort. I won’t make that mistake again, and if you ever use audio in AS3, I highly recommend looking into it.

 

The Bad

Unclear Art Direction (or “Know Your Limit, Play Within It“)

By no means am I an artist. I have a confession to make: while my LD19 entry PRIOR won 8th in graphics and was lauded in being beautifully stylized, the art is only the way it is because at hour 47/48, I realized, “Oh, this game needs some better art than the debug stuff.” I then proceeded to slap a gradient texture on every background I could find.

However, that was not the case in TMWSTW. Forgetting that I’m not an artist, I -wanted- to make custom retro/pixel art for every environment in the game. Ultimately, I lost several hours of work to something I ended up simply not using. The pixel environment art I made was ugly, low-quality, and took far too much time to develop (especially including the process of moving from Photoshop to Flash, then implementing it into the game). I finally abandoned that vain attempt, and moved to Flash-generated stylized art, similar to PRIOR (though, thankfully, with a bit more color. I’m kinda getting sick of black-and-white, and actually spent a few hours on the art this time.)

The moral of the story: Don’t be something your not. If you have to, do it in the easiest way possible.

Misallocation of Time (or “Why Your Brain and Time are NOT Friends“)

In Ludum Dare, time is not just a commodity, but a deceptive bastard of a resource. What I mean is, your psychological interpretation of time is never representative of true amount of time left. Even when you KNOW that you’re running out of time, you can still very easily lose track of it and waste it on badly prioritized endeavours.

If you’ve been reading this post-mortem through, you know how much time I lost working with audio and Photoshop (more on Photoshop in a moment). This happened primarily because I misjudged both the amount of time required on these tasks, and the amount of time remaining. Admittedly I’m vastly unfamiliar with Photoshop and couldn’t make a proper work-time estimate there to save my life, but that’s a poor excuse for losing the number of hours that I did. Estimating time and collecting those estimations into a proper timeline is incredibly difficult, and it’s all too easy to misjudge that and stray too far from the path of your development.

I suppose the best method to avoid this tragedy is to quantify everything you have to do objectively, at the beginning of development. What I’m going to do for the next Dare: create a task list of everything I need to do and estimate the time it’ll take to do it. Then add 15% to those tasks. Then reserve at least six hours for polish and miscellanea, and strip away everything of low-priority that pushes me over the 48-hour timeline. Hopefully, that’ll keep me on time.

Lack of Sleep (or “Quality Is Better Than Quantity“)

Here’s an unsurprising truth: you lose sleep in Ludum Dare. There’s no way around it, making a decent game in 48 hours will suck away time like nobody’s business. Spare time doesn’t come from nowhere, so if you want to make a decent product, you’ve gotta cut something away, and sleep is the most obvious victim.

Don’t get me wrong – there’s nothing wrong with that, at least from the Dare’s perspective. Staying up late can be fun, as any eleven-year-old would attest, and the constant flow of energy and creativity that arises from game development is exceptionally invigorating.

But there’s an fine-yet-extremely-important line between sacrificing sleep and neglecting your needs. Time limit or not, your brain needs sleep, even if only for a few hours. Staying up too late under a naive notion of “If I sleep, I won’t have time finish” is one of the most dangerous things you can possibly do.

Lack of sleep will take its toll, a far worse toll than spending three-hundred minutes unconscious will. Your focus will drift, your quality of work will decline, and your overall product will suffer for your self-negligence. Taking a four-hour powernap and a shower upon waking up will do far more for your product than an extra five hours of half-baked development, followed by more hours of ever-increasing tiredness. At one point I was falling asleep at my computer – it sucked, and my game knew it. So learn from my mistakes. Go take a nap.

Either that, or adopt the Uberman Sleep Schedule.

 

The Ugly… Sotra

Theme Interpretation (or “Livin’ By Your Own Rules In Someone Else’s House“)

The theme for Ludum Dare 21 was “Escape”. I’ve noticed that people tend to treat the theme differently. Most people take it literally, which is fine, and often produces some pretty excellent gameplay experiences (such as NMcCoy’s excellent “Planetary Mission“, which I recommend trying out). Others view the theme in a different light, more like a guiding star than a criteria point.

This is how I viewed it in TMWSTW. Make no mistake – “Escape” is the dominant theme in my game, and it’s represented metaphorically through the player’s final actions in the game. This is not some kind of excuse for my game design, nor is it an attempt at being a pretentious douche. It is simply my interpretation of the theme, and how I chose to represent it through a video game.

Ludum Dare Compo Rule #3 states “Games must be based on the theme.” Ludum Dare is all about rapid development, and creating a product out of unfiltered passion. Basing the entire development cycle on a theme, like what the Dare has done, is ingenious, and manipulating that theme in your own fashion is an exciting thing. No matter how you interpret the theme, you’re taking a universally acknowledged concept, and making it your own. So do so however you see fit.

F**k Photoshop (or “No, seriously.“)

Please, bear with me for a moment while I depart from a more eloquent dialog and instead relinquish to the world a personal opinion that I hold, in the most base and understandable form possible:

F**k Photoshop.

For real. I love Adobe, I’m a huge fan of Flash (as anyone who knows me can attest), and the entire Creative Suite is a great product. But Photoshop and I have a beef, and I’ve gotta address it. I’ve stated on several occasions that I am NOT an artist, and as such I don’t pretend to have any level of skill in Photoshop, or Illustrator or even creating advanced artistic elements in Flash. But I do know a thing or two about product design, and creating features for users of all skill levels.

In this case, the chip on my shoulder comes from Photoshop’s inability to mass-modify colors on different layers, and then export them. You simply cannot find-and-replace colors on multiple layers (or at least, after a few hours of forum-sifting, I couldn’t find a way). As my player character had many different layers for animation, this was a huge issue. I could simply place a layer mask that changes all layers beneath it, sure, but then you can’t mass export those assets – the layer mask is not included in the export, and only default images get created. Ultimately I made a keyboard macro to duplicate the layer mask, combine it with the layer below, export that layer only, delete the layer, and move the original mask down to the next layer. Lather, rinse, repeat – a major pain.

I lost over four hours to trying to change BLACK and WHITE to ORANGE and BLUE. Four hours. Now, feel free to go off and rant, “You were using a poor method/That’s easy to do if you know how/there’s technical reasons it can’t be done/You’re a PS noob!” or whatever other retorts you may have. My point is, usability design has to take novices into account – a program SHOULD be intuitive enough that users can perform simple tasks. And replacing one color with another should be a simple task, and it is, if you’re only working on a single layer. I’m no slouch when it comes to finding solutions on online forums or hunting for methods of completing tasks, but when it takes you over four hours to jury-rig an impromptu solution to a presumably simple issue, I’m left at the conclusion that Adobe dropped the ball. Photoshop is a great program, but it’s far from perfect.

</rant>

Scope, and Knowing Yourself (or “The Uplifting Conclusion“)

I think I’m masochistic. Maybe that’s more than you wanted to know, but that’s the only explanation for the decisions I make during Ludum Dare. I’m constantly pushing myself beyond my self-determined reach in terms of development. In Ludum Dare 19, I crafted a facility larger than a standard city block and populated it with a complete, twisted back story. In LD20, I created a fully-functional level editor and allowed players to not only take the game into their own hands, but record the fruits of their labor and share them around. And in LD21, I wove a Universe. With David Bowie at my side, I explored love, spirit, daring, and the fate and frailty of humanity.

Those lofty reviews aside, the point is I established the scope of my development as HUGE. I did this intentionally, for a few reasons. One reason is, I simply love creating stuff. “Stuff” is the correct word there: I love creating levels, NPCs, obstacles, stories, music, everything that goes into a game experience. So I set ludicrous goals for myself, and push myself beyond my reach. It’s risky, and it isn’t for everyone, but it’s how I generate the best personal results (usually).

The point I’m trying to make here, is be true to yourself and your habits. Take every bit of advice with a grain of salt, and find your own best practices. Biting off more than I can chew works for me, but it can be catastrophic for others (just as trying to do pixel art nearly did me in, while some people are savants with retro graphics). We’re game designers. Only through creating games can we get better at our craft, and only by being true to ourselves can we really create a game. Anyone can build a game, but to really create an interactive experience, you have to play to your skills, nurture your muse, and be true to yourself. That’s where games come from.

 

In summary: David Bowie rules. F**k Photoshop. Thanks for reading. <3

 

<3 Nick Yonge
Founder, Director, MCS-EOOEJ, krangGAMES
www.kranggames.com
nick@kranggames.com
Facebook ~ Twitter

 

 

 

 

 

 

Tags: as3, final, flash, LD #21, motivation, post-mortem, postmortem

Post Mortem incoming

Just a heads up that I’ve been out of town since the end of the compo, and will be posting a post mortem when I get back (in a few days).

I’m sure everyone has been holding their breath in anticipation!

Tags: journal