Posts Tagged ‘ld36 post mortem’

I’m in.

Posted by (twitter: @PixelProphecy)
Friday, December 9th, 2016 11:16 am

Despite all the work that’s piling up: Count me in. My entries can’t all be crap, right? Maybe this is the one.

Tools of choice: Game Maker Studio 2 • Photoshop • Reason • Audacity • Notepad++

FWI: This is how it went last time for me.

And yes, I’ll be shooting yet another little documentary like this about participating in the compo.

Retro YouTube Simulator: A Retrospective

Posted by
Sunday, September 11th, 2016 12:50 pm

LD36 was our second Ludm Dare Jam attempt in which we created Retro YouTube Simulator. In this post we look into the creation of Retro YouTube Simulator, and the response it has received so far.

Play Retro YouTube Simulator

Continued below the cut. (more…)

Some retrospective (LD36)

Thursday, September 8th, 2016 5:10 pm

Glad to see so many timelapse videos and backstage stories.

We’ve created a special logbook page to share our process timeline.

DAY 1 – 2:00 PM
Ancient Contact Game
Looks promising, right?

I think it starts always the same — just a canvas where you can draw some shapes without actual sprites and animations.

DAY 1 – 4:00 PM
Ancient Contact Game
Pure happiness — when you can move your rectangle with a keyboard

Game supports both mouse and keyboard control — it wasn’t planned initially and we spent some extra time on this. I didn’t realize that input method is an important part of planning and game design.

DAY 1 – 8:00 PM
Ancient Contact Game
Magnetic beam still requires some tuning

At this point we came to the conclusion that the surface must be flat. These small hills require some additional tweaks in the AI and movement code — not so easy for 72 hours.

DAY 2 – 1:00 AM
Ancient Contact Game
And you call this a GAME?!

Polishing, balancing and testing — good ol’ time-consuming friends.

Submission Time:
Ancient Contact Game

Share more stories about the process, guys!

LD 36 – Tori Tori Panic! – Post Mortem

Monday, September 5th, 2016 2:19 pm




Gameplay Mechanics/Theme


So we started out wanting to make a game about defeating titans and gaining their powers, kind of like Shadow of the Colossus meets Megaman. The player would start out as a human-sized warrior fighting ‘limb’ titans (Left hand – shield, right leg – stomp), and then gaining their limb-powers as they progressed, and eventually becoming a titan themselves.

HOWEVER, once we started thinking about it more, we realized we definitely did not have enough time to make this game. So we decided to make an easier-to-make game.

We decided to do shooting, starting first with ricoheting arrows off of walls to hit targets, with certain targets requiring multiple ricochets to be destroyed. After doing some searching online, I found a physics-based game series called ‘Ricochet Kills’ on, where you play as a hitman using ricocheting bullets to kill your targets. It was pretty fun, so it gave me hope that our game would be fun in that aspect to.

We turned our game into a hunting game, where you have to kill hapless animals.

(disclaimer: none of these were drawn by our artist)

@liyiming-serif came up with the idea of detection radii that would trigger the animals to run away: outer one for player detection, inner one for arrows that land near the enemies. This effectively changed our game into a stealth game instead of an action-puzzle-platformer, which ended up working really really well.


Programming – @zkwen & @liyiming-serif


Bow & Arrow Physics:

At first we had a drag-and-click control scheme like that from Bowman. It’s very intuitive, fast, and makes the player feel like they’re firing a bow. However, @monchang wanted to have a click-and-hold charging control scheme (the one we have now). I personally was against it because I really liked the Bowman control scheme, and this one was kind of sluggish because it required holding time. However, since our game turned into a stealth game, it actually worked kinda well, so that you have to aim your shots carefully, and only shoot down fast moving targets as a last resort.

We had a some trouble with arrow physics though, constantly adjusting gravity, mass, and velocity of the arrows. Our first arrows were really sluggish and didn’t feel very satisfying to shoot. But we increased the max velocity and decreased the mass. Also, our arrows didn’t bounce off of walls very much, only allowing 2-3 bounces max,

but by then we had established that bouncing arrows would not be our main gameplay mechanic.



CAMERA CAMERA CAMERA. We had much trouble with this.

