{"id":25205531,"url":"https://github.com/pradeepgamedev/multiplayerwithphoton","last_synced_at":"2026-04-27T11:31:01.443Z","repository":{"id":274294270,"uuid":"915276853","full_name":"PradeepGameDev/MultiplayerWithPhoton","owner":"PradeepGameDev","description":"A Multiplayer game built from scratch using Unity and Photon PUN 2. Features include robust networking, a player controller, game and UI managers, weapon systems, and synchronized gameplay mechanics.","archived":false,"fork":false,"pushed_at":"2025-03-08T09:58:13.000Z","size":755,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-05T02:13:26.309Z","etag":null,"topics":["c-sharp","game-development","multiplayer-game","networking","photon-pun","unity","unity3d","weapon-system"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PradeepGameDev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-11T12:37:27.000Z","updated_at":"2025-03-08T09:58:17.000Z","dependencies_parsed_at":"2025-03-08T10:35:17.935Z","dependency_job_id":null,"html_url":"https://github.com/PradeepGameDev/MultiplayerWithPhoton","commit_stats":null,"previous_names":["pradeepgamedev/multiplayerwithphoton"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PradeepGameDev%2FMultiplayerWithPhoton","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PradeepGameDev%2FMultiplayerWithPhoton/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PradeepGameDev%2FMultiplayerWithPhoton/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PradeepGameDev%2FMultiplayerWithPhoton/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PradeepGameDev","download_url":"https://codeload.github.com/PradeepGameDev/MultiplayerWithPhoton/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247276188,"owners_count":20912288,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c-sharp","game-development","multiplayer-game","networking","photon-pun","unity","unity3d","weapon-system"],"created_at":"2025-02-10T10:19:49.775Z","updated_at":"2026-04-27T11:31:01.411Z","avatar_url":"https://github.com/PradeepGameDev.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🎮 Multiplayer Game with Photon PUN 2\n\nA Multiplayer game crafted from the ground up using Unity and Photon PUN 2. This project showcases multiplayer networking features, including synchronized player actions, real-time gameplay mechanics, and dynamic game states. Designed to serve as both a learning resource and a robust foundation for creating multiplayer games, it demonstrates the seamless integration of networking systems with engaging gameplay elements. Whether you're looking to build a competitive shooter or a cooperative experience, this project provides all the essential components to get started.\n\n\u003e Note: Fixed sized window is used to test multiplayer players in same pc. It is not designed only for specific size, UI can adapt to any size.\n\n---\n\n## ✨ Features\n\n### 🛠 Core Systems\n- **Player Controller**: A basic yet functional controller for player movement and interactions.\n- **Network Manager**: Handles connection to the Photon network, managing lobbies and rooms.\n- **Game Manager**: \n  - Spawns players at random points.\n  - Tracks and displays player entry and exit events in real time.\n  - Now all players follow the **Master Client** (e.g., transitioning levels, leaving the room, etc.).\n\n### 📋 UI Systems\n- **Menu UI Manager**:\n  - Allows players to set their names.\n  - Facilitates room creation, joining, and player management.\n  - Displays the list of available rooms in the current lobby.\n- **Game UI Manager**:\n  - Displays real-time gameplay events through a logging system (e.g., player spawn notifications, kill events).\n  - Displays game timer, which indicates the time remaining until the game over.\n  - Showing leaderboard on game over and then exiting room after some delay.\n- **Deathmatch UI**:\n  - Includes **room list UI** for selecting and joining available matches.\n  - Shows **player list** within a room.\n- **Player List \u0026 Ready System**:\n  - Players in a room can see the **player list**.\n  - A **fully synchronized** ready system ensures that the level loads when all players are ready.\n\n### 🔫 Weapon Systems\n- **Weapon Manager**:\n  - Monitors player inputs for attacks and initiates firing of the primary weapon.\n  - Synchronizes weapon behavior and damage across all players.\n  - Includes a `Weapon` script that manages:\n    - Damage values.\n    - Fire rate.\n    - Hit layers and effects.\n  - Triggers shoot and hit particle effects visible to all players.\n  - Notifies players about inflicted damage and updates stats accordingly.\n\n### 📊 Leaderboard \u0026 Stats System\n- **Leaderboard System**:\n  - Shows real-time player rankings.\n  - Highlights the current player in a different color.\n  - Differentiates between positive and negative scores.\n- **Player Stats**:\n  - Tracks **Kills, Deaths, and Score** per player.\n  - Displays stats in the **leaderboard**.\n\n---\n\n## 📸 Screenshots\n\n![Home](https://static.wixstatic.com/media/27da3d_cf75db43ab5e4a578e061ae5eebdfe5a~mv2.png)\n|:--:| \n| *Home* |\n\n![Profile](https://static.wixstatic.com/media/27da3d_0311f839c3cc43c2903db5c0034d7644~mv2.png)\n|:--:| \n| *Profile Management* |\n\n![Deathmatch_EmptyRoomList](https://static.wixstatic.com/media/27da3d_ad4424667b054079a320b8834057a3ed~mv2.png)\n|:--:| \n| *Deathmatch - When there is no available room. Click create to create room.* |\n\n![Deathmatch_RoomList](https://static.wixstatic.com/media/27da3d_127ae79de5e14321bf04fb1698e0754a~mv2.png)\n|:--:| \n| *Deathmatch - With available rooms. Full rooms or rooms where game has started are disabled.* |\n\n![Deathmatch_CreateRoom](https://static.wixstatic.com/media/27da3d_c712064d7d5f4368a7fafac4732711c3~mv2.png)\n|:--:| \n| *Deathmatch - Create room panel.* |\n\n![Gameplayer_1](https://static.wixstatic.com/media/27da3d_903729633b7b4ee18f69a56b9fa703b3~mv2.png)\n|:--:| \n| *Gameplayer scene 1* |\n\n![Gameplayer_2](https://static.wixstatic.com/media/27da3d_9add61329991473eb9b7cb66a35b9a6c~mv2.png)\n|:--:| \n| *Gameplayer scene 2* |\n\n\n---\n\n## 🚀 Getting Started\n\nFollow these steps to set up and run the project locally.\n\n### ✅ Prerequisites\n- **Unity**: Version 2022.3.21f1 LTS or later (earlier versions may also work).\n- **Photon PUN 2**: Ensure the Photon PUN 2 package is imported into the project.\n\n### 📦 Installation\n1. Clone the repository:\n   ```bash\n   git clone https://github.com/PradeepGameDev/MultiplayerWithPhoton.git\n   ```\n2. Open the project in Unity:\n   - Launch **Unity Hub**.\n   - Add the cloned folder to your projects.\n   - Open the project in Unity Editor.\n\n     \u003e Be aware that it will have errors related to Photon, since you did not imported the Photon yet.\n   - Import the Photon PUN2 from Asset store or Photon's website to resolve the errors.\n3. Configure Photon:\n   - Obtain an App ID from the [Photon Dashboard](https://dashboard.photonengine.com/).\n   - Navigate to `Assets \u003e Photon \u003e PhotonUnityNetworking \u003e Resources \u003e PhotonServerSettings`.\n   - Paste your App ID in the appropriate field.\n4. Open the menu scene to start testing.\n\n---\n\n## 🎮 How to Play\n1. Launch the game and connect to the Photon network.\n2. Create or join a room using the UI.\n3. Play the game with:\n   - Movement controls.\n   - Shooting mechanics.\n   - Real-time score tracking and notifications.\n4. **Player Ready System**: The level loads only when all players are ready.\n\n---\n\n## 🛠 Customization\n- **Player Controller**:\n  - Extend movement or add additional abilities such as jumping or sprinting.\n- **Game Manager**:\n  - Modify spawn points and player entry/exit behaviors.\n- **Weapon Manager**:\n  - Add secondary weapons, grenades, or melee attacks.\n- **UI**:\n  - Customize the visuals or add more gameplay stats to the UI.\n\n---\n\n## 📜 License\n\nThis project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details.\n\n---\n\n## 🌟 Acknowledgments\n- **Photon Engine**: For providing an excellent networking framework and good documentation.\n\n---\n\n## 📋 Third-Party Assets\nThis project utilizes the following third-party assets:\n- **Weapon Model**: A weapon model that is attached to the player. Available free at [Unity Asset Store](https://assetstore.unity.com/packages/3d/props/guns/low-poly-fps-weapons-lite-245929) \n- **Particles**: Using shoot particle to show at gun point and hit particle to show at hit point. Available free at [Unity Asset Store](https://assetstore.unity.com/packages/vfx/particles/cartoon-fx-remaster-free-109565)\n\n\u003e Note: These assets are for demonstration purposes and are subject to their respective licenses. Ensure you comply with the asset terms when using them in your own projects.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpradeepgamedev%2Fmultiplayerwithphoton","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpradeepgamedev%2Fmultiplayerwithphoton","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpradeepgamedev%2Fmultiplayerwithphoton/lists"}