LD23 April 20–23, 2012

dxFavs – few highlights

Rated bunch and here are few highlights in random order.

Tiny Wizard – kebabskal

Jump in/jump out fast shooter. What’s not to love?

 

gravity – Rémi

It’s very hard but I love graphics and mood.

 

The Last Rainbow – Vandash

Calm, cute and contains rainbow.

 

Tinysasters – Volute

I’m sucker for board games so it was instant fav. I thought it was polished, well planned project but according to creator it was rush of coding and making graphics to the very end. Imagine what it will be given more time!

 

Oh Boy, Oh Boy – Tom

Clouds in space. And it really felt like terraforming ;)

 

Aloft – Chinchilla

Again gameboardey. Nice graphics and I liked fountains of money ;) Cool thing with throwing back bombs.

 

ONLY US – Datamosh

If you like movie Moon and pixel graphics it’s a go. And death scenes are great.


Astro Break – hulahulahest

Small shooter with nice graphics. I’m sold.

 

Soul Searchin’ – MaximSchoemaker

Last but totally not least. IMHO this is a winner. It’s innovative, funny, 100% into theme.

 

More to rate – more to come.

Tags: favs, highlights

Little Mischief Makers: The Post-Mortem

I made a game in 48 hours! And I even like it!

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

I started preparing for this LD with the release of @mcfunkypant’s book “The Game Jam Survival Guide.” I had been wanting to enter the LD48 contest ever since I first heard about it 2 years ago, but the survival guide is what finally gave me the confidence to try.

Code preparations began a week before with the warmup contest. The 1 week deadline helped keep me motivated as I put together the library of important basic functions that I knew I would need. I had decided by this point to do a pixelated platformer because I felt like that was comfortably within my skill level to accomplish in the time. I used the warmup time to hash out rect-vs-rect collisions, some really basic spring/damper physics, and a set of map loading and rendering utilities. This brings us to the first major thing that went right

What went right

Using Bitmaps as Levels

In previous projects I’ve lost many hours of game coding because I attempted to create “the perfect level editor.” Inevitably the process takes longer than I had expected, and my final product does far less than I had hoped. This time, I was inspired by a friend of mine (who was inspired by Notch) to just use the pixel data in an image as the map. Brilliant! This means that I can take full advantage of my graphics software to make rectangles and circles and rotations and flood fills… all those things that I’d never have time to implement in a homebrew map editor. Then my game loads this image and translates each pixel of the image into a tile in the world. It recognizes certain colors as being tiles with certain properties (non-destructable, collidable, non-collidable) and, if it reads a pixel it doesn’t recognize as a particular kind of block, it generates a slightly noised-up tile of the same color and gives it some default properties. This technique slayed the level-editing-dragon that has conquered me many times before.

Choosing an Art and Game Style in Advance

Two weeks in advance of the theme being announced I knew that I would be creating a pixelated platformer. Having those additional constraints in place really helped focus my thinking once the theme “Tiny World” was announced. Making the decision to make a platformer style game early also let me write the necessary collision, spriting, and map loading/drawing code before the contest began.

Being Ready with my Tools

I devoted some pre-compo time to setting up a reasonably efficient Clojurescript development workflow. I used cljs-build to monitor and continuously re-compile my source as I changed it so I could very quickly hop back and forth between emacs and the browser to see the effects of my changes. I hacked my resource fetching code so that it would keep the browser from caching anything while I was coding. I even decided in advance that my nominal sprite/tile size would be 16×16 pixels, and I figured out an appropriate scale to apply so that the game would have the retro-pixelated look I was going for.

Throwing Away My Early Ideas

To quote Chevy Ray Johnston in “The Game Jam Survival Guide”: “A great way to come up with an idea to fit the theme is to write down the first five things that come to mind, then toss ’em. Those are the ideas everybody else is already thinking of and/or making.”

When the theme was announced I immediately starting doodling gameplay ideas on my handy pile of scratch-paper. My first idea was a game centered around some kind of proto-plasmic hero that collects nutrients and waste and transports them around a human body. I’ve now seen a few game entries that are similar to this idea, and I would have been pretty disappointed to write a duplicate game.

My next idea was some kind of RTS / resource management game where you lay out the major components and the transport systems within a cell. I wasn’t able to find the spark in that idea that would make me confident that the game would be fun. After this idea, I also rejected another idea due to its potential art scope.

After looking up “tiny” in a thesaurus, I came across the word “elfin” and its synonyms: “sprightly, playful, rascally.” Thus was born the idea for a game about the little people who are always stealing my keys. As I was telling my wife about the idea, she suggested the collecting-and-stacking mechanic that ended up being central to the game.

What went wrong

Insisting on “realistic” physics

The number one complaint I’ve received from players is the sluggishness of the controls. You see, I fell for the classic blunder of having the keyboard apply forces instead of velocities to the character. It’s my own fault. I even got that feedback from friends that I asked to play the game after the first day of the contest. I responded to their feedback by increasing gravity, increasing drag, and applying stronger forces due to keypresses. This improved the feel, but it seems that any perceptible acceleration time translates to the player’s mind as “sloshy, unresponsive controls.” Never-mind that that is the way it works in real life… sometimes reality just isn’t real enough for video games.

Not fully rewarding the player

In my game, you race a timer and collect keys (while doing general damage to some poor sap’s house). I scored the player both on keys collected and damage done but emphasized the importance of keys by giving the player an implicit goal (e.g., “You found 8 of 12!”) However, I failed to reward the player for achieving my implicit goal! Sadly, it never crossed my mind that players would want some gratification for getting all 12 keys. It’s obvious now. It should be one of the commandments of game-creation–look for ways to reward the player. You can never reward them too much.

Unclear instructions

I had to watch new testers play my game in person before I realized how unintuitive my animated instruction screen was. The problems are clear to me now: I have arrows representing arrow keys, but they don’t really look like keys;  I have “SPACE” written on a horizontal blob with the player’s character sitting next to a tool, but that doesn’t really communicate “hit space to use your active tool” like I had hoped. The instruction screen came late in my development process and after I had already used up my available fresh-to-the-game testers. I should have opted for simple text to explain the controls instead.

Concluding Remarks

My final tool stack was:

  • Clojurescript: [https://github.com/clojure/clojurescript]
  • cljs-build: [https://github.com/emezeske/lein-cljsbuild]
  • zynga/jukebox: [https://github.com/zynga/jukebox]
  • Photoshop
  • Garage Band (iPad)
  • Audacity
  • Paper and a blue ball point pen
  • Trello (to organize my thoughts): [http://www.trello.com]
  • A very reasonable amount of sleep

Things I produced:

Ludum Dare 23 was a fantastic experience. I’m proud to say that I succeeded in my ultimate goal of making a game that I actually enjoy playing. Now I’m continuing to learn as the very talented LD community members evaluate my game and offer suggestions.

It's a truck full of keys! Really!

 

Tags: 2D, ld23, postmortem

Rate!

More importantly, Rate me! I’m first on my own list, that can’t be good 😉

http://www.ludumdare.com/compo/ludum-dare-23/?action=default

or more specifically:

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

Comments

26. Apr 2012 · 06:33 UTC
Your post would be 100 times more effective if you left a link for your entry in it 😉
26. Apr 2012 · 06:53 UTC
Shush, a common cold infected my brain.

Get Off My Lawn, post-mortem

Wow, this game was a lot of fun for me to make. It was the first game I ever finished, so even though it may seem a bit simple, I’m actually proud of myself. There were some difficulty’s and some smooth roads though, and some features were left out.

Things that went good:

– From the start, I had an idea and stuck with it

-The game works as intended for the most part

-I finished it within my own expected time limit

– I learned a lot not only about using GML and game maker, but also about programming and solving problems you encounter whilst doing it

– I ‘competed’ with a friend of mine, with us updating each other on our games during the entire compo, which was a lot of fun

 

Things I regret / did not go as planned:

– I wasn’t able to do that much on the saturday, only 4 hours of work

-This resulted in me having to scrap animations and music as the core game takes priority

-I had to take out an element of Tower Defense I had planned, resulting in the game not only being too hard, but also less fun

-There are still a couple of glitches here and there that could have been fixed easily, but in all of my stupidity I entered the game without playtesting it a last time

So for the next LD, I will have learned a lot and, hopefully, I will have more time to create my game. Now all I have to do is play other peoples games, most of which are far better than my accomplishment, and hope my game will be played.

When Worlds Collide – Post Mortem

So now that Ludum Dare #23 has finished and the dust has settled, I guess its time to write a post about the post mortem and give some insight into my experiences with making a game in 48 hours…

 

Here is a diary of the major milestones of my 48 hours highlighting interesting points of my development:

Hour 1

I rushed head first into creating my voxel engine, I was pleased with the announcement of the ‘Tiny World’ theme, it seemed as if this theme was perfect for what I was creating… My mood was great!

 

Hours 2-6

Still driving ahead with the voxel engine, encountered a few problems with how the triangles and meshes are rendered, so had to go back and improve my rendering engine. Spent a good portion of these hours optimizing how triangles are pushed to the renderer and adding support and features for mesh rendering with display lists and vertex buffers.

 

Hours 7-9

Started playing around with different configurations for meshes/chunks/regions… came up with some interesting implementations of how a voxel world could look (sphere worlds, cube worlds, trees). I made sure to leave all configuration/ideas in the code so that I could easily come back to anything which worked.

Added support for cubes/voxels with different textures. Using a texture atlas to store the different textures. i.e. (grass, stone, wood, magma, etc) This would be important since I wanted to make a world that could be modified by using different cube types.

 

Towards the end of day 1

Hit a wall with regards to what my final outcome was going to be… I did have some original ideas relating to a flat, cubed world with tress and houses that you walk around and do stuff as a player, but nothing really inspired me in that respect without completely ripping off minecraft functionality (which I did NOT want to do).

So I went to sleep and hoped to come up with some neat ideas in the morning. :)

 

Day 2

I woke up with renewed vigor and some thoughts about a different direction that my game could take. I decided to make it more abstract and not have a player in the world or have any direct user control, instead focus on world destruction and voxel effects.

 

Day 2 general

The bulk of day 2 was taken up coding effects and voxel related gameplay. I created asteroids and a layering system for my planet, exploding blocks and effects of asteroids crashing into the planet. The vaporize and terraform effect was actually something which came about accidentally, but I liked how it looked so decided to keep it in and make a gameplay mechanic for it.

 

Hours 35-40

This period was pretty crucial for me, I was rushing and coding gameplay elements really fast, I had a feature idea and once I got it working I moved onto the next thing on my mind. Asteroids, world vaporize (terraform), exploding chunks of the world, world rebuilding. I needed to make a full game cycle so I decided to add a timer that would ultimately drive the gameplay (destroy the world within the time limit).

 

Hours 40-45

I had finished the gameplay that I wanted. Next came the hard part of making it usable and playable. Having a lot of functions that are bound to keyboard keys is no good when you want other people to play your game and enjoy it.
I started to code the game flow:

Start menu –> enter game –> game timer –> score screen –> restart.

Added basic HUD and menu. i.e “Press SPACE to start/restart” and a scoring system.
My plan for the scoring system was going to be more complex with multipliers and additions for which super moves you used, but I didn’t have the time to make this work, so stuck with a simple score and time multiple.

 

Hours 45-47

The HUD and user interface needed work, I added these features faily easily but they were basic and static. So I started working on timings and polishing the interface. Flashing “Press SPACE to start/restart”, score screen with accumulating score. Timings and delays on the game flow to add additional polish. For example when you destroy the world, the score screen doesnt instantly popup, it has a time delay, or when you press to restart the game, the game waits until the world is rebuilt before allowing player control and starting the time. etc. This polish and attention to the small details is what makes your game stand out and feel like a proper experience, rather than a load of features cobbled together.

 

Final hour

This last hour was mostly taken up with preparing a release package, zipping up the projects and source and testing to make sure a download of the source and executable would build and run, etc… Faily boring stuff but it does take time. I noticed a problem with absolute paths in my Visual Studio project, so had to rebuild a whole new project solution to fix this… luckily my project solution didnt contain too many header and cpp files.

I tested my package, uploaded it and then created an entry on the Ludum Dare website… then sat back and had a rest.

My entry can be seen here:
http://www.ludumdare.com/compo/ludum-dare-23/?action=preview&uid=11531

 

WHAT WENT RIGHT:

  • Had great momentum from the start – I was able to put off the design and gameplay decisions till much later, since I had a lot to code from the start, having decided on a specific rendering engine.
  • Used my own personal engine – Since I was using my own 3D/OpenGL engine, I knew exactly what I could do and how to do it.
  • Voxels and cube art is great for programmers (and anyone who isn’t an artist) -   Art was always going to be a problem for me, but creating stuff in 3D mitigates that problem slightly and creating stuff purely with voxels actually looks great with NO art whatsoever (See minecraft :P )
  • Got lucky with the theme – Seriously, I couldn’t have chosen a better theme for a voxel based game if I tried. if the theme had been something like ‘Evolution’ or ‘Discovery’ or some other abstract concept then I don’t think my game would have turned out half as good as it did!
  • Got involved with the LD community – I really enjoyed looking at the other users entries on the LD website and also posting my own progress and hearing feedback and comments from the community. Nothing is more rewarding that seeing other people’s efforts and encouragements from the community.
  • Self documentation – I think I did a pretty good job on documenting my progress, taking screenshots and uploading videos to youtube.  I even enjoy looking back myself now and seeing the progress that I made during the 48 hours.

 

WHAT WENT WRONG:

  • Gameplay – I left most gameplay decisions until the 2nd day. After I was happy with my rendering and voxel engine I actually spent a good hour or so scratching my head as to what to do next.
  • Focusing too much on the rendering/engine – I was torn between wanting to make a really optimized re-usable voxel engine, and adding in gameplay features. At one point I had to physically stop myself adding voxel engine features and rendering optimizations to force myself to think about gameplay and mechanics. I could have quite easily spent the whole 48 hours making a voxel engine…
  • Trying to do too much – I had far too many ideas that I wanted to try out and not really having a clear design goal or making any gameplay decisions at the start meant that I was fragmented when I wanted to start making something that would be playable.
  • Memory leak! - I found a major bug (memory leak) in my voxel particle renderer about 8 hours before the compo was due to end. I was leaking memory quite badly when creating and destroying particle effects that I HAD to fix. This took up about 2-3 hours of valuable time towards the end of the 48 hours.
  • Basic user interaction - It is really hard polishing a user experience, so I ended up just putting a couple of buttons in for the special moves, not the most elegant way of coding gameplay features

 

Advice:

  • Sleep! - Don’t even bothering thinking that you can work solid for 48 hours, it is just not possible. It’s counter productive to lose ANY sleep and even just trying to do one all nighter is going to be detrimental to your progress. Yes you are going to probably stay up later than usual and once you are in the zone its hard to leave things to go to sleep, but if you are staying up into the early hours of the morning and going to sleep before it gets light outside, I would say you are doing something wrong.
  • Prototype FAST - 48 hours goes really fast, if you are spending a lot of time on a feature or idea that just doesn’t seem to be working, move onto something else. Don’t waste time flogging a dead horse.
  • Know your tools/code/engine – Since you are going to be creating something SUPER fast and with no time to spare, you really need to know what you are using. It helps if you know exactly what your engine is doing, right down to the individual function calls and rendering details. You will spend far less time fixing bugs, debugging code and trying to figure out what is going wrong if you know your engine/code inside out.
  • Make decisions before the competition starts - I think I can attribute a lot of my success to this point. Since I was prepared before the theme announcement and was ready to start programming the instant the 48 hours started, this helped me a *lot*. I could have took this EVEN further by making some gameplay decisions first as well as deciding on the style of my game.
  • Make the theme work for you. – (This is related to the previous point) Already have an idea of the sort of game you are going to make and then just adapt it to suit the theme… It is no good having no idea about what you are going to make and just trying to come up with a game that perfectly suits the theme. You will waste valuable time thinking and designing when you could be coding!
  • Polish what you have – Personally I think that a well polished, smaller scope game that does a few features really well, is much better than some attempt at a game that has lots of features but doesn’t implement any of them particularly well. LD is a time to create something small that shows off something cool in a neat little package, not create the next big blockbuster.

 

Final Thoughts:

Overall I had a blast making a game in 48 hours and taking part in my first Ludum Dare. I am pleased with my final outcome and even surprised myself with what I made. I now have a 3d voxel engine that I didnt have before I started the LD48 and don’t doubt that I will be using and improving it from now to create even better voxel games. :)

Thanks for all the support guys and see you next time.
AlwaysGeeky

Tags: alwaysgeeky, asteroids, ld23, minecraft, postmortem, SuccessStory, timelapse, tiny world, tips, voxels, when worlds collide

7

This entry was posted on Thursday, April 26th, 2012 at 7:01 am and is filed under LD #23. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Post Fatalis and/or Post Mortem

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

Well, this was my first Ludum Dare, and all in all I like the result my game has become. Still, there’s enough to improve, if only on the motivational front.

What went right:

  • I went to bed early on Friday, which increased my motivation and inspiration on saturdaymorning. However, it also meant I ‘didn’t feel like it anymore’ after about 12 hours.
  • I had time to spare. I was pretty much done 8 hours before the final deadline, and that included 3 hours of Grand Prix of Bahrain.
  • I like the game. It’s mostly robust, and mostly polished. There are a few glaring bugs, one which could, in the worst circumstances, break the game (Strand you on a planet, to be precise) but no crashes, and no big graphical problems.

What went wrong:

  • Motivation issues. Not that my game is unfinished now, but I realize it could’ve been much better.
  • The Grand Prix of Bahrain. Like the motivation, would’ve improved my game as well.
  • Fear of bugs: I had a few more ideas, but I didn’t want to be overcome by feature creep. I’m sure I could’ve added some more features and still be done on time.
  • I didn’t really like the theme. I had a great idea for Alchemy (Whether it’d be better than the game I have now is debatable) but this’ll have to do.
  • I slacked my way through the sound and music. It’s reasonable, but no more then that.
  • As mentioned, I had time left. It could’ve been better.

Future work:

  • IOS Version
  • Bug Fixes
  • Adding some info on the HUD to make it easier to find planets.

Future-Future work:

  • Planet Crashing
  • Different kinds of trees, different kinds of seeds
  • Other kinds of life
  • NPC’s and other random elements
  • Infinite-esque space
  • Storyline
  • Trading
  • Spore(tm) meets Eufloria(tm) – no, just kidding.

TTPKM -Post Mortem-

Post mortem time: ( As you will see English is not my native language, I can add that I’m French, there is probably a lot of syntax error in this :) )

Theme reaction:

I always try to anticipate the theme before knowing it, it’s stronger than me. From the themes proposed in round 5 I knew I wanted to do something “rpg”.

Bim! Tiny world!

First thing came to my mind, I have strong memories of Zelda -The Wind Waker- Especially how the island looked so small when you were far from them and then when you were on it there was ton of things to do! I don’t do 3d, so I went for an old school rpg aiming to have a small island with a ton of things to do, so the idea was at this moment to have a rich life and diversity on the smallest island possible.

First steps, graphics:

I started to draw 10x10px tiles and went into this:

I found that was cute but I I thought that a lot of people, since the theme is “tiny world”, will do small resolution worlds so I wanted something a little different.

I opened my island inside inkscape, set the grid to 1px and start to redraw everything adding some angles and went into this:

I loved the render, I knew that Processing open svg files, big plus I can scale them easily and make the island slowly scale down, that give me some ideas for a story :)

I realised at this time that half a day was spent on gfx, redrawing them under inkscape cost me a lot of time ! I knew that I will not have the time to do characters animation for example so I started to draw waves for the water and makes them moves thru sine movement to turn the visual more “alive”. Then I draw all the character I wanted for my game hoping to have finished the gfx and start coding for real :) I used the same process to draw them, then I added a small shadow to make them more visible on the map since I used the same 10 colors for drawing them.

hero, mother, princess, king, wise, bad tiny pirate knows magic

Coding:

Then I started coding, everything went well quickly but I was a little bit worried of all the other works I had to do this weekend that I wasn’t doing because I decided at the last time to do LD#23. To avoid stress and keep focusing I worked with this patern all saturday afternoon:

1h00 of coding – 0h30 of making music-sound effect – 0h30 on graphic polishing – 1h00 of codi….

Spend the time before sleeping thinking about a stupid story, I went into something big I will not detail here since I didn’t had the time to implement in the final game.

Sunday afternoon, I knew that I saw to big had to make a choice, I knew the game I will upload will not be finished. Had to make choices, I don’t like uploading something that looks unfinished, so I programmed a quick combat system and wrote an anticipated end.

Now I’d like to thanks all people who commented my game, it really warm my heart and makes me want to continue this project!

Play it here if you didn’t :http://www.ludumdare.com/compo/ludum-dare-23/?action=preview&uid=4651

Comments

26. Apr 2012 · 11:33 UTC
When I saw your screen shots earlier they reminded me of graphics made with Commodore 64’s builtin character set. The colors are also very similar. It certainly caught my attention more than regular pixel graphics.

Web Version + Unused Art

We now have a web version up!  Its been tested on Windows and Mac, and should work on Linux.

I wanted to show off some of the art that didn’t get used:

Originally there was going to be this delightful game over screen, but I decided at the last minute that I wanted something that took shorter between death + restarting

 

There was a couple of stuff that I wanted to do, and would’ve been  easy, but the last couple of hours were too frantic to put them in:

Yep, there was an ant walking animation all ready to go.  I didn’t think it was that important because the ants legs are a little hard to see against the background, but it is regrettable.

Originally the wasps were going to shoot stingers.

There was going to be a confusion expression when you escaped the ant’s alert status.

There were a couple of alternate ground tiles that were never implemented. Originally Chris really wanted dinosaur bones. “But everything else is tiny”. “This is the land of the tiniest dinosaurs?”

 

I felt like one part of keeping an artist happy is to make sure their contributions actually make it into the finished project whenever possible, and in this I feel some degree of failure. Did other Jam entrants feel the same way?

“Recluse – Timelapse” or “Crawling out of my shell once again”

 

 

It’s already been a while since the competition ended, but I finally uploaded my timelapse to Youtube. I’ll be posting a post-mortem in the next few days, too.

I’d also like to announce that I’m currently working on an updated version of Recluse, that includes everything I originally planned for the game (like sound), and also taking into consideration the main issues people seemed to be having with the game (like difficulty).

I’m trying to find a way to stop the white flashes that most computers experience while the “expanding” mechanic is at work, but I suspect there’s no easy solution to that =/

What you should expect in the next version:

-Sound
-Corrections in the level design to make the game less frustrating
-Re-written text (I think the current ones are weird, they were made in a hurry)
-Mac compatibility?
-New hidden collectibles (maybe)
-Easier-to-predict enemy behaviour.
-A few improved animations
-Checkpoint animation
-Animation for the cracked block being destroyed.

Well, I think that’s it. If anyone has any opinions or suggestions, feel free to contribute! Also, if you still haven’t, play Recluse!

Postmortem TOOLS Survey

We love stats! We love you!

Everyone interested in helping us determine what tools you used (language, engine, etc.) please fill out this very short survey. We also have a more in-depth survey, with demographic questions, created for a thesis, here.

Tags: postmortem, survey

23

This entry was posted on Thursday, April 26th, 2012 at 8:51 am and is filed under LD #23. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

HTML5 Performance Testing

Hey Folks.

I got several reports of my LD game running slow. I did my own benchmarking across several systems, and well, I can’t tell if we have different opinions of “slow” or if there’s an actual issue. So, it’s time for science!

If you could, fire up the game then press the 2 key to enable the FPS counter. Let me know what FPS you’re averaging, on what browser, and if you know it some specs of your PC (CPU, GPU mainly).

http://www.sykhronics.com/nook/ (or vote here </shamelessplug>)

Thanks!

EDIT: New 60 FPS version without “floating camera”. Apparently I’m the only one that likes floating cameras.

http://sykhronics.com/nook/60/

Also, in this version audio is broken in Chrome, but perfect without delay in Firefox.

EDIT2: New 30 FPS version which is secretly the 60 FPS version, but locked at 30.

http://sykhronics.com/nook/30/

Both versions (60 and 30) include a number of fundamental improvements after I did some profiling, and utilize a different way of Framerate Synchronizing. Chrome, for whatever reason, “totally flips out” as you start the game, but eventually stops complaining and works smoothly.

0

This entry was posted on Thursday, April 26th, 2012 at 9:17 am and is filed under LD #23. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Tiny Inspiration PostMortem

So, the time has come to write some post mortem (in not so hidden hope that my game will have a chance to mess with heads of more poor victims).

 

Introducing Tiny Inspiration, adventure game about LD programmer who searches for inspiration in his dreams and finds himself tiny, on his own table. As you can see from the thumbnail, it’s a bit (cough, cough) adult theme. Although no actual porn takes place, sex is what is this about. It was my intention to mess up a bit with people’s head and since most of the people in LD are guys (sorry for you, girls, but unless I’m seriously mistaken, there’s not much of you here… anyway if you drop me a comment declaring yourself a girl and demanding woman themed game next time, I’ll consider it).

Even before LD started I was thinking about maybe making and adventure game (doing two commercial right now so I got them stuck in my head now…). When the theme was announced (3 am of my time), I scratched my head and went to sleep, hoping for some inspiration. About the only dream I remember was really weird one with two headed redhead…

Next morning (actually, more like noon) I went for brunch with my GF and started brainstorming. Soon enough I’ve scratched all other ideas (sperm racing game, battle bugs clone, Tron like shooter) and focused on the adventure. From the start I knew I wanted to have some sex hints there and that I want as many possibilities to finish the game as possible. With that came idea of giving player achievements and then that I should really try to rattle player’s bones.

Originally I wanted to have three episodes with three screens each. First on the table, than among the bugs, and in the end having player to find love among amoebas and bacterias. Quickly found out that my ideas are just spilling too fast so I concentrated on the table.  I started making design notes and quickly sketching screens.

 

I originally planned 8 game screens, one intro, one outro and one noninteractive in the middle. I had some ideas for more, but even than I was pretty sure it would be tight run against the time. Sketching was fast, each sketch took me about five minutes, so I was full of optimism!