At first we had the classic moving camera centered on the player, but then we discovered this didn’t fit enough content on screen, so you couldn’t see what/where you were shooting. Then we added a character-screen offset, so that you weren’t always in the center, but that made it really annoying when you were inching towards a position, then had to turn around, as the camera would suddenly swing around.

We finally settled on a hybrid (camera does the swinging when you are aiming), so that the camera switching wasn’t as annoying during platforming, but as most of you pointed out, it was still pretty wonky and really needs to change.



The blocks were really slippery and it made it super hard to jump on platforms. @liyiming-serif and @zkwen would like <this to be a challenge factor at one challenge (tbd). To make it easier, we extend the platform or put a block at the end of the platform to keep the player on the platform.>


Art – @monchang


Tools used:

  • GraphicsGale
  • Sai


First thoughts on art was to make something really bright and relaxing. When I considered using pixel art as a medium, I immediately wanted a beautiful seaside cliff as the background. The grass tiles used references from pokemon ruby’s end credit scene as the color palette. The sea was just a gradient from light blue to purple and in an effort to use parallax, I split up each wave as its own layer in order to create the illusion of a moving sea in game. Once I had the background figured out, I then restricted my color palette to the ones I had on screen (with some shades of brown for the trees). With the limited color palette to work with, it became easier to focus on contrast and making foreground elements pop. As a side effect, the entire scene stayed relatively uniformed and professional, which was great.

Animation wise I was focused on making the character and the projectiles fun to play around with. Taking on the teachings of Shigeru Miyamoto, the creator of Mario, I made sure to make every jump, shot, walk, and charge as fun as possible. It had to feel really good to just control the character even without the game play elements. And so I put in as much juice as I can animation wise and give the players satisfying feedback for every action.

During the entire process, I made sure to have the programmers implement each art asset as they were finished. I figured that a rolling basis was better than waiting till the end. This proved to be true because we left a lot of work to be finished at the end.


Audio – @fundamental.phantom


Tools used:

  • Ableton Live
  • Audacity

The sounds were all made in a couple sittings, pretty quickly. The arrow sounds are a mix of Foley and synthesis. The bird sounds are us squawking and grunting, but heavily processed using downsampling and re-pitching/warping.

However, I didn’t send the sounds to the programmers right when I finished, so they ended up being put in super last minute, and we ran into some problems, most notably the music not looping (sorry, you guys had to listen to the first few measures forever D:, but for those of you who waited, you got to hear it!!).

I really had trouble deciding an aesthetic for the music. Bossa nova was the one that seemed most ‘natural’, but I felt it was over done (I’ve played too much bossa over the past couple years). I was split between chiptune-esque Rnb and a 12-string acoustic/chip mix inspired by Super Mario Sunshine. I tried both, but didn’t really like either one. Then I tried dabbling in more ambient/moody stuff with pads, kind of reminiscent of the Fez soundtrack by Disasterpiece.  Eventually I settled on some sort of swing-jazz/neo-soul chip thingy made in a few hours on the last day, but I’m still not satisfied with how it went.

I usually over-complicate things, especially the chord progressions. For this one I tried to tone it down, and go for something simpler, but that didn’t completely work. The A section is in 5/4, and B section is in 6/4. The B section was supposed to be the same time signature, but the rhythms I came up with ended up being in 6/4, so instead of changing the rhythms, I changed the time signature.

*******PS Koji Kondo and Disasterpiece are both AMAZING!!! you guys should check them out if you haven’t*******


Level Design – @zkwen & @liyiming-serif 


We designed 8 levels for this game. To keep it easy for players to learn how to control the fairy, our game starts as a regular archery game. The first 3 challenges are tutorials. By the end of the third level, the player should have used arrow firing control and left/right moving control.

Then we make the future challenges much fun by adding the key platformer feature — jump. To hit the chicken that are protected by walls, the player needs to jump on platforms to gain a better position where their arrows can reach the chicken. We made Level 6 slippery bricks vs running chicken. The player can choose either carefully jump on the highest brick to gain long time window aiming at the chicken or aim and shoot chicken within an incredibly short time before the chicken notice the player and become panic then fly away. Giving the player alternative approaches to win the game and keeping difficulties balanced is challenging and fun.

