{"id":826,"date":"2014-01-20T04:56:24","date_gmt":"2014-01-20T04:56:24","guid":{"rendered":"http:\/\/blog.cjohnson.id.au\/?p=521"},"modified":"2014-06-23T17:00:14","modified_gmt":"2014-06-23T17:00:14","slug":"moirai-postmortem","status":"publish","type":"post","link":"https:\/\/cjohnson.id.au\/game-dev\/moirai-postmortem\/","title":{"rendered":"Moirai Postmortem"},"content":{"rendered":"
In this post I’m going to do a postmortem\/reflection on Moirai<\/a>. I highly recommend that you play through the game before reading any further as doing so will provide you the appropriate context. The game is very short, taking less than 10 minutes to play through. So be sure it give it a quick play.<\/p>\n <\/a><\/p>\n Moirai is a collaboration between Brad Barrett, John Oestmann and myself. Brad was primarily involved with doing the graphics, John did the music and I was responsible for the design and programming. The game started as an entry for the 7DFPS jam however towards the end of the week we realised that we needed more time to complete the game. It was eventually released about 100 days later. We spent a few hours on it each week between jobs, study and other projects. It took us about two months to finish the game and we tested the game over a month long period.<\/p>\n <\/p>\n To make sure that everyone is on the same page I’ll quickly explain the core ideas in the game. Firstly, there are three paths to go down when you enter the cave. The path of the left leads to a room with a shiny object and bones. The shiny object is meant to represent the ‘hidden’ gold nugget and the bones are those of Julia’s child, who ventures into the cave looking for his Daddy. The path to the right leads to a room with markings on the wall. The number of markings represents the number of people who’ve played through the game. The book in this room lists the names of the last four people to finish the game. The most important path is the middle path. As you traverse this path you run into a farmer who has a lantern, knife and is covered in blood. This farmer is actually a stand in for the previous person who had played through the game(This is a bit more complicated. I’ll explain later). You can choose to let them pass, attack them or ask them one or more questions:<\/p>\n Why do you have blood on your overalls? By the end of this confrontation you will have either killed the previous player(and have blood over your hands) or have let them pass. If you let the previous player pass then it’s not possible to see them again. At the end of this path you run into Julia and no matter the outcome you will always leave with blood over you. If you refuse to help her she will spit blood at you, if you aren’t already covered in blood. Or if you choose to kill her then you’ll be covered in blood. As you leave the cave you run into another farmer who is a stand in for the next player of the game. They ask you the same three questions that you could have asked the previous player before. The game then asks you for your name and email address and your results are stored in a database. You should then receive an email once the next player runs through the game. One of the technical problems with this game was pairing the current player up with the previous player. A good question to ask is, what happens if two people play through the game at the same time? Won’t they have same previous player? Then who is the next previous player? This was an issue with the game, especially considering how there is a long period of time from when you read the previous players responses until you finish the game. This situation is handled by letting several previous players exist, then when the next person loads the game they are paired with a random previous player who hasn’t been matched before. In terms of deciding the previous players fate, I just choose the response of the first player to finish the game.<\/p>\n This solution leads to another problem that I didn’t anticipate. What happens if the number of previous players gets so big that people are waiting ages for an email? These players might assume that the email system is broken, or that you don’t really interact with other people. This actually happened and so I needed to come up with a way of dealing with it. Initially I was just manually filtering people out who had clearly entered a fake email address. Then I moved to removing people who had entered racist, sexist or disgusting messages(will definitely talk about this later). Then I decided to release a new version to properly address the issue.<\/p>\n <\/p>\n Firstly, I decided to tighten the window over which you could be paired with the previous player. Initially the pairing occured when you loaded the game. I updated the game so that it could check to see if the player you were paired with had their fate decided since you started playing the game, if so then I would re-pair you with another player. I did this check in the background when you entered the cave and then on the screen right before you need to know the previous players responses.<\/p>\n Secondly, I noticed a lot of people that entered fake email accounts had also entered inappropriate content. So I decided to remove the email validation checks from inside of the game and just flagged the players as invalid outside of the game.<\/p>\n I released both of these changes in the one update and so it’s hard to say how effectively they were on their own. But together they greatly fixed the problem. These techniques cut down the list of previous players from over a hundred to less than five. Currently the game doesn’t extend out to any more than four previous players, usually it’s at one or two. This does however lead to another small problem being, what happens if there are no previous players because they all entered invalid email addresses? I resolved this by randomly pairing them with another player. Players would only receive one email from the first person that chose their fate. As mentioned earlier, there is a room with markings that represents the number of people who’ve played through the game. Initially this room was only programmed to support 3500 marks but was updated to allow for markings on the walls behind and around the book. The room now supports 5250 carvings, which we’ve surpassed.<\/p>\n When play testing the game we received several suggestions. One of these was to change the option of ‘Kill’ to ‘Attack’ when choosing the fate of the previous player. I liked this suggestion a lot because it toys with suggested meaning and outcomes. eg. “I didn’t mean to hurt him. I was only using self defence.” Another suggestion we had, was to allow the player to kill the sheep. This was added into the game, you can try it if you like. I was really quite torn about adding it into the game. In the end I decided to do so because it did make me feel uncomfortable and I wanted to test that feeling.<\/p>\n <\/a><\/p>\n Moirai received much more attention than we were expecting. Here is a listing of some of the press we received:<\/p>\nContents<\/h2>\n
\n
\nIntroduction<\/h2>\n
\nWhy do you have a knife?
\nI heard moans, what have you done?<\/p><\/blockquote>\n
\n<\/a><\/p>\nPairing Previous Players<\/h2>\n
\n<\/a><\/p>\nOther Design\/Implementation Thoughts<\/h2>\n
Reception<\/h2>\n
\n