Then I fired up photoshop and picked tablet… and found out that I just really really suck. I have no problems with pencil, I’m even able to produce quite nice drawings, but tablet… horrible. Took me a too long time to finish first screen and then I started to cut corners so I can make it in time. I grossly underestimated how long it will take me just to redraw finished scanned sketch and add some colors :(

So I had to put out intro that was supposed to be a bit interactive, with player killing bad ideas (like sex, go to sleep) and promoting ideas like RPG, adventure etc. In the end Yoda was suppossed to show up (probably in a blond wig :D) and tell player INSPIRATION YOU’LL NOT FIND, IT WILL FIND YOU!

Outro was also cut out, with protagonist girlfriend waking him up and asking him why he’s sleeping on her dollhouse instead of making that stupid game. (And if player shaved himself in the game, she would have asked “and why have you shaven your beard, honey?”).

And one of the game screen went out of the window too (Ken trying to enroll in french legion to show Barbie that he’s man, fluffy dog doll, which could have been converted into dog disguise for more achievements, some other stuff).

So in the end, 8 screens, one of them almost without any interaction, few dozen active items, 11 achievements, and two goals, with 4 possible ways to reach it for each.

 

While doing all the art and exporting it out from photoshop I fired up Unity. I decided to use it again because a) I’m quite confident I can force it to do anything I want, although sometimes painfully for both of us, b) it gives me possibility to do web / flash version (I’m still mostly untouched by html5 and flash, so it’s the only way I can make web games now), c) abusing full fledged 3d engine for a simple 2d “art” is amusing :)

Putting items into screens, doing some basic scripts took me almost no time at all. About the only problem I had was stupid unity gui (last time fixes while trying to get flash version working introduced so stupid bugs in the inventory that I had to do quick bug elimination after compo) and flash export ignoring anonymous functions (had to rewrite them, luckily I had no time to implement some better dialogues anyway).

I ended up with playable game about ten minutes before the end of the compo…. So  ideas about some sounds, music (at least from autotracker) and having some interactive dialogues just went out the window :/

But I’m happy with the result anyway :)

Procrastitracker stats (rounded):

12 hours photoshop

2 hours text editor (where I had my “game design document”, seems too much)

4 hours Unity (creating screens, testing)

7 hours Monodevelop (writing scripts, debugging)

add about two hours for sketches / initial brainstorming on the paper, about hour for smoke breaks (that I use when I’m stuck and need to think out something through).

Overall about 28 hours of real work… seems I wasted a lot of time by sleeping and eating and getting inspiration (ahem…). But that’s the stats here.

Anyway, I had real fun making it and even more fun listening to comments of some of my friends :) (Too bad I hadn’t implemented some server upload of stats). So I’ve mostly succeeded in my goals.

If you hadn’t played my game yet and you’re willing to risk it even after reading through this… go ahead!

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

 

 

 

 

Comments

steamgirl
26. Apr 2012 · 14:22 UTC
LOL, just wanted to say I liked your introduction. Yay for taking us ladies into consideration (even if only in an acknowledgement to the fact that you didn’t). I’m not going to demand a woman themed game though… ^_^… Quite happy to try this one out as it is.
26. Apr 2012 · 14:49 UTC
I am a girl and I demand a woman themed game! 😉
Shigor
26. Apr 2012 · 17:34 UTC
I’ll take it in the consideration!

Rediculosis Final

I added some bits and bobs to my entry version of the game. I’m done with it for now, but maybe in the distant future I’ll come back to it and make a much better version.

main changes:

– added sound and music

– added pause, sound and music toggle

– changed level layouts to be more interesting

– changed speed of the game to generally to play faster

You can download it for Windows from here:

http://bit.ly/IgNrL6

Tags: 2D, compo, final, game, ld23, opengl, SDL, sfxr, Windows

200 Games Reviewed – Top 10 List!

As always…these are MY opinions, you may or may not agree, but I feel these games could use some attention as I feel that they “stand out” from the crowd.  As per usual…no particular order.

Asylum By Orni: A good take on the theme, fluid controls, art style isn’t my favorite but it works ok.  A little slow paced at first and somewhat short but it left the correct “feeling” behind when done.

It’s a tiny world By Endurion: A clever and fun “single screen” roguelike.  Though I think it stretches the theme a bit this title definitely deserves a mention simply because…it’s really fun! (and that’s what games are supposed to be at their core, when you strip all the excess from them)

Memento XII By deepnight: A little point & click adventure game, great style and atmosphere, though a little frustrating at times figuring out what you can or cannot click on.  Not a fan of the audio but well worth mentioning.

Bottlecolonies By tcstyle : A clever little strategy/puzzle  game, the art direction is great, the sound both fitting and awesome, and the gameplay itself is solid and complete…a joy to play

Nanofactory By JustinMullin: A solid puzzle game about a nanobot assembling widgets, a little hard and cryptic at first but the puzzles are both simple and clever

ANT SURF HERO: THE SURFENING By Jigxor:  A refreshing change from the massive number of dull uninspired platformers,  aside from a few physics issues it’s really fun,  and riding on top of the ant is amusing to say the least.

Housefly By dacap: You play as a fly on a mission: to get back outside!  It’s a short but very immersive adventure game with solid controls, great visuals and sound…its hard to describe but the flight control feels “right” for a fly. Very fun.

Recluse By chambers: You play as a snail with a neckbeard in a “metroidvania” type game….but with a twist.  Easy 5/5 for innovation personally, I don’t want to ruin it by the starting room is misleading and it quickly introduces one of the most unique gameplay mechanics i’ve ever seen. (even if it is mostly a gimmick…it fits the theme very well)

Hero of Rain By 31eee384: Extremely incomplete but what there is of it is very enjoyable, the story is both fitting and interesting, the gameplay is for the most part pretty good (though touchy at parts). All around a good feel to this game.

Fusion Time! By NeiloGD: A simple but solid arcade-type game where you fuse atoms in a sun.  Theres not much too it but the explosions and strategy of timing the fusing makes it surprisingly fun to play.

 

 

Honorable Mentions: Things under here are games that did very well in some areas but poorly in others, so they don’t really hit my “best of” list but they’re worth mentioning for other reasons.

Tiny Island Adventure By AdventureIslands: This game has EXCEPTIONAL artwork and is a fresh take on the theme.  Don’t get me wrong, I love this game, but unfortunately it has some pretty bad control issues and the levels were a bit uninteresting.  Kept it from being in my “top” overall  picks but still worth a look, and IMHO could very well take the gold for “graphics”

Gale Axile By free_napalm: This game has some very clever gameplay mechanics, and is EXTREMELY innovative. It was definitely a refreshing break from the zillion and first back-to-back “planet defender” game played.  While I like it and the mechanics are unique it unfortunately has a big problem for me…the outcome is so random and the gameplay is so tedious that it’s just not very fun as is…though with a little work post-compo it could be a VERY good game.

Green Invasion By Kableado: The art in this game is FANTASTIC to say the least, it really is great. Unfortunately…that’s all there is to it, as a game it’s incomplete, there’s absolutely no gameplay implemented, no real sound, no goal.

Predicament By orangepascal: Again, another game with very good artwork, if a little TOO pixelated making it sometimes hard to see.  It’s a somewhat innovative mini-advanture game.  Unfortunately though the controls can be a little frustrating and the lack of any sort of ambient sound took away from it somewhat.

Mayor vs Aliens By Sheep: Very innovative, very funny, easily one of the best takes on the theme I’ve seen. The gameplay is ok but not great, the controls are a little stiff, and it’s wayyy too easy, you can pretty much defend indefinitely since they always go straight up the middle after taking the dirt.

Mini-Worlds and Monocles By Zed: VERY good sound in this game, one of the best.  Aside from that not much to talk about…it’s not “bad” but it’s really just another in a long line of generic “pick up the coin, move to next level” platformers.  Not very innovative and the jump controls are pretty frustratingly bad.  Still worth mentioning for it’s audio and humor though.

The Good Ship Higgs Boson By Jezzamon: Easily one of the most fun entries in the entire compo. EXTREMELY fun gravity based platformer.  Honestly though, aside from the name, it doesnt really fit the theme at all, the graphics were nothing special, and the sound lacking.  It is VERY fun though and I suggest playing it, and I suggest to the author clean it up a bit and publish a full version of this game….I think it would do quite well!

 

Oh, and I suppose I should put this here too, as always, I would appreciate more reviews and feedback on my entry as well!

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

Returning the Love!

Thanks everyone who took the time to look at my game! Today, besides my 10 daily rates, I also decided to return the love and rate/comment the games of those who rated mine or commented on my posts. Here are the highlights – the games that I enjoyed most. Give them a try, and I hope you like them too!

$ales — This game show how to turn a boring entry into a nice entry with a single stroke: the audio. The narration is very funny! The game is a “trading simulator”, you go around a map, trying to buy low and sell high to achieve a monetary goal.

Nematode — A very unique game: a kind of reverse snake. There are worms walking around in the game map, and you drop colored foods in front of them. If you can make a snake the right color by giving it foods in the right order, you gain points. I really liked the idea. Although the game is a bit too hard at the moment, it is worth a try.

Zunzanda — an extremely polished, challengin, fun game. You have a small island that you have to defend against monsters that are trying to eat it. The graphics, sounds and narration are well put together and give the game a very memorable face. I can easily see this making top charts in this LD, given its degree of polish.

Burning Platform — a perfect android/mobile game. Simple, you start it up, and can get right into it. Addictive, with the “beat your previous score” factor. It is a balancing game, where the goal is to keep your “friends” in the platform by balancing it with your phone’s accelerometer. It is a bit too hard at the moment, I hope the post-compo version works a bit on the difficulty curve.


Mozi Life
— another unique game, this is a series of mini games that show the life cycle of a mosquito. Each of the minigames are quite simple, but they are tied together in a nice way. Would look great in an encyclopedia.

Audioland — more a toy than a game, it is world of sand meets music generator. Great and unique idea, I could see this being used to generate musics for future ludum dares :-)

See you tomorrow!

Tags: game reviews, review

Timelapse, enhanced version and quick report of the LD

Hi!

We just uploaded the final, “enhanced” version of Exposed, our jam submission \o/
It’s playable right here and the entry page is here!
If you’re going to rate it though, play the “72 hours” version first to be fair to the others who did not work on their game after the submission.
But if you feel like it, play the final version after that, it’s much more understandable and fun! :D

Carduus put together a timelapse as well. Those of you who played the game and didn’t find the surprise will have a piece of it at the end of the video ;)

And, as I am sure this will speak to a lot of you, here is an illustration of our pitiful state at the end of this 3-days jam ;)

This jam was the second participation for Carduus, Mathieu and I.
Just like last time we were gathering with a bunch of other LDarers.
Among them: Deepnight, Ben, and our own colleagues from Procedural Activity: Thotor and Valandre.
We all had a really great time and can’t wait until the next LD ;)

Be sure to give a try to these games, they are really nice! :)

And try this one as well: Nasty Bubbly by our friends with totally legit doctor names.

T-Pod Post-Mortem

So it’s probably time to do a post-mortem of my project, T-Pod. The submission page is here if you want to check it out.

I started off on the wrong foot. I took hours on Friday to come up with an idea. The theme just didn’t inspire me – no offense to anyone who was inspired, because there’s some really great interpretations on the theme out there. My brainstorm page was filled with doodles, but nothing was saying “create me!” The idea I finally came up with was mostly just desperation to get started on something, and it really wasn’t original in any way.

When I had two hours remaining I had the game you see here and still a long todo list. I opted for a refactor of the explosion code since it was hacked in and messy (alien saucers don’t explode, lasers do. Hey, it seemed like a good idea a the time!) and I wanted to make the planet explode too. That took almost the hole two hours, not the 20 minutes or so I was hoping for. It also introduced a ton of bugs that I had to clean up last minute. And in the end, the code is still just as hacked in and messy, and I never did get the planet to explode. Next time: messy but working code stays until AFTER compo. In that time I could’ve had a third alien AI behavior, more tuned alien spawning/speed, or just general balance fixes.

Also, my particle effects were supposed to fade with time, but my unfamiliarity with PyGame left me with the always red particles you see in the game. If you check out the resources you’ll see the particle graphic is grey so I can tint it at runtime. Unfortunately the only way I could find to tint a graphic was to do an alpha fill on the surface…. Which would mean a separate surface for each particle, a complex system that keeps surfaces for each possible color, or a fill to a temp surface just before blitting.  Instead I opted to just work on other features (like the useless refactor!)

So what went right? I completed the game and actually had time for polish I’ve never had time for before (music? I actually managed music? Oh yeah, it’s autogenerated). I learned enough Python and PyGame to make a finished game! Prior to this, my only real experience with either was the practice conversion I did of my earlier LD48 game about a week earlier.

Thanks to everyone who’s left a comment on my game! Here, have a cat with a Wii remote on its head.

Biodome: The programmer’s post-mortem

This is my port-mortem for Biodome, my 4th LD entry, first Jam.

The Good

» Working as a team was a lot more fun than expected. I was on a team of 5 people, talking over on skype. We’ve known each other for quite some time, and decided to get together to make games, and this was our first game, kind of a experiment, to find out how each other work and how to coordinate our efforts.

» Defining right at the start what each one would be doing. We are pretty much all pixel artists, but I’m the only one who can program, so that was decided beforehand (our composer also can, but we couldn’t sacrifice our only composer). Each of the other three were assigned to sprite work, scenery work and general artwork.

» Using Construct 2 to make the game. It’s easy to use, has a ton of cool features, and is completely stable (contrary to construct classic). But recent updates were kinda buggy, like using “or” statements with key press not working. Also, thanks to Construct’s HTML5 exporter, we could get a lot more people playing.

The Bad

» Our idea got too big. Starting with the concept of a puzzle platformer with 3 characters at the same time. First of all, a puzzle for LD is not a good idea, cuz it’s hard coming up with good puzzles in such short time. Second of all, platformers are not my strong point, so the movement was kinda weird at times. And finally, having to program 3 characters with different abilities and properties took a lot of time, and making the puzzles was hard because of their different characteristics.

» God-damn buttons and doors.

» The guy in charge of making the tilesets didn’t know anything about making tilesets. This resulted in it not being correctly aligned to the grid, tiles missing, tiles not tiling correctly… a big nuisance.

The Result

» People seemed to enjoy the game, despite a couple of flaws. They said the puzzles were good and they loved the music and the art, so I guess the whole team did a great job.

» We will be working on new projects now ^^ We formed a gamedev group, at Dead Pixel Games (temporary website), or @indiedeadpixel

My timelapse:

Tags: postmortem, timelapse

Little Sky… Post-mortem


Hi! “Little Sky..” was my second game made in a jam. Also this was my second game made with Unity3D. Let’s see how the things were:

The good things
1) Schedule: For game jams, I spent the first hour thinking about the idea and the scope of the project. Each functionality shouldn’t be longer than 1 hour. The actual game was finished about 6 hours before the deaddline. So, there was a lot of time to polish some parts, but I didn’t it.

The so-so things
1) Story: I liked the story I created, just needed a little more polish in it.
2) Music: the same thing. I did 6 simple musics, but the first was unused. Also I should them to make them loop, but also I didn’t do this.
3) 3D Models and Textures:  I didn’t want to spent a lot of time doing the textures for the scenery, so the final result wasn’t very good.

The bad things
1)2D in Unity: The Unity3D isn’t a very good to create a 2D sidescroller platform from scratch in few hours. It’s better to have some basecode before or use plugin for it, or at least has done something similar before with it. My firsts 2 hours programmings was a waste.. In the end I done a simple and incomplete 2D platform.
2) Gameplay: Because of the first problem, the gameplay was sacrificed.
3) 2D Sprites: this was my first attempt to do an 2D animated character sprite!  I liked the result, but it needed more animations and a better quality.

Conclusion

The overall result was good. For next I will be more prepared! Also is a good to have a basecode before, learn to create and animate a spritesheet to maximize the efficiency.

Download and rate the game here.

See the timelapse and the playthrough.

Thanks and see you next time!

Tags: little sky, post-mortem, postmortem

Tondie and Zupe postmortem #2: back end

[ postmortem #1 | Play the game ]

My first Ludum Dare game required python plus a couple libraries. It got 9 ratings. That’s when I decided I had to learn to make web-based games if I ever wanted anyone to play them. So I tried hard to learn Flash, and didn’t like it. Then I heard about HTML5 and learned that instead. I looked around for an HTML5 game library I liked, and realized I’d learn best if I wrote my own. So a couple months ago I started making an HTML5 game library called UFX. Tondie and Zupe is the first game I’ve made using it, so that’s kind of cool. UFX is still pretty incomplete (the game locks up in Firefox, I suspect that’s due to a bug in UFX), but I hope that by next LD it’ll be good enough for people to use if they like.

UFX uses a component-based entity system. This is the first game I’ve made using such a system, and I’m hooked. If you’ve made a few games with a class hierarchy for your entities, I strongly recommend looking into component-based systems. It honestly felt liberating to write the code!

My code base stayed pretty sane this time around. If I continue development, I’ll be able to keep most of what I have. I do remember thinking to myself, as I was duplicating 10 lines of code, so this is when my camera module becomes an inelegant mess. Fortunately most of my modules didn’t suffer the same fate. JavaScript doesn’t really deserve its bad reputation, which only exists because tons of JavaScript was written by people who don’t know JavaScript.

Most people who comment on HTML5 as a game platform say it’s not ready. That may be true in certain ways, but I think people are still underestimating its potential. The best way to make that point, though, is just to make good games with it. With Tondie and Zupe, I was impressed at the performance I got. I never do any image caching or optimization. I just zoom, scale, and rotate, and draw the graphical primitives I need. Chrome does an excellent job keeping the framerate up, even with many enemies on the screen. It’s fun to see other people’s HTML5 entries too. I hope we can inspire each other to push the envelope and get HTML5 recognized as a contender.

The graphics in Tondie and Zupe are 100% hard-coded vector graphics. If you look at the source, you’ll see it doesn’t load any image or data files. Doing it this way seems like a pain at first, but it’s very powerful if you’re willing to try it. It makes animation very easy, which was important for achieving the right “bouncy” feel for this game.

Finally, I kind of lucked out with the theme. Cylindrical coordinate systems happen to be a specialty of mine. I’ve done similar things before (which I’ll write more about in the next postmortem), so this part was easy. I’ve gotten a lot of positive feedback about the controls and camera, so I think people appreciate it.

Pixel Progression – Post Mortem

Generate your world pixel by pixel

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

Hello there!

This is my second ludum dare thus far, and as such my second game I’ve actually made. At least I used a 2d engine this time, so it wasn’t overcome with graphics problems right from the start, and thankfully SFML is an incredibly simple-but-complex language to use, and with my rudimentary resource management framework, I could produce something that people could possibly want to play.

What went well

I’m tempted to say “everything!” simply because I enjoyed it more than last time. Why? Because the basic gameplay was complete at the end of the first day, so I actually had time to add features I wanted rather than scrambling to get the basic gameplay to work. I am not a particularly creative person, but I have what I like to call “logical creativity” – I don’t think of a game from scratch out of thin air, but I literally go through aspects I can program and that I want to have in the game and come up with an idea. In this case it was “I suck at graphics -> single pixel game -> tiny world -> minecraft -> build a tiny world out of pixels”. What I particularly loved is that I found my game fun to play when I was testing it, and I even had time to add a bit of polish like sound effects at the end.

What I should have done

This is going to cover one thing only.  TESTING!

Because I was enthralled by adding sound effects and adding a controls menu, which I didn’t anticipate to have time to do, I finished right at the end so had no one to test my game in progress. When it was submitted, not only was it full of balancing issues but it was massively ridden in bugs.

Bugs in final (or near final) release:

  • Crashed whenever you went to menu or exited game
  • CTD when you spammed space
  • Some computers couldn’t run it at all until today
  • Crashed if you walked off the map
  • Memory leaks
  • More memory leaks

The “computers couldn’t run it” and “crashed when you went to menu” bugs are fixed now. The crash-on-exit bug was caused by a memory leak in the destructors, and to solve it I removed the destructors which caused more memory leaks. But as it’s a 2 bit game, I didn’t think many people would run out of memory while running it. There was an issue with frametimes which was causing the ultimate unrunnable bug on some computers only, where I thought SFML wasn’t tracking the frametimes correctly and I updated the entire version of SFML before realising today that I had just got the frame time before rendering. Additionally, there are complaints of difficulty, moving to slowly, etc, which I would have tweaked had I actually got people to test the game before submitting. I should probably fix the CTD at some point, because almost everyone who gets more than 100 points suffers from it.

But, overall, I am pleased with the game. So go play it! Comment! After I’m done with my random 20 I shall probably go through the comments and play all your games.

Goodbye!

 

Sun Bringers Post-Mortem

I’ll do this fast – just a few thoughts on my first ever participation in Ludum Dare. I entered the 48 hour combo and ended up creating Sun Bringers.

Sun Bringers - Title screen

The Good:

  • I came up with something pretty original, which kept me motivated through all 48 hours. I was excited to see and play the result. I would not have been as motivated if I didn’t feel my idea was new.
  • CreateJS is a very accessible framework to work with, when you are used to ActionScript 3. Using it was a success. I might have been able to create more using ActionScript 3, but I like to learn new things.
  • I’m very happy with the tileset I made. It’s not that the quality is that great, but I really wasn’t sure I could even create one – so I was quite happy when I did. Pickle is a nice tool for this kind of work.

The Bad:

  • The design required me to build levels. Doing so takes time. Especially without a level editor – because then it’s just an array of ones and zeros. I ended up creating just five levels. I did have the time to create maybe twice as many, but in the end I chose to have only levels that introduced new game play elements.
  • No tutorial. The game is simple, but a few hints would have been nice – like telling the player that he should use two different Sun Bringers to clear level 3. I’m sure many people gives up at that point, even though the solution is simple.
  • I didn’t work effectively through all 48 hours. I did sleep for 6 hours – fair enough. But watching my time lapse also show a surprising amount of idling at times when I should have been awake. Knowing this, I should be able to put a few more hours into my production next time.

Conclusion:

Participating in Ludum Dare was a great experience. Finishing a game in a weekend is an awesome feeling, even when the game isn’t the best you have created. Sun Bringers has a pretty good basic idea I think. Creating a creature and letting him loose in a tiny platform puzzle world hoping he can solve it by himself. The execution could be much better in all areas of course, but in the end I’m satisfied with what I achieved in 48 hours.

ONLY DUST // Only a Post-Mortem

Jasper Run CyclePlay the game first!

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

Alright, now that the dust has cleared on this LD, it’s time for a post-mortem. This was my third LD, so I was feeling a little confident and ready to go BIG with this entry – of course the theme ended up going small, but that I could deal with. The first idea I had was a fast paced arcade game where you played a little viral warrior who jumps from sneeze to sneeze killing germs in mid air. This idea, while fun, was a bit silly and I wanted to go for something a little darker and more atmospheric, as this tends to be my strong suit. So, with the a vague remembrance of the plot to ‘Honey, I Shrunk the Kids’ in my mind, I got to work.

Only Dust Intro Scene

This is the raw vector art for the intro scene.

Gameplay

I wanted to create an exploration platformer as this is a genre that is near and dear to my heart, but one that I haven’t tried yet for an LD. My initial thought was to create a more open world design, but I was worried about potential technical issues as well as time constraints so I opted for something more linear. After playing FEZ last week, I liked the idea of a game with no combat, just puzzle solving and exploration. I also knew that I could potentially use the silhouetted art style to my advantages, so I decided hidden passages would be a big part of the game. Finally, to keep things interesting, I decided to add one very lethal element to game – acid!

Intro After Effects

Intro scene with colors, effects and filters.

Atmosphere

I spent a decent amount of time working on the visual style for the game. You can see above the initial vector art and how much it was stylized for the actual game. My goal for the visuals was to create a sense of macro scale by emulating a shallow depth of field effect – which is why the background is super blurry. I also wanted to a have a ‘filmic’ vibe to it, like this was something from a 1970’s sci-fi movie, so I added some embellishments like the old film border and a grain/texture overlay.

The music was one of the first things I did, since I knew that if I waited on it I might run out of time like I did last LD. Besides intending to creating a sort of desperate, melancholic mood, I included some subtle sound effect elements so that the audio track would also serve as the ambient noise of the environment.

Finally, I decided to make the narrative a big focus of the game, having a bunch of NPC’s which you encounter over the course of the game. I was worried that some players might find this annoying so most of these conversations are optional, but I do think the dialogue in the game adds a lot to the atmosphere as well.

Challenges

  • Time – This game was intended to be a main compo entry, but on Sunday night the game was only about half done and I knew I would be unhappy submitting such an incomplete feeling game so I decided to switch to the jam. Even with the extra day I still wasn’t able to do everything I wanted and I had to upload the game with a few obvious problems.
  • Programming issues – Wasted a lot of time due to using inefficient programming methods. I’ve been using ActionScript 2.0 because, to be honest, it’s the only language I really know, but I can tell it’s also holding me back and forcing me to rely on bad habits. My goal for the next LD is to finally get my act together with AS3, or try something else besides Flash for once.
  • Unhealthy perfectionism – Spent a lot of time on little details some of which are so small I don’t they’re even noticeable – for example the characters that you meet are actually animated so it looks like they’re breathing, but they are so small that it barely registers. In retrospect, my time could have been much better spent on more important stuff.

Conclusion

Overall, I’m happy with this game – in a lot of ways it feels like a culmination of all the things I’ve been working on over the past year or so, whether that be programming, art, or music. Despite whatever progress I’ve made though, it’s obvious to me that if I want to take my games to the next level, I need to get serious about expanding my programming knowledge. This experience was also a reminder that if I want to make BIG games I need to put more time into game development outside of Ludum Dares!

Anyway, thanks to anyone who has played or rated my game, I appreciate it! And if you haven’t played it yet, here’s the link:

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

 

Tiny God : PostMortem Addendum

My original Postmortem is here.

Since LD submission and I released my game I’ve found that I learned a lot of additional things from the reviews I’ve gotten.

Even if you put an Instructions link on the first screen of the game, people won’t click it and then will ask how to win your game.

I’m not sure how to solve this one except to somehow reveal the win condition during play, or if this is something to be worried about.

Even if you think your instructions are informative enough about your game, they probably arent.

I included a mini tutorial system in my game to guide the player through playing and instructions but I still didn’t include enough info. I should have had more friends play test the game when it was near submission time so I could polish these things more.

If you have random enemy generation, make sure it’s right.

I had a really stupid bug in my submission build for my enemy wave generator, I didn’t realize it until people started commenting how easy the waves where. I went back and found the bug right away.

If you build a web based game, don’t just link to the game itself, but embed it in a page with more info.

This one I just kind of realized. I ran out of time at the end and just posted a link right to the swf file instead of making a simple page to embed it in so I could put FAQ or other information in front of the player in case they are linked to it from places other than LD.

 

Anyway, I just thought others might want to learn from my mistakes. You can find my game here. I’ve also added a link for a Work In Progress version with bug fixes and updates suggested by players.

Thanks for reading!

 

Tags: Experience, lessons learned, postmortem, update

Mage Duel Postmortem

Mage duel is a game about playing with yourself.

Play it here.

This was my second Ludum Dare.  My last Ludum Darewas a 48 hour stress-fest.  Although I had a blast and created a pretty cool little game out of it, and given the fact that I have a lot of other stuff going on right now, I really wanted this one to be more of a relaxing experience.  Before I started, I took some inventory of my last experience to see what I could do this round to make things a little easier on me.  First big thing that stuck out was scope.  Voxterium was a simple game, but had a lot of hidden elements that greatly complicated it.  Another big issue was experience.  That first time, I really had no idea what I was doing time-wise… no real idea how long anything would take.

With the knowledge that I could spit out a menu system and add music and sound in a fairly small amount of time, and I could cut down on rendering time (a big chunk of the first one) significantly by going 2d, I decided to go with a simple 2D game, with some simple basic mechanics, and use the remaining time to add in a few cool tiddlibits.

The Concept

I had messed with the concept of “recording” playthroughs and playing them back as opponents a few years back for a completely unrelated game.  I had that idea, plus a few others on my mind before the competition began.  I had a rough idea of how to apply that to most of the themes on the final list, but didn’t want to get too invested in planning on any one theme, as I made that mistake the last time.  When the theme was announced, I was instantly drawn to the idea of an artillery game on a small map, an artillery game is one of those where the “playback” mechanic would actually work out well.

The Build

Overall, it went really smoothly.  A few snags along the way, one involving a nasty gravity bug and another with particles, but all in all I had more than enough time.  The map generation worked out well and was simple.  The mage firing mechanics and collision were easy to implement.  Art was simple.  The playback mechanic turned out to be really easy to implement.

Then I changed my mind.   Originally, the game was turn based like Scorched Earth.  (Sorry to all the kids in the room for the “Scorched Earth” references, maybe put in “Worms” where you see that title.  I never played Worms, but it looks similar ).   So, blue mage would fire, bullets would fly, collisions would occur, gravity processed, Red mage’s turn.   It was true to the genre, and really easy for the playback mechanic.  But it was slow, and really didn’t hit the actiony feel that the game was telling me it needed.  I then decided to switch everything to real time.  Was a little worried at first, but turned out to not be so bad, and I really think it added a lot.

The Polish

Two mages were fighting… why?   Mages just seem like the types to disagree a lot and get into long and boring discussions, so I came up with the idea that these fights were over a way for these mages to settle these little disagreements.  I added a list of little petty things that they could disagree over.  Wish I could have come up with more and better, but you know… the whole time thing…

Menu system, sound and music is now pretty much second nature for me,  and so many nifty tools are available, that that part was  cinch.  Spent some time balancing, but not nearly enough.  It could have used a lot more, but I believe it checks the ‘acceptable’ box.

 

What went wrong

Early refactoring of my terrain generation code introduced a bug that made tiles fall through the bottom of the map.  Seemed simple enough, but was a real pain to find and kill.  Wasted a good hour on that one.  An hour that I could have been better used somewhere else.

I made the mistake of assuming rendering 2D in XNA would be a lot like an easier 3D render.  It’s not.  Should have done some additive blended particle practice before this all started.   A 48 hour deadline is not the best time to learn something new.  Eventually, using multiple render targets, I was able to get a result that was close to what I wanted… but in the end, it was not what I wanted and it took up waaaaay to much time.

I was hoping to work out a way to introduce the “play yourself” mechanic organically in the game.  I could have used the time wasted above to actually do that.  I considered leaving as it is was and not pasting warnings over the place.  However, since most people spend like what?  30 seconds with each game, I figured players not getting to the core concept was more damaging than players feeling that I gave them a “spoiler”.

Wish I could have spent a lot more time balancing the spells.

What went right

You never have enough time to do everything you want, so even with the hiccups above I believe my time management was great.  Although I didn’t get to everything I wanted.. I got to everything I needed.

The “play against yourself” mechanic turned out way better than I expected.   It blends in well I believe, and builds in a natural difficulty curve.   As you get better, it gets harder.

The art and sound are great (For me).  I’m particularly pleased with the spell icons.

I liked the way the terrain generator turned out.  Not all matches are great, but you always have the option of blasting it away.

Conclusion

Another great Ludum Dare.  Many thanks go to everyone involved.  I really can’t think of a better way to spend the weekend.  I’m very pleased with the way the game turned out, and left the weekend knowing a little more than when I started.

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

Tags: Mage Duel, postmortem, xna

Post-mortem : Fire Around

Fire Around : My LD23 entry

That was my second attempt at Ludum Dare and my first success.

For my first participation in ludum dare I tried to do a web based game. I gave up halfway because my game was not really fun and there was huge performance problems.

For my second performance, I decided to use XNA because it seems simple to use and I would avoid these problems and also to not have to support any strange bug that web browser give us everydays.

This time I chose to do a shoot them up game as it appears to me that it was simple to code and to manage.

The theme was really good for shoot them up as they often relies on space and sci-fi thingies that goes well with “tiny world”. Ludum Dare is a competition where your aim is to do a good game but also to make it enjoyable and innovating. Hard to find an idea that would make a shoot them up innovating. A lot of good concepts exists in this genre and so I tried to think outside of the box.

I tried to search about tiny in dictionnary in case there was a sense that I didn’t that I could use for that but didn’t find much.

Finally I got my ideas by thinking “what if our world was very tiny, what would change?”. One of the first answer I got in my mind was : the floor wouldn’t be flat anymore but a curb.

That here that I got my idea : you play a shooter in a world so tiny that straight path are now curbs and you will go around the same tiny planet a lot.

What went well this time :

  • I was prepared : In Paris gathering we did a warmup before the start of the compo and it was really a great way to train myself to XNA.
  • I thought small then add things after : The first thing I tried was a simple ship rotating around a planet. From that I tried to add some fun stuff. If your core gameplay is solid, people will tends to like your game. And if you know that a small thing works good, you will end up adding features without having to worry much about introducing bugs in previous parts.
  • I made very public my commitment to ludum dare this time :  I told my twitter timeline several times that I was participating, I told my colleagues and friends too so that I would have to be in shame on Tuesday if I didn’t do something good.
  • I played my game a lot : I spent most of my time playing my game : doing some fun stuff with everything I coded for these game. Whenever I made some improvements I tested it a lot just to get some new motivation and grab some new gameplay mechanics ideas.

What went wrong :

  • Almost Nothing ! This time it was almost a bliss to participate and it was enjoyable from start to end. I did lose some motivation by the end when all I could do was tweaking and adding some new enemies and I end up not doing much of these and posting it earlier than planned.
  • I failed when configuring my chronolapse and I found out after 20 hours in that it wasn’t working. No timelapse for me this time.

What I will do better next time :

  • The last 10%. I will try to do it well. I will add more variety to my next game and I will try to balance it much more.
  • Graphics. I seriously need to improve my graphics. Grabbing a pen in paint.net and draw almost randomly rarely get you good results.
  • Music. I didn’t knew much about generating music before this ludum dare and I end up without any music because I couldn’t manage to create one that didn’t sound annoying.
  • Reporting. I didn’t post much here about my game and I think it was a mistake. I could have get some more opinion about my core gameplay mechanics earlier and I may have add some nice features to my game.

Play My game !

Here is a link to my compo page so you can test it.

It’s done with XNA4.0 and is playable with keyboard and xbox360 pad.

My entry !

Tiny Civilization – Enhanced.

For those of you that were really big fans of Tiny Civilization I have made some updates and added some polish.  Most notably some colour, a tutorial and some hot-keys for speeding up and slowing down the simulation.   Read the tutorial for the new hot keys.    Also more skills have been added and displayed to add more depth to game-play.  Some other minor tweaks to gameplay and bug-fixes too.

Tiny Civilization

Strategy / simulation game.

Click here to play.

Tiny Civilization - Colour Edition

Tiny Civilization - Colour Edition

Enjoy!

8

This entry was posted on Thursday, April 26th, 2012 at 6:50 pm and is filed under LD #23. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Post match analysis

So yeah… I actually did it!

I know this is a bit of a delay from when the creation actually ended, but I’ve been struggling to juggle exams, girls, and my passion… total nightmare.

I’m pleased to say that my game has become a bit of a fad at my school, if only because it’s a game that isn’t blocked by the web filtering in lesson time. And all in all, I’m pleased with how people have responded to it so far, both in person and in the comments I’ve had. Time will tell what you all really think of it though. :)

