Learning multiplayer programming
This is my first time doing Multiplayer work inside Unity.
I used Photon Pun for seamless networking to be able to create rooms for other players to join.
I learned about using RPCs to be able to run functions for all players, and only using them when necessary (If it is important for other player's to see the functionality in-game such as attack animations or weapon usage)
Photon offers very helpful information and components for not only connecting to other players but also managing the replication of variables and synchronizing functions
Game objective and design
The objective of the game is a work-in-progress, but it will feature a free-for-all scenario where players have to reach a goal in a fast-paced environment, and there will be a "God" player that will attempt to stop them from doing so with upgraded powers and weapons.
The game features a modular equipment system that allows gun switching, and it is very easy to implement new weapons and add them to the players.
The bullets for weapons are all spawned in a pool at the beginning of the game that becomes larger the more players there are; Then the bullets become active and become part of the pool again, which helps performance.