After three rounds of jumping and shooting, we want to introduce a new feature to the player to keep them engaged! And this is a good timing to require the player to rely on ricochet to complete challenges 7 & 8 (given that in previous challenges they should have observed this feature when their arrows accidentally hit the grey wall).

It’s a pity that we didn’t design more challenges that blends all player control skills together due to the time limit. We would love to complete our level design some day in the near future.


Level 1: No hurdle in between the player and the chick


Level 2: Tall pile of bricks enforce the player to indirectly target at the chick


Level 3: The player can’t stand still or the chick will detect the player then flee.


Level 4: The player needs to jump on platforms to get around the wall.


Level 5: The player need to shoot when standing on the platform.


Level 6: Slippery bricks vs. Running chicken


Level 7: Create ricochet arrows.

level 8.2level_8

Level 8: Harder to estimate the ricochet angle because of the moving wall.




In retrospect, we kind of spent a long time doing a lot of less-important stuff like making the ocean move, instead of fixing camera and platforming bugs.

Overall, it was a great first try, I was worried that we wouldn’t finish, let alone produce a fun game. But we learned a lot on the way about workflow, level design, physics, and stuff!

Here’s our LD36 wallpaper:


*PPS – Tori Tori Panic! is an homage to Doki Doki Panic, which is the what the American version of Super Marios Bros 2 is a reskin of (that’s why it’s so out of place compared to the other games). Also, ‘tori’ means ‘bird’ in Japanese.


I did try & paste the full post here, but unfortunately it was too media heavy and my embedded twitch stream clips were not working. If you’d like to read more, you can do so here.

Yes – you read that correctly. We finished our Ludum Dare #36 game and the end result was “Why Am I In The Past? Who Cares! Shoot The Romans.“, affectionately known as #WAIITPWCSTR for short (videos included further below).

download button

Ancient vs. Technology comes to a head in “Why am I in the past? Who cares! Shoot the Romans” (or WAIITPWCSTR for short).

You’re in the past for some reason. How long can you survive against hordes of aggressive ancient Romans?

Pick up your gun and blast your way through history in this endless wave survival first person shooter.


Check out the Ludum Dare link and let us know what you think. The premise is, pretty much, as it is in the title!

We had an absolute blast making this, it really confirmed we had made the right decision in setting up Whitepot Studios, and more importantly, gave us a bit of validation that we actually can throw something together in 72 hours and have it be playable and downloadable.

We made the 2D menu graphics/logo/HUD assets made from scratch, and the sounds & 3D assets were free online – most available in Unity Assets Store or FreeSound, although some texturing was done to them.

Something which we hadn’t done before, which was a bit baptism-of-fire-esque was send the link to some Twitch streamers to see them play it live once we had submitted to the Ludum Dare website. It was really nervewracking, and felt like presenting a university project all over again, except this time to anonymous strangers on the internet with little way to immediately interact with them the second something goes wrong.

Anyway, 10/10 would do again. Yes, there were bugs, and yes, people found exploits – which was great! It meant people were playing it long enough to come across these issues and report them back to us.

So, after begging all our friends to try it out, at my time of writing this, we have 50 downloads! 50! Just kidding, we don’t have 50 friends (haha), but we do have 50 downloads according to, which we discovered is a really nice way to host downloadable game files and get analytics also.

What’s Next?

We are definitely doing a post-compo patch, taking into account the feedback we have received and comments we received on the Ludum Dare entry itself.

One great thing about Ludum Dare is the feedback system, which encourages you to leave feedback on other games so people leave feedback on yours. It doesn’t feel like a chore at all if you genuinely enjoy playing the games, giving constructive feedback, and getting new inspiration.

LD36 Postmortem TL;DR

Posted by (twitter: @@moongateuk)
Wednesday, August 31st, 2016 10:12 am

So my main Post Mortem is over here:

But for those of you who are short on time etc then here’s a TL;DR version for you all.

How I feel it went:

It went much better than my previous ones.

What went well:

Pretty much everything from having a well structured internal system, to proper planning and having trial features that worked more or less perfectly right off the bat.

What could have gone better:

Bug fixing is really the only thing that could have gone better from this, I basically spent too much time fixing what turned out to be something really simple because I didn’t step through things properly.

What have I taken from this:

Trying out new ideas on how things are done etc results in some really good and fun things.