I’ll admit, it’s no Elder Scrolls game, and the story took about 60 seconds to type off the top of my head. But… it’s pretty addictive if I say so myself! (am I allowed to do that?)

Here’s a link to the game!

I hope you enjoy it as much as

cute, I know.

I enjoyed making it… this is the second finished product game I’ve ever made, and the first thing I’ve ever done in actionscript. Was pretty nervous about how it would turn out I’ll be honest.

Look forward to hearing your feedback :)

ps. my friend’s highscore is 835

Interstellar Moai Ranger – Playthrough !

Hi guys!

We thought it could be a good thing to have a playthrough video of our game on youtube. So here it is!

But be aware that a game is meant to be played not watched, so if you can please play it. We will be really glad to read your feedbacks!

Where to play? – HERE

Interstellar Moai Ranger Logo

Burn your cosmos!
– Uchuu Sentai Pastagaga

Quick tip: How to keep track of your posts

So you posted on someone’s else blog. How do you know if they replied to your post or not?

Very simple: use the search feature! In the control panel, go to “comments” and type your own username in the search box, and it will list all the comments that you made, plus comments from other people mentioning you. Then you can quickly go to posts that you’ve commented to check for replies.

This may be obvious for some people, but I didn’t know about it the first time around on LD22, and could never really keep track of replies to my comments in other people’s blogs.

As an extra, if you search for your username on the “posts” section, you can find out if people are talking about you/reviewing your game. Try it out too!

Tags: blog, posts, searching, tips

HTML5 / WebGL round-up

So I’ve just played through all the games returned by a search for ‘webgl’ and most of the ones for ‘html5’ and I thought I’d share round-up of my favourites from the selection.

Muniverse

Muniverse is clearly inspired by the classic Elite, but uses an overhead view like the Ambrosia classic Escape Velocity. Adds the ability to scoop up floating debris and has a nice 8-bit style. I’d like to see more ships and content added to this one.

Kid’s Wars

Fast-paced, unit-building, conquering type game. (Does this genre have name?) Polished and complete, another game that left me wanting more.

My Little Dungeon

A stunning achievement for 72 hrs, build the dungeons as the warrior fights his way through collecting gold and XP. A ‘little’ forced on the theme, but still, well polished and I just had to finish it.

Predicament

A single room puzzle game, find the objects combine them together and escape to victory. Great artwork, humour in the writing and the single room format lends itself well to object combination puzzles as you never get too frustrated.

Laser Coin Planets

Not as pretty as some of the other entries, but I played this over and over until I completed it. I love the teleport mechanic and it has a satisfyingly ‘sci-fi’ laser weapon.

 

Honourable Mentions

Maybe not as complete, or not as deep, or just already popular. Here are a few honourable mentions.

Nook One of the esteemed Ludum Dare hosts makes a classy 2D platformer, using Emscripten compiled javascript. Very nice indeed.

Tiny Galaxy Build the world as you go along. Love the mechanic and the simple art, would love to see this expanded on.

Only Us Very pretty, sort of flash-game style, but implemented in HTML5, I didn’t quite ‘get’ it, but it was nice.

Tiny World of Life An expansion of Conway’s Game of Life in 3D on a sphere, using WebGL. Relaxing audio to sit and watch your lifeform, grow and die.

LittleRocketBigPlanet

Cheekily, I’m going to stick our own entry on the end here, a WebGL puzzle game. Solve mazes and avoid the monsters on the tiny cube worlds.

 

All in all a pretty good show from the Open Web, I look forward to seeing where we go from here!

Ant Surf Hero – Press Down! Enhanced Windows Build

It wasn’t obvious in the original version, but you can press down to make the ant run faster. I’ve built an Enhanced Windows version which makes this clear, has better performance and has fullscreen support:

Download/Play Here

If there’s demand I can make a Mac OSX build and a Linux one too (though the fullscreen support might be lacking or undesirably smooth the pixel art!).

A Quick Post-Mortem

I wasn’t going to do one, but I’ve decided to write a short little thing on it. My game was titled Empty, and it’s bugs make it impossible to beat, but it’s got some good stuff going on.

Progression-

The idea I first had was a man inside a small screen that could only jump around in his world. It would be mainly story based, about how pointless it is to be alone with no one to share your ideas. After going a bit less than a day working on that, I realized it needed something more. My first idea was to transform the whole game into a scrolling world, where you started in the window I created, but then escaped against the will of your creator. I started working in Tiled, but after a while, I realized I had no idea what I was doing, and I liked my old story idea much better. So, I went back to that. I realized it needed puzzles, something else to illustrate how worthless it all was. I really wanted something that felt like the puzzles in Jonathan Whiting’s Craequ. I didn’t have time to come up with something cool like that, though, so I decided to go with something already invented: the sliding puzzle. It seemed like a great idea, where the man could reflect on how pointless his purpose is. Plus, the puzzles could be made harder through the fact the blocks aren’t always reachable, giving it a nice fresh feel, or at least that’s what I’d hoped. You can be the judge of that.

Pros-

  • The mechanic idea was pretty sweet, I think. Puzzle Platformers can be the gateway to loads of awesomeness. My idea of sliding puzzles controlled by jumping was pretty original (as far as I know) and it worked pretty well. It could have had some more smooth transitions to it, but hey, this is the pros section.
  • The graphics were pretty nice by my standards, to. The noise effect was something I accidentally discovered during the competition in paint.net that I thought just completed the feel of emptiness. The title screen was cool looking, if I do say so myself. I do wish I had time to give the player a human look with full animations, but the square ended up kind of complementing the aesthetic I had going on, so it was cool.
  • The music was something I can’t believe worked out so well, but it did. I wanted to compose something original, but by the time I got around to it, their was an hour left, so I simply generated something in Otomata. It ended up really complementing the puzzley thing, and despite being repetitive, it was not very obtrusive and does not get too annoying.

Cons-

  • The game probably should have the option to, you know, win…
  • For a game inspired by story, the story could have been much, much better. I should have found a better way to convey the feelings of your character, but the length of the screen limited the length of the messages, and thus, I had to hope for a kind of “narrative subtlety” feel. Yeah… didn’t work.
  • The collision detection is scrapped together terribly. It’s possible to get inside blocks in more ways than I can count. This wouldn’t have been as hard if I could make the blocks tween from place to place, but yeah…
  • The controls were kind of annoying in the end. The sometimes impossibility of moving the inside block turned from an interesting twist to an annoying limitation. Plus, the clinging on the walls was slightly awkward, and the middle of the character had to be touching the block for the move to register. Very annoying.
  • Finally, the game had an awful interest to hardness ratio. It was all difficulty, with no learning curve at all. There was nothing to convince people to play more.

Well, I learned a lot this LD, and I look forward to the next time I can show you all what I can do!

Manifest Destiny

Manifest Destiny is a simple arcade style game, you play as an Indian and hunt for Americans that  have stolen your land.

Controls:

  • WASD – Move up,down,left and right
  • Left Mouse – Attack with your tomahawk

Goal:

  • Get to wave 10 to fight the boss (The boss is pretty awesome if i may say.)

Check out the game if your interested right here.

Solar Sailor Post-mortem

I’ve written up a post-mortem for my 48hr comp entry, Solar Sailor.

Play & rate the game here:
http://www.ludumdare.com/compo/ludum-dare-23/?action=preview&uid=10456

… and then read the post-mortem here:
http://codervil.blogspot.co.uk/2012/04/solar-sailor-post-mortem.html

I’d also like to say a great big THANK YOU! to everyone who’s tried the game & left a comment so far. This is the first time I’ve put an entry into Ludum Dare and the community here is wonderful!

A Summary of A Super Mario Summary

Almost a week has passed since LD23 started and I think it is time to look back at what actually happened. I didn’t really have a favorite among the themes, so when Tiny World popped up I had nothing prepared. I got a few ideas while having breakfast, but nothing that I thought was interesting enough. Tiny World to me is about relative sizes, but all I came up with was not relative to anything else in the game. So I took a shower and not only did I get clean, but the idea of summarizing another game into tiny bits was born. I went with Super Mario Brothers pretty much straight away as it both widely known, but also said WORLD x-y on every other screen.

Can’t be bothered to read the post mortem? Go straight to the game and play/rate it here.

Things that what went right

Engine

I used my own developed engine Pixelizer. Even if I’ve been working a lot on it lately and this would be the first true test. Luckily it stood up to the challenge and allowed me to cram a lot into the game in little time.

Graphics

Straight and simple, but colorful. I obviously had original graphics to start from, but I wanted to put my own touch to it to make the game as a whole a quite different experience from the original. The first thing I did on the project was actually animating the main character as I knew I would be spending a lot of time with him and didn’t want to stare at a purple box. From there I build the rest of the graphics to work with the character.

Scope control

I knew making 32 distinct levels would take it’s time, so I decided to find a way to control the scope in case I ran out of time. The solution I choose was to alternate between making levels from the start and making levels from the back. Ie, first I made world 1, then I made world 8, than world 2, then 7, etc. Should I run out of time, I would at least have the start and the end of the game. Also I didn’t implement anything until it was needed in a level. That way I could focus on the task at hand at all times.

Company

Being part of the LD meet up at Free Lunch Design worked great for me, it was very relaxing which allowed me to focus when needed, and chat with friends at other times. Kept me from burning out which very easily could have happened.

Things that what went less right

Original scope

In retrospect, this was way to big for a single weekend. I churned out levels like a crazy person the last few hours before submission. Even if I had control of the scope, it would have ruined the idea as a whole if I had failed to recreate every level.

Engine

Pixelizer was good to me in many ways, but there are also some glitches in the game which are due to the engine. Needs more work. :)

No music

The game feels a bit flat without any music. But there was simply no time for this and I am no composer by any means. I decided not to include music as it would probably do more harm than good unless it was really good.

Misjudgung the audience

A lot of the decisions I made for the game design concerned how to make the  game more puzzly and less actionly. I thought I would get away with this, but it caused the game to be somewhat less similar to the original than what players expected. For instance being able to jump over the flag pole or nog being able to stand safely on pipes, made a lot of players frustrated.

The aftermath

I didn’t do much noise about having completed my game. I was tired and went to bed. When I woke up again the game was mentioned on some sites and I thought ‘hey that’s great’ but didn’t think more about it. Later that it started appearing on more sites and suddenly it was featured on Kotaku. From there everything exploded, with the game appearing on everything from destructoid and boingboing to barstoolgames. Tweets kept rolling in with comments and questions, from all over the world. It was an amazing experience to see something that I had created spread like a wildfire. I had never imagined that people would take the game to their hearts the way they did and I feel incredibly humble and fortunate to the whole experience.

Conclusion

Ludum Dare 23 was an amazing experience for me. Not only did I had a great time making the game, seeing the response has been thrilling beyond compare. Browsing the entires I am amazed by the sheer range of awesome game concepts and implementations. The sky is truly the limit for this fantastic event. I am happy and proud to be a part of it and so should you!

If you’re still interested in the actual game after reading this, please play/rate it here.

Tags: as3, pixelizer, post-mortem, postmortem

My First Post-Mortem

Introduction

Spitoon was my first ever Ludum Dare submission. As I mentioned in my previous post, I had watched Notch’s live feed of his entry for LD 22 and was inspired to participate in the next one. Here is how I think it went.

What went right

  • I managed to make a mostly-playable game with (AFAIK) a somewhat unique mechanic.
  • My graphics, though simple, got the job done. I was pleased with how they turned out, mostly.
  • I learned that I can perform under a very tight deadline and for very long periods of time.
  • I made my first Timelapse as well as my first ever upload to YouTube!
  • I had a lot of fun!

What went wrong

This is always the more interesting part, I imagine:

  • Many bugs made it into the posted version. Among them are the spitballs appearing at full size for a split-second before being resized (this one bothers me a lot, as it messes with the visual style and happens repeatedly), and spitballs sometimes stopping dead in their tracks when they aren’t supposed to.
  • The game uses up way more memory than it should, particularly by the later levels. This was a problem I had spent a good portion of time trying to fix, but, alas, I just don’t know enough yet about proper and efficient garbage collection. This is where my relative lack of experience with ActionScript, Flixel, and programming in general really shows through. It is something I’m slowly working on, however.
  • No sound! I had even practiced a bit with generating sounds with SFXR before the competition, but in the end, I spent too much time fixing bugs and designing levels (both of which took up more time than I had originally planned on) to get to this stage of development at all. A game like this really deserves some nice spitting sound effects to round it out, but I had to prioritize, and sound I deemed was less important than the other stuff.
  • Too short! I realize that the bar isn’t necessarily very high as far as length of gameplay with this sort of competition, but I really wanted to shoot for a minimum of 10 well-thought-out levels at minimum (20 if I could help it). That said, I had to settle for 7 levels, with 2 of them being pretty bare in terms of “puzzleyness.” I also wanted to have an actual menu and a way to restart the current level, but I just didn’t get to implementing it.
  • I misspelled the name of my game! :O I don’t know whether to chalk this up to being tired or what, but yes, it’s spelled ‘Spittoon,’ not ‘Spitoon.’ I didn’t name my game til right toward the end, and although I’m usually a pretty decent speller most of the time, this time I got it wrong. A 5-second Google check could have shown me I had it wrong, but it just didn’t occur to me until the next day to do so. At this point, I can either fix the spelling for the post-compo version, or leave it as is and just call it my own. Does anyone have any preference on this? Should I leave it “Spitoon” or should I fix it and call it “Spittoon” from now on?

For the Future

Shortfalls aside, I really did have a blast participating, and I absolutely plan on being in future competitions for Ludum Dare. Feedback has been wonderful and it’s so encouraging to hear people’s thoughts about the game. I’m also planning on releasing a “post-competition” version of the game with all the bug fixes, sound effects, and additional levels I wanted to include in the original version. Hopefully, work schedule and family life permitting, I’ll be able to put that out sometime in the next 2 or 3 weeks. Thank you for reading and thanks to everyone for making this a great experience! I’ve already played quite a few of the other entries, and I’m terribly impressed; I can’t wait to play even more!

EDIT: The post-compo version was released about a week ago, and here’s the download link:

http://dl.dropbox.com/u/24565598/Ludum%20Dare/LD23-Spitoon-PostCompo/LD23_Spitoon.html

Tags: post-compo, postcompo, postmortem, timelapse

Top 4 games that best fit the theme

While voting, I came across a lot of games that didn’t really fit the theme. However, among the games I’ve played so far I noticed four games which perfectly fitted the theme:

1. Cage by epicSpeedTurtle

This is may personal favourite so far as it resonated pretty well with me. At a glance you’ll see that the game has really few and HUGE pixels, but despite that it manages to convey a very strong mood and a sense of tinyness: You’re an awfully sad hamster living in a cage (yeah, you probably have one in your home)  – and that’s its world – A CAGE! A f***ing 48×24 pixel cage! To make things worse, a fly comes by and makes fun of the hamster – a fly of all things, yeah that annoying flying creature that is free as a fly can be. If I continue writing I’ll spoil too much… I liked the game!!!

2. Casal Navity by Nanofus

This one is pretty original – it’s actually the most original and weird game I’ve encountered so far (and I thought my game was weird). You’re a small (really small) funny looking creature thingie living in someones nose :D. Yeah, it’s pretty yucky from our perspective, but the story-line is presented from its perspective: the nose is its world, its home, its comfy moist cave full of “life-giving substance”. It becomes kind of dangerous after a while and fun :D. PLAY IT!

3. Atom Planet by NMcCoy

This one suits the theme AND it has complex gameplay elements: it’s 2d Minecraft like game – so, it’s rather complex for a 48 hour game. It’s very fun to play as you always try to find all the possible recipes. Moreover the world is also affected by weather (it’s not there just for visuals) and you even get to pick clouds (and even make them).

4. Gum Crisis In Pipe City by jason.bakker

This was the first I’ve played from this LD. It’s really nice and original: you control multiple worm like creatures of all sizes (I mean, from tiny to supertiny) and you… aah I don’t know how to describe the game best – just play it!

I’ll continue playing and judging. I’m planning on making a list of not so great games but with huge potential because one shouldn’t stop developing after the first 48 hours.

(oh, I hate WordPress)

Tags: best, theme, tiny world

Post Mortem: Pixel Story

First things first, go play Pixel Story here. Seriously, do it. Please? Pretty please? This story can be viewed as a slightly confusing timelapse here.

Intro

Pixel Story is pretty much the best game I’ve ever made, in terms of being a complete experience. It almost didn’t happen, as I started making a different game but scrapped it within a few hours.

What went well.

Friends
I spent the first day and a half at a friend’s house. It was his first Ludum Dare, and he’s an accomplished programmer who struggles with motivation and doesn’t really have a game dev tool he likes that much yet. I was there because I wanted to encourage him to participate, and as I discovered, having someone around to bounce ideas off of for the first few hours is really handy. Also, I could have immediate feedback on gameplay.

Scope
I actually got really lucky here. I made a decision early on that all levels should be 24 pixels square, and that the camera would be static. I also decided to make a game with 8 levels or realms. This later turned into 6 after I made the town level. As a result, I was gameplay complete with 15 hours to go, which allowed me to really polish my game.

Difficulty
Just for the record, I haven’t seen anyone aside from me actually play through my game. The difficulty was originally tuned with me in mind, which turned out to be really harsh on some players. The type of difficulty tended to be about reflexes, which I later retargeted to multitasking, after some fairly solid feedback from another friend.

What went badly.

To tell you the truth, not much actually went badly. But I can think of a few things I’m not incredibly pleased with.

Future plans
I really can’t see where I can go with Pixel Story. It really feels like a complete experience. I could release an updated version with new levels, but I’m just not sure how much I’d like it. This is as opposed to my last good Ludum Dare Entry, Questling, which I could totally see with a community and on mobile devices and the like.

Playtime
I’m still not quite sure how much gameplay there is in Pixel Story, as I really haven’t seen anyone play it through in front of me. I feel that the replayability is just too low, and that it’s just a bite sized experience. I’d far prefer to have created something that has lasting appeal.

