He’s hackin’ and whackin’ and smackin’…
He’s hackin’ and whackin’ and smackin’…
It’s been a few days and I’ve had some time to recover most of my lost sleep from the weekend so I thought I’d finally sit down and write a little about my entry and what I did and did not manage to accomplish in those 48 hours.
Upon seeing the theme I instantly thought of the expression “the pen is mightier than the sword” and wanted to incorporate that into my game somehow. I thought about a writer who summons creations from his stories to fight for him. I considered a writer who literally uses a pen to fight, sneaking up on enemies and stabbing them in the throat. I settled on something a little less gory (though not entirely devoid of violence).
I wanted to make a game about a writer recounting an old war story from memory. As he writes the story, the battle plays out behind him, as he recalled it. I loved the idea but did not think I could write a reliable interpreter in such a short time frame. I played around with some other ideas but couldn’t get that one out of my head, so I decided to go for it. The sooner you have an idea, the sooner you can start working and the better the end product will be.
And thus, The Mighty Writer was born.
I’m happy with how it turned out, but there are some very obvious flaws and the game is in dire need of some balancing. The concept of writing the actions of the soldiers works well, but with so few possibilities, the game stagnates and becomes boring/tedious fairly quickly. I admittedly did not spend a lot of time playing the game through to the end while developing it, so battles tend to drag on longer than they should, especially with higher soldier counts. This unfortunately adds to the tedium and would definitely be something I fixed were I to work on the project further.
The end result is only a fraction of what I originally planned to accomplish. Look at this list:
What I managed to complete:
This is why it’s important to limit your scope. Take whatever you plan to do and half it, and you’ll probably still have more than you can manage to do within the time frame.
I got around writing a complicated interpreter by sticking to very simple rules. This limits the player in how they can structure their commands, but it allowed me to keep my sanity. The subject of the command is always the first word, which is why soldiers only have last names. The second and sometimes third or fourth word is the action of the command. The last few words in the sentence is the target of that action, which is always one of the enemy soldiers.
So in “Carter fires at Soldier 2.”, Carter is the subject, fires is the command and Soldier 2 is the target. You can write anything in between those and it will still work. “Carter fires his high-powered water pistol at the squid-like abomination that is Soldier 2.” for example.
A huge thanks to everyone that has left ratings and comments. Your feedback will be invaluable should I take this project further.
If you’re interested, you can try the game here.
If you don’t enjoy downloading a bunch of files every time you want to rate a game, or simply aren’t on the right OS to do so, then this is for you.
I compiled a list of entries that are playable in your browser, then plugged it into a handy generator, which spits out 10 random web-playable games.
Hopefully someone here finds it useful. Happy rating!
Finished my 6th LD entry with 30 minutes to spare, which is a first for me. Usually I’m scrambling in the last 15 minutes to add sound or buttons, but not this time. Perhaps I’m learning to manage my time better.
I will say this though: the last 6 hours of the competition pass far quicker than the rest. They feel more like one hour.
Now that I’ve had some sleep, I’ll write a post about my entry.
A game about ice-skating, paper collecting and orca avoiding!
You play an arctic researcher who has clumsily lost their life’s work, it’s pages blowing across the frozen sea. You take to the ice in an effort to recover your research, but the orcas you study have different plans though…
My original idea was to have many different sea creatures breaking through the ice, but upon realising how time consuming drawing all those would be, I decided to limit the scope and adjust the story to fit. I also wanted to add bits of ice flying around when an orca smashes through, and lots of blood when an orca does manage to eat you.
I probably spent a third of the competition working on the ice alone, which is all procedurally drawn. The other third was drawing and animating the 8 directions of the skater, yikes…
Overall, I’m very happy with how it turned out, even if I wasn’t able to add all the nice things I wanted.
I had a whale of a time making this one, and can’t wait to try some of the other entries I’ve had my ice on. (Okay, that’s pun’s a bit of a stretch, but I’m keeping it.)
Here’s a link to the game, give it a go!
For those of you who are like me and don’t enjoy manually downloading and installing a bunch of stuff to play a game, or are on Mac or Linux, here’s a handy generator I put together that spits out 10 random games with web-playable versions.
(My game appearing first in this screenshot was an incredibly lucky accident, I swear!)
I thought I’d share it here in the hope that someone else might find it useful. Happy rating!
I finally made a game involving bees (not that I was really ever planning to).
That’s right Gob, bees.
I bet you’re just blossoming for a gardening game on here. Hell, I know I was. Who doesn’t enjoy escaping their real life chores for virtual one? There’s not enough gardening games on here, and certainly not enough games about bees. And gorillas.
If tending a fake garden sounds like your idea of a blooming good time, make a bee-line for Pollinate. While the idea turned out to be not terribly exciting, I think it’s still worth a minute or two of your time, at least for the bees. Think of the bees, man. Do it for the bees.
Anyway, I started a day late, so I’m proud of what I managed to produce in a short amount of time. Though it’s far from my best entry, it’s was a nice change of pace.
Before I buzz off, I’d just like to say congrats to all entrants. The few games that I’ve played so far have been fantastic. Great work everyone, see you next year!
For those of you who might find it useful, here is a list I compiled of all the web submissions for LD27:
Finally have some time to sit down and write a post-mortem for Teleportant.
This was my fourth time entering the Dare, but only my second time entering the 48 hour compo. I was moving the next weekend, but instead of packing, I sat on my ass and made a game while my family packed around me. I also have a full-time job this time around, which made recovering from my all-night programming sessions harder but still do-able.
Step 1: Design
I did very little on the first day. I came up with the concept, design and had a guy moving around on key presses by the end of the first day. That’s it.
I had a hard time programming because, although I was working my ass off, it didn’t look like that to someone carrying boxes up stairs.
When I make games, I don’t start until I have a very clear vision in my head of what the final product is going to look like.
I decided that I wanted a visual style similar to Canabalt, so I opened that up, played it for a bit and studied it like a book.
Then I set about designing and animating my main character. I almost always do pixel art because drawing with a mouse does not work out too well for me.
I use Photoshop to draw all my pixel art, but it falls short when trying to animate sprites. For that, I use Pickle, which appears to be made by a fellow Ludum Darer! It has a neat animation preview panel so you can “feel” your animation while you make it, but it lacks some of the precise controls Photoshop has, so I find myself switching between them often.
Soon, I had a run cycle that looked a lot like Gangnam Style when viewed as a single image. It looked alright in game though, so I left it.
When I had him all done, I started programming. I decided on a twin stick shooter control scheme, and got him running around the screen and shooting bullets by the end of the first day.
Step 2: Engine
On the second day I did the bulk of the programming. I added enemies, death, blood and random level switching. There was originally only going to be one weapon, the pistol, and grenades. My brother advised I add more. “You gotta have at least a shotgun and flamethrower, bro.” So I spent some time adding those, and since I had already made an explosion animation, I went ahead and threw in mines as well.
By night fall I decided I needed some back drops to go with my levels, so I hit Photoshop again. I originally wanted at least 6 locations, but after drawing for a few hours and the deadline ticking ever nearer, I decided to settle for only 3. It was either make another 3 levels or add a menu screen and sound effects, so I went with the latter because I like to submit a game that feels complete.
Step 3: Sound
With only 3 hours left, I decided to focus all of my efforts on adding sound to my game. Sound design (as well as music composition) is admittedly my weakest area.
All of the in game sound effects were just me making silly sounds into the microphone. It’s best to do this when the room is empty. The music I made with FL Studio.
My previous entries have all lacked in the music department, and those where I tried to add some sort of melody, I failed horribly. *cough* Influenza *cough*
So at midnight I sat for about an hour trying to make something sound decent. I plugged in my electronic keyboard and played some melodies, but I realised that I have terrible timing. Something that sounded great to me when I played it, sounded awful when I listened to it again. I eventually decided to just play something, then fix the notes manually in FL Studio. I ended up with the piano song you can here in the menu screen.
For the game sound, I wanted something much more upbeat to match the fast-paced style of the game. I set about creating a beat that sounded good to me, then worked on a melody until it didn’t sound awful. I am happy with what I managed to create, but feel there is so much room for improvement. At least it’s a huge step up from the music in my previous games.
One of the comments on my game read “Your music is exceptional!” which warmed my heart. Thanks!
Step 4: Polish
When the final hour arrived, I was drawing the menu screen and adding some final touches. Effects like dust trails, rain, lines of electricity between the player and enemies that are teleported with them, that sort of thing. I also really wanted to have a train that occasionally runs through the train yard, and I’m glad I did that, because it really adds to the game.
As do the menu screen, instruction screen, score, pickups, the random body parts that appear when someone dies, all that stuff helps make your entry feel like a completed game and leaves a lasting impression on the player.
I feel that game dev is a skill, and I feel that I’ve definitely improved since my first entry over a year ago. Now that I have a few completed games under my belt, I found that putting my ideas into action came a lost easier. It all comes with experience. I generally had a more relaxed time than I did when I entered previously. I managed to get done without that damn pain in the shoulder I get when I program for hours at a time! Success!
I was way too lax at the beginning of the competition. Had I worked as hard as I did near the end, I would have had more levels in there and would have a better rating to show for it.
After getting 3 hours of sleep on Monday morning before work, I checked my entry to find that there were no comments yet. I checked again at lunch time, and still nothing. A little disappointed, I realised that my link was not showing up correctly on my entry page. D’oh!
If you’d like to give the game a go, please do so here.
If you’d rather watch someone else play it, Noble Kale did a wonderful video review of the game here.
I have a post-compo version planned, which addresses a lot of the game’s flaws and adds a few more levels. If you’d be interested in playing that, do follow me on twitter.
I spent the first four hours of Saturday coming up with an idea for Evolution. It was a tricky theme, but eventually I settled on something similar to a simplified version of Spore. After working for the entire day, I had almost nothing to show for it. My idea just wasn’t working out. Frustrated, I realised that I would have to sit this one out, there was no way I could release a quality product in this short a time.
I spent the next few hours watching TV, eating food, lounging around. I became more and more disappointed at my early departure. I felt the need to program, to be making games, to be part of the competition. So I started thinking of new ideas, ones that could be implemented in about a day. That’s when I came up with the concept for Influenza.
You are the flu and you have to spread your disease to other people in a building. You complete the level once you have infected a certain individual. You can also spend points to upgrade your strand, that’s where the theme will come in.
I set out with high hopes. It was a lot of work, but if I applied myself, I might pull it off. I worked into the early hours of the morning, but eventually had to give in to sleep.
I worked for most of the last day, but at 2:30am (30 mins before deadline) I realised that I wouldn’t make the deadline and gave up a second time.
I posted on the site that I had failed this time around, and someone said that I should enter it into the Jam. I considered it, and although I had another project to complete by the following day, I went for it. It was now 4:00am, and I had been working on it for 20 hours already, but it couldn’t take more than a few more hours of work though, right?
Wrong. I only finished it at 6pm. 34 straight hours of working on this thing.
I’d be lying if I didn’t say it was grueling but it has paid off. I’ve been getting some great reviews and feedback.
Next time I’ll plan a little better, make sure I have an idea that I feel is sure to work.
Thanks for reading. Give the game a go if you like. I really appreciate any feedback, I like to hear how people think I can improve the game, should I decide to work on it further.
See you next LD!
I came into the competition with high hopes, having had such a good time entering previously.
Not my ideal theme, but I gave it a go. Unfortunately, my first idea didn’t work out, but not before I’d wasted a day trying to make it work.
That left me a little of a day to start my new game from scratch. I worked hard, but sadly did not meet the deadline.
I did manage to complete about 80% of it though, so I’ll probably finish it off when I find the time and motivation.
I leave, defeated.
I’ve seen a few other developers write a post-mortem, and it seems like the cool thing to do some I’m going to write one about my first Ludum Dare experience that will never get read:
I watched some of Notch’s live stream of him making Prelude of The Chambered, his entry for LD21’s escape theme. This was the first time I’d ever heard of it, and I thought it was a pretty cool idea but didn’t think any more of it until his next entry, Minicraft, four months later. While watching his live stream I decided that next time I was going to enter. I’m a fairly adequete programmer, and enjoy making games. In my four years of programming games though I think I’ve only ever completely finished one, because I either get bored with the project or the code base becomes too big and messy and I end up throwing it into the dusty corner where all mu other abandoned projects lay.
48 hours didn’t sound like a lot of time to make a game though, and I was afraid that I would be extremelystressed trying to meet the deadline and turn in some heap of garbage. I was wrong though. 48 hours is a really long time to be focused on one thing, like making a game. Sure, the weekend goes by in the blink of an eye when you’re having fun partying/sleeping/playing bf3, but when you’ve been working solo on your game for over 30 straight hours time seems to slow down and you realise that it’s not as difficult as you thought to produce something half-decent in just one weekend. By the middle of Sunday I could feel exhaustion setting in, I was ready to ditch this game. Had it not been for the looming deadline, had I made this game outside of the competition, it would be lying incomplete in its grave on my hard drive somewhere right now, where I would stumble upon it a few months down the line and be like, “Oh yeah, I remember this. Pity I’ll never finish it”.
And that’s what I think is so great about the competition. Working as a solo game dev is extremely lonely. There is no one to talk to about your progress, your losses, your triumphs, your clever work around to a bug that’s been making you cry for three solid hours. Ludum Dare changes that. You get to work along side another 1000 individuals who are all making games and will end up playing and rating yours. The deadline also helps to keep you motivated. Without the deadline I’m sure fewer than 5% of those games would be completed. Also, the closer you are to the deadline, the more you seem to get done. In the last hour I was making menu screens, a intro song and trying to code some levels into my game. I literally finished with 3 minutes to spare. I did not know about the hour to submit though, and I was very stressed because I thought I had 3 minutes to submit my game or miss out on the competition, wasting the 30 hours of effort I had just put in.
I slept through the first 5 hours. The competition starts at 3am for me, so I thought I’d try and get a good night’s sleep and start in the morning. I got up at 8, saw the theme and came up with the idea within a few minutes. An hour or two later, I had a working prototype. I had a little guy running around on the surface of a small planet. I was very excited to see it coming together.
I had a lot of frustration with the math. Whenever you run around the planet, everything in the game needs to rotate as well. The planet is easy, it just rotates on the spot. Everything else needs to be translated around the planet to keep the
illusion of you running around the planet and not the planet rotating under you. I still don’t think the math for the arrows is 100% correct, but it works and is playable and that’s all that matters, right?
The rest of the first day I spent animating sprites. I’ve never really relied on my art skills for games before. I can draw, but don’t own a tablet. Drawing on paper, scanning and tracing with the mouse is a pain and wasted time. So I settled with placing pixels in Photoshop. I surprised myself, the result is rather nice.
I made sprites for the character to aim his bow in three different directions. You cannot run and shoot, it would have been a nice feature, but I would have to animate his legs moving while aiming. Or come up with some clever solution like overlaying two halves of the same sprite. I decided to leave that, not worth the headache. I also just flip the sprite horizontally when you run left and right. This is incorrect though because the character is not symmetrical. He has something on his right wrist that moves to his left whenever you change direction. I did think about making another set of sprites to fix this, but also, that would have been wasted effort because you hardly notice it in game.
I worked right through the night, adding wasps and getting them to shoot at the player. I added particle effects for when arrows hit and the goo balls that wasps shoot explode at the player’s feet. I was tired of programming now and decided to work on sound effects. I used the useful tool sfxr to create some 8-bit sounds. I feel they worked well. Flashpunk only plays mp3 sounds though, and sfx only exports wav, so I ended up converting them in FL Studio. Then they would make horrible crackling sounds in game whenever they started or stopped playing. So I eventually downloaded as3sfxr, which plays sfxr sounds based on a premade String. Useful, and there was no more crackling sound.
I also managed to do a little work on the GUI. I had the idea for a mini-map so you can see where the enemies are in relation to yourself. It is very useful when protecting your planet. It was not too hard to get right. I spent a lot of wasted time trying to draw pixels on the fly though, after I couldn’t get that to work I thought screw it and made sprites for that too.
At about 7am I went upstairs for breakfast, but everyone was still asleep. I thought I’d take a quick nap until they were awake. I slept until 1pm.
This left me just over 12 hours left to complete everything. I made GUI elements for your health, gold and arrows. I added turrets that shoot at enemies. These were hard to get right. I had to calculate the angle to shoot, taking the current angle of the turret and the enemy into the equation. I also drew and animated those guys with trunks that suck your planet. I wanted to add a whole lot more creatures to fight, but there simply wasn’t enough time. Pretty soon, it was 9pm. 6 hours left.
I added a shop, so you can buy these turrets. Also added the option to buy health and arrows. I added text to let you know when you couldn’t do something. I was happy that most of the math was done and that all the features were starting to come together.
I came up with the idea for the teleporters near the beginning but thought it was too difficult to get done in time. I decided to go for it anyway, made a quick sprite and added it to the game. Getting the actual teleporting was difficult. Rotating everything was alright, I already had the code for that. Calculating the angles between the teleporters were a bit of a headache but I got it right eventually. They are probably my favourite feature, but everyone seems to be able to beat the game before buying them, making them the less viewed feature.
My sister suggested that you get hurt by your own arrows. Good idea I put that in. I also needed menu screens, that easily took two hours. I was really stuck on what to do for the title screen. I tried doing some enlarged pixel art but it wouldn’t work out. I eventually settled on a water drop on a leaf with some sun rays. Making the buttons where a challenge in themselves. I had to make sprites for those too, which changed when you rolled over the button. With the menu screens finally done, I had about an hour left and realised that I still didn’t have any levels.
I hastily coded in some levels. You start with ten mobs on level 1, every 500 ticks, add as many mobs as the level you are on. So 1 mob every 500 ticks on level 1, 2 mobs on level 2, so on. When the mobs run out, increase the level and make the number of mobs 10 * level. Every fifth mob spawned a guy that sucked your planet. When you reach the end of level 5, you win.
It was at this point that I realised in horror that your planet had no health. No health! How had I overlooked that? That made those guys that suck your planet useless! So I coded in some health for the planet, made it regenerate over time and made some sprites for the GUI of the planet draining over time. I made the planet flash when it was being drained, but sometimes would not notice it until too late. To fix that I decided to add an alarm sound in, so you knew when your planet was in danger no matter what was going on.
30 minutes left on the clock. I needed to finish it off. I made some quick bushes in Photoshop, and a moon. I added them randomly to the game on every start up. 10 minutes left. I quickly plugged in my keyboard and started holding down keys, I had the intro song recorded a few minutes later. 5 minutes. I found the flashpunk code for playing mp3’s and added the intro song to the title screen.
Boom! I was done, with 3 minutes to spare. Crazy rush near the end, but I managed to complete it in time.
Over the weekend, I learned how to work quickly and focus my thoughts. I learned how to stay motivated and finish a project. My pixel art skills improved tremendously. I made sound and music for the first time. I am extremely proud of my game and I thank all of those who have left positive comments and criticism. I’m also having a blast discovering other people’s creations. I cannot wait for the next competition, I am getting my friends to enter as well.
No one has commented on my game title yet though. Miniscule, get it?
Well, just wrapped up my first Ludum Dare entry. I am quite proud of it.
I managed to accomplish more in 48 hours than I thought I would.
I worked up until the very last minute, where I was hastily holding down random keys on my keyboard to create an intro song. It felt so empty without it.
I was going to put in some kind of 8-bit backing track during the game play, but I didn’t have the time to create a mute button and continuous 8-bit melodies get very irritating, very quickly and I don’t want to scare people away from giving my game a good try.
Here it is: Minisk, You Will.
Give it a go. Didn’t have time to play test, so hopefully it all works as it should.
I realised that you can launch arrows into an orbit around the planet, but didn’t bother to fix it because seeing a wasp get hit in the side of the head by an arrow you shot a few minutes back is kinda satisfying.
Well, that’s it from my first Ludum Dare entry, can’t say it hasn’t been a fun experience. I definitely racked up a whole lot of game dev experience, this is the first time I think I’ve ever put some sound to a game. Also, I’d like to think that my pixel art skills (and faith therein) have increased ten-fold. I’ll probably enter the next one, if I can forget this ache in my shoulder by then.