Mental health is really important when doing something like this (or just in general really.)

Any variation of the swing music genre is really good to code to.


Things went really good, not much went bad, need to improve on bug fixing skills and that’s it I think…

Second chance post-mortem

Posted by
Tuesday, August 30th, 2016 3:41 am

I guess it’s time to write a couple lines about creation of my game before i forget everything while my memories are still fresh.



Post Mortem: Chariot Arena Battle

Posted by (twitter: @KayZGames)
Monday, August 29th, 2016 11:11 am

First, my current game: Chariot Arena Battle


With every game I submit to a Ludum Dare competition I try to learn something new. This time I wanted to create a multiplayer game. In retrospective, I’ve learned the following things so far:

  • LD25 – Lasershark – Never made a game in 48 hours before. It’s not easy to finish a game in 48 hours. I did not succeed.
  • LD26 – 20 Seconds – Finish my first game in 48 hours. Success!! Simple graphics and simple mechanics. Simple collisions between rectangles and circles.
  • LD27 – Alien Attack – Collision detection with polygons
  • LD28 – Granny Loosethooth – Path finding. Not implemented correctly, but still working surprisingly good.
  • LD29 – Castle Engineer – Stupid “AI”. Not an AI at all.
  • LD30 – Opposing Worlds – A bit more intelligent computer enemies. Not what you’d call an AI, but can be challenging. Also: first turn based strategy game for me.
  • LD31/LD32 – skipped. Participated in some other Game Jams, created my first game using WebGL
  • LD33 – (Idle?) Monster – took my newly learned WebGL-Skillz, threw them away and created a clicker/idle game only using some HTML div-elements.
  • LD34 – Damacreat – created the most relaxing game using the worst controls ever. Added procedural generated background in a post compo version.
  • LD35 – failed – created some epilepsy inducing game. Did not want to publish. Didn’t even have good/working/any game mechanics when the jam ended.
  • LD36 – Chariot Arena Battle – My current game. The pinnacle of evolution. A multiplayer game. My graphical skills never improved noticeably.

I started this game jam with the goal to create my first multiplayer game. In preparation I created a simple server that I could use to pass messages between the clients (and posted the source in my “I’m in post”). It was also the first Ludum Dare I did not start alone but joined some other jammers in their quest for fame and glory. I still did my game on my own and they created theirs (runvs with Raiders of the Ancient Technology).

The jam starts Saturday at 3 AM at my location. I have some weird inner clock, that always wakes me at this time whenever a Ludum Dare starts. So I knew the theme, and combining it with my target of some multiplayer game I immediately thought about creating some game with catapults. I went to sleep again and when I woke up, I didn’t like the idea anymore. Catapults are too slow.. that would be to boring. Then I thought about creating a game that’s a mashup between Mario Cart and Trackmania using chariots. So that was what I was trying to do. At the end of the first day I didn’t like that idea anymore, and turned it into what you can play now.

The bad things

  • I got lazy on my second day. I actually wanted to add some other enemies, so there would be something to do even if no other player connected.
  • no sound
  • no juice
  • I tried to test my game online on the first day. It did not work, because the places where I usually publish my games all use HTTPS. If you use HTTPS, you also have to use a secure connection to other hosts. My websocket-server did not have any SSL certificates at all. Thank to Let’s Encrypt and a great dartdoc I was able to set it up Sunday morning.
  • I knew I’d do this beforehand but still: I created a multiplayer game in a way you are not supposed to ever create a multiplayer game. All game logic is on the client, the server has no authority at all. Data is transmitted as strings (JSON) instead of binary data.

The good things

  • I actually finished a playable multiplayer game in less than 48 hours. (I worked on the game for approximately 20 hours).
  • I’ve got a server that supports HTTPS.
  • I’ve got a basic idea about how to synchronize player/game state between multiple clients. It shouldn’t be too hard to move the logic to the server. – This will be my next goal.
  • A comment on my game gave me an idea for a post compo version. It might not be chariots anymore :).
  • Last but not least: great self-made falafel wraps on my first day at runvs.

And now I’ll be online for approx. 2 hours in my game, so no player has to play alone.

Join Chariot Arena Battle

Come and join the fun. The more the merrier (I wanna see at what point my game can’t handle any more players).

[cache: storing page]