What I learned!

  • Be around people, people you can work with. They significantly decrease the chances of massive burnout and death spirals.
  • Don’t be afraid to make small games! Pixel Story is complete! It’s super finished, and super tight. Feels good man.
  • Leave time to polish! Falls in with the above lesson, but polish turns a meh game into a good game.
  • Don’t post your game to Reddit too quickly. You get downvoted and ignored. :(

Most importantly:

I had tons of fun, learned a lot, and I’m super excited for  LD24.

 

Rating some games!

Got a game that runs in browser or on mac? Send me the link!

Been about only about 1 in every 5 with mac/web builds so far..

Comments

spiral
28. Apr 2012 · 00:06 UTC
sweet… ty ty

A Post Mortem

The good:

Figured out some cool math stuff
I’m not a very accomplished coder, and wondered if I could do anything ‘odin sphere’ish with my skill level, and was pleased with the stuff I learnt.
Finished my game
I couldn’t take any time off, so couldn’t stay up late on the final day or spend some time reworking anything for the Jam, so I’m happy I managed to submit something.
‘feels’ pretty good
The feedback you get in game is pretty nice. Kicking an enemy gets a big ‘pow’ graphic, the frame pauses, there’s a sound, debris, and the corpse flys off and spins away. Pretty satisfying. Likewise I pause the game (even longer) when you get hit, with a big ‘ouch’ graphic, and bring the offending enemy to the foreground so you can analyse what went wrong and hopefully avoid feeling short changed.

The bad:

Gameplay is boring.
The spherical world was cool to do, but it doesn’t even feel like you’re going anywhere, because the world is completely featureless. There’s 0 level design, there’s only two things to do: Hit enemies and avoid being hit by enemies. I had it so the flying corpses could hit and destroy other enemies, giving a tiny bit of depth to killing enemies, but I had to take it out, because it made the game super easy (meaning the only way it got difficult was from less ‘fair’ seeming enemy speed).
Game is ugly.
I was regretting the art direction even as I was drawing, but was really too afraid to start over given the time limit. I should’ve done something more fun looking, simple enough to have a bit of variety. I don’t like my graphics very much.
Designs are so poor that the objective isn’t clear
The visual cues aren’t done very well. Almost everyone tried to kick the drills’ faces and assumed the hitboxes are betraying them; this could’ve been avoided completely with better designed enemies. The drill part should’ve looked more dangerous (different colour to the body), and the back end should have had a visible weakspot or target.

Overall I’m fairly unhappy with my entry, but I’ll definitely do better next time! Thanks to everyone who played, and made constructive criticism.

my game

Comments

18. May 2012 · 09:15 UTC
Nice game! 😀

Do you have a blog, twitter or something? I can’t seem to find you anywhere. 😛

> go down stairs (A post mortem)

&gt;go down stairs

The good things

1. I finished

When I began, I felt for sure that I wasn’t going to be able to get this done at all. I had major time issues with things going aside Ludum Dare, and I was nervous as time ticked on. I was glad that I had finished it though when I got there.

2. I learned more about the language.

Inform 7 language, to be precise. I had little past experience other than a couple of projects that didn’t go anywhere, and this allowed for me to get around to trying new things, testing the extent that I could utilise it. Sure, it was simple, the puzzle element. But it should be able to help me for next time if I do choose to use it again for the next Ludum Dare.

The unfortunate

1. Time management makes messy things.

I often leave things to the last moment, but my work really interfered with my time in working on my game. Several hours wasted as a result, and thus less time to do all the other things that make a game stand out.

2. Under-testing

Time pressure on, there wasn’t much time to test my game. Sure, I had a ‘test me’ function that I used for a bit, but I didn’t have that much time to go through all the possible interactions possible. If a toilet can be picked up, that’s probably the result of my efforts in testing.

So, what now?

I may go back to the code, I might not. I don’t think I may modify the story any further, but I might in the case that your computer goes sentient as result of running my game. Ludum Dare 23 was quite a good experience (my first experience though, so good might be relative), and I will be getting to the next one, provided I’m not being swamped by any more bits of work out to get me.

Oh yeah. Give it a go if you haven’t already. It won’t take too much of your time. I promise.

 

I’ve broken the compo rules :(

There is a problem with my game.
I’ve broken the rules using music made by my friends. I was too asleep at the end of the compo and completely forgot about the fact that all the content including music must be made by me. Looks like it disqualifies me (((

Anyway as I’ve already told it was fun and I’m sure I can do better next time. Especially when I remember how I’ve wasted the first day on a mess with tools and game engine.

Comments

27. Apr 2012 · 10:04 UTC
Maybe someone from the LD team can move your entry into the Jam. I wish there was a Report button on entries, that would allow to request such a move.
nek
27. Apr 2012 · 10:13 UTC
Yes, it would be good.
27. Apr 2012 · 10:33 UTC
Just remove music and update game. I’ve seen someone did it, and I doubt that it’s gonna be problem for anyone.

Somewhat Belated Postmortem

Its probably about time to write this.

Design
I had a good selection of ideas at the start of this competition, something I have had trouble with in the past, The only problem was which one to choose. Unfortunately I did not spend any time fleshing out the ideas and properly designing the games which i believe is where everything went horribly wrong.

First Idea
This was supposed to be a game where you played as a cell in a petri dish. There are other cells around that either try to kill you, block your path or various other behaviors. I spend about seven hours implementing this concept but stopped when i couldnt think of how to make it a fun game. Te prototype was not headed in the direction of my initial vision of the game. I also wanted to try out the other idea.
You can play what I ended up with here.

Second Idea
I had spend a bit more time thinking about this one. I didn’t start with it as I thought it did not fit the theme as well as the other idea, but the extra time would definitely have helped.
More design time would have been mush better, as I did get stuck a few times in the implementation due to not having a clear grasp on the game’s structure. I ended up re-writing the code to display the blended dimensions a few times and I got stuck with the collision blending.

I eventually ended up scrapping everything but the level loader and started again from scratch about five hours before the deadline, taking a completely different approach that works much better. Unfortunately five hours was not really enough, and I ended up hacking in some elements right at the deadline, like the ability to drop orbs, which is why the controls really suck.

Tiled
I tried out Tiled during the last Ludum Dare. It saves so much time not having to write your own level editor. It was definitely very useful for this competition as I had no time to make a playable world at the end of the competition.

Conclusion
Generally I should have stuck with a single idea, or at least not spend much time on prototypes if I am unsure. Also I should really take the time to fully design the structure of a game before I start ANY implementation. I never do this which is why nearly everything I program gets re-written at least twice. Maybe I’ll finally learn…

Post Competition Version
I have had a lot of positive feedback about the idea which is encouraging. I have already started writing a new version of this game. It is currently about the state of my entry with a few extra features. I want to add monsters and other puzzles that make use of the dimension blending in creative ways. I will upload a version of it soon.

Play my final entry.

Tags: postmortem

Timelapse

Timelapse video of my entry Dimensional.

Tags: timelapse

Comments

JonathanG
28. Apr 2012 · 20:07 UTC
That’s pretty cool, I like the music! BTW how did you embed the youtube video in the post?

Robot in the Garden, a post-mortem

 

This Ludum Dare, I convinced a bunch of friends to join in on the fun and we got together to go through the pain and joy as a group.

We made an entry each, as per compo rules, sitting around a table in the offices of “ACN Services”, a company ran by Jail-By’s dad. This allowed us to have enough room to have computers set up, one each, one music/sound design machine (with software and hardware that Minimicro and I have), and a machine with a webcam pointed at us, and we called ourselves “Team #define true false” or #dtf, and we made a website at http://xi.gd/ld23

So this is a dual post-mortem, with a “What went well” and a “What went wrong” for my game, and for the #dtf event.

What went well for #dtf :

  • Jamming with friends is FUN, programming fails are so much funnier when you have other geeks to share them with in real time.
  • The location was great, we had plenty of room, tables, chairs, a kitchen, a shower and space to sleep.
  • We ate well, we had plenty of fruit juice, and we had music playing all the way through on Minimicro’s awesome monitoring speakers.
  • Four of us (Minimicro, Jail-By, Flower Power and Niavlys (in absentia)) were on their first Ludum Dare event, and also their first game development. I feel they learnt a lot, and are hooked.
  • All in all, a bonding moment, great fun, cheese, music, beer, coffee, thousands of lines of code, 3 technologies (Lua/Löve, C++/SFML, JS/HTML5), random webcam shoutouts, fits of laughter.

What went wrong for #dtf:

  • Sunday was the first round of the elections in France, so Niavlys couldn’t be with us at ACN Services, which was a bit of a shame.
  • The internet connection was a little dodgy, which made uploading a bit of a struggle, and caused a few problems.

 

And now a little bit about Robot in the Garden.

What went well:

  • I managed to write quite a bit of reusable code, and I learnt how to actually do object-oriented in Lua
  • I doubled the size of my character from last event, and now he has 20 pixels of lush, high definition detail, compared to the measly 10 pixels of screen space of the main character of LD#22’s Solitas Exodae. Which meant I could make a 4 pixel highlight and a 2 pixel shadow, bringing this character to an unrivaled level of realism.
  • I’m pretty happy with how the dynamic light and grass growing worked out, it was an idea I had in the back of my head for a while, will do it again.
  • The computers were fun too. Since functions are first-class citizens in Lua, I could make a generic computer and pass the functions I want the computers to execute as an attribute.

What went wrong:

  • I SCREWED UP AGAIN! I only started on gameplay around 10 hours before the end, so that means I failed on my promise to bring more gameplay into the game.
  • I wanted to implement at least another few game mechanics, such as a gardening thingy (not sure how that would work), and a puzzle that used the computers. But you’re stuck with the two silly games you have there.
  • The coins don’t do anything either.

 

Hey guys can we have “Senseless violence” next time?

Comments

spooks
27. Apr 2012 · 15:40 UTC
senseless violence would’ve been so much fun! I’ll vote for it again if it makes it next time

Another Post-Mortem

First of all… Thanks everyone involved making this happen. It has been another great LD. Please keep doing what you are doing, we love you! The possibility to get together with programmers all over the globe this way is amazing.

My goal this LD was to make some kind of platformer. I have always avoided collision detection and I felt that this was a nice way to force myself to learn how to do it. A drawback of my early decision (“pre-theme”) was that I had a hard time adjusting to the theme, but I think I gained more knowledge this time around than I have ever done before in LD.

>> LINK TO GAME <<

 

GOOD STUFF

Pre-Decide Genre:
I decided a genre before the theme was released wich made it possible to mentaly prepare for the type of obstacles that could hit me. That made it easy to start with the unsure stuff and clear that up early in development.

Testing, testing, testing:
I played the game… ALOT. Every time I put something new in, I tested and tweaked it until it felt nice. It felt better to have a few polished mechanics than alot of wonky ones.

Sleeping:
It’s a big difference between not sleeping at all and sleeping less than you usualy do. I only cut 2 hours from my normal sleeping cycle wich made me able to think clearly. The most of my development happend during morning, after a good nights sleep.

 
BAD STUFF

Disregard of intuition:
The most obvious stuff that I feel needs tweaking now is the stuff I felt unsure of the first time I tested it. I didn’t feel that I had time to perfect it, but would have ended up with a better game if I did.

Music and sound:
Now… I do feel that the sound and music in the game is ok. But I feel that I could’ve done a better job with it. Some more differences in the melodies. More than one song. Unfortunatly, time got in the way.

How do i know if I’m silver?

I’ve rated at least 25-30 games. also, how does the rating system work? i know the more games you rate the more your game is rated, but how does the new system make others vote for your game?

Comments

27. Apr 2012 · 12:37 UTC
you’ll know once the ratings close at the end…until then, why stop! keep rating a few per day and people will keep rating yours, the more ratings the better
27. Apr 2012 · 12:39 UTC
oh, and to directly answer your question, the “weighted” ranking for your game is modified by how many games you’ve rated, so the more games you rate the closer to the beginning of this list your game becomes. (so you can keep rating games, to a point, to keep your game up on the first page of 20 that everyone sees) (at 100 ratings it no longer modifies that score so past that point you’re just rating for the sake of rating)
spooks
27. Apr 2012 · 12:39 UTC
I think bronze is 50 games rated, silver is 75, gold is 100. If you click Play and Rate Games (Random 20) they will show a list of 20 games, with most of the games having been rated less than the author has rated other games.

Flea Circus – Post-Mortem

 

I made Flea Circus! There’s not a lot to it, but I’m really proud of it, and this was my first LD. I just wanted to write a little bit about my what went right and wrong to clear my head and process the experience. Before you read this Post-Mortem, please check out the game by clicking here. If you don’t want to read it, please at least go rate my game: click here.

What went right

Scope

I did a really good job of taking each idea that came out of brainstorming and running it through a Feasability Filter® before risking taking the idea further in my head and becoming attached to it. I stripped out the idea of levels, and character creation and character selection that’s typical of extreme sports games and just focused on the fun of jumping around and doing tricks.

Originality

This first images in my head when the theme was announced were of Super Mario Galaxy type planets with big oversized objects on them. So – I knew I didn’t want to go with something like that because I wanted something fresh and different from the rest of the competition.

Truthfully, though, there is one other flea circus meets extreme sport game in the competition. Weird.

Mechanics

Getting all the timing and the combos working was a really satisfying experience from a coding point of view – but I’m also proud that it works, and works as expected. Granted, you can say the game’s a little easy, but that’s aside from the fact that it’s very satisfying to make the little flea do his tricks!

Think of fighting games : Yeah, you can beat me by button mashing – but can you beat me and know what you’re doing?

What went wrong

Graphics

Believe it or not I have a background in Graphic Design! But small pixel art … man, I don’t know what I’m doing. Those curtains look pretty good, right? And so does the wood of the stage. But those judges and the flea … could be better to say the least. I need to get good and I need to get fast. I wanted to have poofs of smoke and blood splatters and animate the fire in the hoop.

I may have gotten a little too obsessed with wanting to use the same dimensions as the gameboy advance. I should have just made a game with the style that it needed and not with a style I wanted to try.

Also, yeah, that flea needed more contrast, I don’t know what I was thinking.

Difficulty

It’s easy. It’s an easy game. In playtesting half said it was too hard and half said too easy – no one said ‘just right’ but me. So I went towards making it easier for those who said it was too hard and I think I made it too easy.

Conclusion

This is was my first LD and it was an eye opening experience:

  • I need to work on my graphics abilities and I need to figure out my graphical style.
  • I discovered the kind of game I like making though. My last game ‘Run Along, Now’ had some similar elements with ‘Flea Circus’. Perhaps I excel at creating fast-paced action games?
  • I’m really pumped about game design again. I was really down in the dumps about my abilities and whether or not I had any talent. You may disagree, but I think this ‘hobby’ of mine is worth pursuing more than ever now.

Thanks for reading, I had a lot of fun at my first LD!

Play it here! And rate! Comment if you like, too!

Tags: flea circus, post-mortem, tiny world

Comments

27. Apr 2012 · 15:42 UTC
I thought it was just right. :) I got to the point that I could plan what I wanted to do and do it. (I am famously bad at jumping games)

A load of bulls post-mortem

Here’s the post-mortem for my entry. You can find it here

At first I wanted to do something with openGL. I toyed a bit with openTK a few days before LD started, and had a 2D game in mind. When the theme was announced, however, I knew I had to make it 3D, and since I know XNA more than openTK, I went back to XNA. My goal was to create a planet, using a vertex shader. I’ve messed with vertex shaders almost a year ago, but I remembered how they worked. After stripping the standard shader, and drawing some terrain, I managed to make a vertex shader that rounded the world. It’s not actually round, as it just lowers the vertices the farther away they are from the camera, but it worked good enough. I had to flatten the terrain, though.

So after a few hours I had a round planet, with cubes, and a dude that acted like a billboard

After that, I made a first person controller, made it collide with the terrain, and then I spent roughly 8 hours on collsion. I failed, as it kept jittering against the walls. After a few of those 8 hours, I gave up, and searched for a physics engine. I found jiglibx, and spend a few hours hacking it into my already existing code. That failed as well, but at least you could ski. As it was getting late, I called it a night, and decided to scrap things the next day, and just make something without accurate physics and jumping etc.

After waking up, I gave it another shot, but stopped after about half an hour. I then implemented what I thought was a bad hackjob that would never work, but that simple change ended up being exactly what I wanted. 10 minutes and a few lines of code later, and I had proper collision, without jittering, and it was efficient as well.

So then I went to decide what sort of game I wanted to make. I had about 16 hours left, and decided to create a first person shooter. Something simple. I added the first enemy, the bull, based on Serious Sam’s Sirian Werebulls. Their AI was pretty simple, but it looked nice and they acted in a similar way as in the srs sam games. After toying with them for a bit, I created a few weapons, added explosions and rocket jumping, and stuff like health. By now I had about 7 hours left, and I decided to create the map. The map was way too large, and I scaled it in half. This broke my shader, so I had to fix that. This broke the view, so I had to tweak that by stretching everything. This broke collision, so I had to refit the bounding boxes etc. Finally everything worked, and while it looked worse than before, the world had a nice size.

Only a few hours left, and I had to add the menu, among other things. I added some last minute sounds, which turned out to be bad in hindsight. I hacked together a menu using parts of my previous LD games and the framework I was working on before. I had to redo most of the input checks, but it meant customizable controls, which is a good thing. I added another options menu, allowing mouse inversion, FOV scaling and sound settings. With some testing, I set it on a very low FOV by default, because of the way the world was messed up. But hey, don’t like it? change it! 😀

I was done about half an hour before the deadline. While it didn’t really have a goal yet, because I didn’t have time to add more stuff, I still think I made a decent game out of it. It has potential, at least.

What went right

  • This was my first attempt at actual 3D for Ludum Dare, and I have very limited experience with it. But it went very well, and it has a nice effect. Also, using billboards instead of models was a very good decision, because it looks decent enough and it was very easy to create and implement.
  • I love the feel of the movement, and it’s pretty smooth. Also, rocket jumps <3
  • Creating the world from bitmap files, where each file is a layer, allowed me to save a lot of time. Need to change something? Just draw the changes!
  • While the world seems to be round, it’s actually just a 64×64 tile grid, making it very easy to modify.

What went wrong

  • I wasted way too much time on the collision. I should just remember the way I’ve done it now, and use that in the future. It’s not perfect, but it’s fast and easy to implement
  • I didn’t have enough time to add more content, so in the end the game is a bit lacking. By turning it into a survival game, it is somewhat mitigated, but adding a goal in the world or a story would be nice. Also, needs more enemies
  • The shader does not like altering the world size. It was very hardcoded, and in the end wrong, but it did work after wasting some time trying to fix things.

 

What’s next

I’ve decided to continue working on this game. I really like the concept, and adding new content should be relatively painless. So far I’ve already redone the shader so it allows worlds of any size. It’s possible to make a 16×512 world, for instance, so you can walk around in circles around it. And with a little change in the shader, you can make it look like this:

Tunnel vision FTW!

Anyway, I haven’t decided what to do with it exactly, but I hope to make a nice, simple run-and-gun game, similar to Serious Sam. My code base has its issues, but it’s clean enough to work with or refactor. I still want to improve the shader though, because now it doesn’t really like tall things. Other than that, most of it should be content and polish.

Also, can’t wait for the next LD!

Comments

wademcgillis
27. Apr 2012 · 16:26 UTC
THE RINGWORLD IS UNSTABLE

How2play Shipwrecked?

If you ever wondered how to play my LD entry, Shipwrecked, I show you how do I play it.

I cut out many parts due to 15min limit. I found out that dungeons consume the most time.

(No music :( )

The Spaceman Post-Mortem

As you may have seen, I recently participated in the 23rd Ludum Dare 48 hour game competition.  Out of it came a game called The Spaceman.  I’d like to take a moment to talk a bit about the process of making the game during the 48 hours of the competition, as well as the design process behind the decisions I made in the game.

I originally wasn’t going to enter Ludum Dare #23.  Ludum Dare was a thing I had meant to do many times in the past, but had always passed, thinking to myself “oh, I’ll do the next one”.  This LD was going to be no different, particularly as my weekend was already fairly busy.  However, after being inspired by the venerable Chevy Ray’s keynote presentation and seeing that this was the 10th anniversary Ludum Dare, I started to consider entering.  After all, if I skipped sleep, I would have a solid 24 free hours to work during the 48 hour period.  Surely I could make a game within 24 hours.

I immediately began formulating ideas of the sort of game I could make in 24 hours.  The idea I had was a zelda-like (of course) where you play as an Indiana Jones type character searching for an ancient treasure in a temple.  Not the most original idea, especially in the indie game community, but it seemed like something I could make in 24 hours.

Of course, when the time actually came to start working on the game, I was faced with the theme “Tiny Worlds”.  Well shit.  No mental acrobatics I could manage would make the idea I had fit that theme.  Doing a zelda-like fit, but it would have to be about something other than Jungle Harry and the Temple of Surprises.

So I had to come up with a new idea.  I was still going to make a zelda-like.  I knew I wanted to make something like the original Zelda where you could do things in pretty much any order and had free reign in exploring the world.  “Tiny worlds” suggested the idea of making the world loop around. Go off the west side of the game world and you end up back on the east, go off the north side and you end up on the south.  This could lead to some interesting navigation where you see a treasure blocked by mountains to the east, and have to travel west to get it.

The original plan was thus:  5×5 game map, 3 small dungeons, each containing a gem and a weapon.  The weapons would be optional and harder to come by, but you needed all 3 gems to beat the game.  Pretty standard Zelda-like, although the weapons being optional was a bit of a twist.  I still wasn’t entirely satisfied with the plan, but I had to get to work.

(Continued after the break)

I began writing the basic top-down action-adventure code in Flashpunk.  Character moves, game loads ogmo maps, .  I drew a weird-looking tileset (I knew I waned the game to be weird-looking), got it into the game.

I would end up editing the tileset based on some early feedback.

As this process was going on, I was constantly coming up with changes to the overall game concept.  I decided to drop the dungeons, except as a potential stretch goal.  This also meant that I couldn’t use my idea of weapons and gems.  At some point I got the idea to replace the weapons and gems with shields (which are generated by crystals).  I started designing enemies with set patterns so that the game could contain interesting dodging-based gameplay, as the player would have no offensive weapons.

The urge to be more experimental made me think back on all my thoughts and discussions on videogame leveling systems, and I remembered that I had wanted to make a game where you lose power over time rather than gain it.  I’ll always remember the scene in Planescape: Torment where you have to chose whether to give up your allies or your own health to get vital information.  From this core idea came the idea to have you start with the shields, and force you to give them up to progress.

This also appealed to my desire to make level design a dynamic thing, where level layouts shift and change based on player actions.  I’ve experimented with it before in some episodes of Renegade Sector and Temple of the Spear, but this was, to me, a very elegant way to handle it.  For example, they may be able to take an easy path to one of the pedestals where they deposit the sphere, but the path back might be more difficult, as the way they came is blocked by a laser beam of the color of shield they just gave up.  Enemies which they once could shield themselves against would now be more dangerous.  The game would get naturally difficult and the navigation naturally more complex, and there would be an element of choice of which shield to give up first.

Now that I knew where I was headed, I got more focused on work.  I got some level design, started getting a feel for how the game would play.  I took a shower around 1-2 AM and figured out the details about how the shields would work (I had formerly been arguing with myself about whether they would be a passive ability, with whatever shields you currently have always on, or an activated ability which you couldn’t move while using.  I finally compromised with an activated ability that slowed you down.  I felt this made the shields effective while not being something to use constantly, and also allowed for the laser barriers which the player can only move through while using the shield.)

The lack of sleep started getting to me around 3 or 4 AM and I finally succumbed around 5-6.  I had hoped to see the sunrise, but this was not the case.   I set my alarm for 9.  When I awoke with ~3 hours of sleep, I resisted the urge to turn off my alarm and sleep through till noon and headed straight back down to the computer to get back to work.

The game used to have 3 shield colors. Also shown is an enemy that I didn't like, and decided to cut out.

It was around noon when I began to lose hope.  I had to finish before 4 PM as I had an obligation at that point.  I had around 12 of the 25 screens I had planned made, I had no story in the game and I had a lot of polish to do.  I was about ready to give up, get 4 more hours of sleep, and turn this into a non-jam project, when I looked at the overlay of the map I had done on the whiteboard.  I realized I could pretty easily rearrange the areas I had so far into a 5×3 map, and I’d only have to add a few more areas.  I would have to drop one of the 3 crystals/shields in order to make the level design make sense, but it would work.  I decided to drop most of the story (for anyone wondering, the story would have been pretty much the same as how it is in the game now, it just would have been more interestingly told, with more foreshadowing).

I went into overdrive.  I wrote the piece of music for the game in about 20 minutes.  I designed the rest of the screens.  I threw in a simple title screen and a simple ending screen.  I made a few sound effects in sfxr.  As people who played the original Ludum Dare version of the game can attest, I barely tested the game.  I, however, put something more-or-less finished up on the Ludum Dare site around 4PM.  Though I had social obligations in the next room, I would occasionally pop in over the next couple of hours to see if my game had gotten any feedback and make appropriate tweaks.

When it came to polishing the game for internet distribution, I found that I didn’t really want to change much.  I fixed some bugs and added a new start screen.  I changed a bit of the level design to more effectively display the concept.

Alright, it’s the end of a Ludum Dare Post Mortem.  I guess I have to do one of those lists where I talk about what I think went well, and what didn’t.  But first I want to directly quote a review I got for the game on Newgrounds:

I was frustrated at first, I had no motivation to explore. Then I found the first pedestal (orange), losing the respective shield and was impressed with what I felt. The feeling of sacrifice I supposed to feel became a little too real…no game has ever really done that for me. I remember smiling as I realized what I felt as I looked at the green pedestal thinking, “Am I ready?”. I don’t think I have been motivated by sacrifice in a game before. Its the act of giving away a piece of me (unlike most games where you just die and restart) that made me feel like I HAVE to accomplish something.

Good work. A little unexpected greatness. Its nice.

I guess in the end the game was exactly what I wanted it to be.  A strange little world to explore.  A world that maybe makes you feel lost, and which makes you think about what you’re doing when you give up your abilities.  I’m hoping it’s a game that at least a few people remember, that’ll stick in their minds.  The shield loss mechanic, I feel, became a bit of an unexpected star of the game, with much of the level design revolving around it.  When I started the game, the fact that the edges of the world connect, and using this in exploration-based puzzles was the central idea, but it just goes to show how concepts can evolve thought the development process.  This sort of reverse-progression and giving up abilities is something I want to experiment further with in future projects.

The things I cut from the game are the sorts of things that tend to get cut in a timed competition like this: story, a portion of content and a level of polish.  But I think the core ideas of the game still shine through, and because of that, I think of the game as a success.

-Alec

Bronze Coolness Achieved!

My hats really go off to the people who are able to play and test 100 games.

I’m sure there are lots of folks that are trying to rate quickly, but as for me, I put a lot of effort into my game and I want everyone to take a few minutes with my game, so I’m putting a lot of time into everyone else’s games. 10 – 20 minutes each.

Rating 50 games was more challenging than making a game in 48 hours. It takes a lot of mental stamina to break down a game and critique it 100 times over. The first 25 were pretty easy, but after that each game seems to be a slug-fest to my brain.

Hats off to Gold Coolness.

Comments

27. Apr 2012 · 16:31 UTC
Yeah know what you mean… it does take a while. Usually for me I put in as much effort playing a game as is directly proportional to how much effort was put into making the game. Good quality games that are deep and rewarding I play for longer.
27. Apr 2012 · 17:13 UTC
So true, I am literally wiped out from all of the entries I’ve played / rated! I definitely try and get to the end of all the games I rate. Granted, this is easier to do on the games that are done really well!
Canard Sauvage
27. Apr 2012 · 19:23 UTC
Totally true, I played every evening since the compo and have only finished to rate like 40 games, :)
Milo
28. Apr 2012 · 00:52 UTC
I’ve been playing a few games every day – I’m up to 25 or so. I figure if I keep doing 3 or 4 a night, I’ll get to 100 (don’t check the math on that though. I don’t think it works).

Art/Story: The Two of Us Post Mortem

First time entering ludum dare, first time having mostly completed what we set out to do, and first time working with someone else on a project (Eugene Paik aka Ekun on Code and Sound).

Preparing
A month ago I wasn’t even thinking I was going to enter Ludum Dare. I wasn’t much of an animator but I started practicing then and regularly. This was the first animation I did:

I was very happy with it, and enjoyed animating alot, finding that it really wasn’t as difficult as I thought it would be. That animation took maybe 2-3 hrs which is a full animation set of actions. I saw the possibility of actually completing a game. After I tried picking up the pace and made several animations with just the rectangle tool:

The quality didn’t matter, but having a smooth animation that translated at least, and that I could push them out fast. The rectangle tool was more of a stylistic choice as a larger brush would of been faster, I found this out during the competition :p

After a week of this, I felt I was competent enough to work with a developer and found several who were interested. Then I heard of Ludum Dare 23 coming up, and thought why not – posting in a thread if anyone would want to work with me. Ekun was the first to reply. We tested the water before LD the weekend before, and started working on a sci-fi platformer:

We didn’t get very far and decided to relax before the competition.

The Day Of

Mopping the floors I hopped on the sluggish internet at work and read the theme, which made me grin – immediately thought it was an awesome theme. The first thing that came to mind was The Borrower Arriety by Miyazaki based on the novel The Borrowers. The second thing was a world with the population of two. The hero and whoever may have been the antagonist.

The Antagonist

I opted to flesh out the second idea more on the bike ride home, the antagonist would wear various guises say the merchant which swindles him into buying a crappy sword, or the old hag that points him in questionable directions, and the various boss forms that appear in the final game. For whatever reason the design in mind for part of the antagonist looked like Ozu from the animation Tatami Galaxy, specifically his sinister smile and mischievous ways.

Dark to Light
It was a long bike ride :3 at a certain point the premised changed to instead of hindering the hero, aiding the hero. It was going to be a story about a king and his son the prince. The king kept it a secret that they were the only two people around, but the prince became curious of the outside world. The king made up his mind to lead the prince on an epic journey, playing all the characters the prince would meet and fight along the way.

Finally I made it home where Ekun was waiting on me to discuss different ideas. He’d already drafted a list which none of them he felt that strongly for. We narrowed the list down, but ultimately concluded to go with the king and prince idea.

We collaborated on a design doc on google. Initially we had a handful of characters, and bosses that would appear and levels that culminated in boss fights.

We then went to work. I’ll leave Ekun to write about the coding side of things if he chooses to. I immediately started work on the protagonist, a pantry clad hero:

I had in mind a world that looked much like the set of a highschool play.

12hr mark: Back to Dark again
Feeling uninspired the next morning, I spent mulling over the details of the world. I tried mockups, but nothing felt right. Ekun had a school project to be doing. I took a break and met up with a friend discussed some of the ideas that we had floating around.

I decided it would be better to go back to the original design of the mischievous antagonist. We also felt it was necessary to lessen the scope, take out the levels, keep only boss fights, inorder to focus more on a solid polished experience. This is what came of it, either by way of magic or by imagination (it’s not exactly apparent in our entry) we see two brothers play out a story together. One brother likes playing the hero while the other likes playing the villain. To keep more within the theme of the compo, the foreword introduces them as two brothers locked away in their rooms for all eternity.

Being that the other brother would play all the villain parts, I wanted that to translate in the design. I decided that sinister wicked jagged smile would appear across all them along with the green skin:

Unfortunately there wasn’t enough energy/time to get the original dark knights design into the entry, this will change (likely will not look like that either).

As for the background:

It’s obvious to note it’s a child’s bedroom. Along with each boss fight the theme of the bedroom was going to change but again there wasn’t enough time. The sinister smile (yes the hotdog in the beginning too) appears throughout the game and in the background, the door foretells the battles to come.

Where this project is going
It all started to come together in the end. I played bits and pieces, but never the full experience. We felt both tired and jubilant at the same time when we submitted the entry. At that point I finally had a chance to play it. And I got my ass whooped by the first boss. I liked the challenge a lot. And as most people will find, that the challenge spirals downwards haha.

We loved the project so much that we plan on working with it more, adding additional boss fights, elaborating on the story, and the artwork. So look forward to that.

Thanks to everyone who’s played, and if you haven’t you can play it here:
The Two of Us

Post more Them!

Hi, we are Them Games. In this post, we’re going to make a lot of bad jokes and take you through our thought process for the design of our entry: Poiesis.
We are a 3 man team, on our first Ludum Dare, a game designer, a coder, and a… What the heck do you do again Claude? Well, he does things for sure, including being a researcher in physics and coding and he handling production and… things…
Charles does code and research in Evolutive Artificial Intelligence and Oscar, does game design and makes smoothies for the coders. He’s also an art counselor in Paris.

happy coders are happy

 

Add to that a fourth dood, friend of ours who did the pretty neat music you’ll hear in the game, his scene name is Humbert Humbert and you can find those soundy things he makes here.

The Jam started at 3am Paris time, we grabbed the Theme from iRC and started thinking. In itself, thinking was already kind of a first for us, we don’t do that often.
We started by dissecting the theme: Tiny World… First it wasn’t Tiny WorldS so we kind of scratched ideas about a multitude of worlds. The richness of the game would have to accommodate for more than one world, but no swarm of worlds for us, or at least, no gameplay focused on how many worlds you can create / destroy / have sexual interplanetary intercourse with.
Then, what’s a world: you could think in terms of game levels, but it seemed really too evident and probably too self-referential to the world of games to go for Mario and then make the levels tiny. We decided to go for worlds as planets.
Tiny was really the key part, what is tiny? Well, small things… And we were not the first ones to think of that: shortly after the start of the compo, Ludum Dare released on the official twitter the famed scale animation. If you look at it again and imagine the sheer magnitude of the variations in scale, there is only one conclusion : WOOOOOOOOOOOAW things are soooo biiig and so smaaall…

 

it’s a small world after all, it’s a small world after all, as demonstrated by the planisphere standing by our coding table  for 72h

 

What we took out of our first hours of discussion was simple: as Claude elegantly put it “Scale is a matter of perspective, and so it’s not really about how big or small things are, but how they are perceived in their respective size.”
From then on, we scratched the ideas we had had of a platformer with big or small characters, too hard to fit in the theme in our minds without going for an entry that would have been completely thematically disconnected while trying to artificially cling to the theme with graphics and narrative.

 

Now Oscar, being the game designer he is said “but things don’t only have to be tiny, they need to feel tiny, in every aspect of gameplay. Graphics are secondary in the matter, we can always make things look small by drawing a big tree nearby”. The idea then came of a tiny world that you had to do things on but that felt so minuscule that you couldn’t really manipulate it… It had to feel so small, so fragile that anything could break it. The concept of the game was born: the player is somewhere between a jeweler and a surgeon, a scientist and an artist, who has to manipulate things around his tiny planet.
Now the idea of making a quick game and then using the rest of the weekend to go outside and play hide and seek naked in the rain conflicted with the idea of getting a lot of people to have a good time and get to know us as game makers. But while we do seem to have problems with our manhood (according to the amount of spam we get for Scottish penis enlargement kilts) and would love to compensate that by making Call of Duty 5, seventy-two hours is not a lot, so the aim was to strike the right balance in the scale of the game.

 

Watercolor assets in the making.

 
Note how at this point, Oscar made sure to stop the game design process. Why? Well let’s ask him:
Hi, I’m Oscar; I’m a game designer with Them Games. Now what I really needed to start with is not game design, it is systemic design. You create a model, a small world, with its rules that you can tweak and its ways you can try. Once we’ll have our first prototype, and I can try a few things in it, I’ll be able to listen to where the game itself wants to go, what kind of directions can be followed and what fun can be had.

 

It was then time to talk about the Art Direction of our game. Oscar went in the next room and came back with surgeon tools of his grandpa that were actually used in the 1940s, for the aforementioned grandpa was a doctor in the second world war. Yeah. For real. Yes. We know, we have actual historic WWII tools in our game, how badass is that?
He came up with the idea of mixing watercolor painting with photographic elements to give a real look to the game: the rust, the grit of the tools were to convey their real human scale, while the size of the tiny world, compared to those, was to feel minuscule when seen alongside the photographs.
Now at that point, Charles thought the photos thing would not mix well with the rest, and he took a very important and hard decision: despite his judgment and his gut feeling, he trusted Oscar to make the right decision, which was a blind bet on his part, considering he had to wait no less than 24 hours at least to feel confident that he had made the right choice. Knowing your friends, their strengths and learning to trust them when on short projects can save a lot of time.

 

Poiesis, feat an actual artist!

 

From then on, we started jammin’, yeah jammin’, jammin’ in the name of the Lord…
All the difficulties and technical mishaps, as well as all the menus and recipes we cooked will be detailed in a further post if this one gets some cheap laughs.

In the end, we ended up with an unfinished game, which is, with every hour that passes, closer to being a more polished, better refined product that you will all get the chance to enjoy, but in the meantime, why not come by and drop us a line in the comment to tell us what you thought of Poiesis, our Ludum Dare entry in its unfinished state? And if you like it, be sure to try the bugfree version!
Thank you for reading and thanks to the Ludum Dare guys for all the fun and emotions we had in such a short time. Thanks also to @YbouH for droping by to take photos and make jokes!

You can keep in touch with us via Twitter for now, and tweet us your favorite Little Johnny’s jokes @ThemGames.

5

This entry was posted on Friday, April 27th, 2012 at 6:08 pm and is filed under LD #23. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

C++ to JavaScript!? Unpossible!

Even I don’t believe it myself.

So I did a writeup about the blasphemy I did last weekend: Creating an HTML5 (JavaScript) game in C++. You can read it here:

http://www.toonormal.com/a-technical-look-at-c-gamedev-in-the-browser/

Also, there’s a newer “Post Compo” version of the game out now. There’s no new content, but it should run better for everyone.

NOOK - New Post Compo 60 FPS version

So ya, maybe HTML5 isn’t as good as Flash yet, but it’s getting there. :)

EDIT: Oops, Ludum Dare link is here, just in case you want to rate it: http://www.ludumdare.com/compo/ludum-dare-23/?action=preview&uid=19

Comments

mildmojo
28. Apr 2012 · 02:22 UTC
Every time I see one of these articles about porting a C++ game to JS with emscripten, I’m more amazed that it’s even possible.
Canard Sauvage
28. Apr 2012 · 07:22 UTC
I’m more amazed people are really doing this. I can only think about one reason: Because we can.
29. Apr 2012 · 02:24 UTC
In my case…..

1. Because to me working in javascript is a royal pain, I can fare more efficiently write C++ code than javascript as the language just “clicks” better for me (that and 10+ years of experience in it doesn’t hurt)

Faelanx Timelapse

Click Here To Play

I uploaded my timelapse earlier this week, but forgot to make a post about it! In it you can see from start to finish how Faelanx was made. If you haven’t played already, you can check it out using the link above. If you’d like to check out the timelapse:

Timelapse: http://www.youtube.com/watch?v=XXwljaGJuj4

I currently plan on finishing up all the things I couldn’t get in time and releasing a post-compo version, possibly with upgraded graphics. So if you’re interested, be on the look out for that!

Screenshots of the game:

Disregard All Humans: A Postmortem

So, since they’re all the rage now and my “conclusion” post right after the development time ran out was pretty short, I thought I’d do a more fleshed out postmortem, so that I could reflect on the experience so far, and put on (virtual) paper what I think I’ve learned from this edition of LD.

In case you haven’t played my game, you can find it right here: Disregard All Humans; I guess it’s a requirement if you want some parts of this post to make sense :P

Background:

So, my name is Sergio, and I’m a 23 years old Costa Rican software engineer getting his CS master degree. Even though I do enjoy them greatly, and I’ve developed a couple of demos throughout my career, I’ve never actually embarked on the adventure of creating a game, much less in 48 hours and all by myself! In January I participated in the Global Game Jam, but it was with help from a very skilled team which had let me to play to my strengths and just help out with development. The challenge a LD posed was uncharted territory!

Not satisfied with not having enough experience with 48-hour development cycles, I decided I would also learn a new programming language and game-making framework throughout the weekend: Lua and Love2D. I consider myself pretty language-agnostic, and since I didn’t really have experience in game making other than with SDL (and I knew I wouldn’t finish in time if I went with that), I decided to take a risk and after browsing around I settled with those two tools as my weapons of choice. I set up a new github repository with a mostly blank Lua file, and waited for the compo to start…

The theme:

“Tiny World” wasn’t exactly the theme I was expecting (to be fair, I wasn’t really expecting anything. I’d glanced at the final round of voting, but didn’t think much of it trying not to settle on anything before the theme was decided); I spent around 2 hours thinking about the theme, throwing ideas around with my girlfriend and brother, and that’s how we came up with the basic idea I would pursue, to which the finished product is actually pretty close.

I figured many people would think of the “oversized character moving around a tiny world represented as a circle” mechanic (and I was right), but I figured the specific “destroying cities, eating humans” gameplay would be unique enough to differentiate my game from others, and this being my first LD, it seemed simple enough to be finished by the time the compo ended. I was clear in that I wanted an intro an ending screen to go with the game, and an arcade-ish feel for the actual gameplay.

I was pretty happy with this little "collage" I made, showing some of the game's different states. Even though it wasn't a conscious choice, the game looks pretty cartoon-ish, doesn't it?

What went right:

Mostly everything. Using Lua and Love2D allowed for me to do very rapid development; Love2D being insanely intuitive and straightforward, and Lua having a syntax as easy as a syntax can be. I chose Geany as my IDE, being my usual choice for mostly everything I do, and I couldn’t have made a better choice.

From there, I went at a pretty stable pace; by the end of the first day (7PM-1am) I had a main character who could walk and jump. By the end of the second day (6am-10pm) I had all of the game’s mechanics implemented and working, and that allowed me to focus the rest of my time on a title screen and an ending sequence, which I think gave a nice level of polish to the final product.

Regarding graphics and music: I’m no artist. Graphics were made with Inkscape which allowed me to do clean vectorized assets that at least looked consistent, while the music and sounds were auto-generated and modified slightly using Autotracker-Bu and sfxr, respectively.

What went wrong:
I don’t think I regret many of my decisions. I should have asked for more feedback from people so that I could realize that bullets being fired from buildings had a sort of “cheap shot” feel to them, and I should have considered shrinking buildings along with the world to make it feel more like the main character was growing, and not that the world was shrinking.

Regardless, considering life got in the way of my development time, I don’t think I could have squeezed many more features before it ran out. I think the scope was just right and I planned ahead well enough to get things done by the end of the 48 hour limit.

Conclusion:

This being my first LD and arguiably my first finished game, I’m extremely proud. It’s gotten a really great reception and received more attention than I could’ve asked for or remotely expected. This has given me a “developer high” and the crave to learn more so I can get better results on my next entries (currently learning HTML5+js); LD is a remarkable testing ground.

Speaking of which, I’d like to add that an unexpected and yet awesome part of this whole experience has been the time after the 48-hour limit. Rating games and getting your games rated by other, waaay more experienced developers from all around has been amazing, and the good reception my game’s had has proved to be a huge ego boost :D

All in all, a great experience, and I’m already looking forward to the next LD!

Crashed on Planet Minutiae: Post-Mortem

Now that the dust has settled, it’s probably reasonable for me to write a bit about the development process of my Ludum Dare Jam entry, Crashed on Planed Minutiae.

I wrote this game using ClojureScript, a variant of Clojure which compiles to JavaScript. For the unfamiliar, Clojure is a dialect of Lisp which runs on the JVM. Barely one year old, ClojureScript is an extremely new language, and when rushing to complete a game, it shows. For the first 24 hours, my development was fraught with regular (every twelfth build, oddly enough) compiler crashes due to an undiscovered memory leak. The JavaScript interop was shaky (but has already improved to address issues I faced during development), and some bugs in my code took a very long time to track down.

That said, I’m happy with my choice. It allowed me to write the logic for the game at an very high level, including writing a (very) small domain specific language for generating random levels. The compiled code ran quite quickly, and I didn’t really have any performance issues with it (that said, the game runs at 30fps, and not at 60 like I would have liked. I attribute this to my reckless calls to the canvas, more than to any fault of ClojureScript). I was able to write a couple macros to ensure that my canvas stack usage was always valid (every call to context.save() had a matching call to context.restore()), and to ease some of the burdens of the canvas’s API. Once more of the quirks with ClojureScript are worked out, I’d recommend it to anyone.

More detrimental to my progress as a whole than the language I used, was the fact that there seems to exist no good tool for writing canvas paths. My process involved tweaking lots of numbers, much guess and check, and just ditching things that I couldn’t make look right. THis, more than anything else, was why I ended up entering the Jam as opposed to the primary competition itself (that and poor time management, of course)

The game itself is somewhat neat, it’s a top-down adventure game, I wish I had time to add more features. Originally my plan was to have beasts rise out of the ocean and attack you as you harvested the crystals. You would have also gotten a blaster, to fight them off (in fact, the dialog still says that you do get one, but it does nothing). I would also just used HTML for the minimap/health window. Much more hassle than it was worth, and for no benefit.

Overall, I count it a success, even though I wasn’t as excited about my product as I had last time I entered (which had the benefit of being my first game as well).

how do i devlogged?

(This is a cross-post from my devlog on tumblr.)

Ludum Dare 23 is over and my game has been submitted. It was a crazy 3 days of … crazy, and the most fun I’ve ever had making a game.

However, I wasn’t really done with my game. I had something playable, but I felt like I could actually make a feature-complete space-exploration game out of it.

So I decided to continue working on it.

Thus begins the devlog of the “final” version of μniverse.


If you’re here, I’ll assume you have already played the pre-alpha or Game-Jam version of the game and are familiar with what it is. If not, or if you want a refresher, check out the About the Game page to get a run-down of what μniverse is and will hopefully become.


Unfortunately, right now I’m in the process of cleaning up and organizing the codebase (one giant CoffeeScript file), so I won’t have much exciting stuff to report until I’m happy with that, but in the meantime, if you think this might be a game that catches your fancy, you should +follow me here on tumblr, or twitter, or github.

Tags: devlog, muniverse, post-compo, post-jam, space, space game

Planet Concept #1

(This is a cross-post from my devlog on tumblr.)

This is a concept image for a procedurally-generated gas-giant-like planet in the game.

Right now, planets are rendered as a single circle filled with a radial gradient that is offset from its center. This is pretty effective for giving the illusion of a sphere, but it’s a boring non-textured sphere.

Currently what I’d need to add to the game would be an extra layer or two of inverted radial gradients for “atmosphere effects” (the blue lighting) and an overlay texture that is either canned or also procedurally-generated. When I figure out how to do this I’ll make a technical post explaining my technique.

Oh and yeah, I realize that the lighting is unrealistic — gas giants have clouds that align perpendicular to their axis of rotation, which corresponds to their axis of orbit around their star. Unless the axis of the planet got thrown off bigtime — which does occasionally happen with planets like Uranus — it doesn’t really make sense. Our camera would have to have been rotated, too.

That reminds me; while I wont be going to great lengths to make the game universe realistic, I’ll try to keep them somewhat-correct. More on that later.”/>

This is a concept image for a procedurally-generated gas-giant-like planet in the game. You probably see this dude over on the left right now, too, but I wanted to talk briefly about it.


Right now, planets are rendered as a single circle filled with a radial gradient that is offset from its center. This is pretty effective for giving the illusion of a sphere, but it’s a boring non-textured sphere.

Currently what I’d need to add to the game would be an extra layer or two of inverted radial gradients for “atmosphere effects” (the blue lighting) and an overlay texture that is either canned or also procedurally-generated. When I figure out how to do this I’ll make a technical post explaining my technique.


Oh and yeah, I realize that the lighting is unrealistic — gas giants have clouds that align perpendicular to their axis of rotation, which corresponds to their axis of orbit around their star. Unless the axis of the planet got thrown off bigtime — which does occasionally happen with planets like Uranus — it doesn’t really make sense. Our camera would have to have been rotated, too.

That reminds me; while I wont be going to great lengths to make the game universe realistic, I’ll try to keep them somewhat-correct. More on that later.

Tags: concept, graphics, image, muniverse, procedural generation, space

Comments

Chinchilla
03. May 2012 · 07:25 UTC
Hi, I really really like the look of this, hope you keep it up!

Through the Blue Sea Postmortem

Through the Blue Sea is my entry for Ludum Dare 23, its a small randomly generated abstract platform game. You goal is to pick up all of the yellow pips, without falling off the tiny world. You can grow larger by eating the asteroids that fly in, if you don’t eat them then one of your platforms will be destroyed.

 

What Went Wrong:

> The Theme, on my blog I outlined the themes that I hoped would win, and Tiny World was not on of them. It took me the first six hours (Friday night for me) to come up with an idea for a platformer set on a tiny world, and then I wanted to scrap the idea all weekend as I found it an incredibly uncreative game.

> Time during the weekend, I knew going in that I would have limited time during the weekend, as I had a job going on.  This coupled with the theme, led to even less inspiration when it came to finishing the game, and more procrastination.

> Scoring, there was a point Saturday night, when I was working on the online high score table that I wondered how scoring was going to work. So I took a few minutes and decided to leave it really simple, so each pickup represents one score. Looking back now, It doesn’t give me the variation I would like to have.

> Level generation, I decided to randomly generate the play field and about half of the time it generates impossible levels. I knew about this the entire time, but decided it would help the lacking score system. Now that I have had about a week to think it over, I wish I had made it generate levels that could always be completed, or that I had added a pickup that ended the level.

> I found myself lacking a couple programs that I needed, I was using a new laptop this time, and hadn’t installed python yet, and I needed VLC. It didn’t take much time, but it would rather have already known what I needed and had it installed before hand.

 

Timelapse Video:

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

 

What Went Right:

> The character, I am glad that I changed it back to a square and just added a face to the square, it fits more with what I am interested in. The first character sprite was an odd Llama Elvis creature. but I ran into issues with collisions, and it didn’t really fit with the background or platforms.

> The planets, I knew from the start that I wanted to use colors once again, the colored planets in Through The Blue Sea represents the difficulty of the generated levels (based on how many pickups, and how many platforms). So a Cool color (Blue and Green) are easier than the warm counterparts (Red and Purple), and Yellow is somewhat neutral in that it has quite a few platforms, and a bunch of pickups.

> Sounds, some people in the comments have liked them, most have hated them. I personally think they fit the strange, wierd style I was going for with the game, I mean just look at the character expression:

 

> Music, I once again used a python script to generate music, and it once again performed perfectly…After a few generations anyways. I then used VLC to convert to mp3.

> Online Highscore table, when I first started I didn’t plan to include one, but on Saturday I had about finished the game, and still had over 36 hours left. I made a online highscore table for my last entry (Alone in Space…) and made one for the final version of Untitled. So writing one wasn’t a big deal, in fact it only took me a half hour to have the basics working. Then I decided on how many score pips for each world and secured the highscore table using the maximum (So for the Red planet that has a maximum score of 8, any scores submitted higher than 8 are ignored)

 

Gameplay Video:

http://www.youtube.com/watch?v=6-jMNjRN77E

 

What is Next:

I don’t plan to do much more with Through the Blue Sea, but I do want to release a Post-Compo version that adds a better scoring system. The new scoring system would be based on a multiplier bonus, you would have 100 seconds on the clock and finishing before 0 would give you a bonus. My first idea would be to make asteroids give you a multiplier, so catching more asteroids and finishing faster would give you a higher bonus. But I am not really sure what it will be like until I do it, and it will most likely be another week or two.

Tags: construct classic, gameplay video, postmortem, timelapse

Bright Worlds Postmortem Part 2 – Right and Wrong

Let’s start off pessimistically. What went wrong??

I’ve been thinking for a bit about exactly what went wrong with Bright Worlds. It’s incredibly tempting to claim that the things that did go wrong were out of my control or would have happened to anyone, and at first I did think that this was the case. But after more consideration I started to think differently.

What went wrong.

  • Lack of planning.

This was it. The killer. The big secret to Bright Worlds is that I actually did not design any levels or have even the foggiest notion of what they would be (apart from involving light and dark, of course) like until about 5 hours before the competition was over. I spent the 6th to last hour brainstorming every level design that currently exists in the game. Just for funzies, I uploaded some pics of my notebook where I did this. 

This is what sleep deprivation does to you.

The last 5 hours were a mad rush to implement every one of these maps.

Hah! I bet I tricked you. It turned out that that mad rush was actually totally fine. I managed to get all of those levels in the game. No sweat. I’m a baus. The big problem, though, was that this lack of planning really affected what I had done in the last 1.5 days.

There was a disconnect. I had wasted a ton of time on features that I simply didn’t end up using – what a disappointment. I had sweet particle effects. I had mirrors that would reflect light in interesting directions. I had another enemy type.

On the other hand, when I did the level design I realized that I was going to need some features I didn’t have – particularly glass, a patrolling enemy, and a few other things.

A clear lesson has been learned: A solid starting plan will keep everything in order.

Another thing I did wrong, similar to the first.

  • No prioritization.

My game is all over the map in terms of polish. I have that really sweet effect where the sound gets masked when you go into darkness, but controls are clunky. The raycasting and lighting effects look really good, but block movement is only in 16 pixel increments, which a lot of people called me out on.

The reason for this is very simple. When I was keeping my LD todo list, I didn’t have any system of priority at all. That meant that the things that ended up getting done were pretty random. I would just choose something on my list and do it. Now that I’m writing this out, it seems incredibly stupid, but it was true! Later on (last 8 hours) I started to catch on that something was up, and I starred each item from 1-5 stars, forcing myself to work on higher stars before lower. This was a lot better, but it was a bit too late for me to really gain the benefits of this approach.

When I look back on my previous LDs – particularly LD19, as LD21’s notes are sadly lost to me – I had used a website called Workflowy which allowed me to take hierarchical notes and write notes under notes and remarks to myself and stuff like that. Another big benefit of the website over the notebook that I used this time was that when you turn the page of the notebook you’re very likely not to turn it back. This is not really possible on a website, since a page can just keep getting bigger and bigger :) I think in the future I’ll use Workflowy again to plan out my game.

Lesson learned: Prioritize your notes. 

Final thing.

  • Less features, more polish.

I don’t know if anyone is keeping track, but the number of features in my games has been growing exponentially.

LD19:

  • Jump bar
  • Dark world

LD21:

  • Escape / Enemy Avoider
  • 1 Enemy type
  • Dead Body Dropper
  • Boss

LD23:

  • HP Bar
  • Sanity bar
  • 3 enemy types
  • Radial light
  • Beam light
  • Gun
  • Pushable blocks
  • Powerups and health balls
  • Heck, I even had a particle engine and mirrors. They didn’t even make it into the game.

This is absurd!!! Honestly I don’t think anyone even cares about the number of features you have. I think they care more about the polish – it’s easier to immediately see. If you look at the really strong contenders this time around and just count up features, I probably have more, but my game is not nearly as good.

Next time, I’m going to dial down the features and instead work a lot more on polish. Cute animations for everything, nice parallax moving backgrounds, etc. It’s going to be a thing of beauty, I promise you.

Lesson learned: Never underestimate how important polish is, and how important features aren’t.

 

This has been really pessimistic so far, so I’ll pat myself on the back for a bit here. Things I was happy about with this game include:

  • The art. I did significantly better than my last two entries, and I was really happy to see that pan out. (I think I can do even better though :) )
  • The music. This is the first time I’ve had people take notice of the music in the comments, and that’s totally awesome!
  • The last two puzzles. I’m not going to spoil them, but I was particularly happy about how they turned out.
  • The overall product. As much as I bashed myself up above, I really do think that this was one of my best games I’ve ever made, and even though it’s flaws it’s definitely my best entry to LD.

Thanks for reading. Here’s a link to the game – check it out!

Comments

azurenimbus
12. May 2012 · 21:10 UTC
Nice post, and nice game. :)

