top of page
cropped-banner.png

Hold On is a top-down game that tests your ability to protect the things that you love most. Through its mechanics and sound design the game evokes the sense of loss, melancholy and shrinking options that Syrians have faced for years. 

 

This game is intended for play in a structured gallery or museum setting with other pieces on the impact of the Syrian conflict.

Made by: 

Austin Branion - Creative Director and Programmer

Aubrey Hill - Producer and Environmental Programmer

CY Yin - Art Director and Programmer

 

Ffion Goss-Alexander - AI Programmer and Audio Design

For Hold On, I had three main roles. First, I was the lead AI developer. I developed the scripts for the player's ally NPCs and the background NPCs, and oversaw the integration and interaction of these systems with the player's actions and enemy NPC AI (created by Austin). Second, I created the sound effects used in the game and programmed them into the game.

 

AI Development 

We had two types of neutral NPCs

for Hold On. The ally NPCs are

guided by the player's actions

throughout the level. The neutral
NPCs (which we called protesters)

moved in small groups around the
map, trying to avoid the enemies.

In the picture you can see the

player (the blue sphere), the

enemies (red spheres), the allies

(plain green spheres) and the protesters (green spheres with stripe).

Each NPC group required a different movement script. For protesters, I used boids as a starting point. I then added specific instructions for two obstacle types; walls and enemies. I wanted our protesters to seem like they were moving around completely naturally, which meant not bouncing off all walls like a rubber ball (regardless of what our abstract models looked like!). To solve this issue, I had the weight given to avoiding walls increase the closer the protester got to the wall. In other words, the protesters wouldn't consider the wall near the center, but would consider it more as they moved toward the wall. This meant that, all things equal, our protesters would slowly start to adjust their trajectory away from walls.

For the ally NPCs, I also started with boids, but this time I cut out script instead of adding. I developed what I called a "follow the leader" style of movement. Like usual, the allies (boids) would consider their

separation and cohesion to the rest

of the group, but would not move

independently. To move the ally

group in a given direction, the

player character would bump one

ally. This ally is designated the

leader, and sends information on

their new velocity (as caused by

the player bumping into them) to

the rest of the group. The entire

group will then move in the same

direction of the leader while

continuing to account for the
separation and cohesion of the
entire group.

Sound Design

Since the art for our game was intentionally abstract, we decided that our audio should counterbalance the art by being as realistic as possible. As can be seen in the game trailer, we relied upon the documentation of Syrians living through the Arab Spring and eventual civil war for our in game audio.

Just as the procedural environments created by Aubrey and CY would eventually turn from gentle green to smoke choked reds and browns, we wanted the audio to convey the slow breakdown of normal life due to the civil war. I created empty GameObject triggers that would be randomly assigned around the map; when the player entered a trigger, an audio file would play. Some of these were crowd noises or shouts, while others were the sound of bombs or gunfire. As the game progressed and the player explored more of the level, the types of sounds populated in the level would shift towards those of violence, just as the physical structure of the level showed a simulation of that destruction. 

screenshot-11_edited.png
gif.gif
bottom of page