Sabastian Peters

From a young age, games have been a huge influence in my life. I've always enjoyed playing them, but there was a part of me that wanted more than just what they had to offer. I wanted something of my own.

So, I began programming. At first it was just simple games inside of Scratch and Python. I did this for a few months and it never really went anywhere. It was not until I found Unity3D that I finally took off with developing. This was my launching point with programming, and I've been hungry to learn more about it since.

I always come back to game development though, and I used my web development knowledge to assist me when needed. There is something truly special about working with a group of people to bring a common vision to life.

In 2018 I created Beast Powered with Ethan Schellenberg to officially begin publishing games and apps.

Synopsis (VFS - 100 words)

My dream game is a co-op first person semi-survival game with elements of horror. With spiders as the main antagonist, players must survive using scavenged loot and crafted utilities. As the player advances, the spiders dynamically match them to provide a constant challenge. For players that are ready to test their skills, they can attempt to conquer one of the spider nests. If successful, players are rewarded with new abilities and the spiders become more aggressive. A stylized low-poly aesthetic would work best, as the mood and lighting can be more fine-tuned without worrying about realism.

In Action

Below is a video of myself (sitting on left), Ethan (sitting in center) and other developers working on my dream game during the 72 hour game jam. Link to video.



The Vision

Growing up, Call of Duty Zombies was one of my favourite games. Using the zombie AI, level design and various weapons to survive provided hours of entertainment for me. This acted as inspiration for the game I made with four other talented developers two years ago, pictured on the right. The concept was simple enough to be done in the 72 hour Ludum Dare game jam, but I have since wanted to add more to it. At its core, my dream project is a co-op first person semi-survival game with elements of horror. In this world, the main antagonist is a colony of spiders, a common fear. Within the colony, there are multiple types of spiders that make the user consider their next move differently and keep the game fresh. Games like the original Doom exceed in enemy diversity and force the user to prioritize their targets. In this game I want to incorporate that by providing the user with multiple enemy types and a variety of ways to deal with them. This includes using close-combat melee, long-ranged weapons and distractions. The user can also upgrade their weapons, add fortifications or even build entire bases to help them survive. This game has been a dream for me ever since that 72 hour weekend and I am truly passionate about bringing this vision to life

The Focus

A lot of games use a story to generate interest and guide the user through an experience. I want to instead encourage the player to use their sense of exploration and adventure to create their own experience. This creates unique stories that are actually interesting to share with friends. For me, games like Minecraft and Arma 3 allowed me to create my own story, and those are two of my most played games. A flaw with their design though is that there is not always a driving factor to go out exploring. This is where the Zelda games excel. In particular, Breath of the Wild opens up their world for the user to explore from the beginning. The game introduces the idea of an end goal and lets the player attack it right away. Completing the divine-beasts only makes completing the game easier. I love this idea. As well, improving is one of the most gratifying experiences, so I want that to be a key aspect of the game. I do not want to design an addictive game, I want to design a satisfying and entertaining game. Making mechanics as fun as possible is more important than a story in the context of this game.

The Importance of Nests

One of the main mechanics I want to use to encourage the player to explore are spider nests. These will serve the same purpose as the original Zelda dungeons - to provide a challenge to the player and reward them with a useful item or ability. The challenge will force them to explore a specific game mechanic in order to successfully clear out the nest. Once the nest is successfully cleared, a new mechanic or item is rewarded. It should make the user feel like they have improved their character and are making progression. Nothing is worse than feeling like a feature has been held back from you. These nests should also play a role in the difficulty the player experiences. How difficult any given nest is should be based on how many nests have been cleared before it. A similar mechanic is found during a section of Uncharted 4 where the player needs to solve 4 puzzles at 4 different towers. Thing is, it doesn’t matter which tower you go to first, the puzzles always increase in difficulty regardless of location. The path to each tower and the challenges along the way are the same for each location, but elements of difficulty are ramped up. Relating back to my dream game, this will manifest itself as the spiders creating more fortifications and having more spiders protecting a given nest.

Difficulty Ramp