Burning Platform : Post-Mortem(-ish)

==============================
==============================
Play Burning Platform
==============================
==============================

:: In the Beginning ::
Before Ludum Dare 23 commenced, I knew that I wanted to make a mobile game. I firmly believe that mobile is going to play a strong role in the future of games, and that the possibilities offered by the devices themselves, given their typical assortment of sensory input and output mechanisms, offer the chance to give gamers experiences beyond those that they’re used to expecting from a “game.” One of my goals was to create an experience that literally would not be possible on a general purposed computer. This means using something like the accellerometer, the magnetrometer, voice input, something really unique.

The question in my mind was whether I was going to use Unity3D as my dev environment, or go native. I’d already used Unity for my last Ludum Dare entry to relatively good effect. At the same time, I felt as though I wanted to broaden my toolset a bit and step out into the world of native code. I chose Android for several reasons.

  • I own an Android phone and an Android tablet, so device testing wouldn’t be a problem
  • I wanted to actually put the app on an app store as my distribution channel (even though the app is free) and Google has virtually no red tape, and instant availability compared to Apple in this respect.
  • I currently know Java better than I know Objective-C

At first I wanted to do something really avant garde, and to do it with the traditional Android interface platform using xml view layouts and a little bit of Java glue to make it all appy-but-yet-not-appy-and-actually-a-game. I still think I’ll do this, as the idea really appeals to me. What pushed me in the direction of Burning Platform though, was my purchase of the Asus Transformer and the discovery that some people who had been stricken by sheer insanity decided to write a Java IDE and compiler for making Android apps on an Android device. The tool, AIDE, is a relatively nice Java environment. It seemed totally usable as a code editor, and the dropbox integration was a nice touch. What it did not have though, was an XML interface gui tool. This put the kibosh on my plans to make a more traditional app, but opened up the way to making a more “traditional” game.

