Archiv der Kategorie: Programming

LD43: Organic Harvest – Post Mortem

In Ludum Dare 43 some friends and I created a small game called Organic Harvest. You can play it right now! Let’s see how this highly praised game was made.

This game makes you think. Very emotional choice. — BloodJohn

The game is about a surgeon who has to transplant organs. Unfortunately there are not enough organs so you have to decide how to use the available organs, who to save and who to sacrifice. Given the theme was „Sacrifices must be made“ this seemed quite fitting.

Making of

The first day of the jam, a Saturday, started with brain storming as always. We didn’t have many ideas, or even good ideas. Luckily a friend was more creative and he suggested the idea of having to transplant organs. As we did not have any better ideas so far and it seemed like this was going the best we chose to take it. After about one hour of brain storming we got to work and started implementing the game.

This time we used a game engine, specifically Godot. Compared to previous jams where we used more low level game frameworks such as libGDX or Löve this proved to speed up development a lot. While we had a lot of difficulties to fight which would not have occurred with the other ones it was still a lot faster. For example having an editor to visually place items is worth a lot. Also being able to animate everything is very nice. And not having to implement the UI elements yourself…

After the first day on Saturday evening we already had implemented most of the important things like the mini game pictured above to connect the newly implanted organs. Most of the art was done as well. This meant that we had almost the whole Sunday to polish the game and improve all those small annoyances.

On the second day we finished the remaining features such as the mini game to cut open the patients (see below), being able to buy upgrades and improvements to the art such as animated fire to burn the unlucky patients. We then started adding sounds and polishing everything. For example we added an ECG to show the „heart beat“ (never mind that it keeps going if the heart is missing). The sounds are synced to the visuals and both get faster if the heart rate increases.

On Sunday evening we were done with the game. We even had a single background song! As we had to go to university again we considered this version of the game finished and were ready to upload. We also sent a demo version to the friend who suggested the idea to test it. He came back with a long list of stuff to improve… So we decided to use Monday evening to polish some more. We had to balance the cost of everything, the income of successful surgeries as well as the impact on the esteem and the speed of people arriving. And many small things such as improving the recognition of placing the blood vessels. It was early in the morning again once we were done. We now also had three more background songs. The game benefited a lot from this extra round of polishing.

Things to do better next time

  • Create better music.
  • Increase the scope of the game but keep the degree of polish. Doing a larger game as we used to do would be really nice.

Things that went well

  • Finished the basic game quite fast.
  • Spent a lot of time polishing and improving the game.
  • Working in Godot was way faster than with other frameworks.
  • We had enough time to sleep and eat well.

Conclusion

While we at first didn’t like the theme very much it turned out to be not that bad. We had a lot of time to polish the game and I think this shows. In the future I would like to create a bit a larger game again, but keeping the quality of this one. If you still have not played the game, you can do so now!

LD35: The Golden Sphere – Post Mortem

Last weekend two friends of mine and myself took part in Ludum Dare 35. And we made a game! You can find it here.

GoldenSphere001

Let’s look back at how the game was created, what went well and what didn’t work as planned.

Making of

Our Weekend started on Saturday at 8 o’clock in the morning (Ludum Dare was already running since 3:00 am in our time zone) with the discussion of game ideas. We first weren’t really happy with the theme but after a few minutes we came up with the idea we now implemented. As we knew that the first idea often isn’t the best one we looked for more. The best we could come up with was that you are a frog and can shapeshift into a prince. You would then have to infiltrate a castle without getting noticed. Obviously the first idea was better so we took it: you can shapeshift into a human, a wolf and a turtle, each of the forms has unique abilities. Those allow you to solve different kinds of puzzles / platformer elements.

GoldenSphere004

The rest of Saturday was spent implementing the engine, doing artwork, level design and narration writing. On Sunday we recorded all the narration which took several hours. So much monologue… In the evening we tried to create some music but failed horribly. It was Sunday midnight and we didn’t have any levels implemented in the game and only about three existed on paper. The engine also still needed a lot of work to be done. Our goal was to be done by this time, instead we had virtually nothing playable. Oh well, we would need to spend the Monday as well on the game. The lectures at the university had to wait…

The Monday was mostly spent with implementing the levels in the engine (writing tons of xml, so much fun…) and teaching the narrator when to say what. In the end the narrator took about 1000 lines of code, one fourth of the whole engine. The last level was done at one o’clock in the morning, two hours left until the deadline. By the way we still hadn’t come up with a name for our game yet. Unfortunately we didn’t have time for a proper play through as we still had to fix some bugs. And yeah, we still didn’t have any music. We had a few sound effects but no music. So we gave up with trying to create it ourselves and let the computer take over. Thanks to Abundant Music we were able to add music in the last minute. It was somehow depressing that the computer created better music than we were able to but this just means that we have to practice more ;-). We opted to let the users vote on audio even though we didn’t create the music ourselves as we spent a lot of time doing the narration which is also part of audio.

After we uploaded our game and the deadline was over we were able to play the whole game for the first time. And as you can imagine a few small bug fixes followed shortly after. At four o’clock on Tuesday morning we were done, but luckily, so was our game.

GoldenSphere002

What we want to do better next time

  • Create our own music. The music we now have is good but our own would „feel“ better.
  • We didn’t have any playable levels until Monday morning. Plays into the next point.
  • Have the game almost finished way earlier so more time can be spent hunting bugs and improving the game experience.
  • Include the bear in the game.

What went well

  • Idea turned out to be better than expected.
  • We have about 20 minutes of game play. Or much more if you haven’t already played each level a thousand times.
  • Our goal before the jam started was to made a game with a narrator. It worked out pretty good.
  • The visuals of the game are – at least in my eyes as a developer – pretty nice. And we have a nice shader for the mountain lake.
  • We were able to turn the missing bear (cut due to the limited time budget) into an ongoing joke.
  • We finished the game on time (later than planned but still within the deadline).

GoldenSphere003

Conclusion

Although we first didn’t really like the theme I think the game we made this time is my best Ludum Dare game so far. Most things went well but took more time to complete than we first thought. But that’s always the case. We were able to adjust the scope of our game early enough to be able to still finish it. The feedback so far is great and we already thought about making the game bigger and better. Coming Summer 2017?

If you got curious and want to play the game: there you go!

Ludum Dare 29

Dieses Wochenende habe ich das erste mal an einem Ludum Dare teilgenommen (Das ist ein regelmässig online stattfindender Game Jam; http://www.ludumdare.com/compo). Und es hat enorm Spass gemacht. Solch ein „Wettbewerb“ gibt einem nochmals zusätzliche Motivation zu arbeiten. Dadurch dass er nur 48 Stunden dauert (und ich davon erst noch nur 10 Stunden arbeiten konnte), muss man sich auf etwas kleines bzw. auf einen Prototypen beschränken. Doch dadurch kommt man auf ganz neue Ideen, die eventuell später weiterverarbeitet werden. Auch genial finde ich die anschliessende Rating-Phase, bei der alle, die Spiele eingereicht haben, andere Spiele spielen, bewerten und kommentieren. Durch eine geschickte Sortierung anhand von vergebenen sowie erhaltenen Bewertungen erhalten alle Spiele eine angemessene Beachtung (es sind immerhin rund 2000 Spiele). Dadurch erhält man wertvolle Rückmeldungen zum eigenen Spiel von anderen Spieleentwicklern und man sieht sein Projekt in einem völlig anderen Licht und erhält interessante Verbesserungsvorschläge.

Mein eingereichtes Spiel mit dem kreativen Titel LD29 findet sich hier.