Tanks Multiplayer - complete networking project (Netcode, Photon)

Interested or looking for support? Ask me anything in this thread - from developer to developer :slight_smile:
Tanks Multiplayer is an action packed multiplayer template using Unity Netcode for GameObjects or Photon Unity Networking (PUN) - your choice! On the default settings, it allows up to 12 players in 2 or 4 different teams, per room, to compete for the highest score in a Capture The Flag or classic Team Deathmatch mode. It features player model selection, shooting, powerups, player death & respawn, networked object pooling, several Unity services and more. This template is laying the ground for a successful multiplayer game, by demonstrating common network tasks such as fully authoritative server actions, commands & RPCs, synced variables / object states and host migration, but also monetizing players using in-app purchases and video ads to keep your servers running. Iā€™ve included an in-depth documentation about all approaches I took while building this and commented each and every method, so you can follow along easily.

Features:

:white_check_mark: Online Matchmaking & Host Migration integration
:white_check_mark: Game Modes: Capture The Flag & Team Deathmatch
:white_check_mark: Supports Local Area Network (LAN) game discovery & auto join
:white_check_mark: Supports Offline mode vs. AI bots, using pathfinding for movement
:white_check_mark: Authoritative Auto Team Balance: across red, blue, yellow, green team
:white_check_mark: Synchronized Player Properties: name, model, team, health, shield, ammo
:white_check_mark: Synchronized Player Input: driving, turret rotation, shooting
:white_check_mark: Authoritative Player Actions: death, respawn, game score calculation
:white_check_mark: Respawn Delay: ā€œkillcamā€ following the killer or displaying video ad
:white_check_mark: Networked Object Pooling: synced client pools for bullets & powerups
:white_check_mark: Extendable Powerups: health, shield, double damage, bouncing bullet
:white_check_mark: Reusable Manager Scripts: audio, pools, Unity IAP, Unity Ads
:white_check_mark: In-App Purchases: buying different tank models (visual or game impact)
:white_check_mark: Unity UI: menus, team fill display, team scores, mobile joysticks
:white_check_mark: Input for Mobile (touch) & Standalone (keyboard + mouse)
:white_check_mark: Documentation: scripting reference & step by step guide

(Optional) Use of Unity Services:

  • Unity Ads
  • Unity IAP

Scripting Reference and Guides:

Get it here:

Try it out:

Good news! This asset is now in the final stages of testing.

  • Documentation has been finished (17 pages including screenshots)
  • Scripting Reference is online (updated first post with a link)

The preparations for supporting Photon multiplayer in a later update are done too, but it will go live with Unity Networking (UNET) support for now. Still time for you to submit your vote in the poll above!

This asset is now pending review by the Unity Asset Store team.

Iā€™m interested and will be keeping an eye out.

1 Like

Tanks Multiplayer has been released!

Watch our trailer video for an in-game overview of all features (see first post).

Looks good. It is very possible that I buy the asset because it is practically a complete project and hope that the documentation is thorough and complete

Thanks @Acid-NN-9 ! It is - happy for any feedback you might share. Documentation has 17 pages (written including screenshots, not just variable explanations or something like that).

Interesting asset, but I would really need to read through the documentation before deciding if itā€™s something I really want. I canā€™t find any documentation online, and thatā€™s something you really should provide to potential buyers and customers alike.

Hi @IsaiahKelly , the documentation is a core asset of our product and reveals many network and authoritative approaches we took while building this complete project. We wonā€™t reveal it in the process before purchasing this asset. Our scripting reference is available publicly, but not the full documentation.

I thought thatā€™s what the documentation covered, as well as how to initially set it up, etc. So is this ā€˜documentationā€™ you speak of more like a tutorial? How much setup is actually required to get your package up and running then? Itā€™s just hard to get a good idea of what the asset does without reading detailed documents or watching videos about how itā€™s actually used.

This asset is a complete project. The documentation explains what every component does in detail and how it fits into the final user experience.

Thatā€™s basically enabling Unity Networking in the editor services tab (or importing Photon Networking at a later point).

The video Iā€™ve uploaded shows what it does after enabling all of the integrated Unity services (which is optional).

When do you think that the Photon will be added?

Iā€™m working on this now, but including all the testing and documenting it could still take 2 months from now.

I might buy it until then, but sounds great.

I want to know if I can change the tanks before I purchase. Can I use something like this Unity Asset Store - The Best Assets for Game Making
Will this be compatible ?

@darynduff you can change and replace everything, as always. If you want to have the turret rotated to the direction you are aiming, then it has to be a separate game object on the model (usually thatā€™s the case with tank models).

Hi, when I import the package, I got errors:
Assets/TanksMultiplayer/Scripts/IAPProduct.cs(9,19): error CS0234: The type or namespace name Purchasing' does not exist in the namespace UnityEngineā€™. Are you missing an assembly reference?
Assets/TanksMultiplayer/Scripts/UnityIAPManager.cs(9,19): error CS0234: The type or namespace name Purchasing' does not exist in the namespace UnityEngineā€™. Are you missing an assembly reference?
Assets/TanksMultiplayer/Scripts/UnityIAPManager.cs(19,51): error CS0246: The type or namespace name `IStoreListenerā€™ could not be found. Are you missing a using directive or an assembly reference?

I am using Unity 5.4.0 on Mac.

Hi @houzy , please have a look at #2 in our FAQ and see if that helps.

Yes, It is helpful. Thanks.

The play button not working.