I set about transcribing, page by page, from Mario Zechner’s “Beginning Android Games” book, and seeing just how the compiler would fare with his bare-bones game framework. It turned out that the Transformer and AIDE work fairly well for this. Originally I had planned not to use any framework at all, but the time it took me to transcribe Mario’s framework convinced me otherwise. I decided to just use that (as well as some particle effect code that I played with as my test bed) as my base code as mentioned in my “I’m in” declaration.

I was convinced that while I could make a nice game with just the basic get/set pixel calls and nothing but colors, that aside from the technical achievement of making a game on such an exotic workstation the game itself would be rather bland. Fortunately one of my coworkers found and pointed me towards some of the apps that I ended up using to generate graphics and sound for my game. With art, music, sfx, and sound file editing tools all sitting on the tablet, I felt like I actually had a chance to make something halfway decent!

:: Ideation ::

I have to say that this theme was sort of disappointing to me. It wasn’t very inspirational, and I wasn’t sure the ideas I was generating were particularly novel or good. I thought possibly about making a simulation game where a nobody from a small town tries desperately to escape from his tiny world and get into the big city, but I didn’t really want to write up a full storyline for it. Then, like several others, I thought about making a planetary based game, but after two hours of prototyping I wasn’t happy with the way the idea was shaping up and I wasn’t having any fun with it. That’s when it hit me :: A small “world” that shrinks over time, not that you are trying to escape but that you are desperately trying to stay inside of. A mobile device is perfect for this concept, because these devices have accellerometer input controls that let you tilt and sway the device in order to cause reactions in the game world. It’s a game that literally could not be made for your computer or your laptop, which was one of my big goals in the making of Burning Platform.

My original world design had (what I thought to be) a more “earthy” feel. I wanted to have a sort of geographical landscape that shrank away from under you. Unfortunately, when I showed the prototype around, that wasn’t being conveyed by the art. People didn’t recognize it as being much of anything other than a mass of muddy colors. That’s when I knew I had to change direction and make the “world” nothing more than a “platform”. This then brought to mind that perhaps the platform is shrinking because it is burning away under you, and so I added the glowing red effect to make this apparent.

Further volunteer feedback suggested that simply keeping the people on the platform wasn’t quite compelling enough, so I decided to add some pickup items as well. With items that can stop the burning, rebuild the platform, and let one of your guys escape, this gives you something to do other than just try to keep balance.

In the end, the game seems to have turned out to be rather fun, if a bit insanely hard. On the other hand, I believe in making games that are easy to get into, and easy to start over from, so the cost of dying is small. This encourages creative play and experimentation in strategy.

So, what is it acually like to code and create content on an ASUS Transformer tablet?

  • You miss the screen real estate of a dedicated workstation.
  • You LOVE the fact that you compile the application and it’s right there, without waiting to push to the device
  • You LOVE that it cuts the emulator out of the question entirely.
  • You really wish there were a better way to keep tabs on logcat than to exit your app.
  • You can’t just watch logcat it scroll by as you play with the application.
  • Logcat now has a much more limited number of lines of text that it hangs onto.
  • No photoshop obviously, but all I need is a paint equivalent, and Pixelesque is a relatively nice one (but with serious limitations)
  • Plasma Sound is FUN to use, and FUN to make sound effects with.
  • SPC is FUN to use and FUN to make loops with. Seriously I love my soundtrack on this game.
  • One thing I could not do on the Transformer was generate a keystore in order to “sign” my game. It’s a bit of Google-required paperwork that you must do in order to actually distribute your app on their market.

:: What could have been better ::

I mentioned that I used the engine from “Beginning Android Games.” That was serviceable, but it was lacking a few things that I really would have liked to have available. Some of these were things I found before the competition, like the fact that Android devices do not treat accellerometer input consistently, and that one must correct for it if one wishes to use it in a game. Of the remaining issues, most of them I was able to hack in during the competition, though I wished I didn’t have to.

The line drawing mechanic, of putting a wall in front of your friends to bounce them around, didn’t turn out as I’d hoped. The walls don’t live nearly long enough to be very interesting as a mechanic, and I ran out of time to really think about how to solve the problem. Now that the pressure is off I think I have a good solution, but because I am distributing the game solely through Google Play I won’t update the compo build until after judging is over.

:: In Total ::
This experience was great fun. Truly, I did not have any expectations that the game would turn out as nicely as it did even a week before I started on it. The abundance of tools, and the horsepower available to even my older model Transformer were all I needed to make a functional and engaging game. I would definitely do this again.

==============================
==============================
Play Burning Platform
==============================
==============================

Post Mortem : Magic House

This is my first time I participate in Ludum Dare. I have never made any games in such little time, but I’m glad that I got my game finish in time and take part in a contest which has 1400+ entries.

This is the link to my entry, Magic House, : http://www.ludumdare.com/compo/ludum-dare-23/?action=preview&uid=12912

After completing my entry and submitting it to the site, I found a few good things and bad things that happened while making it.

What went right :

–     I got the models, game-play, level design completed the way I want it to be.

–     The models aren’t bad. They’re sort of acceptable.

–    Scripting went smoothly. There aren’t so many bugs going on.

 

What went wrong:

–    Run out of time : Though my entry is Jam but I didn’t have 72 hours to work on it. In fact, I had only less than 48 hours.

–    I planned to have too many models in the scene. I don’t want players to see the same objects every single level. And since I’m not entirely a great modeler, modeling part took lots of time.

–   No audio : I always have problem when it comes to making music. I have never worked on music before, so this part is kinda tough. Not mention, I had no time left to work on music.

Though there are lots of mistakes within my first Ludum Dare, I’m glad that I take part in and learn about time management. I’m looking forward to join LDD again next time.

 

 

Comments

28. Apr 2012 · 06:48 UTC
No, not mistakes, just opportunities to apply what you learned from this LD to future endeavors! Look forward to seeing your future LD entries 😀
vitou3d
29. Apr 2012 · 02:53 UTC
Yeah!

SlimeABug – Post Mortem

Last weekend we (ghoulsblade, hagish & SiENcE) decided to participate on this 23 Ludum Dare event. We choose the jam, because we wanted to work togehter in a team. Maybe next time a solo compo!? We had an post-apocalyptic idea in mind but the final theme was “Tiny World”.

LD23: started at 3am.
—————————
Apr 21 09:30:05
woke up at 7am
got my ipad
watched the theme
got scared
tiny 8-|
breakfast and desktop

Miranda -> IRC -> our privat channel -> moin ghoulsblade, hagish
theme: Tiny World
ops
tiny?
really?
yes.
lets think
do we have a git?
no
git init-db
tiled version?
o.8
ok!
lets start.
any ideas?
cockroaches/insects/bad mojo/ants/black&white/popolous/
what do you think of cockroaches, insects?
front yard scenario or dollhouse?
top-down graphic tiles?
nethack/rougelike?
roundbased or realtime?
random or handdrawn maps?
overlandmap or dungeon?
uhm.
ants and rougelike?
i dont see any gameplay
what about bite, lure, acid, …
ok.insects with abilities.
tunnels or overlandmap?
overland
ok.
topdown! it’s easier to draw for me.
again: random generated map or handdrawn?
i prefer handdrawn.good random is difficult!
what about random enemies?
in jrpgs i hate this.but sure, they will hate us.
cellar.house.garden
ok.
collision?
pixelbased or tilebased?
what about collision layer in tiled?
good idea!
tilebased movement?
no.please free in all directions.
resolution?
320×200
tilesize: 32×32
map viewport?
640×400
*2 scaled
=1280×800
ok.
AFK
re.
testmap is in git
thx.
map is loading

about gameplay?
hack&slay?
distance or melee combat?
melee
main char an Ant?
i dont know.
stag beetle / pill bug / spider?
what else is crawling on the ground?
maggots
Args.
no.
?
what about an shapeshifter?
here is my idea.
http://ghoulsblade.schattenkind.net/wiki/index.php/LudumDare201204#GAMEPLAY
yeah.now we have a compromise :)
lets draw something.
http://www.twiddla.com/820238
what color palette?
this one? 
ok.
i draw the ground stuff
and you the insects.
3-4 animation frames?
yes
the animation lib autodetects the horizontal framecount
oh nice.
my pc moans.reboot.
Python interface unloaded
Tcl interface unloaded
!?!
re.
.-)
supybot has joined
?
This command gives a useful description of what <command> does.
WTF?
please make all gfx powerof2
otherwise it wont run on old hardware (intel 😉
what about an alien slime shapeshifter?
sounds great!
alien slime and ant animation is up
git pull
nice.
name the collision layer “COLLISION”
and items “items”?
do we need items?
no.
k.
del
initial big map is up
home_sweet_home.tmx
120×120 tiles
this is huge
you can now switch f1=slime f2=ant
we need water tiles
because now i have sandpiper
wait i’m currently writing a LD blogpost
k.
working title?
“waterlily”?
Apache Ant
Happy ANT
http://www.ludumdare.com/compo/2012/04/21/happy-ant/
happy ant is good :)
we need a layer behind the player
ants now hunting the player alien slime
great process
here is a mockup:

alternative:

bedtime (Apr 22 01:34:00)
—————————

Apr 22 11:35:16
morgen
moin ghoul.
moin SiENcE
i’m currently integrating your grass
love2d-webplayer runs :)
great
can you test chrome?
it runs in chrome very well :)
thx.
shape switching keys 1-9?
sounds good.
what about the action button?
btw.  game name: ANThology ?
:)
TESound is working.
during breakfast i did a garageband track.
so ingame music is working.
what about soundfx?
later.
k.
respawning works.
healing also
writing the README
with some gameplay hints
in principle it’s an relatively linear puzzel/action game
with exploration components
we need an alien space ship
oh yes! i forgot.
i have to go.
for a walk in the park with my girlfriend.
uhm. 😉


the ladybugs are too aggro
yep. changing it.
i’m doing the titlescreen.
oh great.
i need ogg for the music.
it’s up.
thx.
i’m for supper.
i did it.
what? first time beating the game.
it needs polish.
sure.
we have all time in the world 😉
next blogpost is up: http://www.ludumdare.com/compo/2012/04/22/ant-hology-happy-ant/
i go to bed. cya
cya (Apr 23 00:15:51)

—————————

Monday…is working day :(

Apr 23 20:19:29
hy.
hi all.
we already testing the release script.
here are some nameing ideas: http://pastebin.com/AJMzqWsn
gardenshape *lol
we can take slime-a-bug
silme.a.bug?
SlimeABug
ok.
does the resolution fit?
scaling of 2
oh it’s smooth
we need the nearest filter applied
only a windows release for now?
win and source.
later macosx and webplayer
ok.
we need a schattenkind.net account.
ok.i’m creating one.
Entry is up 😀
oh well done!
Apr 23 23:52:13 <SiENcE> made me happy!
good night @all
thanks!
Apr 23 23:53:24 * SiENcE has quit


play.rate.here

 

hope you enjoy it!

have fun.
cheers

SiENcE

All chemical compounds of “Synthesis”!

Here the list of ALL 44 chemical compounds you can assemble while playing my LD entry,  Synthesis – with the points you’ll get for assembling them:

  1. hydrogen: H2 – 4 points
  2. oxygen: O2 – 4 points
  3. chloride: Cl2 – 4 points
  4. nitrogen: N2 – 4 points
  5. sulfur monoxide: SO – 4 points
  6. carbon monoxide: CO – 4 points
  7. hydrochloric acid: HCl – 4 points
  8. nitric oxide: NO – 4 points
  9. nitrogen dioxide: NO2 – 9 points
  10. sulfur dioxide: SO2 – 9 points
  11. hydrogen sulfide: H2S – 9 points
  12. carbon dioxide: CO2 – 9 points
  13. nitrous oxide: N2O – 9 points
  14. water: H2O – 9 points
  15. ozone: O3 – 9 points
  16. hypochlorous acid: HClO – 9 points
  17. chlorous acid: HClO2 – 16 points
  18. hydrogen peroxide: H2O2 – 16 points
  19. hydrogen disulfide: H2S2 – 16 points
  20. ammonia: NH3 – 16 points
  21. sulfur trioxide: SO3 – 16 points
  22. nitrous acid: HNO2 – 16 points
  23. nitric acid: HNO3 – 25 points
  24. chloric acid: HClO3 – 25 points
  25. formic acid: CH2O2 – 25 points
  26. methane: CH4 – 25 points
  27. methanol: CH4O – 36 points
  28. perchloric acid: HClO4 – 36 points
  29. sulfurous acid: H2SO3 – 36 points
  30. sulfuric acid: H2SO4 – 49 points
  31. phosphorous acid: H3PO3 – 49 points
  32. urea: CH4N2O – 64 points
  33. ethane: C2H6 – 64 points
  34. acetic acid: CH3CO2H – 64 points
  35. oxalic acid: C2H2O4 – 64 points
  36. phosphoric acid: H3PO4 – 64 points
  37. ethanol: C2H6O – 81 points
  38. glycine: C2H5NO2 – 100 points
  39. propane: C3H8 – 121 points
  40. propanol: CH3CH2CH2OH – 144 points
  41. butane: C4H10 – 196 points
  42. alanine: C3H7NO2 – 196 points
  43. butanol: C4H9OH – 225 points
  44. citric acid: C6H8O7 – 441 points

 

Tags: guide, synthesis

Bottlecolonies – A post mortem

So finally I’ve found some time to wrtite up my impressions of the past Ludum Dare event. As ever it was a big pleasure to participate and I’m really impressed with the sheer amount of games being made and the overall quality which feels a little higher than the last times.

Now about my game “Bottlecolonies” which you can play here.

The good

  • I finished everything I planned to minimally have in the game in time.
  • The creation of a windows executable with py2exe worked immediately this time, thanks to experience from past Ludum Dares.
  • I’m pretty happy that I really took my accoustic guitar to make ingame sound and music.
  • I managed to make a game with quiet a consistent style and feel due to the handdrawn graphics.
  • I’m totally happy with the game I’ve made. With my third LD this time I noticed how much my self-organisation and the outcome progressed from event to event.

The bad

  • I totally underestimated the effort even to record only a small music track with a real instrument.
  • There are still some small issues that could have been solved within time (especially some sort of marker where one builds).
  • To solve the challenges stated in the levels requires more training and strategic thinking than I expected. It’s the standard issue that usually the developer himself is the most experienced player of his game and tends to make it too difficult.

To sum it up

You can see I’m really glad with my LD entry this time. I’m very confident now with my tools (especially python/pygame) and know roughly how much time different steps in development needs and what I’m able to achieve in 48 hours. I think that is the most valuable experience you get from an event like this.

Already put a marker for positioning in the post compo version.

Additionally the reception of my game has been quite positive. Hence I’ll put some more effort in a post compo version which shall at least include:

  • A marker for the building position (done)
  • Additional music (one new track already recorded)
  • More levels
  • Highscores of past plays

As I’ve already written two teasers for this post mortem I’ll stop here and just give you a visual impression of the development details:

From first prototype to post compo - with handdrawn graphics and self made guitar music.

Want to try and rate ?

Tags: post-mortem, pygame, python

Tiny World Big War Postmortem

First LD done – game submitted. Well of course I haven’t implemented lot of ideas but the main idea is there. Endless waves of soldiers and player can possess one of them to help others. It’s more of a simulation than an actual game but we will get there :)

LD is great thing. First: you can try ideas you hadn’t time for. Second: I don’t feel pressure to do everything tip top as when I’m doing normal games(mostly ones that end up in limbo). There’s not much “ok now let’s rewrite it again adding bazzilion new features/cleaning” or “it sucks because is laggy/buggy”. It works == it’s good. Next please. So this is really about being creative and work fast which is great test of skills.

Things I “learned” / went good:

Time is of the essence. (always wanted to say this) This weekend I was kind of busy with some social activities – thus didn’t fit into 48h (btw it came out that suspiciously lot of my friends are taking lessons in sword/katana fighting – incoming zombie apocalypse or what?). Next time I will go off the grid for two days. But no regrets there because…

I submit == I win. I don’t see LD much as a competition with others. It’s all about fighting with clock/skills/monsters/ideas. Lots of people say “the failed” because their game is incomplete or drifted away from original idea. I’ve tried, I’ve learned. Those are things earned. No loss there.(oh yeah I like some preaching from time to time)

I love to code. Don’t know if I should share this but there were moments, rushes of code compiling into new features, that almost gave me a boner. Let’s hope my girlfriend won’t consider this as cheating(I know she won’t – she’s great). There is something about writing games that makes my soul smile. It’s like this feeling when you were kid and was unpacking new box of LEGOs but here you have unlimited amount of bricks and shapes. It gives wings. Also in narcissistic spirit I must admit that I was implementing things pretty smooth. Particles arrived in no time from scratch(they are total mess though) same with shooting and obstacles. But next time I will come with more ready blocks and focus on gameplay/logic.

Game development is about making lies. You don’t have to code things as there really are. They only need to ACT like they are “real thing”. Applies to physics, AI, general game logic. I remember in “Game programming gems” book there was a part about pathfinding in Total Annihilation. It was in old days, not so powerful computers. So while unit was computing path to given destination it was performing tricks: blinking lights, rotating turrets/body, releasing smoke etc. It looked great, making units seems to be more alive when in fact they were dead stupid and lying about it(like some Miss World candidates).
In my game there is obstacle avoidance. At first I was thinking about some A* pathfinding or sth like this. But then added simple “If(obstacle before you) go up/down for few seconds then check again”. It’s not perfect and would break with rotated buildings but who cares, right?

Details matter. Visually at least. Added particles and it was more alive. Blood, dirt from explosions, guns urinating, I mean shooting. The last one actually hides fact that soldiers are not really shooting bullets. Each few seconds they look for enemy and do simple luck test:
if (this.doYouFeelLuckyPunk()+0.3 >= enemy.doYouFeelLuckyPunk())
which compares sums of random roll, experience, cover, hits taken etc. Works right?

Artist is of the HUGE FUCKING essence. I don’t have fellow artist able to do decent game graphics. It shows especially with cars – yep those small obstacles are cars. But… but I was focusing on the code 😉 Anyway even small games/experiments with good graphics have better experience. I know that with great gameplay it doesn’t matter(old S.T.A.R.S. player here) but it adds a lot.

All you need is war

What went not so good and should be corrected next time:

Gameplay. There is none. There is no goal, no level end. I’d like to say I didn’t have time but it was more lack of idea what is should be. Ofc I’m still working on the game and have few concepts. So there is hope to end that battle 😉 With next LD I should have more solid/complete idea of gameplay before I start to code.

Graphics. They are programmer art and it shows. Next time I should go for some minimalistic/artsy style or team up with somebody. Or hire or bribe or kidnap one… but maybe I talk too much.

Sound. There is none. Haven’t time to sfxrize them 😉

 

Anyway I had great time. It was very refreshing and  energizing. Came up with few good ideas that I hope will be implemented soon and maybe released as a full game. Saw lot of great games that were very inspirational. Definitely will participate in next LD. So… sex, coffee and CODE ON!

PS: If you are an artist/pixelator and would like to work on this game please give me a note! [dx0ne monkeygoeshere laislacorporation dottery com]

Tags: postmortem

Some very polished Love!

5th day rating 10+alpha games per day, here are the highlights for today’s review session. Two games are very well fleshed out, and five of them, while lacking a bit in polish, make up for it with some very interesting ideas. If you don’t know what game to play next, check these suggestions:

Tiny World Cardgame — Card games are something we don’t often see in LD, which makes this game already worthy a look. It also features an awesome and very professional looking tutorial, and the ability to assemble your own deck. The rules for the card game itself are pretty simple, but allow for a lot of variation.


The Pioneer
— Easily my favorite game for the night. This is just a simple 2D platformer, but the levels are randomly generated from a seed entered at the start of the game. The difficulty progression seems very good, and the art is quite consistent through all the different assets of the game. A generally very well polished little pear.

Scavenger — A very simple and unpolished first time entry in the LD, but which contains the secrets to the ant nirvana. Can you unveil the path to this hilariously unintended bug? 😀

Tini World God — In this game you play with a star system simulator. Create a star, put some planets in orbit of it, and try to create life with them. Or just use your godly powers to blow up the planets into pieces! Needs a few tweaks here and there,
but quite a nice game.

Save your planet — Another “first time in ludum dare” game which performs well. A “defense” shooter, where you have to defend your planet from a variety of incoming enemies. The pacing and controls for the first few levels are quite fun, but the game does not ramp up the difficulty, so it gets a bit boring after 6 or 7 levels. Still, worth a try.

Atomic Galaxy Factory — An action puzzle game where you have to balance the construction of energy generators with the construction of walls to block such generators. Not only the game play and balance are rather nice, but the dressing of the game (you start at the quark level and goes up the universal ladder as you upgrade your pieces) is very enticing. You keep looking for finding out what the next upgrade level will be.

Tiny World Peace — This game is quite unpolished, but its premise is so unique that it is still worth a try. Three planets are at war, throwing bullets and missiles at one another – you control a moving shield, and you have to protect the THREE planets from each other, trying to keep the peace.

That is it for today! See you again soon, and feel free to plug your game in the comments :-)

Tags: game reviews, review

Unity Something!

 

Have you tried making a game with Unity, here’s a new monthly 14 day challenge to get you started.

Find out more here

Tiny Crash Landing – Postmortem

Here’s my brief Postmortem for my game Tiny Crash Landing.

Play the game Here:

In game screenshot of Tiny Crash Landing

 

This is my first game I’ve made for Ludum Dare! I had to be part of the 10th anniversary.

What went well:

Art – I spent around 5 hours the first day doing the main tiles and character art+animation. I used Photoshop for doing animation for the first time, it’s not that well suited to it, but I didn’t want to download and mess around with any new software. I’m quite pleased with the character and animation, especially since I did it in a few hours.

Music – I think I spent about an hour making the music and sounds. I’m glad I made the music before I began programming, otherwise I would not have had time for it at the end. I mostly randomised some notes and played around with SynPlant and added some filters and stuff until it sounded ok!

Sound Effects – I mostly used sound effects in place of proper presentation, since adding a sound effect is a lot easier than adding a proper intro/outro screens. The only difference between what happens when the player wins or dies is the sound effect!

Programming – I liked my decision to use Haxe/NME I haven’t been using it more than a couple few weeks but I think it’s very easy to pick up for ActionScript users. I got a lot of code written, but most of it wasn’t gameplay code.

 

What did not go well:

Programming – I completely ran out of time regarding the code! I probably spent around 3/4 of the time doing code, but didn’t really get enough done to make a complete game. I think the biggest problem was I was coding everything from scratch, so I spent most of my time writing a blitting renderer, collision code and a scrolling camera etc and not enough time on actual gameplay.

Missing Features – I had no time to add an options menu with a mute option, or reconfigure keys. I had planned on having enemies, that is why the guy can shoot, but has nothing to shoot at! I also planned on having procedurally generated maps that wrapped around, I also planned on having a minimap that revealed as you explored. Story was also a main part, but I will save that for the post Ludum Dare version.

 

Feedback:

I haven’t had a lot of feedback yet, but all of the feedback I’ve received so far has be very positive and constructive over all. I’m very pleased that people have complimented my art and audio!

 

What I would do differently next time:

Use a game framework, or make my own! I should have used a framework like Flixel or Flashpunk so I could focus on writing game code instead. My goal before next Ludum Dare, is to get familiar with Flixel/Flashpunk so I could use them in a 2 day jam.

 

Until next time:

I would like to work on a post Ludum Dare version of my game, with story, extra characters, proper procedurally generated maps, enemies etc.

Thanks for reading, now I’m off to play and rate other people’s games!

Tags: final, flash, haXe, haxenme, nme, postmortem

A Postmortem for Ludum Dare 23 Entry Full Circuit

Full Circuit, a game created within 48 hours for the game jam Ludum Dare, is a game about planetary voyaging, pseudo electrical circuits, and most importantly, brutal passive aggressive punishment. In the game, the character of Less Patters travels from planet to planet to restore electrical power by reconfiguring the broken circuits deep underneath the planets’ surfaces. The game is very similar to Sokoban, the Japanese crate pushing game. However, instead of having the final positions of the crates marked, the player must position the crates in such a way as to complete the circuit seen in the level. This adds another layer of puzzle to the original Sokoban mechanics.

As with any postmortem, I will be explaining what went right and what went wrong during the development process of Full Circuit.

Full Circuit actually exists for two purposes, both of which define its identity. The first purpose is to be a competitive Ludum Dare entry. The second purpose is to be a project for my high school Physics course. When the themes were being voted upon, I was desperately hoping that the result would enable me to effectively pursue both of these intentions. Thankfully, the final theme of “Tiny World” lent itself extremely well to my recent studies focusing around basic circuitry. With a theme and scientific topic in mind, I put myself to sleep with the intention of having a complete and reasonable game idea on the other side. And I did. Thus I decided to go ahead and combine the concepts of circuitry with the game mechanics of traditional Sokoban.

The first stage in Full Circuit.

The first stage in Full Circuit.

During the whole entire duration of development I was able to keep myself motivated, which was a definitely welcome surprise. This was not the first time I had programmed a clone of Sokoban, so coding the initial game mechanics was not much of a challenge. I started with the player’s movement and collision code, and then threw in the player’s animations. The graphical style of the game was always intended to follow the 8×8 grid format in order to keep the art demands low and to make the game world look tiny to the player. The art style turned out fine, and while it inherently has no issues, it would latter affect the game for the worst. After adding in the code for crates and doing some initial sprite work for the objects I was expecting to add into the game, I had to face my first coding challenge during development. How do I simulate the wire that is connected to the two ends of a battery such that it will only recognize itself as being charged when both ends are connected in a circuit? This proved to be a tricky problem, and one that I was not able to full fix.

My first solution to simulating a circuit was to have each piece hold two Boolean variables, one that says the piece is connected, in some way, to the positive end of the battery, and the other dealing with the negative end. This method would actually work if the circuit was a static whole which could not change. However, in Full Circuit the player needs to be able to build parts of the circuit on their own, and so, the circuits in the game are not static but dynamic. Why did this method not work with dynamic circuits? While I could let each segment of the circuit know it was initially connected to a certain charge, I couldn’t figure out a way to let it know it was disconnected in a way that made sense regarding the limitations of Game Maker. After a break to attempt clear thinking on the subject, I finally came to another solution.

This second solution to coding dynamic circuits simulated individual charges moving along the wire as actual objects. There were blue, positive charges and red, negative charge that would travel through a wire and, if they reached a dead end, would be destroyed. How did this system allow me to know whether or not a part of the circuit had been disconnected from another? If a piece of wire was no longer connected to a source of positive charge, for example, no more positive charges would reach it, and thus, it would revert back to not having a positive charge once all of the charges it did have left. Unfortunately, because of the way this method worked, the charges would have to move through the wire at a far slower speed than desired. Whether or not this is an effective way to simulate the actual science of electromagnetism in circuits is definitely questionable. However, with some level design trickery, the original message of, “The lights come on only when the wire is connected to both the positive and the negative ends of the battery,” still holds.

After finishing the code for circuitry, the bulk of the programming work needed for the game was done. I added in at this point some of the fluff that I usually hate to do, such as the opening, title screen, and intermissions, to get them out of the way in order to completely focus on creating level content. My biggest mistake with making Full Circuit was to interpret the theme as requiring the game to take place on different planets, or “worlds.” This in turn led to me using an art style that demanded large, single screen stages, which would exist as large, one circuit systems. Rather, a game that took place on the small scale of actual circuits, with the player controlling a small creature with the intention of fixing people’s broken electronics, would have led to a premise that could present a far better gameplay experience.

All of the stages in Full Circuit are beyond brutal because of their layouts. Each level is one large puzzle that, if the player makes a tiny mistake, must be completely restarted. The initial solution to this problem is to add some checkpoint or saving system in to the game. Admittedly, this should have been done, since it isn’t too difficult to do with the kind of game Full Circuit is, but I did not have much experience with implementing these kinds of systems and chose to ignore them as potential solutions to the difficulty problem. Another, perhaps better solution, would, as I had stated earlier, be to choose a premise that led to inspiring me to create smaller, more traditional Sokoban levels that would be far more manageable to play through.  Unfortunately, I was too fascinated with the idea of having one part of a level affect another because of their interconnection. My mind was also too polluted with the imagery of small, single screen planets due to following the development of several other Ludum Dare games to consider anything else outside of my initial premise as an option.

After building and testing the three stages of the game, I added some polish (such as the animations at the beginning and end of the levels) and faced my Achilles’ heel in regards to game development; sound design. Fortunately for me, both sfxr and Autotracker-Bu came to the rescue and produced, some, well, workable results for me to use. Both of these tools output lo-fi sounding audio that mixes very well together. The only regret I have regarding Full Circuit’s audio is that I did not decrease the size of the .wav music files.

For my first submission to Ludum Dare, I am proud of how Full Circuit turned out. However, from it I have learned that, as a game developer, I need to have empathy for the player and put them first, no matter what.

Chromatic Breeding – Postmortem

This is my first time in a LD competition and I am very happy with the outcome. My favorite characteristic of LD is that it gives you the opportunity to be innovative without  being worried with the outcome. Another thing that motivated me was the possibility to create games that can teach something. You don’t have to play a quiz game in order to learn, this can be done in a more focused and simplistic way.

Before the theme was announced I already knew that I wanted to work with colors, but I had no idea how. The theme was announced Friday night  when I was out of home. I slept with this idea and woke in Saturday morning with the first version of Chromatic Breeding in mind. The main objective of the game is to steer bacteria breeding in order to achieve the target color. To play this game two points are important:

  1. It is not possible to make a direct breeding, thus forcing the user to think what color he don’t want to breed
  2. The user should learn a little bit of the RGB scale, in order to choose which colors are necessary to achieve the target

Chromatic Breeding Gameplay

Some people seemed confused about this in the comments, so I will give an example. If the target color is a light pink I would start by popping the black, blue and green bacterias, leaving only the white and red one. The first offspring will be a pink bacteria. I uploaded an example on youtube:

Chromatic Breeding Gameplay Video

 What went right

  • Choosing the game scope: My objective was to have a finished game (within the possibilities) by the end of the time. I limited my game scope in order to be able to finish it despite some social appointments.
  • Coding the game in Java: This is not my favorite language but i chose to program in java in order to provide an Applet and make it easier for other people to play my game. When rating entries I always gave a full smile upon seeing a ‘Web’ link.

 What could be better

  • Focus on the gameplay: Given my time constraints I focused in programming. I should have thought more in the game mechanics and in the user interaction.
  • Procedural textures: I spent some time programming textures that could change colors. I used two images (one black and one white) that are mixed in order to generate the final texture. This is cool because you can change the color of the image while retaining some colored props. For example, the bacteria could have a red eye interdependently of its color. Although it is a really cool feature, I wasn’t able to use it in time and the overhead of creating two images was a turn-off.
  • Sound: The sound could be WAY better. Leaving it for the end wasn’t wise. The sound effects were a bit boring and I couldn’t find an application to create the background music on time.

Comments and critics are very welcome!

Play/Rate Chromatic Breeding

Angle Isle Postmortem

Angle Isle logo

Angle Isle is my second Ludum Dare game. Here’s how it happened.

Friday

The theme arrived at 6pm PST. After throwing out the first 60 minutes of work on a bad idea, I started sketching in Photoshop for inspiration. Soon after I developed a 45 degree angled art style. It seemed interesting enough, so I spent the rest of the evening creating tilemaps and characters.

The angled tiles

Saturday

During the morning shower I tried to figure out what the hell I was making. I liked the world, but most of the characters didn’t fit. I only liked this angled bird and before I dried my hair, the bird became the hero.

The Hero

After a quick cup of coffee I started the code. Angle Isle was coded in Flash Builder on top of the excellent Flixel engine. I don’t have much experience with Flixel or Actionscript, so I was often reading Flash Game Dojo and the Flixel documentation.

I hoped to create the levels in Tiled Map Editor, so I first worked on importing TMX files. This took longer than I anticipated. By the time I got a test level loading, I needed to break for lunch.

In the early afternoon I coded and animated the player. The desktop playtesting was done with an Adaptoid and my original black N64 controller. Once the bird’s flapping felt pretty good I started thinking about levels.

A large chunk of time was then spent on level transitions. I could have made it simple, but I wanted the levels to change dynamically. The player would seamlessly fly between one level and the next. It took awhile, but I think it was worth it.

At this point it was late. I needed to start designing levels, but there was much to tie up including touch controls, the breeze, and the shark. (More on this later.) I was delirious by 4am and went to bed a half hour later.

Sunday

I slept two hours and awoke a bit groggy, but anxious to start. First task: writing music. The gameplay theme was written in Textmate with MML. The tunes didn’t flow, but In four hours I had a passable melody.

I moved on to sound effects and finished them with six hours remaining.

The levels still weren’t designed. I set a twenty minute repeating timer and tried to make, playtest, and finish each new level before it went off. This was a tall order. I spent extra time in the early levels trying to figure out what the player should experience and learn. I also found the tileset incomplete and had to spend more time adding tiles.

Halfway through level design I stopped to create the title and ending screen. This took another hour. When it was time to submit I had squeezed in 8 levels.

What Didn’t Happen

I had started to add an antagonist to hunt the player in later levels. The shark would jump out when the player was trying for the lower hanging berries. But time grew short and the shark was cut.

I also hoped to add a continuous day-night cycle with parallax stars. Ran out of time.

Clearer Communication

When the player collects more than half of the fruit on a level, a wind appears to the right and the player can ride it to the next level. A bird chirp sound effect signifies the “exit wind” is available. Although I like the chirp sound, it doesn’t communicate a connection between the berries and the wind. I should have used a wind visual and sound effect instead.

Mobile Port

I submitted an iOS port to Apple the morning after Ludum Dare. But as I’ve been playing it more, I’m less satisfied with the performance on older iOS devices. Instead I’m looking into porting to Axel or perhaps Objective-C for the post-compo version.

Angle Isle app icon

Conclusion

Ludum Dare is awesome. I’m amazed by the results of some good ol’ pressure. Angle Isle blew away my previous entry and I’m pretty happy with the results.

If you entered the competition, please take a chance to rate my entry. I’d love to hear your feedback.

Twitter: @rustym

Tags: ld23, LD23 Tiny World, nes, postmortem, SuccessStory

An online persistent world building game in 48 hours

I’d been meaning to write this a lot earlier, but I’ve been way too busy to do it until today. Anyways, I made an online persistent world game in 48 hours. I wonder if it’s been done before during LD? We really need a tag system for games or something, it’d be interesting to be able to look up games with
specific elements. This post will be a bit of a combination of a making-of and a post-mortem; I’ll explain how this game came to be and comment on it.

Before Ludum Dare
This was my second Ludum Dare, so I had a decent idea of what to expect. Last time I used Unity, which had both its advantages and disadvantages. But since I’m the kind of person who wants to be able to customize everything and doesn’t want unnecessary things forced into his game, I prefer not to work with Unity. Fortunately, since February I’ve been doing an internship where I’m working on an XNA game, so I got pretty familiar with it. In making that game, I wrote a simple sprite engine which turned out to be very useful, so a week or so before LD23, I took the engine, removed some game-specific functions, added a tiny bit of documentation and released it as VBXSE. A short while ago I’d also been working on a simple netplay engine named GNI in my free time, so I decided to release that as well.

The original idea
After waking up at around 9-10 AM (competition started at 3 AM for me, but sleep is very important if you’re doing a 48-hour solo project), I checked the site to find out the theme was unexpectedly ‘Tiny World’, a theme I hadn’t even considered a possible winner in the poll. After thinking about it, I decided to make a roguelike-ish survival game similar to UnReal World where you and a couple of NPCs were stuck on a tiny island and had to get food and shelter to survive. That’s right, the original concept was nothing like what the game eventually became. I wrote down the basic game design in a text file, if you want details. So, I started working on the survival roguelike…

World and Graphics
Since roguelikes tend to be played in console windows, I decided to keep the area size small enough to fit in one. After some thinking, I decided square areas would make the most sense considering you also need room for other game information, and I ended up at a 22×22 world with each tile having 22×22 subtiles.

After a rough interface sketch, some calculations and some guesswork I decided the tiles would graphically fit best at a 32×32 size. However, I’m terrible at drawing stuff, so I decided to turn ‘lack of skill’ into ‘style’ and went for a pixel art look; I drew every tile and item in 8×8 and then resized it to 32×32 to make it look ‘retro’.

I made all of the art in GIMP because the Paint that comes with Windows 7 tries to be too hard to be a real drawing program and in doing so actually becomes worse for making pixel art…and it still doesn’t have any transparency. Brushes were surprisingly actually very useful when making tiles like grass, sand and sea. Just keep using random brushes and you have good-looking grass. Definitely something I should use more often.

Sound and music
The music for the game was made in FL Studio 9 using only soundfonts from DSK Music‘s HQ Instruments set. Although the effect is very subtle, the game actually contains dynamic music; although throughout the entire game the same track keeps playing, there’s three slightly different versions of them. They play simultaneously, and the volume adjusts depending on where you are.

Normal track
Forest track
Beach track
FLP (FL Studio Project) file

The music used the ‘Celtic Harp’, ‘Ney Flute’, ‘Percussion 1’, ‘Oboe’ (forest only) and ‘Harp’ (beach only) soundfonts. It was inspired by Paavo “Tarantula” Harkonen’s soundtrack for obscure MMORPG Dransik (now a shadow of its former self and named ‘Ashen Empires’) and a random street performer playing on a harp the day before LD23.

The sound was created by rubbing or hitting various objects around my desk against eachother in different ways, recorded with my laptop microphone and edited in Audacity (amplitude change, pitch change and echo). Like the music, it was mainly inspired by obscure MMORPG Dransik, where you would hear a simple but satisfying sound whenever you did things like cutting trees and mining.

But how did it become a persistent world game?
Development started out well. I started by making simple ‘world generation’ (filling the entire world with grass tiles). Then I made movement work, then proceeded to add sea and forests to world generation. I added the axe and item usage, so you could chop wood. Then I also needed support for dropping and picking up items, which also required a menu to let you choose between items. I also made sure you could save and load your world, so I made functions to serialize the entire world to a long string and load it again.

At that point, day 1 was already over (LD goes from Saturday 3 AM to Monday 3 AM here, so it’s 2 days instead of 3 as it is in some time zones), and there was no sign of crafting, construction, the hunger system, NPCs, wildlife, fishing and similar methods of food gathering, liquids, an age system, building recognition or pretty much anything beyond the very basics of the game. Whoops. So, what is the logical thing to do when your plans seem way to ambitious?

I went with the logical solution: I changed my game into a complete persistent world building game. Of course it’s a ridiculous decision to take halfway through development, and even more so when your project is in that state due to being way too ambitious, but all things considered, it ended up being not as unreasonable as it sounds. I had recently created a netplay library, and though network communication is always tricky and it was not tested much, it did seem to work perfectly from the small amount of testing it did get. As a game design decision it was more logical than anything; I was just a tiny bit of code away from making a game where you can build stuff, and games like Minecraft, Terraria, Active Worlds, a whole slew of BYOND building games and many more games have pointed out that just building things for other players to see can actually be fun in itself. Add to all that that I could already serialize any part of the world to a string, and the decision was made overnight to go all-or-nothing for an online persistent world game.

The first thing I did on the second day was finish the crafting and building system (otherwise even having a persistent world would be futile). Then I used my GNI library to write a server program and a client class. The client would ask the server for the serialized string representing the world map, and then for the serialized strings of each of the areas in the tiles (each tile on the 22×22 world map contains an inner area consisting of 22×22 ‘subtiles’, if you haven’t played the game). I found out the serialization had some errors, but after some bugfixing, it actually worked perfectly. Then, to make client changes affect the server and have the server keep the client up to date, instead of at the start the server would send the client the inner areas only whenever he zoomed in or walked to a different inner area, and the client would serialize the entire inner area and send it to the server whenever a tree was cut, an item was dropped or picked up and whenever something was built. It’s an inefficient approach (the reason it lags whenever you switch between areas or do something area-affecting), but it worked great for a 48-hour game. I then proceeded to add functionality for chat, player names, seeing each other, et cetera.

After the netplay features worked, I decided to add what little extra content I could still safely push in (mountains, stone, and anything that requires stone – yes, originally there was only wood) and release it.

What I like about the game
-It’s a persistent world game. That by itself is awesome.
-It’s my first succesful attempt at a non-BYOND online game. There was one other finished game were I attempted netplay, but its netplay was a horribly buggy mess that desynced for any players that were more than 2 meters apart.
-The world generation is nice. I’ve barely done any random world generation before, so the fact that I managed to get a properly shaped island with properly shaped beach and mountain areas out of it is pretty nice.

What I dislike about the game
-Lack of content. And I mean utter lack of content. There’s two kinds of walls to build, two kinds of floor plus four natural floor tiles, one tool to make and one decorative item. Ludum Dare games aren’t known for their extreme length, but it’s very minimal here; it’s a building game, but there’s hardly any variation in what you can build, so you get bored very easily. This is especially disappointing after my previous LD game, which could be played for significant lengths of time and still be interesting.
-It’s buggy and laggy. Whenever you zoom in, lag. Whenever you build something, lag. Whenever you cut a tree, lag. Whenever you move from one area to another, lag. And those 4 natural tiles I mentioned at the previous point? Good luck getting three of those without relogging a minute later, as they mess up something in the graphics (still not sure what causes it).

Things I should do again next LD
-Use VBXSE and GNI again. Especially the latter came as a surprise in how powerful it can be in just a small amount of development time. I was afraid of netplay functionality before considering the debugging hell it can cause, but now I think I’ll just plan for netplay from the start of the theme allows it.
-Use pixel art. I can’t draw, but ‘style’ turns out to work as a pretty good excuse to hide my lack of skill.
-Record random objects using my laptop microphone and edit them in Audacity for quick sound effects. I’m pretty satisfied with how they turned out; they subtly add a lot.
-Be overly amibitious. Partly because I’m just an idiot, but also because going beyond what you know you can do allows you to learn new things. It would be better for the game if I didn’t, but in the long run this is very useful.

Things to keep in mind for next LD
-I should make sure there’s enough content. LD is for games, not for tech demos.
-I should try to get the day after LD off work. Starting a week with a serious lack of sleep hurts your productivity for the entire week.
-I should update and improve VBXSE and especially GNI. They’re awesome, and therefore they must become even more awesome.
-I should make sure I’m used to the the tools and libraries I’m working with. I thought I knew XNA, but it wasn’t until halfway through the project that I realized I didn’t know even how to play multiple music tracks at the same time and change their volume. I also wasted a lot of time debugging an issue that happened because I didn’t take into account that using auto-poll GNI’s client class handles received data in a different thread.

Beyond here
I was initially considering updating the game a bit, adding some extra content and fixing some things I didn’t like, but there are so many things I’d like to change and so many things that need to be changed to make the game actually fun that it’d just take too much time. I think it would be interesting to one day make a complete game based on this, but that’s the kind of plan that will either never see the light of day at all or won’t be used until years later.

By the way, I forgot to do it initially, but I’ve slapped a Creative Commons license on the game so you have the right to mess with it in any way you want. Well then, see you all next LD!

Appendix A: Tools/libraries/etc used
C#: The language the game is written in.
XNA: Engine used for the game.
Microsoft Visual Studio 2010: The IDE I’ve used to make the game in.
VBXSE: XNA Sprite engine, used for all graphics stuff.
GNI: Netplay library, used for client-server communication
FL Studio 9: Used to make the music. I’m a fervent supporter of pattern blocks, even as Image-Line gets rid of its unique features.
DSK Music’s HQ Instruments: Set of amazing soundfonts I use for music. The music for this game was made solely using DSK HQ Instruments, using default FL Studio VSTs as effects.
Audacity: Pretty much the best audio editor around. Used for sound effects.

Appendix B: Network signals
If you’re interested in how exactly the server and client communicate, these signals are sent back and forth. Each signal has a ‘key’ denoting what the signal is about, and a ‘value’ containing other info.

Server to client
(None) – A signal with no information to check if the client is still connected.
identify – Asks the player for his appearance and location, in case some other players requests it later.
goplay – After version check and sending the necessary maps. Tells the client the player can start playing.
gspfinish – Indicates the server is finished sending inner tiles and the client can enter the subterrain the player was about to enter.
message – A chat or system message. Output the value to the displayed messages.
people – A list with the unique player numbers of all players that are currently online. If a known ID is missing, that means a player has disconnected. If there’s an unknown ID, the client sends a ‘who’ signal to ask for information on the new player.
person – Information on a player (ID, appearance, location) as a response to the ‘who’ signal. The client will then add the player to the list of known IDs.
pos|X – Where X is the unique player number of a different player. Tells the client where the specified player is right now.
subter|X|Y – Where X and Y are integers representing coordinates. Replace the inner tile at X,Y with the serialized inner tile in the value string.
subteru|X|Y – Same as above, but the change is vital, so if the player is in the area, it MUST update the inner area before letting the player continue doing whatever he’s doing.
versioncheck – Asks the client to send his version number, to make sure he isn’t using an outdated client.
versionmismatch – Tells the client he can’t play on the server because the versions don’t match. Which version the server is running is in the value.
where – Requests the client to send a ‘here’ signal, telling the server where the player is.
worldmap – Sends a serialized world map as the value. Allows the client to build the same world map client-side as the one that exists server-side.

Client to server
The server automatically sends these signals without the client saying anything to it:
Every 2 seconds – where – Ask for the player’s current location.
Every 2 seconds – pos – Tells the player where other players are.
Whenever a client connects – versioncheck – Asks the player for his client version.

The server can receive the following messages:
cmsg – Client wants to send a chat message.
getsubplus – Value contains X and Y coordinate. Client asks server for the inner area at (X,Y) as well as the 8 areas around it. Server sends them followed by a ‘gspfinish’.
here – Client tells the server where the player is.
ident – Client tells server information about the player (appearance and location). Server stores the information and sends ‘worldmap’ and ‘goplay’ signals to let the player start.
nick – Sets the player’s nickname.
usub|X|Y – Client tells server they updated the inner tile at (X, Y). Server updates world and sends a ‘subteru’ signal to all players.
version – Client tells server what version they’re using. If it matches, the server will return an ‘identify’ signal, otherwise it will return a ‘versionmismatch’ signal.
who – Client asks server for information on a player. Server sends a ‘person’ signal in response.

Tags: building, building game, client, making of, multiplayer, netplay, network, online, persistent, persistent world, post-mortem, server, tiny world, TinyIsland, xna

A Robot’s Journey – Post-Mortem

A Robot's Journey

The title screen to my LD Entry

 

This is my third time attempting Ludum Dare, first time submitting. Sadly I only created a platformer with no gameplay at all. I submitted it because I couldn’t pass up doing so during LD’s 10th year. Anyway, here’s my Post-Mortem.

 

Tools used:

Language: Java

IDE: Eclipse Indigo

Libraries: Slick2D, Marte Engine

Graphics: GIMP

Sound: Bfxr, Musagi

 

What went right:

I must say that making the libs I used for this LD is rather helpful for making 2D games so collision and logic weren’t a real problem. Neither was creating some graphics to use or sound effects. Bfxr is great for sound effects and I’ve been using GIMP for years. Last but not least, my IDE. Eclipse is a great tool for programming Java and it’s the only thing I use.

 

What went wrong:

What went wrong. Where do I start? The top problem for me was getting a runnable jar working at all. I have no clue as to why it never worked, but that’s certainly something to fix. Next, the game. Seeing as I took an entire day to learn the Marte Engine while coding through it I had lots of errors. I must say the constant recoding really bogged me down. I also never got my music playing correct in the game (It would play a single note in the title until you started the game).

 

Overall result:

Overall, I loved LD23. I always love Ludum Dare, even if I mess up bad. All these mess ups are just practice for me. And we all know that practice makes perfect. So I didn’t have a working LD entry. Ahwell right? In August I’ll just work harder and worker smarter. Ludum Dare isn’t a grind session where you bash the keys until something sticks. You gotta plan right, manage your time, know your tools, and have confidence in your skills. I’m happy I was apart of LD23 and I can’t wait till the next. Keep coding LudumDarians! 😀

 

CNIAngel

Want your game reviewed? Give it here!

EDIT: Woah, 20 games! Gimme a few days to get through all those everyone! But until then, everyone is encouraged to exchange detailed feedback because as stated below, that’s the prime reason for which we enter these jams!

The most important part and amazing part of game jams is the feedback you get on your game/experiment.

The whole point of game jams is to quickly prototype something and see how it does. Developers are encouraged to try something out of their comfort zone because n both cases you’re a winner. If the game succeeds then you’ve stumbled on an amazing new concept and can see what worked and why it worked. If it’s a miserable failure then you can see why it didn’t work and how you can make it work.

So in the spirit of constructive criticism, I’m going to be reviewing a round of games soon, so I thought why not give them some detailed analysis as well?

Post your games in the comments and I’ll get to them, and maybe you’ll return the favor!

What I’ll be doing is a detailed analysis of my first impression of the game, at what point I quit and why I quit, what I liked, what I didn’t like, how I think it could be improved from a game design point of view.

Comments

Scott Baker
28. Apr 2012 · 16:00 UTC
This is a great idea. I will return the favor for you and for everyone else who posts here. My game, Tiny Neutrino, can be found at:
dr_soda
28. Apr 2012 · 16:05 UTC
That’s a kind offer. Here’s mine, provided you have an Android device on which to play it.
tcstyle
28. Apr 2012 · 16:15 UTC
Great idea. I appreciate detailled feedback. Principally I also will give feedback to anyone who comments on my game so your favor will be returned.
28. Apr 2012 · 16:34 UTC
If you could spare some time to look at mine:
steamgirl
28. Apr 2012 · 16:45 UTC
I’d be happy to exchange detailed feedback with you 4urentertainment. I would offer the same to anybody else, but can’t promise I’ll be able to find the time. ^_^; I’ll try, though.
LukeRissacher
28. Apr 2012 · 17:56 UTC
Heh – I’m rapidly becoming a praise / attention addict – not sure how I feel about that. The game’s gotten really good reviews so far though:
Oye Beto
28. Apr 2012 · 19:01 UTC
Hello, I’d like to read your feedback and also see your game.

I still have some things to fix (like the background) and ideas to implement for the post-compo version but I’d like to see your suggestions.
Them Games
28. Apr 2012 · 19:33 UTC
Hello,
FrankTheTank
28. Apr 2012 · 19:50 UTC
I would be really happy if you could review the game I made :)
01. May 2012 · 13:53 UTC
I’m a bit late, but maybe you’ll wanna give a try to my “game” ?

