Ryan Boehm's Programming Portfolio
Zombie Survival
“Zombie Survival” is a round-based survival game where you try to survive for as long as you can. Every “round” or “wave” increases the number of zombies that spawn within that given round, and with every passing round, the zombies get stronger, thus making it more difficult to reach the higher rounds.
The project was developed by two people: myself (the programmer) and an artist that I unfortunately do not have the name of and do not have contact with anymore. However, for my role in the project, I was tasked with all the scripting, animation, sound, etc.
Before the start of this project, I had almost never attempted to make anything like this before and thus the process was very unique and informative. One of the biggest challenges I had throughout the project was perfecting the spawn system for the zombies.

Zombies can spawn in areas where the above textures are. There are 9 different spawn points around the map, and when the player opens a new area with a spawn point or multiple, all spawn points in that area are added to an array that tells the script which areas they can spawn in. Of the four different zombie types, only three can spawn naturally, so I had to determine which zombie would spawn whenever the code detected that one would spawn.

The above function is the SpawnZombie() function that is responsible for all the zombie spawning within the project. The function handles multiple operations and prepares a spawn point for the zombie with the aforementioned array and chooses a random zombie type to spawn in that location. In addition, the function handles and tracks a variety of different stats, including zombie health, zombie spawns within the current round, and how many zombies are currently spawned in.
Overall, this entire project was huge for me. When I started this project, I was battling imposter syndrome as I worked through increasingly complex problems. This project was a technical success that cemented my pursuit to become a game development professional.