I play a lot of games. Some of them so much that I started to wonder: why not learn how to make them? After learning about game engines I decided to have a go at it myself. After all, games have quite a bit of coding involved so I might learn something along the way.
For 3D engines, the most commonly used are Unity and Unreal Engine. I decided to choose Unity as it has a massive support forum and some of my favorite games ever (Hollow Knight, RimWorld, Subnautica) are made using unity! For my project I decided to try my hand at making a classical zombie survival game, kinda like Call of Duty Black Ops. It was surprisingly challenging, and through the process I learned a lot.
Download the game here!
Unfortunately I couldn't get a web version to work, I should really go back and fix this, but the webgl build was running into weird errors when I tried uploading to itch, so the exe is the best I can do for now.
Gather guns and ammo during the day...
And survive at night... Don't run out of power!
Here's a video of me playing
Or here if you're too lazy to click the link:
ZOMBIEZ.project.mp4
Through this project I learned how to use things like:
- the Start and Update methods and how to use them
- making an FPS controller
- How to
stealborrow assets from the asset store - how to make animations using keyframes
- Unity 3D tools like Terrain/NavMeshAgent
- Unity Canvas for UI such as pause/start menus
- Implementing a Day/Night cycle
- use ProGrids/ProBuilder to make houses (no blender yet, I will do this someday in the future)
- the difference between prefabs and instances
- C# scripting / classes
- and most importantly... debugging by reading Unity Documentation!
Big shoutout to Brackeys, I must've watched at least 10 of his videos for my project. Also I took a udemy course here, I can recommend it although I skipped some portions since I didn't want to copy their games exactly. The parts that I did do were very good though, and I used a good chunk of their code to power my game. Before this I had no Unity experience so I'd say it helped a lot, considering the result.
I have only added the script files so you can see some of the code that I wrote. I probably shoulda used Git, but hey, this was my first project so I didn't know to. I mean, I even tried committing the game exe to GitHub at first (spoiler, the game is way too big to commit to GitHub)