The major draw of this prototype is that both the players are interacting with the game world in completely different ways. The first is maneuvering a vehicle around the map trying to make it to the finish line, while the second is influencing the map by increasing traffic, adding road blocks, and even altering the controls for the first player. To make both players able to interact given the same camera, I had to make it so the influence of the second player is to some degree random. Instead of picking where exactly the barrier appears, or which lanes of the road it's blocking off, they simply choose to spawn a barrier, and the barrier randomly picks which lane will be left open instead. To achieve this, I essentially made multiple different barrier objects, which the game randomly picks from and spawns a set distance ahead of the racer when the second player chooses to spawn a barrier. The other powers act similarly, with the traffic increase simply spawning a greater number of passive vehicle objects. The biggest issue I had was with making an interesting level. I had initially wanted it to turn and keep the same perspective, however I was unable to get it working, so instead the highway is simply a straight line heading upwards.
While making this prototype, I learned quickly how difficult balancing can become with the addition of extra players. For the previous prototypes, they had all been fairly simple. Don't make it frustratingly difficult, ensure the player can succeed, even if it takes them a few attempts. However, when the main opponent for a player becomes another player, you can't simply reduce the skill of that player to make the game easier. To balance the game, I had to ensure the cooldown for the powers was low enough that they couldn't be constantly active, whilst not being so large that the second player felt there wasn't much to do. The powers themselves also couldn't have too great an effect, otherwise there would be no incentive to use weaker powers, or the strong powers could become excessively frustrating to play against as the racer.
The readings I had done earlier returned to me while I was experimenting with edge cases in the prototype I had developed. One such case was if both players, after each having their turns racing, had an equal fastest time. Before I had encountered this edge case, I hadn't even considered what should be done if both players best times were equal. Neither would be considered a winner, as neither had a faster time. This made me remember the idea of internal completeness of a game. This grey zone that the rules of the game had missed meant the game was incomplete, and this could be incredibly frustrating for players, as now there wasn't a winner in this competitive experience. To remedy this, I came up with two main ideas. Either whoever had gotten the time first would be the winner, or whoever had overcome more obstacles during their run with that time would be the winner. The first was simpler to implement, however it would naturally advantage whichever player got to be the racer first. The second would remove this advantage, but require much more time to implement. By this point, I didn't have the time to implement the second, so I simply implemented the first and called it a day.
My thoughts on the current readings mostly centered around one question posed during Chapter 10 of the textbook. What am I testing for? In most of my other projects, my playtesting has always been focused around finding bugs and ensuring the key gameplay systems worked seamlessly, as I was the lead programmer and that was my responsibility. However, for these prototypes, I've handled every role more in depth and have been responsible for every aspect of the prototype. So when it got to playtesting, I really had to ask myself, what did I want to achieve from this playtest? What questions did I have about the game, what were the answers I was expecting, and how was I going to implement the feedback given by playtesters? Now, the results I got from playtesting weren't simply, "This interaction is strange, is this a bug", but instead could be anything from "I'm feeling really frustrated by how quickly this happens", to "This game isn't fun".
Fullerton, T. (2018). Game Design Workshop: A Playcentric Approach to Creating Innovative Games. ProQuest Ebook. Retrieved from: https://ebookcentral.proquest.com/lib/qut/reader.action?docID=5477698