Together Postmortem
Together was a game that I created as part of #ResistJam which was a game jam with the theme of resisting authoritarianism. In this postmortem I’m going to take a look at the process of its development and the areas that worked and didn’t and what I learned to do differently next time.
Developing the Concept
The starting point with Together was to work out what the game would be. The theme of the game jam was announced well in advance so I had a lot of time to iterate on what the idea would be. The idea did change very heavily. Initially, the plan was to show a single character that moved through the world and actions we took would change how that character moved. They would go from being slow/heavy in their movement to being able to move fast and confidently. The music and visuals would also change as part of that.
The problem with that concept though was the player’s way of impacting the world didn’t feel right. It just didn’t come across as a mechanic that was either appealing or that would communicate what I was trying to (that being inclusive saves lives and benefits us all). I went back to the drawing board and the concept then evolved to have three characters moving through different environments: a school; an office; and around a park. The people in the crowd would have different characteristics and different likes/dislikes which would change how they react to the character that was moving through the environment.
This idea felt better. It felt like there was more of an opportunity to communicate the impact on the people moving through the world. The level of inclusiveness of society could then be reflected in the crowd and in how they react to those characters. The challenge still was how would the player effect that level of inclusiveness. The solution there came from some things I had recently been reading in relation to LGBT related legislation in the US. Many states have previously passed legislation relating to marriage equality. In the cases where legislation was defeated and marriage equality remained denied to same sex couples that impacted negatively on the mental health of LGBT people. This idea of policy impacting on people in this manner was something then I wanted to build off.
In the game different policies are presented to the player one at a time. The player is shown the level of support that society has with their default support being tied to the current tolerance level of society. The player takes on the role of a politician and can choose to support or to oppose each bit of legislation and how strongly to do so. Based on their decision the chance of the legislation passing is impacted. When the legislation passes (or fails) that result and how conclusively that result was achieved then modifies the tolerance/inclusiveness of society. That proceeds for a set number of decisions until the end of the game.
Overall the concept is one that I’m happy with and I’m happy with how the development of that occurred. However, as I’ll discuss later on I don’t believe that I was as successful as I could have been in delivering on that concept. That was due to a combination of starting later (due to needing a break after completing Low Resolutions) and then crunching. I didn’t give myself enough time and didn’t scope back soon enough so that cut into my ability to polish and refine the idea as much as I would have liked. Going forward the solution is better planning. Allow for a couple of days break after projects to recharge and scope accordingly.
Generating Crowds
The game concept was going to need large crowds of people and ideally those people should all look different rather than seeming like a crowd of clones. I already had a basic block humanoid character that I could use with both male and female variants. My solution here was to setup a system where the main script on the characters new:
- Which sections of the mesh were for shoes, pants, tops, skin and hair.
- Which meshes are gender specific (and which gender are they for) and which meshes are common.
- Which meshes represent variants for specific features (eg. different sets of hair).
- Which meshes are for different clothing options and if those clothing options are specific to a particular gender and/or religion.
This then allowed each character in the crowd to pick from the different meshes and select a set of meshes and then (if appropriate) change the colour of those meshes. The main process was:
- A character rolls to select their attributes (religion, skin colour etc).
- Based on those attributes the set of possible meshes for each area is assembled (ie. all the hair variations).
- For each area (hair, clothing etc) one of the possible options is selected and then coloured (either randomly for clothes or based on the previously rolled skin colour).
The setup here worked well. The crowds were varied and the different variations were able to be read easily. However, it could have been better. The main issues were:
- There were only two body shapes (male and female) which is not an accurate representation of society.
- People come in all different shapes and sizes and I feel that should have been in the game and it not being present did diminish the game.
- A cross section of society was shown but it was a narrow cross section that fell within two very narrow definitions of body shape.
- The range of religious garments was limited and in particular for some religions there was not the full range of options.
- I do feel this is a problem as it doesn’t provide a sufficiently representative cross section of the world.
- There were a limited range of clothing options. That didn’t take too much away and I feel the random colour options were a suitable compensation for that.
The root cause for all of these issues was one of time. I had the intention to have more options but ran out of time. I had less time than planned on the project and was fighting burnout so that made it more challenging than it should have been. In future there area few mitigation options. One would be to plan/scope better so that I do have more time. The other option would be to have organised someone else to work on the models. That would have saved me time while also creating a better cross section of society in the game.
Crowd Feedback
One of the feedback elements in the game was going to be the individual people within the crowd expressing their thoughts. This was going to be the mechanism through which the tolerance level of society would be communicated to the player. The setup that I went for with this was:
- Each character in the crowd would (depending on the tolerance level of society) decide to express a like or dislike.
- As society became less tolerate the characters would express more dislike (red bubbles) of others. Whereas a tolerant society would express liking others (white bubbles).
- If the main character was nearby then when expressing a dislike characters were more likely to express a specific dislike to that character.
- Characters in the crowd would also turn to face the character and change facial expression from happy to either sad (if society is very intolerant) or neutral (if society is somewhat intolerant).
- These reactions only occurred when the player was nearby and were dependent on the tolerance level of society.
- A highly tolerant and inclusive society would result in characters in the crowd largely ignoring the player.
- A highly intolerant society would result in characters turning towards and following the player while looking sad and expressing dislike.
Overall, the system worked reasonably well. Initially the like/dislike were distinguished only using the prohibited/forbidden symbol (circle with line through it). The readability on that was very poor though and people easily missed what the characters were thinking. The red vs white bubbles however worked much better to clearly convey the like/dislike. The turning to follow the player also worked quite well. It felt very creepy which fit well with the intent of making the crowd feel hostile/threatening in that case.
There was however an unintended consequence. The characters moving through the world could be cisgendered or transgendered. However, the crowd was only able to be cisgender. The result of this was the crowd was (as a whole) far more likely to express a dislike for people who are transgender. If society became intolerant that was particularly obvious. It stood out very clearly when I was playtesting it and it made me very uncomfortable to see that level of dislike being expressed towards people who are trans.
I did consider making some changes to reduce it until I realised that I should feel uncomfortable. Transgender people are quite frequently treated horribly and do face a lot of discrimination. The crowd was reflecting that disappointing aspect of the reality in which we currently live and it should make people uncomfortable. I did run the decision by some other people as a sanity check. However, I did not run the decision by any people who are transgender and that was a glaring oversight. To cisgender people the setup made sense but I don’t know what the impact would be on someone who is transgender.
In terms of what I do next. The biggest take away from this is that when dealing with serious issues it’s important to consult multiple people from many different segments of society.
Player Training
Together has a single mechanism that the player uses to impact the world: a slider. That slider is used to indicate support or opposition for a proposed piece of legislation and alongside the slider they are shown the current level of support of society. Although this was a relatively simple interface it was not one that would be immediately familiar to anyone playing the game. That meant I needed to provide training on what the slider would do as well as setting the scene for the game as a whole.
My solution to this was to present text to the user that appeared and finally faded out when the game starts. For the slider and feedback there would be multiple pieces of text to explain how it worked. The general idea of this was good and it did provide the necessary information to the player. However, I did not allow for the variation in people’s reading speed. I left the typing speed at the default and had only a short wait time. This meant many people were not having sufficient time to read the instructions and were left not knowing how to play the game.
Going forward there are a few key changes to be made:
- Use a lower default typing speed to give people more time to read the text.
- Provide an option in settings to change the typing speed up or down to cover the range of different reading speeds.
- Test with a range of people early on to get the feedback on typing speed when it’s early enough to fix it.
Conclusion
Overall I am not as happy with Together as I could have been. It didn’t deliver to the level of quality that I would have liked however I did learn a lot in the process and I have identified a lot of changes to make going forward. If you want to check out the game it’s available on itch.io here.