Local Tank Multiplayer

 A simple local multiplayer tank shooter game.


⚠️ Does not run on all arcade machines ⚠️


Two players battle against each other, trying to take the other tank down by shooting. Everytime someone hits the other player, their score goes up. Max out your score to beat the other player!


Each player controls their own tank. The tank can move as a whole, or the player can rotate just the turret to aim at their target. Both tanks can rotate in place as well as while moving.

 

  

 

A deep dive in the development


This project was a school assignment, everyone had 3 weeks for this project. 


Some Requirements

  • You create the game individually
  • Playable on both pc and the arcade machine from the school
  • Must be local multiplayer, 2 players on 1 device
  • For controls use Unity's new Input system
  • Turret from the tank needs to be able to move on it's own
  • Tank may not move while in aiming mode, (just turret moving)
  • Players must not be able to exit the camera's vision
  • Explosion effect or increase of score when a player hits their opponent


Another requirement was that the class had to make the assets used in each of our games, using MagicaVoxel. We had a color palette and a size chart, so in theory, all assets would match in color and size. I myself made the trees for our games. I had to create four trees and like anyone else, had to keep the design simple. 


I ended up with these four trees below




I enjoyed creating these assets, thus I wanted to make some more simple nature assets that would fit with the trees, but give it all a color palette of my choice. This resulted in my Free Voxel Nature Pack, do feel free to check the asset pack out!




Besides the grass and the small piles of sand, that you can also find in the asset pack mentioned above, I made an explosion effect for the tank game as well. Wanting to have a visual that would really make it feel like a player got hit, I thought an explosion effect would be best for this game. 


Eventhough the assets for the project were a class assignment, the games themselves had to be developed individually using Unity and C#.


Challenges

I found the new Unity Input System a bit tricky at first, especially when it came to linking action maps with player scripts. It wasn’t always clear to me how to properly reference or connect actions within the script. To simplify things, I used Invoke Unity Events from the player input component. This made it easier for me to visually see the connections in the Inspector.

 

As a newcomer to 3D game development, I created the player movement using map-based controls at first, which worked well in 2D but felt wrong in a 3D space. The challenge was getting the player to move in the direction they were facing at all times. I resolved this by switching from position-based movement, which uses transform.position, to direction-based movement, using transform.forward.

 

I also learned how to keep music playing between scenes and how to color words with another color in the textmeshpro textbox, using color hex codes.


Overall I really enjoyed working on this project!


Sound assets used


Font asset pack

 

Thank you so much for playing!

Published 13 hours ago
StatusReleased
PlatformsHTML5, Windows
AuthorRedreeh
GenreShooter
Made withUnity
Tags3D, Tanks, Voxel

Download

Download
LocalTank_Download.zip 35 MB

Leave a comment

Log in with itch.io to leave a comment.