The One Fork Restaurant – Post-mortem

Posted by (twitter: @ludoscience)
December 22nd, 2013 2:01 pm

Well, after a week, it’s time for me to write the post-mortem of my first ever LD48 entry: The One Fork Restaurant. As the title implies, it’s a time-management game taking place in a restaurant, where many people come to eat various meals. But the restaurant has only one fork, so customers have to share it!

The One Fork Restaurant

When the customers are waiting for the fork, they start to get bored, and may leave the restaurant if they wait for too long. Eating gives them a little relief, so each time they eat, they’ll be able to wait a little longer afterwards. The player will have to swap the fork as often as needed so every customer can enjoy (and finish) his/her meal!

In order to get the best of this quite detailed post-mortem, I suggest you to try the game first (it’s a web based flash game).

The birth of an idea

This first Ludum Dare started quite bad for me. Here, the compo starts at 3 am. I was planning on staying up late the first night so I could know the theme, then sleep over it, and start creating a game in the morning. But unfortunately, I’ve got an extra-busy week at work, and I was already lacking a lot of sleep when the weekend started. So I passed out at around 1 am, only to wake up about 13 hours later, at 2 pm on the saturday… Sure, I was feeling rested, but I was also quite angry at myself for wasting 12h compo hours on sleeping before I even started making anything!

Well, I then fired up my computer to discover the theme, and I went to take a quick brunch before starting to work. As I didn’t had time to follow closely the theme voting, I wasn’t excepting anything special, so I wasn’t disappointed by the theme (unlike a lot of other people it seems). On the contrary, I found it quite original. While searching for ideas, I first came up with the obvious ones: one life, one bullet, one arrow, one button… However, I didn’t want to follow that route – I knew that many others LDers, more skilled than me, would make impressive games on these ideas (Titan Souls, I’m looking at you!). I wanted to find something more original, and funnily stupid if possible.

So, I was toying with ideas about “sharing one stuff”: people sunbathing but sharing one umbrella to avoid being sunburnt, dog puppies sharing one bone, babies sharing one plastic dummy… After my brunch, as I was washing my dishes, it finally stroke me: what about people sharing a single fork in a restaurant? – that sounded cool, so, 1 hour after discovering the theme, I had found my idea and started working on it!

Evolution of the game

As a old-time Flash user, I chose to create the game solely with Flash IDE (that means no cool framework like Flixel, and mouse-drawn vector-based graphics instead of pixel art). I started by coding the core gameplay with ugly programmer art. After about 4h30 of work, I got this roughly-working-but-ugly prototype:

The One Fork Restaurant - prototype 1

As you can see, in this prototype the player can move a fork from one table to another. When a customer receive the fork, it triggers an “happy” animation and it start to increase its “meal” gauge (the black bar at the bottom). When a customer is waiting for the fork, it triggers a “sad” animation, and it slowly decrease its “patience” gauge (the colored bar on top). I defined a series of four “customer profiles”, with different quantities of meals to eat, and different starting amount of patience. The core gameplay was now working, so I had to design some graphics. As I’m not a skilled graphic artist at all, this was very hard for me. But after 4 more hours of work, I finally came up with a funny eating animation for the customers, and a set of different customers faces:

The One Fork Restaurant - prototype 2

Here, I basically had a working game, after 8h of work. I still had many time-consuming stuffs to do, but the “proof-of-concept” was here. That’s usually where I start to loose interested in a project: when the main idea is here, but an awful lot of tedious polishing work remains to be done. Hopefully, even though I was working alone at home, browsing through the Ludum Dare site made me feel “being part of something”. It really motivated me to go through the end of the game dev process. So a big thanks to all of you guys for posting so many interesting and motivating posts about your ideas, your problems, and your work-in-progress – it really motivated me (I even posted 4 updates myself to “take part in the event”).

From this point on, I spent the rest of the compo time doing some additional graphics (backgrounds, GUI), creating a tutorial, a menu and game over screen, generating sounds with AS3sfxr, testing the game and balancing it the best I could in the too short time I had left. I also had to sleep a lot again between Saturday and Sunday (about 8-9 hours). In the end, after about 19 hours of work in total, the game looks like this:

The One Fork Restaurant - final compo version

Balancing is hard

As I finally chose a rather simple game idea, I was able to come up with a working prototype rather quickly (basically at the end of the first day). It means I got the opportunity to spend some time to balance the game (in fact quite a lot of time – about 5 hours in total). My first task to balance the game was to define different customers profiles and to introduce them in the game progressively. The longer you play, the slower the customers eat and the faster they get bored of waiting for the fork. I also balanced the number of maximum customers available at the same time. To test all of this, I needed testers – so thanks again to those of you who took some time to test the game for me. This was very tedious and hard to do, but according to the comments on the game page, It seems most of you hopefully find the game quite well balanced :)!

Besides fine-tuning the mechanics, another hard part of balancing is to provide meaningful and easy to read feedback to the players. I tried different strategies here:

The One Fork Restaurant - Different Feedback StrategiesAt first (left picture), I decided to use two gauges: one at the top for the remaining patience, and one at the bottom for the % of meal eaten. But it appeared that two separates gauges are hard to read when playing a rather fast-paced game. So I decided to remove the bottom bar, and to animate the food bowl instead: as the customer eats, its bowl is getting empty (middle picture). But it then appeared that it was hard to focus on both the bowl and the bar. As I was testing the game, I found myself losing customers because I was too focused on the bowl and I forgot to watch their waiting bar. In other words, the two “gauges” were too far apart from each other for the player to be able to read them during the game. So I moved down the waiting bar beneath the food bowl, and now, finally, I was able to watch them both during the fast-paced game! (right picture).

