Skip to content

BuddhaBing/thunder-warriors

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Unity3D Tower Defence Game (Thunder Warriors)

Makers Academy - Week 11/12 - Final Group Project

Thunder Warriors Poster

Technologies

Jump To

The Project

This is the Makers Academy final two-week group project. We decided to build a 3D [Tower Defence] video game using the Unity3D multi platform game development tool.

After some discussion, we settled on an 80s theme for the game, and the name "Thunder Warriors" came from an 80s random name generator!

None of us had ever created a video game, or coded in C# before, so it was a brand new challenge for all of us. We had two weeks to learn how to use the Unity platform, learn a new language, and to create a video game using this newly acquired knowledge.

The first few days were spent researching and playing about with Unity, and then we were ready to start building. By the end of the first week, we had hit our Minimum Viable Product, but we were not happy with the quality of the code base and it ignored a lot of the design patterns and best practices that we’d learned over the last 12 weeks at Makers Academy.

On the Monday of the second (and final) week, we took the brave step of starting a huge refactor of the existing code, so that we could hopefully finish the project with a well structured and testable code base.

Cleaning up the code and making it testable, whilst trying to keep the same level of game functionality was a challenge, and one that took as long to achieve as it did for us to hit our Minimum Viable Product.

But it was worth it, we learnt a lot during the process and the code is now much more extendable. We now plan on developing new features and levels for the game.

You can watch a recording of our live-streamed presentation of the project here.

As a player,
So that I can play this awesome game,
I want to be able to start a game.

As a player,
So that I can play for more than one level,
I want there to be more than one playable level.

As a player,
So that I can defend the route,
I want to be able to place a tower along the route.

As a player,
So that my towers have something to shoot at,
I want to enemies to spawn at the start of the route.

As a player,
So that I can prevent enemies from reaching the end of the route,
I want to be able to destroy enemies with my towers.

As a player,
So that I can win a game,
I need to be able to kill all enemies (of n waves).

As a player
So that I can lose a game,
I will lose a life an enemy makes it to the end of the route.

As a player
So that I can see how many enemy waves remain,
I want to be able to see the number remaining on the screen.

As a player,
So that I can enjoy this awesome game even more,
I want to be able to hear some funky music.

As a player,
So that I can make my towers more powerful,
I want to be able to upgrade a tower.

As a player,
So that I can remove a tower that I no longer need,
I want to be able to sell a tower.

As a player,
So that I can get the best view of the action,
I want to be able to pan and zoom the camera.
  • Players can place towers on the designated tower nodes in order to destroy enemies.
  • Towers cost gold to buy.
  • Each enemy killed gives the player additional gold.
  • Some towers can be upgraded (this also costs gold).
  • Towers can be sold in return for gold.
  • If an enemy makes it to the end of the route, the player loses a life.
  • If the player loses all their lives, the game is over.
  • If the player endures all of the enemy waves without losing all their lives, the level is complete.

The game cannot be installed as such from this repo, as it relies on paid assets from the Unity Asset Store. This repo serves as an example of the code behind the game mechanics. The C# scripts driving the game can be found in the folder: /Assets/80std/Script/

We have an associated repo here, which contains instructions for installing the game so that it can be run locally and played in the browser.

Click on the link above to play a live, web browser based demo

Thunder Warriors Screenshot 1

Thunder Warriors Screenshot 2

Thunder Warriors Screenshot 3

About

Makers Academy - Week 11/12 - Final Group Project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages