Ludum Dare 31
December 5th-8th, 2014

October Challenge 2014
Ending Soon!

ConstructionPlease excuse the site weirdness. Mike is making and fixing things. Clocks are probably wrong. Colors are place-holder.

What is Ludum Dare?
Rules / Guide

“Mindbane” Post Mortem

Posted by (twitter: @legacycrono)
August 25th, 2011 9:27 am

Mindbane was my entry for the 48 hour competition. If you haven’t, check it out and rate it here: PLAY MINDBANE!

The development of this game was a mess, to say the least. To begin with, I had to work on the saturday, so actually I lost ten of the 48 hours doing absolutely nothing. Well, nothing is quite inaccurate, because I was trying to have ideas for the entry. But my brain at 4AM is barely working correctly, so I couldn’t think of anything.

When I arrived at home at 9AM and booted my laptop to start coding, I still had no idea what I’d be making. I started FlashDevelop, extracted the FlashPunk directory to the project and started working on the level loader that would import the Ogmo Editor files…

Suddenly, tiles.

Loading objects was still missing though.  At 3PM on Saturday I called it a day and went to sleep, unsatisfied with the current state of the game. Then I woke up for dinner at 7PM, wrote down some notes while eating a BigMac and went back to sleep, because I was still tired as hell.

I woke up at 1AM and made a decision – I wouldn’t waste another four hours making a level loader that would ultimately be composed of the worst programming anti-patterns mankind can think of. So I started GameMaker, programmed the main character motion and made a simple level. Then happened to me that it could be fun to use a button to disable gravity. And it was. I also added a button to stop vertical movement when falling. I accidentally found that by using that button it was possible to do airjumps. “Perfect!” I though. That’s pretty much how I decided to use the hovering and midair stopping mechanics. At that point I was already using “disassociation/escape from reality” as the basic premise of the game. The disruption of the natural laws of physics seemed like the perfect gameplay mechanic to fit that premise.

Not much happened after I got that working. It was still 9AM, so I decided to relax a bit. I made the ghoul and player sprites, tried some melodies on FL Studio and proceeded to add more levels on the game. 10PM, game was finished, with ten minutes left. Phew.

 

Things done right

  1. GameMaker: Now, I’m sure many people would frown upon this choice, but I’m not the kind of guy that cares for technical silliness. For me, a good game is a good game, and that’s all there is to it. As I said on my Fate of Mankind post mortem: I like to make games, not exception handlers.
  2. Fun first, art last: I suck at drawing. That doesn’t mean I don’t try. This time I made the wise decision of finishing all the gameplay stuff before making the game pretty. On Innocence (Ludum Dare 20) I started by drawing sprites first. That was stupid.
  3. Experience: When I participate on LD19, that game was the first I made in years. Then on LD20, I used AS3 and FlashPunk – something that I never had used before. This time I played safe, and I guess that was for the best.
  4. Cool game mechanics: I really like the hovering, midair stopping and airjumping… XD

Things done wrong

  1. Fun first, art last: I suck at drawing. Yeah. The tileset looks terrible, and I wish I had a better sprite for the main character. I know it’s important to have good graphics, they ARE a key point when people decides to play your game or not.
  2. Difficulty: I completely forgot to ask people to try it before submitting. Oh well. People frequently complain that it’s too difficult, and that’s probably true. But it’s not like I wanted it to be that difficult… For me, it doesn’t look that hard (well, I created the game after all). Next time, less spikes and more beta testing.
  3. Obscure Plot: Is it clear that (spoilers ahead!) the main character is being haunted by his inner demons inside his mind while he’s in coma after attempting suicide? And the spirits you collect along the way are the good memories the character have from his past? If you played the game and didn’t knew that, I failed at storytelling. If you knew it, then disregard this one. :P
  4. My job: Seriously. Working from 11PM to 9AM on the first day was a huge waste. Just by thinking all the cool things I could have done with extra 10 hours…!
  5. Not using FlashPunk: I really, really wanted to make this game using AS3 and FlashPunk, but I didn’t had a framework ready. Flash games are much more accessible and can be distributed on Newgrounds and Kongregate. Windows games, not really…

Tags:


5 Responses to ““Mindbane” Post Mortem”

  1. lectvs says:

    I didn’t have much to complain about. The graphics weren’t very bad at all (they’re better then what I can make), and as for the difficulty, hard games are, well, frustrating, but if they’re possible, they’re fine. The plot here did need a bit more work, as I was wondering why I was jumping into a hole while demons were standing around me. And using FlashPunk or Java might be a better choice, though requiring some coding knowledge, as they can be uploaded as web apps.

  2. ToxicLogic says:

    In terms of the plot, I think you actually nailed it. Yeah, it was vague, but that’s what made it so compelling and kept me playing through to the end. I guess the one thing that could have been clearer was that you were “collecting” certain spirits. I assumed that all of the spirits were just ambiance.

    I love your quote: “I like to make games, not exception handlers.” I agree one hundred percent. I may steal this line from you. :p As I’m judging games, though, I do not take into account what language people used and what code they started with. If someone starts from scratch using C++, and creates a decent game, that’s more impressive than someone who used Unity and their “personal enginge from previous LD” – which means that they’re probably starting with existing gameplay code, which I frown upon. Just sayin’.

Leave a Reply

You must be logged in to post a comment.

[cache: storing page]