Gods Inc – Mini art tutorial !

Hi everyone !

Some people commented on the art of my game. It’s super cool, and I really wanted to share a little tutorial with all of you. The goal of it is to show you how I made the planets in my game and you will see that it’s ultra easy and ultra quick to do it. If you didn’t play the game, you still have a chance :)

PLAY GODS INC !

(Click for full size)

Boxed In: postmortem

title screen of our game; Boxed in. also notice the cat in bottom right, it means there's a a kitten hidden in it :D

title screen of our game; Boxed in. also notice the cat in bottom right, it means there's a a kitten hidden in it :D

 

This is our first year together as a group, and we are very impressed with our results. We did have a few more ideas for it, but i guess that’s what happens with 72 hours of time to make it.

link to Boxed In’s Ludum dare page.

Tools used:

– Language == AS3

– IDE == Flashdevelop

– Libraries == Flashpunk

– Graphics == Paint.NET

– Sounds == SFXR

– Music == ptCollage

 

We incorporated most of what we wanted to incorporate. We managed to make it as complete as we possibly can and even had time for credits, a kitty Easter egg and particles.

DAY 1: 72 hours remain:

We at first were going to go all Super Mario Galaxy style with a tiny planet at the center. However, after a while we realized that Jellonator could not get the physics working the way it was supposed to, so it was scratched. 3 hours of time was wasted. So we started brainstorming ideas once again. Acecard kept repeating ‘a guy who can shrink and then grow back,’ yet Jellonator insisted that he could not code the area detection for growing. eventually we came to a point where we had the idea of small people in a cardboard box controlled by a larger person. shortly after that, Ace had to sleep and left Jello to code from 1 AM 7 AM. the end result after that was ogmo was set up and running, platformer physics worked, and some crapsprites made in place for when Ace made them, with a small hole in the box that acted as a goal.

the original game

the game after the first day featuring crapsprites.

Day 2: 48 hours remain.

This is the day when most work was accomplished. MKSTAR came online and made a quick functional loop, boxes were made to be pushable, spikes added to kill the player, Ace made non-crap sprites to implement into the game, tilting is added. The main thing about this game was turrets and rocket launchers. at thing time, missiles were homing missiles. Also, half of the levels were made on this day.

Day 3: 24 hours remain

On this day the rest of the levels were made. Jello encountered glitches with the missiles, so he removed their homing function after an hour and changed their function to destroying breakable blocks. Sprites were tweaked, Blocks were created and the credits were added to mark the end. the goal was also changed to a hole that leads to other parts of the box just because of logicalness. by the time it was done, there was 2 minutes until submission period. after we submitted it, we encountered a few glitch. blocks were affected by tilting. so we went ahead and fixed it during ludum dares submission period and submitted it. we took a long nap afterwards.

 

What went right:

quite a few things went as they should have, The fingers at first were hilarious (Jello resized them 400%), but looked legit when resized 200%.  the whole tilting gameplay is the thing that makes it entertaining. We also enjoyed implementing the easter egg, at first we didn’t know how to implement it, but in the end we did.

What went wrong:

At the beginning we waster ~4 hours brainstorming and scratching the original idea. we planned 20 levels but ended up with 18. Our turrets and missile launchers glitched when you passed the relative angle of 0 (when the player is to the right of the weapon). Jellonator thinks the fingers still look a bit creepy, but eh. they’re fine. There’s also a glitch with tilting, the game only renders whats visible at 0 degrees, so it chops off at the top and bottom when rotated. We also realized level 12 and 13 were the same thing.

Conclusion:

Overall, we are proud of our game and will continue it in the future. we had quite a bit of fun making this and we hope you have as much fun playing it too.

 

MK (Composer)’s comments: Well, this was a fun experience, and my first Ludum Dare. I loved the whole time limit thing, and it brings a smile to my face seeing so many people like the game. See that level near the end with a crapton of spikes and Kaizo jumps? That was me. :3

As to the future of Boxed In, we have a seperate-from-LD version that’s currently in the process of a new gameplay fashion. Also, Jello’s working on something interactive, and he’s considering adding more obstacles. Meanwhile, I made levels (there’s another standalone version on our site with those levels), and composed some music that could fit with the obstacles.  Also, we’re adding settings in a different interpretation. I love cryptic leaking.

Meanwhile, Ace is hi-res-ing all the graphics (which is pretty stupid, IMO), and Jello’s working on the aforementioned leaks. I’m just composing. ~MK

 

Tags: postmortem

So freaking ready for my next try

So… at my almost-graduation party (long story) I got a new laptop and a copy of Visual Studio 2012 Professional. I’ve got XNA ready to go. I will spend the next couple of weeks getting familiar with XNA and refreshing my rusty C# and VB.NET skills. (A game in Visual Basic? Yes, that’s right. I’m naughty like that.)

I’m ready for the Mini-LD next month. Bring it!

Are you ready to see my true power?

– Henry

Comments

28. Apr 2012 · 18:03 UTC
I use XNA, too. I love it. Post your first trials here 😀
Canard Sauvage
28. Apr 2012 · 19:10 UTC
Why do java developer wear glasses? because they don´t see sharp 😉 No, seriously, don’t go with .Net, as it runs only on Windows. This really sucks :) But good luck with the next Mini-LD!
castor
28. Apr 2012 · 21:00 UTC
You won’t be able to write your game in VB if you are using XNA. 😉
28. Apr 2012 · 21:11 UTC
So… I have a project set up and a thing on the screen. :)

Android version of JoeTheAlien

Hey!

I’ve just released the android version of JoeTheAlien:

https://play.google.com/store/apps/details?id=com.programmingwithdesign.joethealien

Thanks to the power of GLBasic it was quite easy and fast. I hope you will play the android version :)

Original game: http://www.ludumdare.com/compo/ludum-dare-23/?action=preview&uid=11847

Comments

dr_soda
28. Apr 2012 · 18:15 UTC
I don’t see a link to the android version on your entry page

How to…ARACHNID Animation

Hey guys.  Can’t tell you all how much I dug Ludum Dare this year…  What an awesome community and collection of work.  I thought I’d put together a little how-to on quick animated asset creation based on the creature I made for ARACHNID.  It doesn’t cover much, but perhaps it will convince you that animation doesn’t have to be hard, and can really make or break a project.  I love me some pixel art- but don’t be afraid to tackle those higher resolutions!

 

My Top 10 LD23 Games so far!

Ok, I’ve rated 50 games so far (and left comments on each one of them because they all deserve it) so it’s time for me to share the awesomeness of the entries I’ve reviewed. I must say all of them were amazing games so it’s hard for me to pick only 10. I would actually like to pick 50 but oh well, I don’t want this to be easy for me either, picking 10 is a sort of a personal challenge.

There are a few games whose level of polish blown me away. I’ve placed them at the top 5 places of this list.  Besides that particular arrangement there’s no order in the list whatsoever.

Top 5

  • Inside my Radio Bit-trip-Who? Play this game and you’ll forget about those games.
  • Predicament Simple, short, but amazingly well done.
  • Asylum Awesome game, and the ending is so-  I mean.. it’s just so-  oh.. really,  play it.
  • Ant Surf Hero: The Surfening Lot of people seem to like this game. Let me tell you something: they do it with reason.
  • Tiny Civilization Old-school fun with old-school feel. Love it.
Moar amazing games
  • Tiny Garden of Hope L-O-V-E-L-Y. You MUST play this game. You MUST PLAY IT NOW.
  • Disregard All Humans Eating humans have never been more fun than this, truly.
  • TinY World  An interesting take on the theme. Creativity at its best. May be too hardcore for traditional audiences though.
  • Tiny Castles Sound fxs can get a little bit annoying but the game overall feels pretty awesome. Loved the game.
  • Cube World I suck at this game but I like it a lot.

Special Mention

I actually couldn’t pick only 10. This game just HAD to be on the list, so I’m cheating here and awarding this entry the honorific title of  “Special Mention“:

  • Prince of Leaves Only thing I have to say: “Let’s go on an adventure, Let’s go on an adventuure… do-do-do-do doo”

 

I’ll probably make another top 10 after 100 games (which is something I plan to reach at the end of next week)

We would love to receive more feedback on our entry as well, since we want to make a full-fledged game out of it so If you haven’t played our game yet and you have a few minutes to spare after playing all the awesome games posted above, check out our game!!

PLAY OUR ENTRY HERE

Thanks.

Tags: favorites, ld23, Top10

Haxe Planets: Feedback-based post-compo version

Thank you all who post comments in my entry

Based on the feedback my game that is a one button platformer.

  • It’s too hard
  • Needs check points
  • Needs a better hit box collision
  • Needs to control the height of the jump
  • One button mechanism doesn’t work when facing enemies

So, I createad a post-compo version that adds:

  • Checkpoints
  • A proper hit box in the collision algorithm
  • A few optimizations
  • Double jump

I think that the game now is a little too easy, but if you want to test the new post-compo version you can do it here.

Best luck!!!

Tags: feedback, haXe, haxenme, post-compo

Comments

Oye Beto
30. Apr 2012 · 03:16 UTC
It was the first game I played in this Ludum dare, I remember I was uploading my game at that moment.

Assets and Timelapse

OK, so here’s some development shots and various assets for our game, Kumiho

This is my visual reference chart, the visual references that most influenced how the game looks. Ikaruga has a prominent role visually, even though I did play some Jamestown, Touhou 8 and Xenon II to get a feel for things. I used a 21 color palette which grew organically as I added more and more stuff. It’s the strange shape at the bottom left of the timelapse. I also tried to keep with a vertical composition and Korean text, in its (less usual) top to bottom form, was a huge help in establishing the look. Korean and chinese drawings were also a big influence on the style.

I always like to have reference for everything before I start to work. In this case there’s background ideas, spaceship designs, photos of insects and stylized korean drawings.

Here is my timelapse.
I used one main photoshop file to draw new stuff, so that I could see them relative to other assets. Essentially, a mockup/overview of the game.

When something needed animating, I just copied it into a new file and went on from there. Cases in point:

Long explosion. Again, Korean and Japanese art influenced the shape

the flappy wings of the squid boss. I realised, from looking at slow-motion squid videos on youtube, that the movement is essentially a sine wave. Even so, this took about 2 hours

The ship was my first animating challenge for this game. I had chosen an asymmetrical design, so left and right animations would have to be different, and not just a flipped over version.

The tentacles. This took 3 hours. Sine wave movement again, but these were harder. The two right tentacles are flipped versions of the two left ones, with a time delay of 3 frames, so that the movement looks more organic.

Hope this helps,
Christina

 

Tags: final, game, game reference, jam, journal, post-mortem, postmortem, progress, screenshot, success, SuccessStory, timelapse, unity

The timer problem

Hi,

cause this problem was a bug in my LD game and will be a bug in other games I want to present it and possible solutions for it. I would like to know what you think about these or have another solution.

The  bug

 Not all computers are as fast as other computers. That’s why a game without any timing limiter would execute on other computers faster or slower.

Possible solutions

There are some possible solutions I already know:

  • Limit the frame rate to a constant value (all procedural movement can be done with a constant value)
  • Compute the elapsed time between two frames (the elapsed time must be multiplied with all speed values)

I want to show you my opinion about these.

Limit the frame rate to a constant value

It looks very easy you calculate the time span of the current frame and subtract it from the time span a full frame for the desired frame rate and you have the time you must wait before a new frame may start. But what is when you notice that your game is suddenly slow? The problem in the code can be thousand code lines before the code you were actually working on, but you don’t saw it because you can’t see when the frame takes more time. The frame rate, if you don’t have a very bad computer, stays at his value.

Compute the elapsed time between two frames

That is what I did all the time and it worked. But at that time I used the graphic functions of the SDL, but I switched to OpenGL because SDL was too slow (especially for large images). As I used SDL the max frame rate was about 500 and this was good enough for me. As I started Mr.No’s Laboratory I got 10.000 FPS and the timer function was broken. The reason is that I use milliseconds for computing the elapsed time. But at 10.000 FPS a frame only take 0.1 seconds but the function for getting the milliseconds returns an unsigned int (so there is no comma). The timing function works only with frame rates up to 1.000 frames per second (elapsed time=1)

For ludum dare I already knew  this problem but I thought I solved it with computing the elapsed time every 50 frames (max frame rate=50.000). But I doesn’t work. Multiple people reported that the player is moving very fast. For a postmortem version I activate VSync (so the frame rate is about 60-75), but I want to keep my high frame rates. But what to do? I already know two solutions:

  • using nanoseconds instead of milliseconds
  • determine a proportion between the frames to skip (for the elapsed time calculation) and a performance of the computer (like cycles in one millisecond)

using nanoseconds

There is a easy-to-use function for java but for c++ I only know the functions for windows and even if I don’t port my applications to Linux or Mac I want to keep the possibility for it.+

determine a proportion

Using a code like: while (SDL_GetTicks()-ticksAtStart<100) count++; you get a performance value of your computer. Maybe there is a proportion between this value and the number of frames I must skip for a elapsed time value which I can use to do procedural movements.

 

But whats your opinion about all these problems?

Helco

 

 

Comments

29. Apr 2012 · 07:20 UTC
I don’t understand what the problem is you’re having with computing the elapsed time in between frames, even if you have to use integers of milliseconds. You don’t have to use ints in your speed calculations, and you can use milliseconds directly by just dividing your characters’ speed / second by 1000. I.e. If you have a character that moves 1 unit every second, he moves 0.001 units every millisecond.
29. Apr 2012 · 09:02 UTC
Oooooooh, I get it now. That’s funny :). I was confused because I’m used to seeing comma’s and dot’s switched from you in numbers :). I read 10.000 as 10.
29. Apr 2012 · 10:30 UTC
Just FYI, there are more ways than 2 to deal with framerates. Important things to consider are vsync, determinism, and how you want your game to react to jitter/slow computers.
yoklov
29. Apr 2012 · 14:07 UTC
Well, just for the record, java’s nanosecond counter is a lie. If it’s not exposed in C++, then java doesn’t get it.
Shadow
29. Apr 2012 · 15:26 UTC
If you ask me for my opinion I don’t think that having such exaggerated FPS does help your game in any way. For starters is creating a problem for you.
29. Apr 2012 · 19:43 UTC
If the user’s gfx hw and driver supports vsync then use it. That’s the hardest part of the problem solved right there!

Remembering the love…

As in the last compo, everyday I’m writing a post with impressions of the games that attracted me most among those I played that day. With more than 1400 games available, I hope that these posts can call to attention some gems that may go unnoticed otherwise :-). If you want to see my previous posts, just check my journal for the “love” series.

So, among the games I played today, I found many “cute” ones to share:

Tiny Contamination — A “dodge the enemies” kind of game where your cute amoeba has to take the right cells and flee from the wrong one. I really like that the number of lives the player has is integrated into the sprite. A strange bug might make you die suddenly.

A bathtub story — You are a cute monster inside a tiny bathtub, fighting against all the other bathtub toys. Very cute game, until you realize that EVERYTHING in that damn bathtub is deadly, and trying to kill your guts!

Pixel’s World — your first impression might be “ugh these sprites”. Then you see everything that is going on in the background, and realize the look is quite intentional, and work very well that way. A very fun platformer.

Toad Warrior — Hmmmm, a naked dude riding a giant frog may not be everyone’s definition of cute. Hell, it might be no one’s definition of cute! But the art in this game is pretty neat, and the dude looks so happy in his toad! 😛 The game is a platformer puzzle with a unique control. A bit rough in the game play, but rather fun.

Gravity Force 3 — Well, this game has nothing of cute in it. But is one of those crazily fun games that you keep playing and playing just because they’re so addictive, even if there are other games to rate :-)

See you again soon!

Tags: cute, game reviews, review

Tiny Parallel Worlds – Timelapse

After messing around with codecs, here’s the complete timelapse video of my entry, from 24430 screenshots weighing in at up 4.53GB total

Tools used were:

  • Paint.NET
  • IntelliJ IDEA
  • bfxr

Enjoy!

Tags: timelapse

“The World Below” post mortem and timelapse

http://youtu.be/UbUrvcaDbmM?hd=1

What you just saw was me making my ld23 entry. Now i will write about the experience!

What went right:

The game was made in java. I was thinking of using unity at one point, but i realized that i was much more familiar with java and all of its APIs.

I was really happy with the animation as well. I do think i spent too long on it, but it did look very smooth.

What went wrong:

Time. I had very little time Sunday and thus couldn’t get much done there. I ended up working until 2 am and was ultimately not very happy with the final product.

Art. Colors were pretty awful. Since then i learned about how important a good palette is.

Engine. The engine i used was created in 48 during the compo. This was good because i was very comfortable with it, but i spent too much time optimizing and fixing crashes. Next time i will probably use FlashPunk.

The game can be played here: http://www.ludumdare.com/compo/ludum-dare-23/?action=preview&uid=7228

Bye!

 

terminus: post mortem

you can play terminus here

for my ld entry, i wanted to create a small, reactive world for the player to experiment and interact with.

i’m fascinated by game worlds in which events will transpire on their own as time passes, without any input from the player (see majora’s mask, a heavy inspiration for my entry).
the villagers in terminus have their daily routine, with each day resulting in furthered progress toward their goal, and ultimately a step toward the impending disaster. the player can choose to interact with the various objects in the game in an attempt to influence what happens, but things will continue to happen even without any interaction from the player.

the game will continue even after the player's death

my biggest focus was developing the npc behaviors. getting their chop/build/sleep routine to a point where it was recognizable took a surprising amount of effort, though developing the state-based ai system ended up being a ton of fun and incredibly interesting to develop.
additionally, i wanted the npcs to be able to respond to the player’s various interactions with various bits of the world, to give the player some feedback within the world itself, since the game doesn’t provide any sort of direction for the player.

even though I put over 30 hours into its development, there’s still more i would have liked to add. particularly, i wish i would have added some further npc chat to clear up some less apparent game interactions (such as breaking/replacing axes). additionally, i had began development on a tertiary endgame goal, but ultimately ran out of time to implement it altogether.
also- god battles, godzilla style. a missed opportunity.

this ended up being the most fun i’ve had at one of these events; i didn’t sleep at all on saturday night, since i was enjoying myself so much and i just wanted to continue adding new features.
ultimately i ended up with my strangest game yet, but one that i’m incredibly happy with.

Post-Mortem

Hey people! Hope you’re all enjoying playing the LD game entries.

Here are a few notes from me about the ups and downs of the making of my game.  First, here’s a screen shot of the dev process: (the same one I posted before, but many won’t have seen it)

Space Rescue in development

The game didn’t actually change much from that semi-complete version, as at that stage I hadn’t put the collisions in – and those are pretty important (;

What Went Right:

  • Generally the shooty style seemed to work pretty well, and seemed a good choice for something to get done very quickly from scratch with no framework code.
  • The asteroid turned out pretty well.  The maths to work with it weren’t too bad – mostly just basic trig – and the fading was an interesting addition.
  • Art: actually went OK given that I’m very much a programmer (:  Maybe I should’ve called the asteroid a “moon”, though, as it does look more like one.
  • SFX & music: BFXR and Autotracker-bu are awesome.  Thank you again, increpare and GreaseMonkey.  Music-wise, I would’ve written my own given time, but had nowhere near enough.
  • Stuff that I crammed in using only about three hours in total: the menu, music, sound effects, spaceman rescuing, and level progression.  It wasn’t revolutionary, but all together added a lot to the experience, I reckon – particularly given that without spaceman rescuing I would’ve had to rename the game (;

What Went Wrong:

  • Frame rate jerkiness.  Holy cow.  I lost seven hours to fixing that up, as I took ages to figure out which of loads of potential issues was causing it.  Trust me when I say you would’ve found it pretty annoying had I not fixed it, but if I’d sorted it straight away, I would’ve got a lot more gameplay in.
  • Linux bundling.  Pyinstaller is very good, but it didn’t need to put in libasound.so.2, and the oddities with this library (it has a dependency with a hardcoded path that varies between distributions!) meant that most (if not all) Linux users couldn’t run it first go.  I should’ve tested this on other machines, but was too tired, and foolishly just crossed my fingers rather than checking.  (Note for anyone interested: removing that library fixes the problem)

What I Really Wanted To Add But Didn’t Have Time:

  • Zooming out for when the player went off screen, or adding arrows to point back (a lot of people mentioned this when reviewing)
  • Multiple asteroids; more enemy types; destroying the asteroids; power ups; etc (had loads of ideas here)

Other Points:

  • The control scheme could’ve used a bit of tweaking, but I was reasonably happy with it.  Reviews varied – everyone’s preferences are different – but to me it was at least pretty playable.

Check it out here if you get a chance:

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

Thanks to everyone for the feedback, good and bad – anything constructive is useful.

Cheers all.  I’m looking forward to the next one already! (:

Windows port of Run, Unicorn, Run! is now available!

I just finished porting Run, Unicorn, Run! to Windows. If you have a chance, please check it out and let me know if you run into any problems.

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

4

This entry was posted on Sunday, April 29th, 2012 at 5:50 pm and is filed under LD #23. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Macro Marines timelapse

Here’s a timelapse of all three of us making Macro Marines for the Jam!

http://www.youtube.com/watch?v=9rKojSgseRY

Tiny Journey Post-Mortem

Hello everyone! This is the post-mortem for our game “Tiny Journey”, made for the Jam.
Check it here!

But first the presentations:
Evil Sandwich Studios is a small games studio based in Portugal, composed by a a group of friends, mostly students, and we are working on out first game: Crystallia. The opportunity for participating in LD #23 arrived, so we grabbed our sleeping bags, cookies and laptops and moved to Diogo’s house, one of our programmers.

Our team was composed by 7 elements (4 programmers, 2 artists and 1 play-tester), and as you can imagine it was a full house. The greatest challenge wasn’t creating a awesome game in 72 hours. No, it was much harder to manage the opening/closing of the doors, since Diogo’s cat is completly mad (maybe thats why he calls it “Dog”). And some of us can tell, it’s *really* bad when you try to sleep with a possessed cat in the house…

Anyway, moving to the important stuff.

Friday
We gathered togeter at the table the clock was marking 23h, discussing the theme votation and deciding/discussing our tools. We decided to have a go with ActionScript and FlashPunk, for its easiness of getting something moving on the screen, and we also wanted to make our game web based to maximize the audience. Only one of our programmers had some prior experience with AS and FlashPunk, so it was a learning ride for three of us. At the end we can say it was a good choice, since we learned the basics quickly and got the game going on a steady pace. Of course our previous experiences with other object-oriented languages and frameworks also helped a lot.

At this point our artists, António and Sara, already had their drawing tablets ready, and of course, Photoshop and Illustrator. In no time our concept art started to take form.

Highly professional statistics of our choices in the final round of votes, credits to Zé:

 

 

 

 

 

 

 

 

 

 

 

 

 

Saturday

2AM of saturday, the theme is “Tiny World”. Ideas start flying around, the whiteboard is not white anymore and everybody have great ideias. We thought of:
– making an ants game
– making a summary of some known video game (Super Mario Summary, anyone?)
– a game that involves jumping from planet to planet
– a game involving a gremlin living in a girl’s purse (this one is not dead yet!)

Some hours later (around 4AM) we finally decided to make a story-based game. So we started to create the main lines of the story, and the first concept-art appeared at the artists screens.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

We spent some more time configuring IDEs, compilation scripts and a SVN repository before going to sleep, so that when we wake up can start working on the game with some fresh minds. Making it compile in diferent OSes (Linux, Mac and Windows) was not trivial.

We woke up at 14, the programmers started jamming the keys and soon enough we had a basic text box with animated scrolling text.

 

 

 

 

 

 

 

 

 

 

Not much after that, we had a room with a moving sprite colliding with the walls. Inês, one of the programmers was focused on making the menu system from the start, and the basics of our parser were already made at this point, by Diogo.

Looking at the board we already had a storyboard with the progression of the game, and our artists spent all the time creating rooms, objects and, of course, the main character.

And it was really late, so we went to sleep.

Sunday

Sunday was a looong day. We implemented all the rooms the artists created, improved our mega parser for the text based input (including a dictionary of verbs in the biggest switch statement we’ve ever seen).

Bruno accepted the challenge of making a side scroller shooter in 30 minutes, and if you don’t mind about good collisions (and art), its a win.

 

 

 

 

 

 

 

 

 

Later, the shooter gave lots of work to make it right and fun, mostly to Zé, since Bruno was already creating some melancholic music to fit with the theme.

All of us spent lots of the time fighting with collision bugs and messing arround with the player/objects interaction. Also, the design of the puzzles gave us some extra work.

Needless to say, we didn’t sleep from Sunday to Monday.

Monday

The last day! Everyone is in zombie mode, working on the last touches. And bugs. Lots of bugs. The inventory system does some funny stuff to items, the collisions sometimes block the player, sometimes doesn’t allow the interactions with objects. The transitions between rooms is not smooth… And the list goes on.

The artists are also very busy, creating a ton of objects for the game (and the inventory version of each one) and giving the final touches to the rooms and cutscenes.

By the submission time we have the game with (almost) no problems. But the bug killing left us with no time to rethink the puzzles and balance the difficulty of the game.

That’s why we made a polished, post-competition version of “Tiny Journey”. The flow of the game was improved, and we also killed the most persistent bugs.

It was a nice weekend, and we hope the game is fun and entertaining to everyone out there!

Thanks to the community for the awesome games, keep them coming.
http://www.evilsandwichstudios.com

Tags: evil, journey, sandwich, studios, tiny

My Favorites

Hey, everybody, I’ve seen quite a few people reviewing games, and I figured, hey, why not? Here’s a list of the best games I’ve played:

Tiny Religion– A game where you’re in charge of a civilization that needs to find out how to please their picky god. The tasks he likes and doesn’t like is different each time. It’s pretty sweet.

Extensionism– Probably the moodiest game I’ve played. It’s got some glitches, but not as many as mine, that’s for sure. You have to move the lamp like things to expand your world and shrink those of others. It’s kind of evil sounding now that I’m writing it…

Disregard All Humans– Short, but fun. Who hasn’t wanted to possess control of an ever-growing, jumping lizard?

Nina Nueve– Very innovative. Involves mechanics where losing brings you back a level, which you sometimes need to do to go forward. Leave it to Jonathan Whiting, am I right?

T in Y World– Anyone seen this? Epic ASCII game where rules can be edited in the level design.

Petri– A game where you star some bacteria thingy… It needs some ratings, it’s actually quite interesting.

Tiny Civilization– One of the only simulation games that doesn’t bore me to death. Very immersive.

Aether– My favorite thusfar, very nice game that seamlessly intertwines a missile shooting game and a platformer. The graphics are nice, and it feels really balanced.

Well, that’s that. Back to playing!

Comments

Fireblend
29. Apr 2012 · 21:53 UTC
Hey, thanks for the mention! Glad you enjoyed my game (Disregard All Humans) 😀