Git Product home page Git Product logo

unity-technologies / megacity-metro Goto Github PK

View Code? Open in Web Editor NEW
450.0 197.0 101.0 42.65 MB

Megacity-Metro: a thrilling shooter game, using Netcode for Entities for a multiplayer experience supporting 128+ players. Latest DOTS packages and Unity Gaming Services elevate the user experience, demonstrating how to craft engaging multiplayer games.

Home Page: https://unity.com/demos/megacity-competitive-action-sample

License: Other

C# 86.05% ShaderLab 10.57% HLSL 3.01% Java 0.37%
dots multiplayer netcode ugs samples services unity

megacity-metro's Introduction

Megacity-Metro

Contents and Quick Links

Megacity-Metro Overview

Megacity-Metro is an action-packed, shooter game based on the original Megacity sample. It leverages the power of Netcode for Entities for an immersive, multiplayer experience that can support 128+ players simultaneously. The latest DOTS packages and Unity Gaming Services (UGS) enhances the Megacity-Metro user experience. Megacity-Metro showcases how to create engaging and immersive multiplayer experiences with a suite of netcode and multiplayer tools, tech, and services.

Some important points of this demo are:

  • Large-scale streaming and rendering with the Entity Component System (ECS for Unity)
  • 128+ players per game session
  • Server-authoritative gameplay with feature prediction, interpolation, and lag compensation using Netcode for Entities
  • Unity Gaming Services (UGS) integration for Game Server Hosting, Matchmaking, and Vivox voice chat
  • Universal Render Pipeline (URP)
  • Cross-platform support for Windows, Mac and Android

Gameplay Controls

Mouse and Keyboard

Input Action
Mouse Movement / Arrow Keys Steering
Left Click / Space Shoot
W/S Thrust / Reverse
A/D Steering
E/Q Roll
Tab LeaderBoard
V Toggle Vivox
P Netcode Panel Stats
ESC in game menu

Contents and Quick Links

Getting Started

Important Note Before You Begin

The Megacity-Metro sample is large, so the first time cloning and playing the sample may take more time than expected. Subsequent plays should load much quicker because of caching.

First time clone and load time estimates:

  • Cloning the Megacity-Metro repo: Up to 20 min
  • Opening the project with library build: Up to 20 min
  • Building the project for each platform for the first time: Up to 50 min. Navigate to Project Settings > Other Settings > Configuration > C++ Compiler Configurationand set Debug if you need to compile faster than optimal.

To get the Megacity-Metro sample, you can clone the project using Git. Please note that direct download of the project is not currently supported for this repository.

Clone the Project

Before you can clone the project, you must install Git Large File Support (LFS). Megacity-Metro uses Git LFS to handle all large assets required locally. Refer to Git LFS installation options for instructions on Windows and Mac.

Quick Start

After you clone the project, follow these steps to start playing:

  1. Install a compatible Unity Editor version; we highly recommend using the version specified in ProjectSettings/ProjectVersion.txt. During installation, make sure to include Windows/Mac Build Support (IL2CPP), Windows/Mac Dedicated Server Build Support, Android/iOS Build Support (if you plan to build for mobile devices), and Linux Dedicated Server Build Support.
  2. To add the project to the Unity Hub, click the Add button and select the root folder of the cloned project.
  3. Open the Menu scene located in Assets/Scenes/Menu.
  4. Click the Play button to start.
  5. Start the Single Player mode. Multiplayer requires more setup which will be explained next.

Disclaimer

This repository does not accept pull requests, GitHub review requests, or any other GitHub-hosted issue management requests.

License

Megacity Metro is licensed under the Unity Companion License. See LICENCE for more legal information.

megacity-metro's People

Contributors

julianunity avatar unity-at-github avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.