Games often let you can choose the difficulty experience is before you even play it, which does not make a lot of sense. One way to combat this is a day & night cycle that encourages different gameplay. Dying Light does this well. During the day, zombies are mostly calm and slow - no real danger exists. During the night though, there are more running zombies and it is the only time when the deadly volatiles come out to attack the player. While the difficulty difference from day to night in that game is too extreme for what I would want, the idea is the same. Having the spiders more numerous and aggressive at night provides a natural difficulty curve. The best part: the player can choose if they want it to be day or night by sleeping. The player has control over the difficulty; not through menus, but instead through the game’s mechanics. Another mechanic that can assist with this is having the world match the aggression of the player. The more nests that are destroyed, the more aggressive spiders are. They will travel in bigger groups and stronger spiders will begin appearing. Ideally, this will make the world feel alive and responsive. If the player does something, the world reacts.

A World that Speaks

For a while now I have been wanting to create a better tutorial. Some games have tedious and long tutorials while others have almost none. While classic tutorials still have a place, I think more can be done with the world to teach the player. For example, I want the spider AI to be more than the typical bee-line for the player. Games such as Arma 3 or Generation Zero where the AI actively flanks the player and uses cover have elements I want the spider AI to have. I don’t want to just tell the player that the AI will flank them though, I want it to actually happen to the player. At first, spiders will just try to damage the player, but will not pursue them for long to kill them. As the player becomes more aggressive though and destroys more nests, the spiders will chase the player for longer and do more to kill the player.

Game Development

I primarily work with C# within Unity 3D to make all games. I am highly familiar with the Unity interface and have played around with extending the interface itself to improve workflows. This is my home and what I enjoy doing most.

Web Development

For web development I use pure HTML, CSS and Javascript. I'll often times also use Google's Material Design Lite as the base of all my elements. This allows me to focus more on design and less on how to make individual elements look good.

Dedicated Learner

I am always striving to try and learn new things. Whenever I create a program, my mind is always thinking about how I can do it better next time. What are its flaws? What did it do well? How can I make it faster? Is it easy to use and read? Even better is when others criticize my work - that outside perspective is invaluable to me.

...
Uses: Unity3D, C#

This is my dream game. While the current version is only a glimpse of what I want it to be, I am still very proud of the work done on this. I worked on Rideout primarily with one other developer originally during the 72 hour Ludum Dare game jam. During this experience we enlisted the help of a modeler, UI designer and audio designer. The main premise of this game is to survive against spiders using close-quarters and long range combat. In future, I would like to add more horror and survival elements such as an improved AI or building system.
Uses: Unity3D, C#, Google Dev Console

Flapjack Fridays is my first attempt at creating a mobile application. The objective of the game is to stack as many pancakes in a tower before it falls over. I learned how to successfully take a Unity game and export it to IOS and Android. Developing this taught me how to use advertisements, in app purchases and the importance of easy to use UI. I also had to create a privacy policy for this game, which taught me a bit about the legal side of games. While it is not a fully polished app, it taught me lots about mobile development. Currently, it is posted on the Google Play store for download.
Uses: Javascript, GoogleScript, Google Apps Script, CSS, HTML

Originally I made this as a Google Chrome Extension to quickly create documents. I quickly found limits with this approach, so I moved to a Google App Script Web App. This allowed me to create custom templates, user authentication, and directly organize the documents within the user's Google drive. While typically a user must be verified to use the app, I disable the whitelist so anyone can view it. As it is still in the development stages, it is not verified by Google and asks for a lot of permissions.
Uses: Javascript, CSS, HTML, MDL Style, Github Pages

To better show my programming abilities, I wanted to create this website. Everything shown here was hand-scripted by me with the exception of the MDL style, which was provided by Google. All code is written in pure Javascript, CSS and HTML. Source code can be viewed on my github.
Over the course of about a month, I researched how other Android and IOS developers constructed their privacy policies. Once understanding the basic structure and why things are stated the way they are, I began work on our policy. It was not a thrilling experience, but was still worth it to be able to publish to the play store. It was a great feeling once everything was published and up and running.
Uses: Processing, Java

For my Grade 12 Physics rocket project I created this tool to help me determine how much mass my rocket needed to make it fly 27.0m upwards. It uses a thrust profile and a given mass to calculate height, and this can be used to determine which mass gives the target height. The end result was 27.7m - the best in the class - earning me and my lab partner a 100% for the project.