The One Fork Restaurant - Tutorial Screen

Last but not least, if you want players to enjoy your game, they have to understand how to play it – so I made a tutorial screen. Honestly, if I had enough time, I would have liked to implement a real in-game tutorial, but the deadline was too short. So instead I wrote up an introductory “how to play” screen, featuring an animation for people who don’t like to read (i.e. 90% of players, including me). And I order to test if the game was easy enough to understand and play, I took it to the ultimate test: the “girlfriend test” (another popular version is the “mommy test”). My girlfriend doesn’t play videogames, so she is an excellent “ingenuous” tester. While playing my game, at first she didn’t understand that you simply need to click on the target customer to move the fork. She was actually trying to click the customer who had the fork first, in order to “get back the fork before giving it to another customer”. That’s why the tutorial now reads “Using your mouse, click on the customer to swap the fork”, alongside with an animation showing how it’s done.

Then, she didn’t understand that you can swap the fork between customers BEFORE they finish their meal (that’s in fact the core mechanic of the game). So, she was moving the fork to one customer, waiting for him to finish his meal, then swapping it to another, etc. Needless to say she wasn’t able to go very far in the game that way. To address this issue, I added a “tip” message in the animation, and I also made sure to specify this on every text description of the game I would write when submitting it.

In the end, besides making sounds and additional graphics, I basically spent the entire second day (up to the compo deadline) testing and balancing the game. Sure, it was tedious, but I think it was worth it – it really seems to make the game more enjoyable, and maybe feel a bit “polished” despite a very tight schedule.

I’ll now conclude this lengthy and wordy post-mortem with the two the classical sections:

What went wrong

  • Sleep management.
    I’m not sure how I could have addressed this problem, but I clearly spent way too much time sleeping (about 20 hours out of 48 hours, nearly half of the compo time…). As I said earlier, I was exhausted from work so I needed to have some rest, but I’m still angry at myself that I “lost” so much time that I could have used to do more stuffs, such as:
  • Music.
    Yes, the game lacks music, and it’s the only thing I regret not creating during the compo. I never composed music before and I didn’t had time to test some tools, but still, I wish I could have tried to compose something. In fact, at first I was planning to use some creative commons music like I always do, but I then realized during the compo that it was against the rules. Although I latter saw that many compoers didn’t always stick to that rule, I don’t regret that I did – I can say that 100% of my game was made during the compo time, and only by myself. (but be sure that I’ll try to pick a nice tune by a skilled musician for a post-compo version ;))
  • Understanding rating.
    I can’t really say that it went “wrong” as I have some wonderfully constructive feedback on my game page (thank you by the way). But I must say that it took me a long time to understand how the rating works. At first, I thought that you only had to rate 20 games in three weeks, and then that the games were presented to you in random order. But I latter figured out that the more game you play and rate, the more chance you have to be rated too. So, at first, I started to rate only a few games each day, saying to myself “relax, you have three weeks to rate them all”. But when I saw that some LDers rated more than 100 games in a day (guys, when do you sleep? :)), I started to do some research and I realized how wrong I was. I found a post on this weblog that explained quite well how “Default” score works – I think it should be made more visible for newcomers like me! Anyway, I have no hardfeeling at all here – on the contrary I’m positively surprised and pleased to see how much the community is nice and tend to rate and comment the games, which motivated me to do the same. But I lost two days rating games without leaving a comment, a rookie mistake I wouldn’t have done if the rating system was better explained on the rating page ;).

What went right

  • Scope.
    In the end, I’m happy of the scope of my idea: it’s usually one of my weakness, but here I’ve been able to come up with a game idea that I could complete in the short compo time.
  • Playtesting and balance.
    As discussed above, I’m glad that I could spend some time balancing and playtesting the game, because I think it’s very important!
  • Graphics and sounds.
    I’m not an artist. I can’t draw, and I can’t compose sound or music. But thanks to the Flash drawing tools and to AS3sfxr, I’ve been able to produce some “cartoony” graphics and some fitting sounds, and I’m proud of it regarding my lack of skills in these two areas!
  • The Game?
    The first comments I’ve got let me think that game is actually funny and entertaining to play, which makes me very happy! But feel free to test it by yourself, and please let me know what you think of it!

Future steps?

I think I’ll try to do a post-compo version of the game when the rating session is over. Ideally, I’d like to add a music, polish the graphics, and maybe extend the game itself. For example, one of my ideas was to add some customers who wouldn’t eat without a clean fork. So you’ll have to wash the fork between each customer, adding a layer of complexity to the game. I could also add some others customer eating two food bowls instead of one, etc.

As it was suggested in the comments, I’d also like to make an Android version of the game. I’ve already tested the game on a Flash-capable Android tablet, and it indeed plays nicely. But now I’ll have to stick my nose in the “Making AIR for Android games with FlashDevelop” topic. It’s rather scary btw, so if you have any good advice, tips or tutorial on how to create Flash games for Android, please let me know!

Anyway, thanks for reading this (too) long post-mortem, and I hope you find it interesting. If yes, please feel free try my game:

Play and Rate the game

Tags: ,

Leave a Reply

You must be logged in to post a comment.

[cache: storing page]