Skip to content

Commit 243319c

Browse files
chrispopeLPLafontaineBs-omeilia-unitySamuelBellomo
authored
Merging Develop with Main (#813)
* Updating docs page in 2D space shooter (#810) Updating docs page in 2D space shooter which has a reference to an unconfirmed feature (Prediction) * updating boss room example used in mid-game reconnecting doc (#725) Co-authored-by: Sara [Unity] <[email protected]> Co-authored-by: Christopher Pope <[email protected]> * Update getting-started-boss-room.md (#812) Co-authored-by: LPLafontaineB <[email protected]> Co-authored-by: Sara [Unity] <[email protected]> Co-authored-by: Sam Bellomo <[email protected]>
1 parent c27e900 commit 243319c

File tree

3 files changed

+18
-28
lines changed

3 files changed

+18
-28
lines changed

docs/advanced-topics/reconnecting-mid-game.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@ Depending on your game, you may want to add the following features as well:
4646

4747
Check out our [Boss Room sample](../learn/bossroom/getting-started-boss-room.md) for an example implementation of automatic reconnection.
4848

49-
The entry point for this feature is in [this class](https://github.com/Unity-Technologies/com.unity.multiplayer.samples.coop/blob/main/Assets/Scripts/Gameplay/ConnectionManagement/ClientGameNetPortal.cs). Boss Room's implementation uses a coroutine (`TryToReconnect`) that attempts to reconnect a few times sequentially, until it either succeeds or surpasses the defined maximum number of attempts.
49+
The entry point for this feature is in [this class](https://github.com/Unity-Technologies/com.unity.multiplayer.samples.coop/blob/main/Assets/Scripts/ConnectionManagement/ConnectionState/ClientReconnectingState.cs). Boss Room's implementation uses a state inside a state machine that starts a coroutine on entering it (`ReconnectCoroutine`) that attempts to reconnect a few times sequentially, until it either succeeds, surpasses the defined maximum number of attempts, or is cancelled. (See `OnClientConnected`, `OnClientDisconnect`, `OnDisconnectReasonReceived`, and `OnUserRequestedShutdown`)
5050

51-
The coroutine is triggered when a client disconnects, depending on the reason of that disconnect (see `OnDisconnectOrTimeout`) and is stopped when a succesfull reconnection occurs, or when a user cancels it (see `OnConnectFinished` and `OnUserDisconnectRequest`).
51+
The reconnecting state is entered when a client disconnects unexpectedly. (See `OnClientDisconnect` in [this class](https://github.com/Unity-Technologies/com.unity.multiplayer.samples.coop/blob/main/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectedState.cs))
5252

5353
:::note
5454
This sample connects with [Lobby](https://docs.unity.com/lobby/unity-lobby-service-overview.html) and [Relay](https://docs.unity.com/relay/get-started.html) services, so the client must make sure it has properly left the lobby before each reconnection attempt.

docs/learn/bitesize/bitesize-spaceshooter.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ The movement in 2DSpaceShooter is physics based. The player object is a dynamic
1212

1313
The client sends inputs in the form of RPCs to the server. The server then uses those inputs to adjust the throttle and turn values of the player.
1414

15-
This method of running physics makes sure that there are no desyncs or other physics issues between the client and server, but it introduces more latency. With future prediction support of Netcode, the latency will no longer be an issue which makes this the best choice of a movement model for a game like this.
15+
This method of running physics makes sure that there are no desyncs or other physics issues between the client and server, but it introduces more latency.
1616

1717
## Player Health
1818

docs/learn/bossroom/getting-started-boss-room.md

Lines changed: 15 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,9 @@ description: Learn more about installing and running the Boss Room game sample.
66

77
![Boss Room banner](/img/banner.png)
88

9-
:::important
10-
This project is currently in early-access.
11-
:::
12-
13-
Boss Room is a fully functional Multiplayer Co-op Sample game made with Unity and Netcode for GameObjects (Netcode). We are building the sample to serve as an educational showcase of specific typical gameplay patterns frequently featured in similar games.
9+
Boss Room is a fully functional co-op multiplayer RPG made with Unity Netcode. It is an educational sample designed to showcase typical netcode patterns that are frequently featured in similar multiplayer games.
1410

15-
You can use everything in this project as a starting point or as bits and pieces in your own Unity games.
11+
PLEASE NOTE: Boss Room is compatible with the latest Unity Long Term Support (LTS) editor version, currently 2021 LTS. Please include standalone support for Windows/Mac in your installation.
1612

1713

1814
## Download the project files
@@ -27,22 +23,26 @@ Using Windows' built-in extracting tool may generate an "Error 0x80010135: Path
2723
1. You can now add the Boss Room project to your Unity Hub.
2824

2925
:::important Compatibility
30-
- Boss Room supports those platforms supported by Netcode.
31-
- Boss Room is compatible with Unity 2020.3 and later.
32-
- Ensure your Unity installation includes the build support module components for your OS.
26+
Boss Room has been developed and tested on the following platforms:
27+
28+
* Windows
29+
* Mac
30+
* iOS
31+
* Android
32+
Boss Room's min spec devices are:
33+
34+
* iPhone 6S
35+
* Samsung Galaxy J2 Core
3336
:::
3437

3538
## Add the project with Unity Hub
3639

3740
1. Open your Unity Hub.
3841
1. Click the dropdown arrow next to **Open**, then select **Add project from disk**.
39-
1. Select the root folder of the downloaded project. For example, `com.unity.multiplayer.samples.coop-0.2.1`.
40-
41-
<iframe src="https://www.youtube.com/embed/PwPUcj3qwtI?playlist=PwPUcj3qwtI&loop=1&&autoplay=0&controls=1&showinfo=0&mute=1" width="854px"
42-
height="480px" className="video-container" frameborder="0" position="relative" allow="accelerometer; autoplay; loop; playlist; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen=""></iframe>
42+
1. Select the root folder of the downloaded project. For example, `com.unity.multiplayer.samples.coop-<version>`.
4343

4444
:::note
45-
The first time you open the project, Unity will import all assets, which will take longer than usual - this is normal. The Unity Netcode For GameObjects v1.0.0 Netcodepackage will also be installed with Boss Room.
45+
The first time you open the project, Unity will import all assets, which will take longer than usual - this is normal. The Unity Netcode for GameObjects package will also be installed with Boss Room.
4646

4747
**Issues with importing due to parental control software**: If you have issues with importing you may want to check your DNS settings as some ISP parental controls may block GitHub access. For example, see this information on [WebSafe](https://community.virginmedia.com/t5/Networking-and-WiFi/Web-Safe-Breaks-GitHub/td-p/4279652).
4848
:::
@@ -60,10 +60,6 @@ To open the project for the first time:
6060
2. Then under the **Project** tab, go to **Assets** > **Boss Room** > **Scenes** and double-click on the **Startup** scene.
6161
3. Click **Play**. The Boss Room menu scene loads.
6262

63-
64-
<iframe src="https://www.youtube.com/embed/OSSBWOJq6gI?playlist=OSSBWOJq6gI&loop=1&&autoplay=0&controls=1&showinfo=0&mute=1" width="854px"
65-
height="480px" className="video-container" frameborder="0" position="relative" allow="accelerometer; autoplay; loop; playlist; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen=""></iframe>
66-
6763
## Test multiplayer
6864

6965
To see the multiplayer functionality in action, you can either run multiple instances of the game [locally on your computer](#local-multiplayer-setup) or choose to [connect through the internet](#multiplayer-over-internet).
@@ -75,20 +71,14 @@ For a local multiplayer setup, you must build an executable and launch several i
7571
1. With the Boss Room project open in your Unity editor, click **File** > **Build Settings** > **Build**.
7672
2. Save the binary as `Boss Room`.
7773

78-
<iframe src="https://www.youtube.com/embed/eZGofxiuAgA?playlist=eZGofxiuAgA&loop=1&&autoplay=0&controls=1&showinfo=0&mute=1" width="854px"
79-
height="480px" className="video-container" frameborder="0" position="relative" allow="accelerometer; autoplay; loop; playlist; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen=""></iframe>
80-
8174
After the build has completed, you can launch several instances of the built executable to both host and join a game.
8275

8376
:::important Mac Users
8477
To run multiple instances of the same app, you need to use the command line:
85-
1. First, change your directory to the folder where you saved the Boss Room executable. For example, `cd Desktop/com.unity.multiplayer.samples.coop-0.2.1`.
78+
1. First, change your directory to the folder where you saved the Boss Room executable. For example, `cd Desktop/com.unity.multiplayer.samples.coop-<version>`.
8679
2. Run the command `Open -n YourAppName.app`. If you saved the app as `BossRoom`, your command is `Open -n BossRoom.app`. However, if you saved your app as `Boss Room` with a space, your command needs to include quotation marks ("") around the executable name: `Open -n "BossRoom.app"`.
8780
:::
8881

89-
<iframe src="https://www.youtube.com/embed/27Ikr0t7vzg?playlist=27Ikr0t7vzg&loop=1&&autoplay=0&controls=1&showinfo=0&mute=1" width="854px"
90-
height="480px" className="video-container" frameborder="0" position="relative" allow="accelerometer; autoplay; loop; playlist; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen=""></iframe>
91-
9282
## Multiplayer over internet
9383

9484
In contrast to running a local setup, when playing over internet we do not necessarily need a built executable. You can run the game in editor.

0 commit comments

Comments
 (0)