top of page

White & Black | 2022

White & Black is a top-down God simulator created in Unreal Engine 5. You are a powerful deity who rules over a village of dutiful people. However, there are rival villages in the vicinity that worship another God. Your goal is to defeat the God of that village so that the villagers will worship you instead. You can assign each villager a role by picking them up and setting them next to the job's respective building. Using your power, you have the ability to cast spells that can help your people as they work. For example, use the rain spell on a farm to increase productivity there. You will notice your avatar wandering around the village as well. Command it to eat to raise its power so that it can challenge the avatars of your rival villages in combat. Succeed in this quest, and you will be worshipped by all!

Over the last four months of my game development bachelor's degree program, I worked with a team of three other students to develop White & Black, a recreation of Black & White 2 by Lionhead Studios in Unreal Engine 5. This project was an exercise in both our knowledge of C++ and the process of developing a game, as well as our ability to work as a team to meet our goals and deadlines. It was challenging, but I am certainly proud of what I and my teammates accomplished.

My main focuses in this project were the villager and creature AI, as well as the animations for all characters in the game. Inspired by my previous artificial intelligence course, I was excited to develop the behaviors and interactions of the characters in White & Black. Before working on this project, I hadn't gained much experience with Unreal Engine, so those four months consisted as much of learning how to use the engine as it did using the engine to create a fully-fledged video game. As a result, I faced many challenges while developing the AI, including such things as blueprints and C++ functions conflicting with each other, figuring out how to get and set values from blackboard inside blueprints, and how to get the player's creature to turn around when entering the fog of war. Despite these difficulties, I overcame each challenge, and I am glad to have been given the opportunity.

As for the character animations, they also proved to be quite the challenge. I have no experience creating animations, so I employed the use of a website called Mixamo. I uploaded each character's skeletal mesh to the site, after which I was able to apply animations to them and download these animations as .FBX files. I then uploaded these animations to the project in Unreal Engine and targeted them to the respective character's skeletal mesh. I used state machines to play animations at the appropriate times, such as a running animation while the character was moving, or an axe swinging animation when the character was chopping a tree down. The largest challenge I faced with the animations was an issue with the bone structure. Mixamo has a very particular way in which it works with skeletal meshes - if the skeleton isn't similar enough to the site's own built-in skeleton, it will change the structure of the skeleton you upload. As a result, Mixamo moved the root bone of each skeleton to the hips instead of the ground. This caused the animations to look very strange, as each character's hips wouldn't move at all, while the rest of their body would move around the central point in their hips. To fix this, I opened up the skeletal meshes in Blender and manually moved the root bone back down to the ground, then re-uploaded the skeletal meshes to Unreal Engine.

I also had the opportunity to work on sound design, music, UI, the settings menu functionality, win and loss conditions, and the day/night cycle and lighting in each level. The music in particular was enjoyable to work with. I didn't create the music, but I helped implement it into the game. My team and I reached out to two music producers, Ivanelo and Ean Grimm, as well as a sound intern from our school, to help us with the sound and music. Ean Grimm allows the free use of his work for all purposes, and Ivanelo created a custom track exclusively for White & Black. The sound intern assigned to our team created the sound effects we used in the game.

All in all, this was a very enjoyable project, and I look forward to working on more in the future!

bottom of page