├── .gitignore
├── .vsconfig
├── Assets
├── NodeLS Client Integrations.meta
├── NodeLS Client.meta
└── NodeLS Client
│ ├── Communicator.cs
│ ├── Communicator.cs.meta
│ ├── DebugCommunicator.cs
│ ├── DebugCommunicator.cs.meta
│ ├── Definitions.meta
│ ├── Definitions
│ ├── Serializables.cs
│ └── Serializables.cs.meta
│ ├── Example.meta
│ ├── Example
│ ├── List Example.unity
│ ├── List Example.unity.meta
│ ├── Scripts.meta
│ ├── Scripts
│ │ ├── ServerListBrowser.cs
│ │ └── ServerListBrowser.cs.meta
│ ├── UI.meta
│ └── UI
│ │ ├── ListEntry.prefab
│ │ ├── ListEntry.prefab.meta
│ │ ├── ListEntryController.cs
│ │ └── ListEntryController.cs.meta
│ ├── NodeLS.Client.asmdef
│ └── NodeLS.Client.asmdef.meta
├── LICENSE
├── Packages
├── manifest.json
└── packages-lock.json
├── ProjectSettings
├── AudioManager.asset
├── ClusterInputManager.asset
├── DynamicsManager.asset
├── EditorBuildSettings.asset
├── EditorSettings.asset
├── GraphicsSettings.asset
├── InputManager.asset
├── NavMeshAreas.asset
├── NetworkManager.asset
├── PackageManagerSettings.asset
├── Physics2DSettings.asset
├── PresetManager.asset
├── ProjectSettings.asset
├── ProjectVersion.txt
├── QualitySettings.asset
├── TagManager.asset
├── TimeManager.asset
├── UnityConnectSettings.asset
├── VFXManager.asset
├── VersionControlSettings.asset
└── XRSettings.asset
├── README.md
└── UserSettings
└── EditorUserSettings.asset
/.gitignore:
--------------------------------------------------------------------------------
1 | [Ll]ibrary/
2 | [Tt]emp/
3 | [Oo]bj/
4 | [Bb]uild/
5 | [Bb]uilds/
6 | [Ll]ogs/
7 |
8 | # Where we're going, we don't need examples.
9 | [Aa]ssets/Mirror/Examples/
10 |
11 | # Never ignore Asset meta data
12 | ![Aa]ssets/**/*.meta
13 |
14 | # Visual Studio cache directory
15 | .vs/
16 |
17 | # Gradle cache directory
18 | .gradle/
19 |
20 | # Autogenerated VS/MD/Consulo solution and project files
21 | ExportedObj/
22 | .consulo/
23 | *.csproj
24 | *.unityproj
25 | *.sln
26 | *.suo
27 | *.tmp
28 | *.user
29 | *.userprefs
30 | *.pidb
31 | *.booproj
32 | *.svd
33 | *.opendb
34 | *.VC.db
35 |
36 | # Unity3D generated meta files
37 | *.pidb.meta
38 |
39 | # Unity3D generated file on crash reports
40 | sysinfo.txt
41 |
42 | *.apk
43 | *.unitypackage
44 |
45 | # Crashlytics generated file
46 | Assets/Mirror/Tests/
47 | Assets/NodeListServer/DebugCommunicator.cs
48 | Assets/NodeListServer/DebugCommunicator.cs.meta
49 | Assets/Mirror
50 | Assets/Mirror.meta
51 | Assets/ScriptTemplates
52 | Assets/ScriptTemplates.meta
53 |
--------------------------------------------------------------------------------
/.vsconfig:
--------------------------------------------------------------------------------
1 | {
2 | "version": "1.0",
3 | "components": [
4 | "Microsoft.VisualStudio.Workload.ManagedGame"
5 | ]
6 | }
7 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client Integrations.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f7da57e1593a69947a11bd419c869ebe
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fd8950dd95433c647bdfc33045fb33fd
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Communicator.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections;
3 | using System.Collections.Generic;
4 | using System.Net;
5 | using System.Net.Http;
6 | using UnityEngine;
7 | using UnityEngine.Networking;
8 |
9 | namespace NodeListServer
10 | {
11 | ///
12 | /// This class represents a Node List Server communicator, which acts as a interface
13 | /// between the Node List Server web application running on a server and your game.
14 | ///
15 | public class NLSCommunicator
16 | {
17 | #region Constants
18 | const string RegisterEndpoint = "/add";
19 | const string RemoveEndpoint = "/remove";
20 | const string QueryEndpoint = "/list";
21 | #endregion
22 |
23 | #region Public properties
24 | ///
25 | /// The URI to the NodeLS Endpoint. For example, "https://127.0.0.1:9000".
26 | ///
27 | public string EndPoint { get; set; }
28 | #endregion
29 |
30 | public bool Busy { get; private set; }
31 |
32 | #region Private properties
33 | ///
34 | /// Convience property. No need to worry about this.
35 | ///
36 | private Uri EndPointAsUri { get { return new Uri(EndPoint); } }
37 |
38 | public Action OnServerListRetrieved;
39 | public Action OnServerRegistered;
40 | public Action OnServerRemoved;
41 |
42 | #endregion
43 |
44 | #region Communication Routines
45 | ///
46 | /// Retrieves the list of servers currently registered with the NodeLS Endpoint.
47 | /// If something goes wrong, a Debug.LogError call is made.
48 | ///
49 | /// The communication key used to authenicate.
50 | public IEnumerator RetrieveList(string commKey)
51 | {
52 | // Sanity checks: Did the user forget to set the endpoint? Did the user forget to
53 | // specify the communication key?
54 |
55 | if (string.IsNullOrWhiteSpace(EndPoint) || string.IsNullOrWhiteSpace(commKey))
56 | {
57 | Debug.LogError("NodeLS Client: Endpoint or Communicaton key is invalid.");
58 | yield break;
59 | }
60 |
61 | WWWForm postRequest = new WWWForm();
62 | postRequest.AddField("serverKey", commKey.Trim());
63 |
64 | using (UnityWebRequest requestRunner = UnityWebRequest.Post($"{EndPoint}{QueryEndpoint}", postRequest))
65 | {
66 | Busy = true;
67 |
68 | yield return requestRunner.SendWebRequest();
69 |
70 | if (requestRunner.result == UnityWebRequest.Result.Success)
71 | {
72 | // Invoke the data received event.
73 | OnServerListRetrieved?.Invoke(JsonUtility.FromJson(requestRunner.downloadHandler.text.Trim()));
74 | }
75 | else
76 | {
77 | Debug.LogError($"NodeLS Client: Error processing request. Status returned was {requestRunner.result}.");
78 | }
79 | }
80 |
81 | Busy = false;
82 | yield return null;
83 | }
84 |
85 | ///
86 | /// Registers a server with the NodeLS instance
87 | ///
88 | /// The communication key used to authenicate.
89 | /// A string containing a GUID (UUID) identifying the server on the NodeLS instance.
90 | ///
91 | public IEnumerator RegisterServer(string commKey, ServerInfo newServerInfo)
92 | {
93 | // Sanity checks: Did the user forget to set the endpoint? Did the user forget to
94 | // specify the communication key?
95 |
96 | if (string.IsNullOrWhiteSpace(EndPoint) || string.IsNullOrWhiteSpace(commKey))
97 | {
98 | Debug.LogError("NodeLS Client: Endpoint or Communicaton key is invalid.");
99 | yield break;
100 | }
101 |
102 | Busy = true;
103 |
104 | // TODO: Server information checks
105 | WWWForm postRequest = new WWWForm();
106 | postRequest.AddField("serverKey", commKey.Trim());
107 | postRequest.AddField("serverName", newServerInfo.Name.Trim());
108 | // Possibly in the future, doesn't do anything atm.
109 | // ostRequest.AddField("serverIp", newServerInfo.Ip);
110 | postRequest.AddField("serverPort", newServerInfo.Port);
111 | postRequest.AddField("serverPlayers", newServerInfo.Count);
112 | postRequest.AddField("serverCapacity", newServerInfo.Capacity);
113 | postRequest.AddField("serverExtras", newServerInfo.ExtraInformation == null ? string.Empty : newServerInfo.ExtraInformation.ToString());
114 |
115 | using (UnityWebRequest requestRunner = UnityWebRequest.Post($"{EndPoint}{RegisterEndpoint}", postRequest))
116 | {
117 | yield return requestRunner.SendWebRequest();
118 |
119 | if (requestRunner.result == UnityWebRequest.Result.Success)
120 | {
121 | // It works!
122 | OnServerRegistered?.Invoke(requestRunner.downloadHandler.text.Trim());
123 | }
124 | else
125 | {
126 | Debug.LogError($"NodeLS Client: Error processing register request. Status returned was {requestRunner.result}.");
127 | }
128 | }
129 |
130 | Busy = false;
131 | yield return null;
132 | }
133 |
134 | public IEnumerator DeregisterServer(string commKey, string serverUuid)
135 | {
136 | if (string.IsNullOrWhiteSpace(EndPoint) || string.IsNullOrWhiteSpace(commKey) || string.IsNullOrWhiteSpace(serverUuid))
137 | {
138 | Debug.LogError("NodeLS Client: Endpoint, communicaton key or server UUID is invalid.");
139 | yield break;
140 | }
141 |
142 | WWWForm postRequest = new WWWForm();
143 | postRequest.AddField("serverKey", commKey.Trim());
144 | postRequest.AddField("serverUuid", serverUuid.Trim());
145 |
146 | using (UnityWebRequest requestRunner = UnityWebRequest.Post($"{EndPoint}{RemoveEndpoint}", postRequest))
147 | {
148 | yield return requestRunner.SendWebRequest();
149 |
150 | if (requestRunner.result == UnityWebRequest.Result.Success)
151 | {
152 | // It works!
153 | OnServerRemoved.Invoke();
154 | }
155 | else
156 | {
157 | Debug.LogError($"NodeLS Client: Error processing deregister request. Status returned was {requestRunner.result}.");
158 | }
159 | }
160 | }
161 |
162 | #endregion
163 |
164 | #region Callback functions
165 |
166 | #endregion
167 | }
168 | }
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Communicator.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c01d0c3df09b9a64e9a925f7adb8e1f6
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/DebugCommunicator.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | namespace NodeListServer
6 | {
7 | #if UNITY_EDITOR
8 | ///
9 | /// This is for debug purposes only.
10 | /// NOT RECOMMENDED FOR USE IN A PRODUCTION ENVIRONMENT.
11 | /// YOU HAVE BEEN WARNED.
12 | ///
13 | public class DebugCommunicator : MonoBehaviour
14 | {
15 | private NLSCommunicator communicator = new NLSCommunicator();
16 |
17 | private string ourServerIdentifier = string.Empty;
18 |
19 | private void Start()
20 | {
21 | communicator.EndPoint = "http://192.168.88.250:8889";
22 | communicator.OnServerRegistered += OnServerRegistered;
23 | communicator.OnServerRemoved += OnServerRemoved;
24 | }
25 |
26 | // Update is called once per frame
27 | private void Update()
28 | {
29 | // Query.
30 | if (Input.GetKeyDown(KeyCode.Q))
31 | {
32 | StartCoroutine(communicator.RetrieveList("NodeListServerDefaultKey"));
33 | }
34 | else if (Input.GetKeyUp(KeyCode.W))
35 | {
36 | // Register a server.
37 | if (!string.IsNullOrEmpty(ourServerIdentifier))
38 | return;
39 |
40 | ServerInfo serverInfo = new ServerInfo()
41 | {
42 | Name = $"NodeLS Dummy Server {Random.Range(100, 1000)}",
43 | Count = Random.Range(0, 69),
44 | Capacity = 999,
45 | Port = 31337,
46 | ExtraInformation = string.Empty,
47 | };
48 |
49 | StartCoroutine(communicator.RegisterServer("NodeListServerDefaultKey", serverInfo));
50 | }
51 | else if (Input.GetKeyDown(KeyCode.E))
52 | {
53 | // Deregister a server.
54 | if (string.IsNullOrEmpty(ourServerIdentifier))
55 | return;
56 |
57 | StartCoroutine(communicator.DeregisterServer("NodeListServerDefaultKey", ourServerIdentifier));
58 | }
59 | }
60 |
61 | private void OnServerRegistered(string serverUuid)
62 | {
63 | print("Server registered successfully");
64 | ourServerIdentifier = serverUuid;
65 | }
66 |
67 | private void OnServerRemoved()
68 | {
69 | print("Server removed successfully");
70 | ourServerIdentifier = string.Empty;
71 | }
72 | }
73 | #endif
74 | }
75 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/DebugCommunicator.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9a9401aa9bab5b24d99e6a058d85c894
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Definitions.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bbff116ca2e767040868c34d8c3863d0
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Definitions/Serializables.cs:
--------------------------------------------------------------------------------
1 | // This file is part of the NodeListServer Example package.
2 | using System;
3 | using System.Collections.Generic;
4 |
5 | namespace NodeListServer
6 | {
7 |
8 | [Serializable]
9 | public class ServerListResponse
10 | {
11 | // Number of known servers.
12 | public int count;
13 | // The container for the known servers.
14 | public List servers;
15 | // Ideally used for client-hosted games, tells you how often you should refresh your server information.
16 | public int updateFrequency;
17 | }
18 |
19 | [Serializable]
20 | public class ServerListEntry
21 | {
22 | // IP address. Beware: Might be IPv6 format, and require you to chop off the leading "::ffff:" part. YMMV.
23 | public string ip;
24 | // Name of the server.
25 | public string name;
26 | // Port of the server.
27 | public int port;
28 | // Number of players on the server.
29 | public int players;
30 | // The number of players maximum allowed on the server.
31 | public int capacity;
32 | // Extra data.
33 | public string extras;
34 | }
35 |
36 | [Serializable]
37 | public struct ServerInfo
38 | {
39 | public string Name; // The name of the server.
40 | // public string Ip; // The IP of the server.
41 | public int Port; // The port of the server.
42 | public int Count; // The count of players currently on the server.
43 | public int Capacity; // The count of players allowed on the server.
44 | public string ExtraInformation; // Some extra information, probably best in JSON format for easy parsing.
45 | }
46 | }
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Definitions/Serializables.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 61db281466b051843b8d7c909402b1f9
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Example.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2fb0ed2b4e3ff0d44b13cd648d0f879d
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Example/List Example.unity:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!29 &1
4 | OcclusionCullingSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_OcclusionBakeSettings:
8 | smallestOccluder: 5
9 | smallestHole: 0.25
10 | backfaceThreshold: 100
11 | m_SceneGUID: 00000000000000000000000000000000
12 | m_OcclusionCullingData: {fileID: 0}
13 | --- !u!104 &2
14 | RenderSettings:
15 | m_ObjectHideFlags: 0
16 | serializedVersion: 9
17 | m_Fog: 0
18 | m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
19 | m_FogMode: 3
20 | m_FogDensity: 0.01
21 | m_LinearFogStart: 0
22 | m_LinearFogEnd: 300
23 | m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
24 | m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
25 | m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
26 | m_AmbientIntensity: 1
27 | m_AmbientMode: 3
28 | m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
29 | m_SkyboxMaterial: {fileID: 0}
30 | m_HaloStrength: 0.5
31 | m_FlareStrength: 1
32 | m_FlareFadeSpeed: 3
33 | m_HaloTexture: {fileID: 0}
34 | m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
35 | m_DefaultReflectionMode: 0
36 | m_DefaultReflectionResolution: 128
37 | m_ReflectionBounces: 1
38 | m_ReflectionIntensity: 1
39 | m_CustomReflection: {fileID: 0}
40 | m_Sun: {fileID: 0}
41 | m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
42 | m_UseRadianceAmbientProbe: 0
43 | --- !u!157 &4
44 | LightmapSettings:
45 | m_ObjectHideFlags: 0
46 | serializedVersion: 12
47 | m_GIWorkflowMode: 0
48 | m_GISettings:
49 | serializedVersion: 2
50 | m_BounceScale: 1
51 | m_IndirectOutputScale: 1
52 | m_AlbedoBoost: 1
53 | m_EnvironmentLightingMode: 0
54 | m_EnableBakedLightmaps: 0
55 | m_EnableRealtimeLightmaps: 0
56 | m_LightmapEditorSettings:
57 | serializedVersion: 12
58 | m_Resolution: 2
59 | m_BakeResolution: 40
60 | m_AtlasSize: 1024
61 | m_AO: 0
62 | m_AOMaxDistance: 1
63 | m_CompAOExponent: 0
64 | m_CompAOExponentDirect: 0
65 | m_ExtractAmbientOcclusion: 0
66 | m_Padding: 2
67 | m_LightmapParameters: {fileID: 0}
68 | m_LightmapsBakeMode: 1
69 | m_TextureCompression: 1
70 | m_FinalGather: 0
71 | m_FinalGatherFiltering: 1
72 | m_FinalGatherRayCount: 1024
73 | m_ReflectionCompression: 2
74 | m_MixedBakeMode: 1
75 | m_BakeBackend: 0
76 | m_PVRSampling: 1
77 | m_PVRDirectSampleCount: 32
78 | m_PVRSampleCount: 500
79 | m_PVRBounces: 2
80 | m_PVREnvironmentSampleCount: 500
81 | m_PVREnvironmentReferencePointCount: 2048
82 | m_PVRFilteringMode: 0
83 | m_PVRDenoiserTypeDirect: 0
84 | m_PVRDenoiserTypeIndirect: 0
85 | m_PVRDenoiserTypeAO: 0
86 | m_PVRFilterTypeDirect: 0
87 | m_PVRFilterTypeIndirect: 0
88 | m_PVRFilterTypeAO: 0
89 | m_PVREnvironmentMIS: 0
90 | m_PVRCulling: 1
91 | m_PVRFilteringGaussRadiusDirect: 1
92 | m_PVRFilteringGaussRadiusIndirect: 5
93 | m_PVRFilteringGaussRadiusAO: 2
94 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
95 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
96 | m_PVRFilteringAtrousPositionSigmaAO: 1
97 | m_ExportTrainingData: 0
98 | m_TrainingDataDestination: TrainingData
99 | m_LightProbeSampleCountMultiplier: 4
100 | m_LightingDataAsset: {fileID: 0}
101 | m_LightingSettings: {fileID: 852509933}
102 | --- !u!196 &5
103 | NavMeshSettings:
104 | serializedVersion: 2
105 | m_ObjectHideFlags: 0
106 | m_BuildSettings:
107 | serializedVersion: 2
108 | agentTypeID: 0
109 | agentRadius: 0.5
110 | agentHeight: 2
111 | agentSlope: 45
112 | agentClimb: 0.4
113 | ledgeDropHeight: 0
114 | maxJumpAcrossDistance: 0
115 | minRegionArea: 2
116 | manualCellSize: 0
117 | cellSize: 0.16666667
118 | manualTileSize: 0
119 | tileSize: 256
120 | accuratePlacement: 0
121 | maxJobWorkers: 0
122 | preserveTilesOutsideBounds: 0
123 | debug:
124 | m_Flags: 0
125 | m_NavMeshData: {fileID: 23800000, guid: b7816657e55c04901be36ace7275ad85, type: 2}
126 | --- !u!1 &13922436
127 | GameObject:
128 | m_ObjectHideFlags: 0
129 | m_CorrespondingSourceObject: {fileID: 0}
130 | m_PrefabInstance: {fileID: 0}
131 | m_PrefabAsset: {fileID: 0}
132 | serializedVersion: 6
133 | m_Component:
134 | - component: {fileID: 13922437}
135 | - component: {fileID: 13922439}
136 | - component: {fileID: 13922438}
137 | m_Layer: 5
138 | m_Name: TextStatus
139 | m_TagString: Untagged
140 | m_Icon: {fileID: 0}
141 | m_NavMeshLayer: 0
142 | m_StaticEditorFlags: 0
143 | m_IsActive: 1
144 | --- !u!224 &13922437
145 | RectTransform:
146 | m_ObjectHideFlags: 0
147 | m_CorrespondingSourceObject: {fileID: 0}
148 | m_PrefabInstance: {fileID: 0}
149 | m_PrefabAsset: {fileID: 0}
150 | m_GameObject: {fileID: 13922436}
151 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
152 | m_LocalPosition: {x: 0, y: 0, z: 0}
153 | m_LocalScale: {x: 1, y: 1, z: 1}
154 | m_Children: []
155 | m_Father: {fileID: 1926990971}
156 | m_RootOrder: 1
157 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
158 | m_AnchorMin: {x: 0, y: 1}
159 | m_AnchorMax: {x: 1, y: 1}
160 | m_AnchoredPosition: {x: 0, y: -29}
161 | m_SizeDelta: {x: 0, y: 18}
162 | m_Pivot: {x: 0.5, y: 0.5}
163 | --- !u!114 &13922438
164 | MonoBehaviour:
165 | m_ObjectHideFlags: 0
166 | m_CorrespondingSourceObject: {fileID: 0}
167 | m_PrefabInstance: {fileID: 0}
168 | m_PrefabAsset: {fileID: 0}
169 | m_GameObject: {fileID: 13922436}
170 | m_Enabled: 1
171 | m_EditorHideFlags: 0
172 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
173 | m_Name:
174 | m_EditorClassIdentifier:
175 | m_Material: {fileID: 0}
176 | m_Color: {r: 1, g: 1, b: 1, a: 1}
177 | m_RaycastTarget: 1
178 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
179 | m_Maskable: 1
180 | m_OnCullStateChanged:
181 | m_PersistentCalls:
182 | m_Calls: []
183 | m_FontData:
184 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
185 | m_FontSize: 12
186 | m_FontStyle: 1
187 | m_BestFit: 0
188 | m_MinSize: 1
189 | m_MaxSize: 40
190 | m_Alignment: 4
191 | m_AlignByGeometry: 0
192 | m_RichText: 1
193 | m_HorizontalOverflow: 0
194 | m_VerticalOverflow: 0
195 | m_LineSpacing: 1
196 | m_Text: Status
197 | --- !u!222 &13922439
198 | CanvasRenderer:
199 | m_ObjectHideFlags: 0
200 | m_CorrespondingSourceObject: {fileID: 0}
201 | m_PrefabInstance: {fileID: 0}
202 | m_PrefabAsset: {fileID: 0}
203 | m_GameObject: {fileID: 13922436}
204 | m_CullTransparentMesh: 0
205 | --- !u!1 &21701407
206 | GameObject:
207 | m_ObjectHideFlags: 0
208 | m_CorrespondingSourceObject: {fileID: 0}
209 | m_PrefabInstance: {fileID: 0}
210 | m_PrefabAsset: {fileID: 0}
211 | serializedVersion: 6
212 | m_Component:
213 | - component: {fileID: 21701408}
214 | - component: {fileID: 21701410}
215 | - component: {fileID: 21701409}
216 | m_Layer: 5
217 | m_Name: TextJoinServer
218 | m_TagString: Untagged
219 | m_Icon: {fileID: 0}
220 | m_NavMeshLayer: 0
221 | m_StaticEditorFlags: 0
222 | m_IsActive: 1
223 | --- !u!224 &21701408
224 | RectTransform:
225 | m_ObjectHideFlags: 0
226 | m_CorrespondingSourceObject: {fileID: 0}
227 | m_PrefabInstance: {fileID: 0}
228 | m_PrefabAsset: {fileID: 0}
229 | m_GameObject: {fileID: 21701407}
230 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
231 | m_LocalPosition: {x: 0, y: 0, z: 0}
232 | m_LocalScale: {x: 1, y: 1, z: 1}
233 | m_Children: []
234 | m_Father: {fileID: 776519261}
235 | m_RootOrder: 1
236 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
237 | m_AnchorMin: {x: 0, y: 1}
238 | m_AnchorMax: {x: 1, y: 1}
239 | m_AnchoredPosition: {x: 0, y: -29}
240 | m_SizeDelta: {x: 0, y: 18}
241 | m_Pivot: {x: 0.5, y: 0.5}
242 | --- !u!114 &21701409
243 | MonoBehaviour:
244 | m_ObjectHideFlags: 0
245 | m_CorrespondingSourceObject: {fileID: 0}
246 | m_PrefabInstance: {fileID: 0}
247 | m_PrefabAsset: {fileID: 0}
248 | m_GameObject: {fileID: 21701407}
249 | m_Enabled: 1
250 | m_EditorHideFlags: 0
251 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
252 | m_Name:
253 | m_EditorClassIdentifier:
254 | m_Material: {fileID: 0}
255 | m_Color: {r: 1, g: 1, b: 1, a: 1}
256 | m_RaycastTarget: 1
257 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
258 | m_Maskable: 1
259 | m_OnCullStateChanged:
260 | m_PersistentCalls:
261 | m_Calls: []
262 | m_FontData:
263 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
264 | m_FontSize: 12
265 | m_FontStyle: 1
266 | m_BestFit: 0
267 | m_MinSize: 1
268 | m_MaxSize: 40
269 | m_Alignment: 4
270 | m_AlignByGeometry: 0
271 | m_RichText: 1
272 | m_HorizontalOverflow: 0
273 | m_VerticalOverflow: 0
274 | m_LineSpacing: 1
275 | m_Text: Join Server
276 | --- !u!222 &21701410
277 | CanvasRenderer:
278 | m_ObjectHideFlags: 0
279 | m_CorrespondingSourceObject: {fileID: 0}
280 | m_PrefabInstance: {fileID: 0}
281 | m_PrefabAsset: {fileID: 0}
282 | m_GameObject: {fileID: 21701407}
283 | m_CullTransparentMesh: 0
284 | --- !u!1 &88936773
285 | GameObject:
286 | m_ObjectHideFlags: 0
287 | m_CorrespondingSourceObject: {fileID: 0}
288 | m_PrefabInstance: {fileID: 0}
289 | m_PrefabAsset: {fileID: 0}
290 | serializedVersion: 6
291 | m_Component:
292 | - component: {fileID: 88936777}
293 | - component: {fileID: 88936776}
294 | - component: {fileID: 88936775}
295 | - component: {fileID: 88936774}
296 | m_Layer: 0
297 | m_Name: Main Camera
298 | m_TagString: MainCamera
299 | m_Icon: {fileID: 0}
300 | m_NavMeshLayer: 0
301 | m_StaticEditorFlags: 0
302 | m_IsActive: 1
303 | --- !u!81 &88936774
304 | AudioListener:
305 | m_ObjectHideFlags: 0
306 | m_CorrespondingSourceObject: {fileID: 0}
307 | m_PrefabInstance: {fileID: 0}
308 | m_PrefabAsset: {fileID: 0}
309 | m_GameObject: {fileID: 88936773}
310 | m_Enabled: 1
311 | --- !u!124 &88936775
312 | Behaviour:
313 | m_ObjectHideFlags: 0
314 | m_CorrespondingSourceObject: {fileID: 0}
315 | m_PrefabInstance: {fileID: 0}
316 | m_PrefabAsset: {fileID: 0}
317 | m_GameObject: {fileID: 88936773}
318 | m_Enabled: 1
319 | --- !u!20 &88936776
320 | Camera:
321 | m_ObjectHideFlags: 0
322 | m_CorrespondingSourceObject: {fileID: 0}
323 | m_PrefabInstance: {fileID: 0}
324 | m_PrefabAsset: {fileID: 0}
325 | m_GameObject: {fileID: 88936773}
326 | m_Enabled: 1
327 | serializedVersion: 2
328 | m_ClearFlags: 1
329 | m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0}
330 | m_projectionMatrixMode: 1
331 | m_GateFitMode: 2
332 | m_FOVAxisMode: 0
333 | m_SensorSize: {x: 36, y: 24}
334 | m_LensShift: {x: 0, y: 0}
335 | m_FocalLength: 50
336 | m_NormalizedViewPortRect:
337 | serializedVersion: 2
338 | x: 0
339 | y: 0
340 | width: 1
341 | height: 1
342 | near clip plane: 0.3
343 | far clip plane: 1000
344 | field of view: 60
345 | orthographic: 0
346 | orthographic size: 5
347 | m_Depth: -1
348 | m_CullingMask:
349 | serializedVersion: 2
350 | m_Bits: 4294967295
351 | m_RenderingPath: -1
352 | m_TargetTexture: {fileID: 0}
353 | m_TargetDisplay: 0
354 | m_TargetEye: 3
355 | m_HDR: 1
356 | m_AllowMSAA: 1
357 | m_AllowDynamicResolution: 0
358 | m_ForceIntoRT: 0
359 | m_OcclusionCulling: 1
360 | m_StereoConvergence: 10
361 | m_StereoSeparation: 0.022
362 | --- !u!4 &88936777
363 | Transform:
364 | m_ObjectHideFlags: 0
365 | m_CorrespondingSourceObject: {fileID: 0}
366 | m_PrefabInstance: {fileID: 0}
367 | m_PrefabAsset: {fileID: 0}
368 | m_GameObject: {fileID: 88936773}
369 | m_LocalRotation: {x: 0, y: 0.92387956, z: -0.38268343, w: 0}
370 | m_LocalPosition: {x: 0, y: 6.5, z: 8}
371 | m_LocalScale: {x: 1, y: 1, z: 1}
372 | m_Children: []
373 | m_Father: {fileID: 0}
374 | m_RootOrder: 3
375 | m_LocalEulerAnglesHint: {x: 45, y: 180, z: 0}
376 | --- !u!1 &177548782
377 | GameObject:
378 | m_ObjectHideFlags: 0
379 | m_CorrespondingSourceObject: {fileID: 0}
380 | m_PrefabInstance: {fileID: 0}
381 | m_PrefabAsset: {fileID: 0}
382 | serializedVersion: 6
383 | m_Component:
384 | - component: {fileID: 177548783}
385 | - component: {fileID: 177548785}
386 | - component: {fileID: 177548784}
387 | m_Layer: 5
388 | m_Name: TextTitle
389 | m_TagString: Untagged
390 | m_Icon: {fileID: 0}
391 | m_NavMeshLayer: 0
392 | m_StaticEditorFlags: 0
393 | m_IsActive: 1
394 | --- !u!224 &177548783
395 | RectTransform:
396 | m_ObjectHideFlags: 0
397 | m_CorrespondingSourceObject: {fileID: 0}
398 | m_PrefabInstance: {fileID: 0}
399 | m_PrefabAsset: {fileID: 0}
400 | m_GameObject: {fileID: 177548782}
401 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
402 | m_LocalPosition: {x: 0, y: 0, z: 0}
403 | m_LocalScale: {x: 1, y: 1, z: 1}
404 | m_Children: []
405 | m_Father: {fileID: 1007872741}
406 | m_RootOrder: 0
407 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
408 | m_AnchorMin: {x: 0, y: 0.5}
409 | m_AnchorMax: {x: 1, y: 0.5}
410 | m_AnchoredPosition: {x: 0, y: 0}
411 | m_SizeDelta: {x: -36, y: 20}
412 | m_Pivot: {x: 0.5, y: 0.5}
413 | --- !u!114 &177548784
414 | MonoBehaviour:
415 | m_ObjectHideFlags: 0
416 | m_CorrespondingSourceObject: {fileID: 0}
417 | m_PrefabInstance: {fileID: 0}
418 | m_PrefabAsset: {fileID: 0}
419 | m_GameObject: {fileID: 177548782}
420 | m_Enabled: 1
421 | m_EditorHideFlags: 0
422 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
423 | m_Name:
424 | m_EditorClassIdentifier:
425 | m_Material: {fileID: 0}
426 | m_Color: {r: 0.23137255, g: 1, b: 0.6862745, a: 1}
427 | m_RaycastTarget: 0
428 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
429 | m_Maskable: 1
430 | m_OnCullStateChanged:
431 | m_PersistentCalls:
432 | m_Calls: []
433 | m_FontData:
434 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
435 | m_FontSize: 14
436 | m_FontStyle: 0
437 | m_BestFit: 0
438 | m_MinSize: 1
439 | m_MaxSize: 40
440 | m_Alignment: 4
441 | m_AlignByGeometry: 0
442 | m_RichText: 1
443 | m_HorizontalOverflow: 0
444 | m_VerticalOverflow: 0
445 | m_LineSpacing: 1
446 | m_Text: NodeListServer Demo - Client Mode Server List
447 | --- !u!222 &177548785
448 | CanvasRenderer:
449 | m_ObjectHideFlags: 0
450 | m_CorrespondingSourceObject: {fileID: 0}
451 | m_PrefabInstance: {fileID: 0}
452 | m_PrefabAsset: {fileID: 0}
453 | m_GameObject: {fileID: 177548782}
454 | m_CullTransparentMesh: 0
455 | --- !u!1 &232720476
456 | GameObject:
457 | m_ObjectHideFlags: 0
458 | m_CorrespondingSourceObject: {fileID: 0}
459 | m_PrefabInstance: {fileID: 0}
460 | m_PrefabAsset: {fileID: 0}
461 | serializedVersion: 6
462 | m_Component:
463 | - component: {fileID: 232720477}
464 | - component: {fileID: 232720479}
465 | - component: {fileID: 232720478}
466 | m_Layer: 5
467 | m_Name: Text
468 | m_TagString: Untagged
469 | m_Icon: {fileID: 0}
470 | m_NavMeshLayer: 0
471 | m_StaticEditorFlags: 0
472 | m_IsActive: 1
473 | --- !u!224 &232720477
474 | RectTransform:
475 | m_ObjectHideFlags: 0
476 | m_CorrespondingSourceObject: {fileID: 0}
477 | m_PrefabInstance: {fileID: 0}
478 | m_PrefabAsset: {fileID: 0}
479 | m_GameObject: {fileID: 232720476}
480 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
481 | m_LocalPosition: {x: 0, y: 0, z: 0}
482 | m_LocalScale: {x: 1, y: 1, z: 1}
483 | m_Children: []
484 | m_Father: {fileID: 1578438653}
485 | m_RootOrder: 0
486 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
487 | m_AnchorMin: {x: 0, y: 1}
488 | m_AnchorMax: {x: 0, y: 1}
489 | m_AnchoredPosition: {x: 7, y: 0}
490 | m_SizeDelta: {x: 218, y: 20}
491 | m_Pivot: {x: 0, y: 1}
492 | --- !u!114 &232720478
493 | MonoBehaviour:
494 | m_ObjectHideFlags: 0
495 | m_CorrespondingSourceObject: {fileID: 0}
496 | m_PrefabInstance: {fileID: 0}
497 | m_PrefabAsset: {fileID: 0}
498 | m_GameObject: {fileID: 232720476}
499 | m_Enabled: 1
500 | m_EditorHideFlags: 0
501 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
502 | m_Name:
503 | m_EditorClassIdentifier:
504 | m_Material: {fileID: 0}
505 | m_Color: {r: 1, g: 0.23137255, b: 0.5803922, a: 1}
506 | m_RaycastTarget: 1
507 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
508 | m_Maskable: 1
509 | m_OnCullStateChanged:
510 | m_PersistentCalls:
511 | m_Calls: []
512 | m_FontData:
513 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
514 | m_FontSize: 12
515 | m_FontStyle: 1
516 | m_BestFit: 0
517 | m_MinSize: 1
518 | m_MaxSize: 40
519 | m_Alignment: 3
520 | m_AlignByGeometry: 0
521 | m_RichText: 1
522 | m_HorizontalOverflow: 0
523 | m_VerticalOverflow: 0
524 | m_LineSpacing: 1
525 | m_Text: Server
526 | --- !u!222 &232720479
527 | CanvasRenderer:
528 | m_ObjectHideFlags: 0
529 | m_CorrespondingSourceObject: {fileID: 0}
530 | m_PrefabInstance: {fileID: 0}
531 | m_PrefabAsset: {fileID: 0}
532 | m_GameObject: {fileID: 232720476}
533 | m_CullTransparentMesh: 0
534 | --- !u!1 &354490534
535 | GameObject:
536 | m_ObjectHideFlags: 0
537 | m_CorrespondingSourceObject: {fileID: 0}
538 | m_PrefabInstance: {fileID: 0}
539 | m_PrefabAsset: {fileID: 0}
540 | serializedVersion: 6
541 | m_Component:
542 | - component: {fileID: 354490535}
543 | - component: {fileID: 354490537}
544 | - component: {fileID: 354490536}
545 | m_Layer: 5
546 | m_Name: Text
547 | m_TagString: Untagged
548 | m_Icon: {fileID: 0}
549 | m_NavMeshLayer: 0
550 | m_StaticEditorFlags: 0
551 | m_IsActive: 1
552 | --- !u!224 &354490535
553 | RectTransform:
554 | m_ObjectHideFlags: 0
555 | m_CorrespondingSourceObject: {fileID: 0}
556 | m_PrefabInstance: {fileID: 0}
557 | m_PrefabAsset: {fileID: 0}
558 | m_GameObject: {fileID: 354490534}
559 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
560 | m_LocalPosition: {x: 0, y: 0, z: 0}
561 | m_LocalScale: {x: 1, y: 1, z: 1}
562 | m_Children: []
563 | m_Father: {fileID: 1578438653}
564 | m_RootOrder: 3
565 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
566 | m_AnchorMin: {x: 0, y: 1}
567 | m_AnchorMax: {x: 0, y: 1}
568 | m_AnchoredPosition: {x: 345, y: 0}
569 | m_SizeDelta: {x: 130, y: 20}
570 | m_Pivot: {x: 0, y: 1}
571 | --- !u!114 &354490536
572 | MonoBehaviour:
573 | m_ObjectHideFlags: 0
574 | m_CorrespondingSourceObject: {fileID: 0}
575 | m_PrefabInstance: {fileID: 0}
576 | m_PrefabAsset: {fileID: 0}
577 | m_GameObject: {fileID: 354490534}
578 | m_Enabled: 1
579 | m_EditorHideFlags: 0
580 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
581 | m_Name:
582 | m_EditorClassIdentifier:
583 | m_Material: {fileID: 0}
584 | m_Color: {r: 1, g: 0.23137255, b: 0.5803922, a: 1}
585 | m_RaycastTarget: 1
586 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
587 | m_Maskable: 1
588 | m_OnCullStateChanged:
589 | m_PersistentCalls:
590 | m_Calls: []
591 | m_FontData:
592 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
593 | m_FontSize: 12
594 | m_FontStyle: 1
595 | m_BestFit: 0
596 | m_MinSize: 1
597 | m_MaxSize: 40
598 | m_Alignment: 5
599 | m_AlignByGeometry: 0
600 | m_RichText: 1
601 | m_HorizontalOverflow: 0
602 | m_VerticalOverflow: 0
603 | m_LineSpacing: 1
604 | m_Text: Address
605 | --- !u!222 &354490537
606 | CanvasRenderer:
607 | m_ObjectHideFlags: 0
608 | m_CorrespondingSourceObject: {fileID: 0}
609 | m_PrefabInstance: {fileID: 0}
610 | m_PrefabAsset: {fileID: 0}
611 | m_GameObject: {fileID: 354490534}
612 | m_CullTransparentMesh: 0
613 | --- !u!1 &424897549
614 | GameObject:
615 | m_ObjectHideFlags: 0
616 | m_CorrespondingSourceObject: {fileID: 0}
617 | m_PrefabInstance: {fileID: 0}
618 | m_PrefabAsset: {fileID: 0}
619 | serializedVersion: 6
620 | m_Component:
621 | - component: {fileID: 424897550}
622 | - component: {fileID: 424897552}
623 | - component: {fileID: 424897551}
624 | m_Layer: 5
625 | m_Name: Text
626 | m_TagString: Untagged
627 | m_Icon: {fileID: 0}
628 | m_NavMeshLayer: 0
629 | m_StaticEditorFlags: 0
630 | m_IsActive: 1
631 | --- !u!224 &424897550
632 | RectTransform:
633 | m_ObjectHideFlags: 0
634 | m_CorrespondingSourceObject: {fileID: 0}
635 | m_PrefabInstance: {fileID: 0}
636 | m_PrefabAsset: {fileID: 0}
637 | m_GameObject: {fileID: 424897549}
638 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
639 | m_LocalPosition: {x: 0, y: 0, z: 0}
640 | m_LocalScale: {x: 1, y: 1, z: 1}
641 | m_Children: []
642 | m_Father: {fileID: 1578438653}
643 | m_RootOrder: 1
644 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
645 | m_AnchorMin: {x: 0, y: 1}
646 | m_AnchorMax: {x: 0, y: 1}
647 | m_AnchoredPosition: {x: 225, y: 0}
648 | m_SizeDelta: {x: 60, y: 20}
649 | m_Pivot: {x: 0, y: 1}
650 | --- !u!114 &424897551
651 | MonoBehaviour:
652 | m_ObjectHideFlags: 0
653 | m_CorrespondingSourceObject: {fileID: 0}
654 | m_PrefabInstance: {fileID: 0}
655 | m_PrefabAsset: {fileID: 0}
656 | m_GameObject: {fileID: 424897549}
657 | m_Enabled: 1
658 | m_EditorHideFlags: 0
659 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
660 | m_Name:
661 | m_EditorClassIdentifier:
662 | m_Material: {fileID: 0}
663 | m_Color: {r: 1, g: 0.23137255, b: 0.5803922, a: 1}
664 | m_RaycastTarget: 1
665 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
666 | m_Maskable: 1
667 | m_OnCullStateChanged:
668 | m_PersistentCalls:
669 | m_Calls: []
670 | m_FontData:
671 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
672 | m_FontSize: 12
673 | m_FontStyle: 1
674 | m_BestFit: 0
675 | m_MinSize: 1
676 | m_MaxSize: 40
677 | m_Alignment: 5
678 | m_AlignByGeometry: 0
679 | m_RichText: 1
680 | m_HorizontalOverflow: 0
681 | m_VerticalOverflow: 0
682 | m_LineSpacing: 1
683 | m_Text: Players
684 | --- !u!222 &424897552
685 | CanvasRenderer:
686 | m_ObjectHideFlags: 0
687 | m_CorrespondingSourceObject: {fileID: 0}
688 | m_PrefabInstance: {fileID: 0}
689 | m_PrefabAsset: {fileID: 0}
690 | m_GameObject: {fileID: 424897549}
691 | m_CullTransparentMesh: 0
692 | --- !u!1 &531282979
693 | GameObject:
694 | m_ObjectHideFlags: 0
695 | m_CorrespondingSourceObject: {fileID: 0}
696 | m_PrefabInstance: {fileID: 0}
697 | m_PrefabAsset: {fileID: 0}
698 | serializedVersion: 6
699 | m_Component:
700 | - component: {fileID: 531282980}
701 | - component: {fileID: 531282982}
702 | - component: {fileID: 531282981}
703 | m_Layer: 5
704 | m_Name: Text
705 | m_TagString: Untagged
706 | m_Icon: {fileID: 0}
707 | m_NavMeshLayer: 0
708 | m_StaticEditorFlags: 0
709 | m_IsActive: 1
710 | --- !u!224 &531282980
711 | RectTransform:
712 | m_ObjectHideFlags: 0
713 | m_CorrespondingSourceObject: {fileID: 0}
714 | m_PrefabInstance: {fileID: 0}
715 | m_PrefabAsset: {fileID: 0}
716 | m_GameObject: {fileID: 531282979}
717 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
718 | m_LocalPosition: {x: 0, y: 0, z: 0}
719 | m_LocalScale: {x: 1, y: 1, z: 1}
720 | m_Children: []
721 | m_Father: {fileID: 1004751478}
722 | m_RootOrder: 0
723 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
724 | m_AnchorMin: {x: 0, y: 0}
725 | m_AnchorMax: {x: 1, y: 1}
726 | m_AnchoredPosition: {x: 0, y: 0}
727 | m_SizeDelta: {x: 0, y: 0}
728 | m_Pivot: {x: 0.5, y: 0.5}
729 | --- !u!114 &531282981
730 | MonoBehaviour:
731 | m_ObjectHideFlags: 0
732 | m_CorrespondingSourceObject: {fileID: 0}
733 | m_PrefabInstance: {fileID: 0}
734 | m_PrefabAsset: {fileID: 0}
735 | m_GameObject: {fileID: 531282979}
736 | m_Enabled: 1
737 | m_EditorHideFlags: 0
738 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
739 | m_Name:
740 | m_EditorClassIdentifier:
741 | m_Material: {fileID: 0}
742 | m_Color: {r: 1, g: 1, b: 1, a: 1}
743 | m_RaycastTarget: 1
744 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
745 | m_Maskable: 1
746 | m_OnCullStateChanged:
747 | m_PersistentCalls:
748 | m_Calls: []
749 | m_FontData:
750 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
751 | m_FontSize: 12
752 | m_FontStyle: 0
753 | m_BestFit: 0
754 | m_MinSize: 1
755 | m_MaxSize: 40
756 | m_Alignment: 4
757 | m_AlignByGeometry: 0
758 | m_RichText: 1
759 | m_HorizontalOverflow: 0
760 | m_VerticalOverflow: 0
761 | m_LineSpacing: 1
762 | m_Text: Refresh List
763 | --- !u!222 &531282982
764 | CanvasRenderer:
765 | m_ObjectHideFlags: 0
766 | m_CorrespondingSourceObject: {fileID: 0}
767 | m_PrefabInstance: {fileID: 0}
768 | m_PrefabAsset: {fileID: 0}
769 | m_GameObject: {fileID: 531282979}
770 | m_CullTransparentMesh: 0
771 | --- !u!1 &535675709
772 | GameObject:
773 | m_ObjectHideFlags: 0
774 | m_CorrespondingSourceObject: {fileID: 0}
775 | m_PrefabInstance: {fileID: 0}
776 | m_PrefabAsset: {fileID: 0}
777 | serializedVersion: 6
778 | m_Component:
779 | - component: {fileID: 535675710}
780 | - component: {fileID: 535675712}
781 | - component: {fileID: 535675711}
782 | m_Layer: 5
783 | m_Name: Text
784 | m_TagString: Untagged
785 | m_Icon: {fileID: 0}
786 | m_NavMeshLayer: 0
787 | m_StaticEditorFlags: 0
788 | m_IsActive: 1
789 | --- !u!224 &535675710
790 | RectTransform:
791 | m_ObjectHideFlags: 0
792 | m_CorrespondingSourceObject: {fileID: 0}
793 | m_PrefabInstance: {fileID: 0}
794 | m_PrefabAsset: {fileID: 0}
795 | m_GameObject: {fileID: 535675709}
796 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
797 | m_LocalPosition: {x: 0, y: 0, z: 0}
798 | m_LocalScale: {x: 1, y: 1, z: 1}
799 | m_Children: []
800 | m_Father: {fileID: 1578438653}
801 | m_RootOrder: 2
802 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
803 | m_AnchorMin: {x: 0, y: 1}
804 | m_AnchorMax: {x: 0, y: 1}
805 | m_AnchoredPosition: {x: 285, y: 0}
806 | m_SizeDelta: {x: 60, y: 20}
807 | m_Pivot: {x: 0, y: 1}
808 | --- !u!114 &535675711
809 | MonoBehaviour:
810 | m_ObjectHideFlags: 0
811 | m_CorrespondingSourceObject: {fileID: 0}
812 | m_PrefabInstance: {fileID: 0}
813 | m_PrefabAsset: {fileID: 0}
814 | m_GameObject: {fileID: 535675709}
815 | m_Enabled: 1
816 | m_EditorHideFlags: 0
817 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
818 | m_Name:
819 | m_EditorClassIdentifier:
820 | m_Material: {fileID: 0}
821 | m_Color: {r: 1, g: 0.23137255, b: 0.5803922, a: 1}
822 | m_RaycastTarget: 1
823 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
824 | m_Maskable: 1
825 | m_OnCullStateChanged:
826 | m_PersistentCalls:
827 | m_Calls: []
828 | m_FontData:
829 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
830 | m_FontSize: 12
831 | m_FontStyle: 1
832 | m_BestFit: 0
833 | m_MinSize: 1
834 | m_MaxSize: 40
835 | m_Alignment: 5
836 | m_AlignByGeometry: 0
837 | m_RichText: 1
838 | m_HorizontalOverflow: 0
839 | m_VerticalOverflow: 0
840 | m_LineSpacing: 1
841 | m_Text: Latency
842 | --- !u!222 &535675712
843 | CanvasRenderer:
844 | m_ObjectHideFlags: 0
845 | m_CorrespondingSourceObject: {fileID: 0}
846 | m_PrefabInstance: {fileID: 0}
847 | m_PrefabAsset: {fileID: 0}
848 | m_GameObject: {fileID: 535675709}
849 | m_CullTransparentMesh: 0
850 | --- !u!1 &583153858
851 | GameObject:
852 | m_ObjectHideFlags: 0
853 | m_CorrespondingSourceObject: {fileID: 0}
854 | m_PrefabInstance: {fileID: 0}
855 | m_PrefabAsset: {fileID: 0}
856 | serializedVersion: 6
857 | m_Component:
858 | - component: {fileID: 583153859}
859 | - component: {fileID: 583153861}
860 | - component: {fileID: 583153860}
861 | m_Layer: 5
862 | m_Name: Content
863 | m_TagString: Untagged
864 | m_Icon: {fileID: 0}
865 | m_NavMeshLayer: 0
866 | m_StaticEditorFlags: 0
867 | m_IsActive: 1
868 | --- !u!224 &583153859
869 | RectTransform:
870 | m_ObjectHideFlags: 0
871 | m_CorrespondingSourceObject: {fileID: 0}
872 | m_PrefabInstance: {fileID: 0}
873 | m_PrefabAsset: {fileID: 0}
874 | m_GameObject: {fileID: 583153858}
875 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
876 | m_LocalPosition: {x: 0, y: 0, z: 0}
877 | m_LocalScale: {x: 1, y: 1, z: 1}
878 | m_Children: []
879 | m_Father: {fileID: 1918165881}
880 | m_RootOrder: 0
881 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
882 | m_AnchorMin: {x: 0, y: 1}
883 | m_AnchorMax: {x: 0, y: 1}
884 | m_AnchoredPosition: {x: 0, y: 0}
885 | m_SizeDelta: {x: 560, y: 0}
886 | m_Pivot: {x: 0, y: 1}
887 | --- !u!114 &583153860
888 | MonoBehaviour:
889 | m_ObjectHideFlags: 0
890 | m_CorrespondingSourceObject: {fileID: 0}
891 | m_PrefabInstance: {fileID: 0}
892 | m_PrefabAsset: {fileID: 0}
893 | m_GameObject: {fileID: 583153858}
894 | m_Enabled: 1
895 | m_EditorHideFlags: 0
896 | m_Script: {fileID: 11500000, guid: 8a8695521f0d02e499659fee002a26c2, type: 3}
897 | m_Name:
898 | m_EditorClassIdentifier:
899 | m_Padding:
900 | m_Left: 2
901 | m_Right: 2
902 | m_Top: 4
903 | m_Bottom: 2
904 | m_ChildAlignment: 0
905 | m_StartCorner: 0
906 | m_StartAxis: 0
907 | m_CellSize: {x: 560, y: 16}
908 | m_Spacing: {x: 0, y: 0}
909 | m_Constraint: 1
910 | m_ConstraintCount: 1
911 | --- !u!114 &583153861
912 | MonoBehaviour:
913 | m_ObjectHideFlags: 0
914 | m_CorrespondingSourceObject: {fileID: 0}
915 | m_PrefabInstance: {fileID: 0}
916 | m_PrefabAsset: {fileID: 0}
917 | m_GameObject: {fileID: 583153858}
918 | m_Enabled: 1
919 | m_EditorHideFlags: 0
920 | m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3}
921 | m_Name:
922 | m_EditorClassIdentifier:
923 | m_HorizontalFit: 0
924 | m_VerticalFit: 2
925 | --- !u!1 &586458803
926 | GameObject:
927 | m_ObjectHideFlags: 0
928 | m_CorrespondingSourceObject: {fileID: 0}
929 | m_PrefabInstance: {fileID: 0}
930 | m_PrefabAsset: {fileID: 0}
931 | serializedVersion: 6
932 | m_Component:
933 | - component: {fileID: 586458804}
934 | - component: {fileID: 586458807}
935 | - component: {fileID: 586458806}
936 | - component: {fileID: 586458805}
937 | m_Layer: 5
938 | m_Name: Scrollbar Vertical
939 | m_TagString: Untagged
940 | m_Icon: {fileID: 0}
941 | m_NavMeshLayer: 0
942 | m_StaticEditorFlags: 0
943 | m_IsActive: 1
944 | --- !u!224 &586458804
945 | RectTransform:
946 | m_ObjectHideFlags: 0
947 | m_CorrespondingSourceObject: {fileID: 0}
948 | m_PrefabInstance: {fileID: 0}
949 | m_PrefabAsset: {fileID: 0}
950 | m_GameObject: {fileID: 586458803}
951 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
952 | m_LocalPosition: {x: 0, y: 0, z: 0}
953 | m_LocalScale: {x: 1, y: 1, z: 1}
954 | m_Children:
955 | - {fileID: 1345848863}
956 | m_Father: {fileID: 1918165881}
957 | m_RootOrder: 1
958 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
959 | m_AnchorMin: {x: 1, y: 0}
960 | m_AnchorMax: {x: 1, y: 1}
961 | m_AnchoredPosition: {x: 0, y: 0}
962 | m_SizeDelta: {x: 20, y: 0}
963 | m_Pivot: {x: 1, y: 1}
964 | --- !u!114 &586458805
965 | MonoBehaviour:
966 | m_ObjectHideFlags: 0
967 | m_CorrespondingSourceObject: {fileID: 0}
968 | m_PrefabInstance: {fileID: 0}
969 | m_PrefabAsset: {fileID: 0}
970 | m_GameObject: {fileID: 586458803}
971 | m_Enabled: 1
972 | m_EditorHideFlags: 0
973 | m_Script: {fileID: 11500000, guid: 2a4db7a114972834c8e4117be1d82ba3, type: 3}
974 | m_Name:
975 | m_EditorClassIdentifier:
976 | m_Navigation:
977 | m_Mode: 3
978 | m_WrapAround: 0
979 | m_SelectOnUp: {fileID: 0}
980 | m_SelectOnDown: {fileID: 0}
981 | m_SelectOnLeft: {fileID: 0}
982 | m_SelectOnRight: {fileID: 0}
983 | m_Transition: 1
984 | m_Colors:
985 | m_NormalColor: {r: 0.4117647, g: 0.4117647, b: 0.4117647, a: 1}
986 | m_HighlightedColor: {r: 0.41176474, g: 0.41176474, b: 0.41176474, a: 1}
987 | m_PressedColor: {r: 0.41176474, g: 0.41176474, b: 0.41176474, a: 1}
988 | m_SelectedColor: {r: 0.41176474, g: 0.41176474, b: 0.41176474, a: 1}
989 | m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
990 | m_ColorMultiplier: 1
991 | m_FadeDuration: 0.1
992 | m_SpriteState:
993 | m_HighlightedSprite: {fileID: 0}
994 | m_PressedSprite: {fileID: 0}
995 | m_SelectedSprite: {fileID: 0}
996 | m_DisabledSprite: {fileID: 0}
997 | m_AnimationTriggers:
998 | m_NormalTrigger: Normal
999 | m_HighlightedTrigger: Highlighted
1000 | m_PressedTrigger: Pressed
1001 | m_SelectedTrigger: Highlighted
1002 | m_DisabledTrigger: Disabled
1003 | m_Interactable: 1
1004 | m_TargetGraphic: {fileID: 2064208032}
1005 | m_HandleRect: {fileID: 2064208031}
1006 | m_Direction: 2
1007 | m_Value: 0
1008 | m_Size: 1
1009 | m_NumberOfSteps: 0
1010 | m_OnValueChanged:
1011 | m_PersistentCalls:
1012 | m_Calls: []
1013 | --- !u!114 &586458806
1014 | MonoBehaviour:
1015 | m_ObjectHideFlags: 0
1016 | m_CorrespondingSourceObject: {fileID: 0}
1017 | m_PrefabInstance: {fileID: 0}
1018 | m_PrefabAsset: {fileID: 0}
1019 | m_GameObject: {fileID: 586458803}
1020 | m_Enabled: 1
1021 | m_EditorHideFlags: 0
1022 | m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
1023 | m_Name:
1024 | m_EditorClassIdentifier:
1025 | m_Material: {fileID: 0}
1026 | m_Color: {r: 0.24313726, g: 0.24313726, b: 0.24313726, a: 1}
1027 | m_RaycastTarget: 1
1028 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
1029 | m_Maskable: 1
1030 | m_OnCullStateChanged:
1031 | m_PersistentCalls:
1032 | m_Calls: []
1033 | m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
1034 | m_Type: 1
1035 | m_PreserveAspect: 0
1036 | m_FillCenter: 1
1037 | m_FillMethod: 4
1038 | m_FillAmount: 1
1039 | m_FillClockwise: 1
1040 | m_FillOrigin: 0
1041 | m_UseSpriteMesh: 0
1042 | m_PixelsPerUnitMultiplier: 1
1043 | --- !u!222 &586458807
1044 | CanvasRenderer:
1045 | m_ObjectHideFlags: 0
1046 | m_CorrespondingSourceObject: {fileID: 0}
1047 | m_PrefabInstance: {fileID: 0}
1048 | m_PrefabAsset: {fileID: 0}
1049 | m_GameObject: {fileID: 586458803}
1050 | m_CullTransparentMesh: 0
1051 | --- !u!1 &635355836
1052 | GameObject:
1053 | m_ObjectHideFlags: 0
1054 | m_CorrespondingSourceObject: {fileID: 0}
1055 | m_PrefabInstance: {fileID: 0}
1056 | m_PrefabAsset: {fileID: 0}
1057 | serializedVersion: 6
1058 | m_Component:
1059 | - component: {fileID: 635355837}
1060 | - component: {fileID: 635355839}
1061 | - component: {fileID: 635355838}
1062 | m_Layer: 5
1063 | m_Name: Text
1064 | m_TagString: Untagged
1065 | m_Icon: {fileID: 0}
1066 | m_NavMeshLayer: 0
1067 | m_StaticEditorFlags: 0
1068 | m_IsActive: 1
1069 | --- !u!224 &635355837
1070 | RectTransform:
1071 | m_ObjectHideFlags: 0
1072 | m_CorrespondingSourceObject: {fileID: 0}
1073 | m_PrefabInstance: {fileID: 0}
1074 | m_PrefabAsset: {fileID: 0}
1075 | m_GameObject: {fileID: 635355836}
1076 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
1077 | m_LocalPosition: {x: 0, y: 0, z: 0}
1078 | m_LocalScale: {x: 1, y: 1, z: 1}
1079 | m_Children: []
1080 | m_Father: {fileID: 1578438653}
1081 | m_RootOrder: 4
1082 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1083 | m_AnchorMin: {x: 0, y: 1}
1084 | m_AnchorMax: {x: 0, y: 1}
1085 | m_AnchoredPosition: {x: 475, y: 0}
1086 | m_SizeDelta: {x: 40, y: 20}
1087 | m_Pivot: {x: 0, y: 1}
1088 | --- !u!114 &635355838
1089 | MonoBehaviour:
1090 | m_ObjectHideFlags: 0
1091 | m_CorrespondingSourceObject: {fileID: 0}
1092 | m_PrefabInstance: {fileID: 0}
1093 | m_PrefabAsset: {fileID: 0}
1094 | m_GameObject: {fileID: 635355836}
1095 | m_Enabled: 1
1096 | m_EditorHideFlags: 0
1097 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
1098 | m_Name:
1099 | m_EditorClassIdentifier:
1100 | m_Material: {fileID: 0}
1101 | m_Color: {r: 1, g: 0.23137255, b: 0.5803922, a: 1}
1102 | m_RaycastTarget: 1
1103 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
1104 | m_Maskable: 1
1105 | m_OnCullStateChanged:
1106 | m_PersistentCalls:
1107 | m_Calls: []
1108 | m_FontData:
1109 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
1110 | m_FontSize: 12
1111 | m_FontStyle: 1
1112 | m_BestFit: 0
1113 | m_MinSize: 1
1114 | m_MaxSize: 40
1115 | m_Alignment: 5
1116 | m_AlignByGeometry: 0
1117 | m_RichText: 1
1118 | m_HorizontalOverflow: 0
1119 | m_VerticalOverflow: 0
1120 | m_LineSpacing: 1
1121 | m_Text: Action
1122 | --- !u!222 &635355839
1123 | CanvasRenderer:
1124 | m_ObjectHideFlags: 0
1125 | m_CorrespondingSourceObject: {fileID: 0}
1126 | m_PrefabInstance: {fileID: 0}
1127 | m_PrefabAsset: {fileID: 0}
1128 | m_GameObject: {fileID: 635355836}
1129 | m_CullTransparentMesh: 0
1130 | --- !u!1 &651109221
1131 | GameObject:
1132 | m_ObjectHideFlags: 0
1133 | m_CorrespondingSourceObject: {fileID: 0}
1134 | m_PrefabInstance: {fileID: 0}
1135 | m_PrefabAsset: {fileID: 0}
1136 | serializedVersion: 6
1137 | m_Component:
1138 | - component: {fileID: 651109222}
1139 | - component: {fileID: 651109224}
1140 | - component: {fileID: 651109223}
1141 | m_Layer: 5
1142 | m_Name: Background
1143 | m_TagString: Untagged
1144 | m_Icon: {fileID: 0}
1145 | m_NavMeshLayer: 0
1146 | m_StaticEditorFlags: 0
1147 | m_IsActive: 1
1148 | --- !u!224 &651109222
1149 | RectTransform:
1150 | m_ObjectHideFlags: 0
1151 | m_CorrespondingSourceObject: {fileID: 0}
1152 | m_PrefabInstance: {fileID: 0}
1153 | m_PrefabAsset: {fileID: 0}
1154 | m_GameObject: {fileID: 651109221}
1155 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
1156 | m_LocalPosition: {x: 0, y: 0, z: 0}
1157 | m_LocalScale: {x: 1, y: 1, z: 1}
1158 | m_Children: []
1159 | m_Father: {fileID: 1206549608}
1160 | m_RootOrder: 0
1161 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1162 | m_AnchorMin: {x: 0, y: 0}
1163 | m_AnchorMax: {x: 1, y: 1}
1164 | m_AnchoredPosition: {x: 0, y: 0}
1165 | m_SizeDelta: {x: 863, y: 754}
1166 | m_Pivot: {x: 0.5, y: 0.5}
1167 | --- !u!114 &651109223
1168 | MonoBehaviour:
1169 | m_ObjectHideFlags: 0
1170 | m_CorrespondingSourceObject: {fileID: 0}
1171 | m_PrefabInstance: {fileID: 0}
1172 | m_PrefabAsset: {fileID: 0}
1173 | m_GameObject: {fileID: 651109221}
1174 | m_Enabled: 1
1175 | m_EditorHideFlags: 0
1176 | m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
1177 | m_Name:
1178 | m_EditorClassIdentifier:
1179 | m_Material: {fileID: 0}
1180 | m_Color: {r: 0.39215687, g: 0.58431375, b: 0.92941177, a: 1}
1181 | m_RaycastTarget: 1
1182 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
1183 | m_Maskable: 1
1184 | m_OnCullStateChanged:
1185 | m_PersistentCalls:
1186 | m_Calls: []
1187 | m_Sprite: {fileID: 0}
1188 | m_Type: 0
1189 | m_PreserveAspect: 0
1190 | m_FillCenter: 1
1191 | m_FillMethod: 4
1192 | m_FillAmount: 1
1193 | m_FillClockwise: 1
1194 | m_FillOrigin: 0
1195 | m_UseSpriteMesh: 0
1196 | m_PixelsPerUnitMultiplier: 1
1197 | --- !u!222 &651109224
1198 | CanvasRenderer:
1199 | m_ObjectHideFlags: 0
1200 | m_CorrespondingSourceObject: {fileID: 0}
1201 | m_PrefabInstance: {fileID: 0}
1202 | m_PrefabAsset: {fileID: 0}
1203 | m_GameObject: {fileID: 651109221}
1204 | m_CullTransparentMesh: 0
1205 | --- !u!1 &712827150
1206 | GameObject:
1207 | m_ObjectHideFlags: 0
1208 | m_CorrespondingSourceObject: {fileID: 0}
1209 | m_PrefabInstance: {fileID: 0}
1210 | m_PrefabAsset: {fileID: 0}
1211 | serializedVersion: 6
1212 | m_Component:
1213 | - component: {fileID: 712827151}
1214 | - component: {fileID: 712827153}
1215 | - component: {fileID: 712827152}
1216 | m_Layer: 5
1217 | m_Name: TextStatus
1218 | m_TagString: Untagged
1219 | m_Icon: {fileID: 0}
1220 | m_NavMeshLayer: 0
1221 | m_StaticEditorFlags: 0
1222 | m_IsActive: 0
1223 | --- !u!224 &712827151
1224 | RectTransform:
1225 | m_ObjectHideFlags: 0
1226 | m_CorrespondingSourceObject: {fileID: 0}
1227 | m_PrefabInstance: {fileID: 0}
1228 | m_PrefabAsset: {fileID: 0}
1229 | m_GameObject: {fileID: 712827150}
1230 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
1231 | m_LocalPosition: {x: 0, y: 0, z: 0}
1232 | m_LocalScale: {x: 1, y: 1, z: 1}
1233 | m_Children: []
1234 | m_Father: {fileID: 776519261}
1235 | m_RootOrder: 2
1236 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1237 | m_AnchorMin: {x: 1, y: 1}
1238 | m_AnchorMax: {x: 1, y: 1}
1239 | m_AnchoredPosition: {x: -3, y: -19}
1240 | m_SizeDelta: {x: 157.79, y: 19}
1241 | m_Pivot: {x: 1, y: 1}
1242 | --- !u!114 &712827152
1243 | MonoBehaviour:
1244 | m_ObjectHideFlags: 0
1245 | m_CorrespondingSourceObject: {fileID: 0}
1246 | m_PrefabInstance: {fileID: 0}
1247 | m_PrefabAsset: {fileID: 0}
1248 | m_GameObject: {fileID: 712827150}
1249 | m_Enabled: 1
1250 | m_EditorHideFlags: 0
1251 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
1252 | m_Name:
1253 | m_EditorClassIdentifier:
1254 | m_Material: {fileID: 0}
1255 | m_Color: {r: 1, g: 1, b: 1, a: 0.24313726}
1256 | m_RaycastTarget: 1
1257 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
1258 | m_Maskable: 1
1259 | m_OnCullStateChanged:
1260 | m_PersistentCalls:
1261 | m_Calls: []
1262 | m_FontData:
1263 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
1264 | m_FontSize: 12
1265 | m_FontStyle: 2
1266 | m_BestFit: 0
1267 | m_MinSize: 1
1268 | m_MaxSize: 40
1269 | m_Alignment: 5
1270 | m_AlignByGeometry: 0
1271 | m_RichText: 1
1272 | m_HorizontalOverflow: 0
1273 | m_VerticalOverflow: 0
1274 | m_LineSpacing: 1
1275 | m_Text: Status
1276 | --- !u!222 &712827153
1277 | CanvasRenderer:
1278 | m_ObjectHideFlags: 0
1279 | m_CorrespondingSourceObject: {fileID: 0}
1280 | m_PrefabInstance: {fileID: 0}
1281 | m_PrefabAsset: {fileID: 0}
1282 | m_GameObject: {fileID: 712827150}
1283 | m_CullTransparentMesh: 0
1284 | --- !u!1 &719699535
1285 | GameObject:
1286 | m_ObjectHideFlags: 0
1287 | m_CorrespondingSourceObject: {fileID: 0}
1288 | m_PrefabInstance: {fileID: 0}
1289 | m_PrefabAsset: {fileID: 0}
1290 | serializedVersion: 6
1291 | m_Component:
1292 | - component: {fileID: 1206549608}
1293 | m_Layer: 5
1294 | m_Name: ServerList
1295 | m_TagString: Untagged
1296 | m_Icon: {fileID: 0}
1297 | m_NavMeshLayer: 0
1298 | m_StaticEditorFlags: 0
1299 | m_IsActive: 1
1300 | --- !u!1 &747705678
1301 | GameObject:
1302 | m_ObjectHideFlags: 0
1303 | m_CorrespondingSourceObject: {fileID: 0}
1304 | m_PrefabInstance: {fileID: 0}
1305 | m_PrefabAsset: {fileID: 0}
1306 | serializedVersion: 6
1307 | m_Component:
1308 | - component: {fileID: 747705679}
1309 | - component: {fileID: 747705681}
1310 | - component: {fileID: 747705680}
1311 | m_Layer: 5
1312 | m_Name: TitleBar
1313 | m_TagString: Untagged
1314 | m_Icon: {fileID: 0}
1315 | m_NavMeshLayer: 0
1316 | m_StaticEditorFlags: 0
1317 | m_IsActive: 1
1318 | --- !u!224 &747705679
1319 | RectTransform:
1320 | m_ObjectHideFlags: 0
1321 | m_CorrespondingSourceObject: {fileID: 0}
1322 | m_PrefabInstance: {fileID: 0}
1323 | m_PrefabAsset: {fileID: 0}
1324 | m_GameObject: {fileID: 747705678}
1325 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
1326 | m_LocalPosition: {x: 0, y: 0, z: 0}
1327 | m_LocalScale: {x: 1, y: 1, z: 1}
1328 | m_Children:
1329 | - {fileID: 1093045669}
1330 | m_Father: {fileID: 1926990971}
1331 | m_RootOrder: 0
1332 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1333 | m_AnchorMin: {x: 0, y: 1}
1334 | m_AnchorMax: {x: 1, y: 1}
1335 | m_AnchoredPosition: {x: 0, y: 0}
1336 | m_SizeDelta: {x: 0, y: 20}
1337 | m_Pivot: {x: 0.5, y: 1}
1338 | --- !u!114 &747705680
1339 | MonoBehaviour:
1340 | m_ObjectHideFlags: 0
1341 | m_CorrespondingSourceObject: {fileID: 0}
1342 | m_PrefabInstance: {fileID: 0}
1343 | m_PrefabAsset: {fileID: 0}
1344 | m_GameObject: {fileID: 747705678}
1345 | m_Enabled: 1
1346 | m_EditorHideFlags: 0
1347 | m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
1348 | m_Name:
1349 | m_EditorClassIdentifier:
1350 | m_Material: {fileID: 0}
1351 | m_Color: {r: 0.31764707, g: 0.31764707, b: 0.31764707, a: 1}
1352 | m_RaycastTarget: 1
1353 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
1354 | m_Maskable: 1
1355 | m_OnCullStateChanged:
1356 | m_PersistentCalls:
1357 | m_Calls: []
1358 | m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
1359 | m_Type: 1
1360 | m_PreserveAspect: 0
1361 | m_FillCenter: 1
1362 | m_FillMethod: 4
1363 | m_FillAmount: 1
1364 | m_FillClockwise: 1
1365 | m_FillOrigin: 0
1366 | m_UseSpriteMesh: 0
1367 | m_PixelsPerUnitMultiplier: 1
1368 | --- !u!222 &747705681
1369 | CanvasRenderer:
1370 | m_ObjectHideFlags: 0
1371 | m_CorrespondingSourceObject: {fileID: 0}
1372 | m_PrefabInstance: {fileID: 0}
1373 | m_PrefabAsset: {fileID: 0}
1374 | m_GameObject: {fileID: 747705678}
1375 | m_CullTransparentMesh: 0
1376 | --- !u!1 &776519260
1377 | GameObject:
1378 | m_ObjectHideFlags: 0
1379 | m_CorrespondingSourceObject: {fileID: 0}
1380 | m_PrefabInstance: {fileID: 0}
1381 | m_PrefabAsset: {fileID: 0}
1382 | serializedVersion: 6
1383 | m_Component:
1384 | - component: {fileID: 776519261}
1385 | - component: {fileID: 776519264}
1386 | - component: {fileID: 776519263}
1387 | m_Layer: 5
1388 | m_Name: ServerListPanel
1389 | m_TagString: Untagged
1390 | m_Icon: {fileID: 0}
1391 | m_NavMeshLayer: 0
1392 | m_StaticEditorFlags: 0
1393 | m_IsActive: 1
1394 | --- !u!224 &776519261
1395 | RectTransform:
1396 | m_ObjectHideFlags: 0
1397 | m_CorrespondingSourceObject: {fileID: 0}
1398 | m_PrefabInstance: {fileID: 0}
1399 | m_PrefabAsset: {fileID: 0}
1400 | m_GameObject: {fileID: 776519260}
1401 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
1402 | m_LocalPosition: {x: 0, y: 0, z: 0}
1403 | m_LocalScale: {x: 1, y: 1, z: 1}
1404 | m_Children:
1405 | - {fileID: 1007872741}
1406 | - {fileID: 21701408}
1407 | - {fileID: 712827151}
1408 | - {fileID: 1578438653}
1409 | - {fileID: 1918165881}
1410 | - {fileID: 1052220088}
1411 | - {fileID: 1291804678}
1412 | - {fileID: 777480155}
1413 | m_Father: {fileID: 1206549608}
1414 | m_RootOrder: 1
1415 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1416 | m_AnchorMin: {x: 0.5, y: 0.5}
1417 | m_AnchorMax: {x: 0.5, y: 0.5}
1418 | m_AnchoredPosition: {x: 0, y: 0}
1419 | m_SizeDelta: {x: 526, y: 400}
1420 | m_Pivot: {x: 0.5, y: 0.5}
1421 | --- !u!114 &776519263
1422 | MonoBehaviour:
1423 | m_ObjectHideFlags: 0
1424 | m_CorrespondingSourceObject: {fileID: 0}
1425 | m_PrefabInstance: {fileID: 0}
1426 | m_PrefabAsset: {fileID: 0}
1427 | m_GameObject: {fileID: 776519260}
1428 | m_Enabled: 1
1429 | m_EditorHideFlags: 0
1430 | m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
1431 | m_Name:
1432 | m_EditorClassIdentifier:
1433 | m_Material: {fileID: 0}
1434 | m_Color: {r: 0.19215687, g: 0.19215687, b: 0.19215687, a: 1}
1435 | m_RaycastTarget: 1
1436 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
1437 | m_Maskable: 1
1438 | m_OnCullStateChanged:
1439 | m_PersistentCalls:
1440 | m_Calls: []
1441 | m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
1442 | m_Type: 1
1443 | m_PreserveAspect: 0
1444 | m_FillCenter: 1
1445 | m_FillMethod: 4
1446 | m_FillAmount: 1
1447 | m_FillClockwise: 1
1448 | m_FillOrigin: 0
1449 | m_UseSpriteMesh: 0
1450 | m_PixelsPerUnitMultiplier: 1
1451 | --- !u!222 &776519264
1452 | CanvasRenderer:
1453 | m_ObjectHideFlags: 0
1454 | m_CorrespondingSourceObject: {fileID: 0}
1455 | m_PrefabInstance: {fileID: 0}
1456 | m_PrefabAsset: {fileID: 0}
1457 | m_GameObject: {fileID: 776519260}
1458 | m_CullTransparentMesh: 0
1459 | --- !u!1 &777480154
1460 | GameObject:
1461 | m_ObjectHideFlags: 0
1462 | m_CorrespondingSourceObject: {fileID: 0}
1463 | m_PrefabInstance: {fileID: 0}
1464 | m_PrefabAsset: {fileID: 0}
1465 | serializedVersion: 6
1466 | m_Component:
1467 | - component: {fileID: 777480155}
1468 | - component: {fileID: 777480157}
1469 | - component: {fileID: 777480156}
1470 | m_Layer: 5
1471 | m_Name: TextFootnote
1472 | m_TagString: Untagged
1473 | m_Icon: {fileID: 0}
1474 | m_NavMeshLayer: 0
1475 | m_StaticEditorFlags: 0
1476 | m_IsActive: 1
1477 | --- !u!224 &777480155
1478 | RectTransform:
1479 | m_ObjectHideFlags: 0
1480 | m_CorrespondingSourceObject: {fileID: 0}
1481 | m_PrefabInstance: {fileID: 0}
1482 | m_PrefabAsset: {fileID: 0}
1483 | m_GameObject: {fileID: 777480154}
1484 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
1485 | m_LocalPosition: {x: 0, y: 0, z: 0}
1486 | m_LocalScale: {x: 1, y: 1, z: 1}
1487 | m_Children: []
1488 | m_Father: {fileID: 776519261}
1489 | m_RootOrder: 7
1490 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1491 | m_AnchorMin: {x: 0, y: 0}
1492 | m_AnchorMax: {x: 1, y: 0}
1493 | m_AnchoredPosition: {x: 0, y: -10}
1494 | m_SizeDelta: {x: 0, y: 20}
1495 | m_Pivot: {x: 0.5, y: 0.5}
1496 | --- !u!114 &777480156
1497 | MonoBehaviour:
1498 | m_ObjectHideFlags: 0
1499 | m_CorrespondingSourceObject: {fileID: 0}
1500 | m_PrefabInstance: {fileID: 0}
1501 | m_PrefabAsset: {fileID: 0}
1502 | m_GameObject: {fileID: 777480154}
1503 | m_Enabled: 1
1504 | m_EditorHideFlags: 0
1505 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
1506 | m_Name:
1507 | m_EditorClassIdentifier:
1508 | m_Material: {fileID: 0}
1509 | m_Color: {r: 1, g: 1, b: 1, a: 1}
1510 | m_RaycastTarget: 1
1511 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
1512 | m_Maskable: 1
1513 | m_OnCullStateChanged:
1514 | m_PersistentCalls:
1515 | m_Calls: []
1516 | m_FontData:
1517 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
1518 | m_FontSize: 12
1519 | m_FontStyle: 2
1520 | m_BestFit: 0
1521 | m_MinSize: 1
1522 | m_MaxSize: 40
1523 | m_Alignment: 1
1524 | m_AlignByGeometry: 0
1525 | m_RichText: 1
1526 | m_HorizontalOverflow: 0
1527 | m_VerticalOverflow: 1
1528 | m_LineSpacing: 1
1529 | m_Text: "If you like this software, please consider donating coffee at https://ko-fi.com/coburn\nThanks
1530 | for using Aussie Open Source Software. Don't forget to read the fine manual!\n\nThis
1531 | scene only shows the server browser in action, it doesn't contain any server
1532 | functionality. Clicking join will do nothing but print a message to the console.
1533 | \n\nPlease refer to the network stack integrations int the Git Repository for
1534 | information on how to integrate NodeLS in your server instances."
1535 | --- !u!222 &777480157
1536 | CanvasRenderer:
1537 | m_ObjectHideFlags: 0
1538 | m_CorrespondingSourceObject: {fileID: 0}
1539 | m_PrefabInstance: {fileID: 0}
1540 | m_PrefabAsset: {fileID: 0}
1541 | m_GameObject: {fileID: 777480154}
1542 | m_CullTransparentMesh: 0
1543 | --- !u!850595691 &852509933
1544 | LightingSettings:
1545 | m_ObjectHideFlags: 0
1546 | m_CorrespondingSourceObject: {fileID: 0}
1547 | m_PrefabInstance: {fileID: 0}
1548 | m_PrefabAsset: {fileID: 0}
1549 | m_Name: Settings.lighting
1550 | serializedVersion: 3
1551 | m_GIWorkflowMode: 0
1552 | m_EnableBakedLightmaps: 0
1553 | m_EnableRealtimeLightmaps: 0
1554 | m_RealtimeEnvironmentLighting: 1
1555 | m_BounceScale: 1
1556 | m_AlbedoBoost: 1
1557 | m_IndirectOutputScale: 1
1558 | m_UsingShadowmask: 0
1559 | m_BakeBackend: 0
1560 | m_LightmapMaxSize: 1024
1561 | m_BakeResolution: 40
1562 | m_Padding: 2
1563 | m_TextureCompression: 1
1564 | m_AO: 0
1565 | m_AOMaxDistance: 1
1566 | m_CompAOExponent: 0
1567 | m_CompAOExponentDirect: 0
1568 | m_ExtractAO: 0
1569 | m_MixedBakeMode: 1
1570 | m_LightmapsBakeMode: 1
1571 | m_FilterMode: 1
1572 | m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
1573 | m_ExportTrainingData: 0
1574 | m_TrainingDataDestination: TrainingData
1575 | m_RealtimeResolution: 2
1576 | m_ForceWhiteAlbedo: 0
1577 | m_ForceUpdates: 0
1578 | m_FinalGather: 0
1579 | m_FinalGatherRayCount: 1024
1580 | m_FinalGatherFiltering: 1
1581 | m_PVRCulling: 1
1582 | m_PVRSampling: 1
1583 | m_PVRDirectSampleCount: 32
1584 | m_PVRSampleCount: 500
1585 | m_PVREnvironmentSampleCount: 500
1586 | m_PVREnvironmentReferencePointCount: 2048
1587 | m_LightProbeSampleCountMultiplier: 4
1588 | m_PVRBounces: 2
1589 | m_PVRMinBounces: 2
1590 | m_PVREnvironmentMIS: 0
1591 | m_PVRFilteringMode: 0
1592 | m_PVRDenoiserTypeDirect: 0
1593 | m_PVRDenoiserTypeIndirect: 0
1594 | m_PVRDenoiserTypeAO: 0
1595 | m_PVRFilterTypeDirect: 0
1596 | m_PVRFilterTypeIndirect: 0
1597 | m_PVRFilterTypeAO: 0
1598 | m_PVRFilteringGaussRadiusDirect: 1
1599 | m_PVRFilteringGaussRadiusIndirect: 5
1600 | m_PVRFilteringGaussRadiusAO: 2
1601 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
1602 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
1603 | m_PVRFilteringAtrousPositionSigmaAO: 1
1604 | --- !u!1 &993261493
1605 | GameObject:
1606 | m_ObjectHideFlags: 0
1607 | m_CorrespondingSourceObject: {fileID: 0}
1608 | m_PrefabInstance: {fileID: 0}
1609 | m_PrefabAsset: {fileID: 0}
1610 | serializedVersion: 6
1611 | m_Component:
1612 | - component: {fileID: 993261494}
1613 | - component: {fileID: 993261497}
1614 | - component: {fileID: 993261496}
1615 | - component: {fileID: 993261495}
1616 | m_Layer: 5
1617 | m_Name: SupportButton
1618 | m_TagString: Untagged
1619 | m_Icon: {fileID: 0}
1620 | m_NavMeshLayer: 0
1621 | m_StaticEditorFlags: 0
1622 | m_IsActive: 1
1623 | --- !u!224 &993261494
1624 | RectTransform:
1625 | m_ObjectHideFlags: 0
1626 | m_CorrespondingSourceObject: {fileID: 0}
1627 | m_PrefabInstance: {fileID: 0}
1628 | m_PrefabAsset: {fileID: 0}
1629 | m_GameObject: {fileID: 993261493}
1630 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
1631 | m_LocalPosition: {x: 0, y: 0, z: 0}
1632 | m_LocalScale: {x: 1, y: 1, z: 1}
1633 | m_Children:
1634 | - {fileID: 2020215609}
1635 | m_Father: {fileID: 1291804678}
1636 | m_RootOrder: 1
1637 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1638 | m_AnchorMin: {x: 1, y: 0.5}
1639 | m_AnchorMax: {x: 1, y: 0.5}
1640 | m_AnchoredPosition: {x: -2, y: 0}
1641 | m_SizeDelta: {x: 260, y: 20}
1642 | m_Pivot: {x: 1, y: 0.5}
1643 | --- !u!114 &993261495
1644 | MonoBehaviour:
1645 | m_ObjectHideFlags: 0
1646 | m_CorrespondingSourceObject: {fileID: 0}
1647 | m_PrefabInstance: {fileID: 0}
1648 | m_PrefabAsset: {fileID: 0}
1649 | m_GameObject: {fileID: 993261493}
1650 | m_Enabled: 1
1651 | m_EditorHideFlags: 0
1652 | m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
1653 | m_Name:
1654 | m_EditorClassIdentifier:
1655 | m_Navigation:
1656 | m_Mode: 3
1657 | m_WrapAround: 0
1658 | m_SelectOnUp: {fileID: 0}
1659 | m_SelectOnDown: {fileID: 0}
1660 | m_SelectOnLeft: {fileID: 0}
1661 | m_SelectOnRight: {fileID: 0}
1662 | m_Transition: 1
1663 | m_Colors:
1664 | m_NormalColor: {r: 0.32156864, g: 0.32156864, b: 0.32156864, a: 1}
1665 | m_HighlightedColor: {r: 0.3529412, g: 0.3529412, b: 0.3529412, a: 1}
1666 | m_PressedColor: {r: 0.3882353, g: 0.3882353, b: 0.3882353, a: 1}
1667 | m_SelectedColor: {r: 0.3529412, g: 0.3529412, b: 0.3529412, a: 1}
1668 | m_DisabledColor: {r: 0.3882353, g: 0.3882353, b: 0.3882353, a: 0.2509804}
1669 | m_ColorMultiplier: 1
1670 | m_FadeDuration: 0.1
1671 | m_SpriteState:
1672 | m_HighlightedSprite: {fileID: 0}
1673 | m_PressedSprite: {fileID: 0}
1674 | m_SelectedSprite: {fileID: 0}
1675 | m_DisabledSprite: {fileID: 0}
1676 | m_AnimationTriggers:
1677 | m_NormalTrigger: Normal
1678 | m_HighlightedTrigger: Highlighted
1679 | m_PressedTrigger: Pressed
1680 | m_SelectedTrigger: Highlighted
1681 | m_DisabledTrigger: Disabled
1682 | m_Interactable: 1
1683 | m_TargetGraphic: {fileID: 993261496}
1684 | m_OnClick:
1685 | m_PersistentCalls:
1686 | m_Calls: []
1687 | --- !u!114 &993261496
1688 | MonoBehaviour:
1689 | m_ObjectHideFlags: 0
1690 | m_CorrespondingSourceObject: {fileID: 0}
1691 | m_PrefabInstance: {fileID: 0}
1692 | m_PrefabAsset: {fileID: 0}
1693 | m_GameObject: {fileID: 993261493}
1694 | m_Enabled: 1
1695 | m_EditorHideFlags: 0
1696 | m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
1697 | m_Name:
1698 | m_EditorClassIdentifier:
1699 | m_Material: {fileID: 0}
1700 | m_Color: {r: 1, g: 1, b: 1, a: 1}
1701 | m_RaycastTarget: 1
1702 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
1703 | m_Maskable: 1
1704 | m_OnCullStateChanged:
1705 | m_PersistentCalls:
1706 | m_Calls: []
1707 | m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
1708 | m_Type: 1
1709 | m_PreserveAspect: 0
1710 | m_FillCenter: 1
1711 | m_FillMethod: 4
1712 | m_FillAmount: 1
1713 | m_FillClockwise: 1
1714 | m_FillOrigin: 0
1715 | m_UseSpriteMesh: 0
1716 | m_PixelsPerUnitMultiplier: 1
1717 | --- !u!222 &993261497
1718 | CanvasRenderer:
1719 | m_ObjectHideFlags: 0
1720 | m_CorrespondingSourceObject: {fileID: 0}
1721 | m_PrefabInstance: {fileID: 0}
1722 | m_PrefabAsset: {fileID: 0}
1723 | m_GameObject: {fileID: 993261493}
1724 | m_CullTransparentMesh: 0
1725 | --- !u!1 &1004751477
1726 | GameObject:
1727 | m_ObjectHideFlags: 0
1728 | m_CorrespondingSourceObject: {fileID: 0}
1729 | m_PrefabInstance: {fileID: 0}
1730 | m_PrefabAsset: {fileID: 0}
1731 | serializedVersion: 6
1732 | m_Component:
1733 | - component: {fileID: 1004751478}
1734 | - component: {fileID: 1004751481}
1735 | - component: {fileID: 1004751480}
1736 | - component: {fileID: 1004751479}
1737 | m_Layer: 5
1738 | m_Name: Refresh
1739 | m_TagString: Untagged
1740 | m_Icon: {fileID: 0}
1741 | m_NavMeshLayer: 0
1742 | m_StaticEditorFlags: 0
1743 | m_IsActive: 1
1744 | --- !u!224 &1004751478
1745 | RectTransform:
1746 | m_ObjectHideFlags: 0
1747 | m_CorrespondingSourceObject: {fileID: 0}
1748 | m_PrefabInstance: {fileID: 0}
1749 | m_PrefabAsset: {fileID: 0}
1750 | m_GameObject: {fileID: 1004751477}
1751 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
1752 | m_LocalPosition: {x: 0, y: 0, z: 0}
1753 | m_LocalScale: {x: 1, y: 1, z: 1}
1754 | m_Children:
1755 | - {fileID: 531282980}
1756 | m_Father: {fileID: 1291804678}
1757 | m_RootOrder: 0
1758 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1759 | m_AnchorMin: {x: 0, y: 0.5}
1760 | m_AnchorMax: {x: 0, y: 0.5}
1761 | m_AnchoredPosition: {x: 2, y: 0}
1762 | m_SizeDelta: {x: 260, y: 20}
1763 | m_Pivot: {x: 0, y: 0.5}
1764 | --- !u!114 &1004751479
1765 | MonoBehaviour:
1766 | m_ObjectHideFlags: 0
1767 | m_CorrespondingSourceObject: {fileID: 0}
1768 | m_PrefabInstance: {fileID: 0}
1769 | m_PrefabAsset: {fileID: 0}
1770 | m_GameObject: {fileID: 1004751477}
1771 | m_Enabled: 1
1772 | m_EditorHideFlags: 0
1773 | m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
1774 | m_Name:
1775 | m_EditorClassIdentifier:
1776 | m_Navigation:
1777 | m_Mode: 3
1778 | m_WrapAround: 0
1779 | m_SelectOnUp: {fileID: 0}
1780 | m_SelectOnDown: {fileID: 0}
1781 | m_SelectOnLeft: {fileID: 0}
1782 | m_SelectOnRight: {fileID: 0}
1783 | m_Transition: 1
1784 | m_Colors:
1785 | m_NormalColor: {r: 0.32156864, g: 0.32156864, b: 0.32156864, a: 1}
1786 | m_HighlightedColor: {r: 0.3529412, g: 0.3529412, b: 0.3529412, a: 1}
1787 | m_PressedColor: {r: 0.3882353, g: 0.3882353, b: 0.3882353, a: 1}
1788 | m_SelectedColor: {r: 0.3529412, g: 0.3529412, b: 0.3529412, a: 1}
1789 | m_DisabledColor: {r: 0.3882353, g: 0.3882353, b: 0.3882353, a: 0.2509804}
1790 | m_ColorMultiplier: 1
1791 | m_FadeDuration: 0.1
1792 | m_SpriteState:
1793 | m_HighlightedSprite: {fileID: 0}
1794 | m_PressedSprite: {fileID: 0}
1795 | m_SelectedSprite: {fileID: 0}
1796 | m_DisabledSprite: {fileID: 0}
1797 | m_AnimationTriggers:
1798 | m_NormalTrigger: Normal
1799 | m_HighlightedTrigger: Highlighted
1800 | m_PressedTrigger: Pressed
1801 | m_SelectedTrigger: Highlighted
1802 | m_DisabledTrigger: Disabled
1803 | m_Interactable: 1
1804 | m_TargetGraphic: {fileID: 1004751480}
1805 | m_OnClick:
1806 | m_PersistentCalls:
1807 | m_Calls: []
1808 | --- !u!114 &1004751480
1809 | MonoBehaviour:
1810 | m_ObjectHideFlags: 0
1811 | m_CorrespondingSourceObject: {fileID: 0}
1812 | m_PrefabInstance: {fileID: 0}
1813 | m_PrefabAsset: {fileID: 0}
1814 | m_GameObject: {fileID: 1004751477}
1815 | m_Enabled: 1
1816 | m_EditorHideFlags: 0
1817 | m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
1818 | m_Name:
1819 | m_EditorClassIdentifier:
1820 | m_Material: {fileID: 0}
1821 | m_Color: {r: 1, g: 1, b: 1, a: 1}
1822 | m_RaycastTarget: 1
1823 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
1824 | m_Maskable: 1
1825 | m_OnCullStateChanged:
1826 | m_PersistentCalls:
1827 | m_Calls: []
1828 | m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
1829 | m_Type: 1
1830 | m_PreserveAspect: 0
1831 | m_FillCenter: 1
1832 | m_FillMethod: 4
1833 | m_FillAmount: 1
1834 | m_FillClockwise: 1
1835 | m_FillOrigin: 0
1836 | m_UseSpriteMesh: 0
1837 | m_PixelsPerUnitMultiplier: 1
1838 | --- !u!222 &1004751481
1839 | CanvasRenderer:
1840 | m_ObjectHideFlags: 0
1841 | m_CorrespondingSourceObject: {fileID: 0}
1842 | m_PrefabInstance: {fileID: 0}
1843 | m_PrefabAsset: {fileID: 0}
1844 | m_GameObject: {fileID: 1004751477}
1845 | m_CullTransparentMesh: 0
1846 | --- !u!1 &1007872740
1847 | GameObject:
1848 | m_ObjectHideFlags: 0
1849 | m_CorrespondingSourceObject: {fileID: 0}
1850 | m_PrefabInstance: {fileID: 0}
1851 | m_PrefabAsset: {fileID: 0}
1852 | serializedVersion: 6
1853 | m_Component:
1854 | - component: {fileID: 1007872741}
1855 | - component: {fileID: 1007872744}
1856 | - component: {fileID: 1007872743}
1857 | m_Layer: 5
1858 | m_Name: TitleBar
1859 | m_TagString: Untagged
1860 | m_Icon: {fileID: 0}
1861 | m_NavMeshLayer: 0
1862 | m_StaticEditorFlags: 0
1863 | m_IsActive: 1
1864 | --- !u!224 &1007872741
1865 | RectTransform:
1866 | m_ObjectHideFlags: 0
1867 | m_CorrespondingSourceObject: {fileID: 0}
1868 | m_PrefabInstance: {fileID: 0}
1869 | m_PrefabAsset: {fileID: 0}
1870 | m_GameObject: {fileID: 1007872740}
1871 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
1872 | m_LocalPosition: {x: 0, y: 0, z: 0}
1873 | m_LocalScale: {x: 1, y: 1, z: 1}
1874 | m_Children:
1875 | - {fileID: 177548783}
1876 | m_Father: {fileID: 776519261}
1877 | m_RootOrder: 0
1878 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1879 | m_AnchorMin: {x: 0, y: 1}
1880 | m_AnchorMax: {x: 1, y: 1}
1881 | m_AnchoredPosition: {x: 0, y: 0}
1882 | m_SizeDelta: {x: 0, y: 20}
1883 | m_Pivot: {x: 0.5, y: 1}
1884 | --- !u!114 &1007872743
1885 | MonoBehaviour:
1886 | m_ObjectHideFlags: 0
1887 | m_CorrespondingSourceObject: {fileID: 0}
1888 | m_PrefabInstance: {fileID: 0}
1889 | m_PrefabAsset: {fileID: 0}
1890 | m_GameObject: {fileID: 1007872740}
1891 | m_Enabled: 1
1892 | m_EditorHideFlags: 0
1893 | m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
1894 | m_Name:
1895 | m_EditorClassIdentifier:
1896 | m_Material: {fileID: 0}
1897 | m_Color: {r: 0.31764707, g: 0.31764707, b: 0.31764707, a: 1}
1898 | m_RaycastTarget: 1
1899 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
1900 | m_Maskable: 1
1901 | m_OnCullStateChanged:
1902 | m_PersistentCalls:
1903 | m_Calls: []
1904 | m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
1905 | m_Type: 1
1906 | m_PreserveAspect: 0
1907 | m_FillCenter: 1
1908 | m_FillMethod: 4
1909 | m_FillAmount: 1
1910 | m_FillClockwise: 1
1911 | m_FillOrigin: 0
1912 | m_UseSpriteMesh: 0
1913 | m_PixelsPerUnitMultiplier: 1
1914 | --- !u!222 &1007872744
1915 | CanvasRenderer:
1916 | m_ObjectHideFlags: 0
1917 | m_CorrespondingSourceObject: {fileID: 0}
1918 | m_PrefabInstance: {fileID: 0}
1919 | m_PrefabAsset: {fileID: 0}
1920 | m_GameObject: {fileID: 1007872740}
1921 | m_CullTransparentMesh: 0
1922 | --- !u!1 &1052220087
1923 | GameObject:
1924 | m_ObjectHideFlags: 0
1925 | m_CorrespondingSourceObject: {fileID: 0}
1926 | m_PrefabInstance: {fileID: 0}
1927 | m_PrefabAsset: {fileID: 0}
1928 | serializedVersion: 6
1929 | m_Component:
1930 | - component: {fileID: 1052220088}
1931 | - component: {fileID: 1052220090}
1932 | - component: {fileID: 1052220089}
1933 | m_Layer: 5
1934 | m_Name: TextStartServer
1935 | m_TagString: Untagged
1936 | m_Icon: {fileID: 0}
1937 | m_NavMeshLayer: 0
1938 | m_StaticEditorFlags: 0
1939 | m_IsActive: 1
1940 | --- !u!224 &1052220088
1941 | RectTransform:
1942 | m_ObjectHideFlags: 0
1943 | m_CorrespondingSourceObject: {fileID: 0}
1944 | m_PrefabInstance: {fileID: 0}
1945 | m_PrefabAsset: {fileID: 0}
1946 | m_GameObject: {fileID: 1052220087}
1947 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
1948 | m_LocalPosition: {x: 0, y: 0, z: 0}
1949 | m_LocalScale: {x: 1, y: 1, z: 1}
1950 | m_Children: []
1951 | m_Father: {fileID: 776519261}
1952 | m_RootOrder: 5
1953 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1954 | m_AnchorMin: {x: 0, y: 0}
1955 | m_AnchorMax: {x: 1, y: 0}
1956 | m_AnchoredPosition: {x: 0, y: 40}
1957 | m_SizeDelta: {x: 0, y: 20}
1958 | m_Pivot: {x: 0.5, y: 0.5}
1959 | --- !u!114 &1052220089
1960 | MonoBehaviour:
1961 | m_ObjectHideFlags: 0
1962 | m_CorrespondingSourceObject: {fileID: 0}
1963 | m_PrefabInstance: {fileID: 0}
1964 | m_PrefabAsset: {fileID: 0}
1965 | m_GameObject: {fileID: 1052220087}
1966 | m_Enabled: 1
1967 | m_EditorHideFlags: 0
1968 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
1969 | m_Name:
1970 | m_EditorClassIdentifier:
1971 | m_Material: {fileID: 0}
1972 | m_Color: {r: 1, g: 1, b: 1, a: 1}
1973 | m_RaycastTarget: 1
1974 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
1975 | m_Maskable: 1
1976 | m_OnCullStateChanged:
1977 | m_PersistentCalls:
1978 | m_Calls: []
1979 | m_FontData:
1980 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
1981 | m_FontSize: 12
1982 | m_FontStyle: 1
1983 | m_BestFit: 0
1984 | m_MinSize: 1
1985 | m_MaxSize: 40
1986 | m_Alignment: 4
1987 | m_AlignByGeometry: 0
1988 | m_RichText: 1
1989 | m_HorizontalOverflow: 0
1990 | m_VerticalOverflow: 0
1991 | m_LineSpacing: 1
1992 | m_Text: Controls
1993 | --- !u!222 &1052220090
1994 | CanvasRenderer:
1995 | m_ObjectHideFlags: 0
1996 | m_CorrespondingSourceObject: {fileID: 0}
1997 | m_PrefabInstance: {fileID: 0}
1998 | m_PrefabAsset: {fileID: 0}
1999 | m_GameObject: {fileID: 1052220087}
2000 | m_CullTransparentMesh: 0
2001 | --- !u!1 &1081204137
2002 | GameObject:
2003 | m_ObjectHideFlags: 0
2004 | m_CorrespondingSourceObject: {fileID: 0}
2005 | m_PrefabInstance: {fileID: 0}
2006 | m_PrefabAsset: {fileID: 0}
2007 | serializedVersion: 6
2008 | m_Component:
2009 | - component: {fileID: 1081204138}
2010 | - component: {fileID: 1081204140}
2011 | - component: {fileID: 1081204139}
2012 | m_Layer: 5
2013 | m_Name: TextConnecting
2014 | m_TagString: Untagged
2015 | m_Icon: {fileID: 0}
2016 | m_NavMeshLayer: 0
2017 | m_StaticEditorFlags: 0
2018 | m_IsActive: 1
2019 | --- !u!224 &1081204138
2020 | RectTransform:
2021 | m_ObjectHideFlags: 0
2022 | m_CorrespondingSourceObject: {fileID: 0}
2023 | m_PrefabInstance: {fileID: 0}
2024 | m_PrefabAsset: {fileID: 0}
2025 | m_GameObject: {fileID: 1081204137}
2026 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
2027 | m_LocalPosition: {x: 0, y: 0, z: 0}
2028 | m_LocalScale: {x: 1, y: 1, z: 1}
2029 | m_Children: []
2030 | m_Father: {fileID: 1926990971}
2031 | m_RootOrder: 2
2032 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
2033 | m_AnchorMin: {x: 0, y: 0.5}
2034 | m_AnchorMax: {x: 1, y: 0.5}
2035 | m_AnchoredPosition: {x: 0, y: 0}
2036 | m_SizeDelta: {x: 0, y: 20}
2037 | m_Pivot: {x: 0.5, y: 0.5}
2038 | --- !u!114 &1081204139
2039 | MonoBehaviour:
2040 | m_ObjectHideFlags: 0
2041 | m_CorrespondingSourceObject: {fileID: 0}
2042 | m_PrefabInstance: {fileID: 0}
2043 | m_PrefabAsset: {fileID: 0}
2044 | m_GameObject: {fileID: 1081204137}
2045 | m_Enabled: 1
2046 | m_EditorHideFlags: 0
2047 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
2048 | m_Name:
2049 | m_EditorClassIdentifier:
2050 | m_Material: {fileID: 0}
2051 | m_Color: {r: 1, g: 0.23137255, b: 0.5803922, a: 1}
2052 | m_RaycastTarget: 1
2053 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
2054 | m_Maskable: 1
2055 | m_OnCullStateChanged:
2056 | m_PersistentCalls:
2057 | m_Calls: []
2058 | m_FontData:
2059 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
2060 | m_FontSize: 12
2061 | m_FontStyle: 1
2062 | m_BestFit: 0
2063 | m_MinSize: 1
2064 | m_MaxSize: 40
2065 | m_Alignment: 4
2066 | m_AlignByGeometry: 0
2067 | m_RichText: 1
2068 | m_HorizontalOverflow: 0
2069 | m_VerticalOverflow: 0
2070 | m_LineSpacing: 1
2071 | m_Text: Connecting...
2072 | --- !u!222 &1081204140
2073 | CanvasRenderer:
2074 | m_ObjectHideFlags: 0
2075 | m_CorrespondingSourceObject: {fileID: 0}
2076 | m_PrefabInstance: {fileID: 0}
2077 | m_PrefabAsset: {fileID: 0}
2078 | m_GameObject: {fileID: 1081204137}
2079 | m_CullTransparentMesh: 0
2080 | --- !u!1 &1093045668
2081 | GameObject:
2082 | m_ObjectHideFlags: 0
2083 | m_CorrespondingSourceObject: {fileID: 0}
2084 | m_PrefabInstance: {fileID: 0}
2085 | m_PrefabAsset: {fileID: 0}
2086 | serializedVersion: 6
2087 | m_Component:
2088 | - component: {fileID: 1093045669}
2089 | - component: {fileID: 1093045671}
2090 | - component: {fileID: 1093045670}
2091 | m_Layer: 5
2092 | m_Name: TextTitle
2093 | m_TagString: Untagged
2094 | m_Icon: {fileID: 0}
2095 | m_NavMeshLayer: 0
2096 | m_StaticEditorFlags: 0
2097 | m_IsActive: 1
2098 | --- !u!224 &1093045669
2099 | RectTransform:
2100 | m_ObjectHideFlags: 0
2101 | m_CorrespondingSourceObject: {fileID: 0}
2102 | m_PrefabInstance: {fileID: 0}
2103 | m_PrefabAsset: {fileID: 0}
2104 | m_GameObject: {fileID: 1093045668}
2105 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
2106 | m_LocalPosition: {x: 0, y: 0, z: 0}
2107 | m_LocalScale: {x: 1, y: 1, z: 1}
2108 | m_Children: []
2109 | m_Father: {fileID: 747705679}
2110 | m_RootOrder: 0
2111 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
2112 | m_AnchorMin: {x: 0, y: 0.5}
2113 | m_AnchorMax: {x: 1, y: 0.5}
2114 | m_AnchoredPosition: {x: 0, y: 0}
2115 | m_SizeDelta: {x: -36, y: 20}
2116 | m_Pivot: {x: 0.5, y: 0.5}
2117 | --- !u!114 &1093045670
2118 | MonoBehaviour:
2119 | m_ObjectHideFlags: 0
2120 | m_CorrespondingSourceObject: {fileID: 0}
2121 | m_PrefabInstance: {fileID: 0}
2122 | m_PrefabAsset: {fileID: 0}
2123 | m_GameObject: {fileID: 1093045668}
2124 | m_Enabled: 1
2125 | m_EditorHideFlags: 0
2126 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
2127 | m_Name:
2128 | m_EditorClassIdentifier:
2129 | m_Material: {fileID: 0}
2130 | m_Color: {r: 0.23137255, g: 1, b: 0.6862745, a: 1}
2131 | m_RaycastTarget: 0
2132 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
2133 | m_Maskable: 1
2134 | m_OnCullStateChanged:
2135 | m_PersistentCalls:
2136 | m_Calls: []
2137 | m_FontData:
2138 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
2139 | m_FontSize: 14
2140 | m_FontStyle: 0
2141 | m_BestFit: 0
2142 | m_MinSize: 1
2143 | m_MaxSize: 40
2144 | m_Alignment: 4
2145 | m_AlignByGeometry: 0
2146 | m_RichText: 1
2147 | m_HorizontalOverflow: 0
2148 | m_VerticalOverflow: 0
2149 | m_LineSpacing: 1
2150 | m_Text:
2151 | --- !u!222 &1093045671
2152 | CanvasRenderer:
2153 | m_ObjectHideFlags: 0
2154 | m_CorrespondingSourceObject: {fileID: 0}
2155 | m_PrefabInstance: {fileID: 0}
2156 | m_PrefabAsset: {fileID: 0}
2157 | m_GameObject: {fileID: 1093045668}
2158 | m_CullTransparentMesh: 0
2159 | --- !u!224 &1206549608
2160 | RectTransform:
2161 | m_ObjectHideFlags: 0
2162 | m_CorrespondingSourceObject: {fileID: 0}
2163 | m_PrefabInstance: {fileID: 0}
2164 | m_PrefabAsset: {fileID: 0}
2165 | m_GameObject: {fileID: 719699535}
2166 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
2167 | m_LocalPosition: {x: 0, y: 0, z: 0}
2168 | m_LocalScale: {x: 1, y: 1, z: 1}
2169 | m_Children:
2170 | - {fileID: 651109222}
2171 | - {fileID: 776519261}
2172 | - {fileID: 1926990971}
2173 | m_Father: {fileID: 1972322034}
2174 | m_RootOrder: 0
2175 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
2176 | m_AnchorMin: {x: 0, y: 0}
2177 | m_AnchorMax: {x: 1, y: 1}
2178 | m_AnchoredPosition: {x: 0, y: 0}
2179 | m_SizeDelta: {x: 0, y: 0}
2180 | m_Pivot: {x: 0.5, y: 0.5}
2181 | --- !u!1 &1291804677
2182 | GameObject:
2183 | m_ObjectHideFlags: 0
2184 | m_CorrespondingSourceObject: {fileID: 0}
2185 | m_PrefabInstance: {fileID: 0}
2186 | m_PrefabAsset: {fileID: 0}
2187 | serializedVersion: 6
2188 | m_Component:
2189 | - component: {fileID: 1291804678}
2190 | - component: {fileID: 1291804680}
2191 | - component: {fileID: 1291804679}
2192 | m_Layer: 5
2193 | m_Name: PanelStartServer
2194 | m_TagString: Untagged
2195 | m_Icon: {fileID: 0}
2196 | m_NavMeshLayer: 0
2197 | m_StaticEditorFlags: 0
2198 | m_IsActive: 1
2199 | --- !u!224 &1291804678
2200 | RectTransform:
2201 | m_ObjectHideFlags: 0
2202 | m_CorrespondingSourceObject: {fileID: 0}
2203 | m_PrefabInstance: {fileID: 0}
2204 | m_PrefabAsset: {fileID: 0}
2205 | m_GameObject: {fileID: 1291804677}
2206 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
2207 | m_LocalPosition: {x: 0, y: 0, z: 0}
2208 | m_LocalScale: {x: 1, y: 1, z: 1}
2209 | m_Children:
2210 | - {fileID: 1004751478}
2211 | - {fileID: 993261494}
2212 | m_Father: {fileID: 776519261}
2213 | m_RootOrder: 6
2214 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
2215 | m_AnchorMin: {x: 0, y: 0}
2216 | m_AnchorMax: {x: 1, y: 0}
2217 | m_AnchoredPosition: {x: 0, y: 16}
2218 | m_SizeDelta: {x: -4, y: 28}
2219 | m_Pivot: {x: 0.5, y: 0.5}
2220 | --- !u!114 &1291804679
2221 | MonoBehaviour:
2222 | m_ObjectHideFlags: 0
2223 | m_CorrespondingSourceObject: {fileID: 0}
2224 | m_PrefabInstance: {fileID: 0}
2225 | m_PrefabAsset: {fileID: 0}
2226 | m_GameObject: {fileID: 1291804677}
2227 | m_Enabled: 1
2228 | m_EditorHideFlags: 0
2229 | m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
2230 | m_Name:
2231 | m_EditorClassIdentifier:
2232 | m_Material: {fileID: 0}
2233 | m_Color: {r: 0.25882354, g: 0.25882354, b: 0.25882354, a: 1}
2234 | m_RaycastTarget: 1
2235 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
2236 | m_Maskable: 1
2237 | m_OnCullStateChanged:
2238 | m_PersistentCalls:
2239 | m_Calls: []
2240 | m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
2241 | m_Type: 1
2242 | m_PreserveAspect: 0
2243 | m_FillCenter: 1
2244 | m_FillMethod: 4
2245 | m_FillAmount: 1
2246 | m_FillClockwise: 1
2247 | m_FillOrigin: 0
2248 | m_UseSpriteMesh: 0
2249 | m_PixelsPerUnitMultiplier: 1
2250 | --- !u!222 &1291804680
2251 | CanvasRenderer:
2252 | m_ObjectHideFlags: 0
2253 | m_CorrespondingSourceObject: {fileID: 0}
2254 | m_PrefabInstance: {fileID: 0}
2255 | m_PrefabAsset: {fileID: 0}
2256 | m_GameObject: {fileID: 1291804677}
2257 | m_CullTransparentMesh: 0
2258 | --- !u!1 &1345848862
2259 | GameObject:
2260 | m_ObjectHideFlags: 0
2261 | m_CorrespondingSourceObject: {fileID: 0}
2262 | m_PrefabInstance: {fileID: 0}
2263 | m_PrefabAsset: {fileID: 0}
2264 | serializedVersion: 6
2265 | m_Component:
2266 | - component: {fileID: 1345848863}
2267 | m_Layer: 5
2268 | m_Name: Sliding Area
2269 | m_TagString: Untagged
2270 | m_Icon: {fileID: 0}
2271 | m_NavMeshLayer: 0
2272 | m_StaticEditorFlags: 0
2273 | m_IsActive: 1
2274 | --- !u!224 &1345848863
2275 | RectTransform:
2276 | m_ObjectHideFlags: 0
2277 | m_CorrespondingSourceObject: {fileID: 0}
2278 | m_PrefabInstance: {fileID: 0}
2279 | m_PrefabAsset: {fileID: 0}
2280 | m_GameObject: {fileID: 1345848862}
2281 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
2282 | m_LocalPosition: {x: 0, y: 0, z: 0}
2283 | m_LocalScale: {x: 1, y: 1, z: 1}
2284 | m_Children:
2285 | - {fileID: 2064208031}
2286 | m_Father: {fileID: 586458804}
2287 | m_RootOrder: 0
2288 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
2289 | m_AnchorMin: {x: 0, y: 0}
2290 | m_AnchorMax: {x: 1, y: 1}
2291 | m_AnchoredPosition: {x: 0, y: 0}
2292 | m_SizeDelta: {x: -20, y: -20}
2293 | m_Pivot: {x: 0.5, y: 0.5}
2294 | --- !u!1 &1578438652
2295 | GameObject:
2296 | m_ObjectHideFlags: 0
2297 | m_CorrespondingSourceObject: {fileID: 0}
2298 | m_PrefabInstance: {fileID: 0}
2299 | m_PrefabAsset: {fileID: 0}
2300 | serializedVersion: 6
2301 | m_Component:
2302 | - component: {fileID: 1578438653}
2303 | - component: {fileID: 1578438655}
2304 | - component: {fileID: 1578438654}
2305 | m_Layer: 5
2306 | m_Name: PanelTableHeader
2307 | m_TagString: Untagged
2308 | m_Icon: {fileID: 0}
2309 | m_NavMeshLayer: 0
2310 | m_StaticEditorFlags: 0
2311 | m_IsActive: 1
2312 | --- !u!224 &1578438653
2313 | RectTransform:
2314 | m_ObjectHideFlags: 0
2315 | m_CorrespondingSourceObject: {fileID: 0}
2316 | m_PrefabInstance: {fileID: 0}
2317 | m_PrefabAsset: {fileID: 0}
2318 | m_GameObject: {fileID: 1578438652}
2319 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
2320 | m_LocalPosition: {x: 0, y: 0, z: 0}
2321 | m_LocalScale: {x: 1, y: 1, z: 1}
2322 | m_Children:
2323 | - {fileID: 232720477}
2324 | - {fileID: 424897550}
2325 | - {fileID: 535675710}
2326 | - {fileID: 354490535}
2327 | - {fileID: 635355837}
2328 | m_Father: {fileID: 776519261}
2329 | m_RootOrder: 3
2330 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
2331 | m_AnchorMin: {x: 0, y: 1}
2332 | m_AnchorMax: {x: 1, y: 1}
2333 | m_AnchoredPosition: {x: 0, y: -48}
2334 | m_SizeDelta: {x: 0, y: 20}
2335 | m_Pivot: {x: 0.5, y: 0.5}
2336 | --- !u!114 &1578438654
2337 | MonoBehaviour:
2338 | m_ObjectHideFlags: 0
2339 | m_CorrespondingSourceObject: {fileID: 0}
2340 | m_PrefabInstance: {fileID: 0}
2341 | m_PrefabAsset: {fileID: 0}
2342 | m_GameObject: {fileID: 1578438652}
2343 | m_Enabled: 1
2344 | m_EditorHideFlags: 0
2345 | m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
2346 | m_Name:
2347 | m_EditorClassIdentifier:
2348 | m_Material: {fileID: 0}
2349 | m_Color: {r: 0.25882354, g: 0.25882354, b: 0.25882354, a: 1}
2350 | m_RaycastTarget: 1
2351 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
2352 | m_Maskable: 1
2353 | m_OnCullStateChanged:
2354 | m_PersistentCalls:
2355 | m_Calls: []
2356 | m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
2357 | m_Type: 1
2358 | m_PreserveAspect: 0
2359 | m_FillCenter: 1
2360 | m_FillMethod: 4
2361 | m_FillAmount: 1
2362 | m_FillClockwise: 1
2363 | m_FillOrigin: 0
2364 | m_UseSpriteMesh: 0
2365 | m_PixelsPerUnitMultiplier: 1
2366 | --- !u!222 &1578438655
2367 | CanvasRenderer:
2368 | m_ObjectHideFlags: 0
2369 | m_CorrespondingSourceObject: {fileID: 0}
2370 | m_PrefabInstance: {fileID: 0}
2371 | m_PrefabAsset: {fileID: 0}
2372 | m_GameObject: {fileID: 1578438652}
2373 | m_CullTransparentMesh: 0
2374 | --- !u!1 &1680368249
2375 | GameObject:
2376 | m_ObjectHideFlags: 0
2377 | m_CorrespondingSourceObject: {fileID: 0}
2378 | m_PrefabInstance: {fileID: 0}
2379 | m_PrefabAsset: {fileID: 0}
2380 | serializedVersion: 6
2381 | m_Component:
2382 | - component: {fileID: 1680368252}
2383 | - component: {fileID: 1680368251}
2384 | - component: {fileID: 1680368250}
2385 | m_Layer: 0
2386 | m_Name: EventSystem
2387 | m_TagString: Untagged
2388 | m_Icon: {fileID: 0}
2389 | m_NavMeshLayer: 0
2390 | m_StaticEditorFlags: 0
2391 | m_IsActive: 1
2392 | --- !u!114 &1680368250
2393 | MonoBehaviour:
2394 | m_ObjectHideFlags: 0
2395 | m_CorrespondingSourceObject: {fileID: 0}
2396 | m_PrefabInstance: {fileID: 0}
2397 | m_PrefabAsset: {fileID: 0}
2398 | m_GameObject: {fileID: 1680368249}
2399 | m_Enabled: 1
2400 | m_EditorHideFlags: 0
2401 | m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3}
2402 | m_Name:
2403 | m_EditorClassIdentifier:
2404 | m_HorizontalAxis: Horizontal
2405 | m_VerticalAxis: Vertical
2406 | m_SubmitButton: Submit
2407 | m_CancelButton: Cancel
2408 | m_InputActionsPerSecond: 10
2409 | m_RepeatDelay: 0.5
2410 | m_ForceModuleActive: 0
2411 | --- !u!114 &1680368251
2412 | MonoBehaviour:
2413 | m_ObjectHideFlags: 0
2414 | m_CorrespondingSourceObject: {fileID: 0}
2415 | m_PrefabInstance: {fileID: 0}
2416 | m_PrefabAsset: {fileID: 0}
2417 | m_GameObject: {fileID: 1680368249}
2418 | m_Enabled: 1
2419 | m_EditorHideFlags: 0
2420 | m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3}
2421 | m_Name:
2422 | m_EditorClassIdentifier:
2423 | m_FirstSelected: {fileID: 0}
2424 | m_sendNavigationEvents: 1
2425 | m_DragThreshold: 10
2426 | --- !u!4 &1680368252
2427 | Transform:
2428 | m_ObjectHideFlags: 0
2429 | m_CorrespondingSourceObject: {fileID: 0}
2430 | m_PrefabInstance: {fileID: 0}
2431 | m_PrefabAsset: {fileID: 0}
2432 | m_GameObject: {fileID: 1680368249}
2433 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
2434 | m_LocalPosition: {x: 0, y: 0, z: 0}
2435 | m_LocalScale: {x: 1, y: 1, z: 1}
2436 | m_Children: []
2437 | m_Father: {fileID: 0}
2438 | m_RootOrder: 2
2439 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
2440 | --- !u!1 &1731173843
2441 | GameObject:
2442 | m_ObjectHideFlags: 0
2443 | m_CorrespondingSourceObject: {fileID: 0}
2444 | m_PrefabInstance: {fileID: 0}
2445 | m_PrefabAsset: {fileID: 0}
2446 | serializedVersion: 6
2447 | m_Component:
2448 | - component: {fileID: 1731173845}
2449 | - component: {fileID: 1731173844}
2450 | - component: {fileID: 1731173846}
2451 | m_Layer: 0
2452 | m_Name: Logic
2453 | m_TagString: Untagged
2454 | m_Icon: {fileID: 0}
2455 | m_NavMeshLayer: 0
2456 | m_StaticEditorFlags: 0
2457 | m_IsActive: 1
2458 | --- !u!114 &1731173844
2459 | MonoBehaviour:
2460 | m_ObjectHideFlags: 0
2461 | m_CorrespondingSourceObject: {fileID: 0}
2462 | m_PrefabInstance: {fileID: 0}
2463 | m_PrefabAsset: {fileID: 0}
2464 | m_GameObject: {fileID: 1731173843}
2465 | m_Enabled: 1
2466 | m_EditorHideFlags: 0
2467 | m_Script: {fileID: 11500000, guid: 48b85de715ff2bd42b01785386816646, type: 3}
2468 | m_Name:
2469 | m_EditorClassIdentifier:
2470 | serverEndpoint: http://192.168.88.250:8889
2471 | communicationKey: NodeListServerDefaultKey
2472 | refreshOnStart: 1
2473 | refreshInterval: 10
2474 | popup: {fileID: 1926990970}
2475 | mainStatusText: {fileID: 712827152}
2476 | popupStatusText: {fileID: 1081204139}
2477 | ListElementPrefab: {fileID: 1259177336467004, guid: c6ca829569179c749a037f1b7d8631a0,
2478 | type: 3}
2479 | ListElementContainer: {fileID: 583153858}
2480 | refreshButton: {fileID: 1004751479}
2481 | supportButton: {fileID: 993261495}
2482 | --- !u!4 &1731173845
2483 | Transform:
2484 | m_ObjectHideFlags: 0
2485 | m_CorrespondingSourceObject: {fileID: 0}
2486 | m_PrefabInstance: {fileID: 0}
2487 | m_PrefabAsset: {fileID: 0}
2488 | m_GameObject: {fileID: 1731173843}
2489 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
2490 | m_LocalPosition: {x: 0, y: 0, z: 0}
2491 | m_LocalScale: {x: 1, y: 1, z: 1}
2492 | m_Children: []
2493 | m_Father: {fileID: 0}
2494 | m_RootOrder: 0
2495 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
2496 | --- !u!114 &1731173846
2497 | MonoBehaviour:
2498 | m_ObjectHideFlags: 0
2499 | m_CorrespondingSourceObject: {fileID: 0}
2500 | m_PrefabInstance: {fileID: 0}
2501 | m_PrefabAsset: {fileID: 0}
2502 | m_GameObject: {fileID: 1731173843}
2503 | m_Enabled: 1
2504 | m_EditorHideFlags: 0
2505 | m_Script: {fileID: 11500000, guid: 9a9401aa9bab5b24d99e6a058d85c894, type: 3}
2506 | m_Name:
2507 | m_EditorClassIdentifier:
2508 | --- !u!1 &1918165880
2509 | GameObject:
2510 | m_ObjectHideFlags: 0
2511 | m_CorrespondingSourceObject: {fileID: 0}
2512 | m_PrefabInstance: {fileID: 0}
2513 | m_PrefabAsset: {fileID: 0}
2514 | serializedVersion: 6
2515 | m_Component:
2516 | - component: {fileID: 1918165881}
2517 | - component: {fileID: 1918165885}
2518 | - component: {fileID: 1918165884}
2519 | - component: {fileID: 1918165883}
2520 | - component: {fileID: 1918165882}
2521 | m_Layer: 5
2522 | m_Name: Scroll View
2523 | m_TagString: Untagged
2524 | m_Icon: {fileID: 0}
2525 | m_NavMeshLayer: 0
2526 | m_StaticEditorFlags: 0
2527 | m_IsActive: 1
2528 | --- !u!224 &1918165881
2529 | RectTransform:
2530 | m_ObjectHideFlags: 0
2531 | m_CorrespondingSourceObject: {fileID: 0}
2532 | m_PrefabInstance: {fileID: 0}
2533 | m_PrefabAsset: {fileID: 0}
2534 | m_GameObject: {fileID: 1918165880}
2535 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
2536 | m_LocalPosition: {x: 0, y: 0, z: 0}
2537 | m_LocalScale: {x: 1, y: 1, z: 1}
2538 | m_Children:
2539 | - {fileID: 583153859}
2540 | - {fileID: 586458804}
2541 | m_Father: {fileID: 776519261}
2542 | m_RootOrder: 4
2543 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
2544 | m_AnchorMin: {x: 0, y: 0}
2545 | m_AnchorMax: {x: 1, y: 1}
2546 | m_AnchoredPosition: {x: 0, y: -3}
2547 | m_SizeDelta: {x: -2, y: -106}
2548 | m_Pivot: {x: 0.5, y: 0.5}
2549 | --- !u!114 &1918165882
2550 | MonoBehaviour:
2551 | m_ObjectHideFlags: 0
2552 | m_CorrespondingSourceObject: {fileID: 0}
2553 | m_PrefabInstance: {fileID: 0}
2554 | m_PrefabAsset: {fileID: 0}
2555 | m_GameObject: {fileID: 1918165880}
2556 | m_Enabled: 1
2557 | m_EditorHideFlags: 0
2558 | m_Script: {fileID: 11500000, guid: 31a19414c41e5ae4aae2af33fee712f6, type: 3}
2559 | m_Name:
2560 | m_EditorClassIdentifier:
2561 | m_ShowMaskGraphic: 1
2562 | --- !u!114 &1918165883
2563 | MonoBehaviour:
2564 | m_ObjectHideFlags: 0
2565 | m_CorrespondingSourceObject: {fileID: 0}
2566 | m_PrefabInstance: {fileID: 0}
2567 | m_PrefabAsset: {fileID: 0}
2568 | m_GameObject: {fileID: 1918165880}
2569 | m_Enabled: 1
2570 | m_EditorHideFlags: 0
2571 | m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
2572 | m_Name:
2573 | m_EditorClassIdentifier:
2574 | m_Material: {fileID: 0}
2575 | m_Color: {r: 0.25882354, g: 0.25882354, b: 0.25882354, a: 1}
2576 | m_RaycastTarget: 1
2577 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
2578 | m_Maskable: 1
2579 | m_OnCullStateChanged:
2580 | m_PersistentCalls:
2581 | m_Calls: []
2582 | m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
2583 | m_Type: 1
2584 | m_PreserveAspect: 0
2585 | m_FillCenter: 1
2586 | m_FillMethod: 4
2587 | m_FillAmount: 1
2588 | m_FillClockwise: 1
2589 | m_FillOrigin: 0
2590 | m_UseSpriteMesh: 0
2591 | m_PixelsPerUnitMultiplier: 1
2592 | --- !u!222 &1918165884
2593 | CanvasRenderer:
2594 | m_ObjectHideFlags: 0
2595 | m_CorrespondingSourceObject: {fileID: 0}
2596 | m_PrefabInstance: {fileID: 0}
2597 | m_PrefabAsset: {fileID: 0}
2598 | m_GameObject: {fileID: 1918165880}
2599 | m_CullTransparentMesh: 0
2600 | --- !u!114 &1918165885
2601 | MonoBehaviour:
2602 | m_ObjectHideFlags: 0
2603 | m_CorrespondingSourceObject: {fileID: 0}
2604 | m_PrefabInstance: {fileID: 0}
2605 | m_PrefabAsset: {fileID: 0}
2606 | m_GameObject: {fileID: 1918165880}
2607 | m_Enabled: 1
2608 | m_EditorHideFlags: 0
2609 | m_Script: {fileID: 11500000, guid: 1aa08ab6e0800fa44ae55d278d1423e3, type: 3}
2610 | m_Name:
2611 | m_EditorClassIdentifier:
2612 | m_Content: {fileID: 583153859}
2613 | m_Horizontal: 0
2614 | m_Vertical: 1
2615 | m_MovementType: 2
2616 | m_Elasticity: 0.1
2617 | m_Inertia: 1
2618 | m_DecelerationRate: 0.135
2619 | m_ScrollSensitivity: 1
2620 | m_Viewport: {fileID: 0}
2621 | m_HorizontalScrollbar: {fileID: 0}
2622 | m_VerticalScrollbar: {fileID: 586458805}
2623 | m_HorizontalScrollbarVisibility: 2
2624 | m_VerticalScrollbarVisibility: 1
2625 | m_HorizontalScrollbarSpacing: -3
2626 | m_VerticalScrollbarSpacing: -3
2627 | m_OnValueChanged:
2628 | m_PersistentCalls:
2629 | m_Calls: []
2630 | --- !u!1 &1926990970
2631 | GameObject:
2632 | m_ObjectHideFlags: 0
2633 | m_CorrespondingSourceObject: {fileID: 0}
2634 | m_PrefabInstance: {fileID: 0}
2635 | m_PrefabAsset: {fileID: 0}
2636 | serializedVersion: 6
2637 | m_Component:
2638 | - component: {fileID: 1926990971}
2639 | - component: {fileID: 1926990973}
2640 | - component: {fileID: 1926990972}
2641 | m_Layer: 5
2642 | m_Name: ConnectingPanel
2643 | m_TagString: Untagged
2644 | m_Icon: {fileID: 0}
2645 | m_NavMeshLayer: 0
2646 | m_StaticEditorFlags: 0
2647 | m_IsActive: 1
2648 | --- !u!224 &1926990971
2649 | RectTransform:
2650 | m_ObjectHideFlags: 0
2651 | m_CorrespondingSourceObject: {fileID: 0}
2652 | m_PrefabInstance: {fileID: 0}
2653 | m_PrefabAsset: {fileID: 0}
2654 | m_GameObject: {fileID: 1926990970}
2655 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
2656 | m_LocalPosition: {x: 0, y: 0, z: 0}
2657 | m_LocalScale: {x: 1, y: 1, z: 1}
2658 | m_Children:
2659 | - {fileID: 747705679}
2660 | - {fileID: 13922437}
2661 | - {fileID: 1081204138}
2662 | m_Father: {fileID: 1206549608}
2663 | m_RootOrder: 2
2664 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
2665 | m_AnchorMin: {x: 0.5, y: 0.5}
2666 | m_AnchorMax: {x: 0.5, y: 0.5}
2667 | m_AnchoredPosition: {x: 0, y: 0}
2668 | m_SizeDelta: {x: 250, y: 100}
2669 | m_Pivot: {x: 0.5, y: 0.5}
2670 | --- !u!114 &1926990972
2671 | MonoBehaviour:
2672 | m_ObjectHideFlags: 0
2673 | m_CorrespondingSourceObject: {fileID: 0}
2674 | m_PrefabInstance: {fileID: 0}
2675 | m_PrefabAsset: {fileID: 0}
2676 | m_GameObject: {fileID: 1926990970}
2677 | m_Enabled: 1
2678 | m_EditorHideFlags: 0
2679 | m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
2680 | m_Name:
2681 | m_EditorClassIdentifier:
2682 | m_Material: {fileID: 0}
2683 | m_Color: {r: 0.19215687, g: 0.19215687, b: 0.19215687, a: 1}
2684 | m_RaycastTarget: 1
2685 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
2686 | m_Maskable: 1
2687 | m_OnCullStateChanged:
2688 | m_PersistentCalls:
2689 | m_Calls: []
2690 | m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
2691 | m_Type: 1
2692 | m_PreserveAspect: 0
2693 | m_FillCenter: 1
2694 | m_FillMethod: 4
2695 | m_FillAmount: 1
2696 | m_FillClockwise: 1
2697 | m_FillOrigin: 0
2698 | m_UseSpriteMesh: 0
2699 | m_PixelsPerUnitMultiplier: 1
2700 | --- !u!222 &1926990973
2701 | CanvasRenderer:
2702 | m_ObjectHideFlags: 0
2703 | m_CorrespondingSourceObject: {fileID: 0}
2704 | m_PrefabInstance: {fileID: 0}
2705 | m_PrefabAsset: {fileID: 0}
2706 | m_GameObject: {fileID: 1926990970}
2707 | m_CullTransparentMesh: 0
2708 | --- !u!1 &1972322030
2709 | GameObject:
2710 | m_ObjectHideFlags: 0
2711 | m_CorrespondingSourceObject: {fileID: 0}
2712 | m_PrefabInstance: {fileID: 0}
2713 | m_PrefabAsset: {fileID: 0}
2714 | serializedVersion: 6
2715 | m_Component:
2716 | - component: {fileID: 1972322034}
2717 | - component: {fileID: 1972322033}
2718 | - component: {fileID: 1972322032}
2719 | - component: {fileID: 1972322031}
2720 | m_Layer: 5
2721 | m_Name: Canvas
2722 | m_TagString: Untagged
2723 | m_Icon: {fileID: 0}
2724 | m_NavMeshLayer: 0
2725 | m_StaticEditorFlags: 0
2726 | m_IsActive: 1
2727 | --- !u!114 &1972322031
2728 | MonoBehaviour:
2729 | m_ObjectHideFlags: 0
2730 | m_CorrespondingSourceObject: {fileID: 0}
2731 | m_PrefabInstance: {fileID: 0}
2732 | m_PrefabAsset: {fileID: 0}
2733 | m_GameObject: {fileID: 1972322030}
2734 | m_Enabled: 1
2735 | m_EditorHideFlags: 0
2736 | m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
2737 | m_Name:
2738 | m_EditorClassIdentifier:
2739 | m_IgnoreReversedGraphics: 1
2740 | m_BlockingObjects: 0
2741 | m_BlockingMask:
2742 | serializedVersion: 2
2743 | m_Bits: 4294967295
2744 | --- !u!114 &1972322032
2745 | MonoBehaviour:
2746 | m_ObjectHideFlags: 0
2747 | m_CorrespondingSourceObject: {fileID: 0}
2748 | m_PrefabInstance: {fileID: 0}
2749 | m_PrefabAsset: {fileID: 0}
2750 | m_GameObject: {fileID: 1972322030}
2751 | m_Enabled: 1
2752 | m_EditorHideFlags: 0
2753 | m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
2754 | m_Name:
2755 | m_EditorClassIdentifier:
2756 | m_UiScaleMode: 0
2757 | m_ReferencePixelsPerUnit: 100
2758 | m_ScaleFactor: 1
2759 | m_ReferenceResolution: {x: 800, y: 600}
2760 | m_ScreenMatchMode: 0
2761 | m_MatchWidthOrHeight: 0
2762 | m_PhysicalUnit: 3
2763 | m_FallbackScreenDPI: 96
2764 | m_DefaultSpriteDPI: 96
2765 | m_DynamicPixelsPerUnit: 1
2766 | m_PresetInfoIsWorld: 0
2767 | --- !u!223 &1972322033
2768 | Canvas:
2769 | m_ObjectHideFlags: 0
2770 | m_CorrespondingSourceObject: {fileID: 0}
2771 | m_PrefabInstance: {fileID: 0}
2772 | m_PrefabAsset: {fileID: 0}
2773 | m_GameObject: {fileID: 1972322030}
2774 | m_Enabled: 1
2775 | serializedVersion: 3
2776 | m_RenderMode: 0
2777 | m_Camera: {fileID: 0}
2778 | m_PlaneDistance: 100
2779 | m_PixelPerfect: 1
2780 | m_ReceivesEvents: 1
2781 | m_OverrideSorting: 0
2782 | m_OverridePixelPerfect: 0
2783 | m_SortingBucketNormalizedSize: 0
2784 | m_AdditionalShaderChannelsFlag: 0
2785 | m_SortingLayerID: 0
2786 | m_SortingOrder: 0
2787 | m_TargetDisplay: 0
2788 | --- !u!224 &1972322034
2789 | RectTransform:
2790 | m_ObjectHideFlags: 0
2791 | m_CorrespondingSourceObject: {fileID: 0}
2792 | m_PrefabInstance: {fileID: 0}
2793 | m_PrefabAsset: {fileID: 0}
2794 | m_GameObject: {fileID: 1972322030}
2795 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
2796 | m_LocalPosition: {x: 0, y: 0, z: 0}
2797 | m_LocalScale: {x: 0, y: 0, z: 0}
2798 | m_Children:
2799 | - {fileID: 1206549608}
2800 | m_Father: {fileID: 0}
2801 | m_RootOrder: 1
2802 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
2803 | m_AnchorMin: {x: 0, y: 0}
2804 | m_AnchorMax: {x: 0, y: 0}
2805 | m_AnchoredPosition: {x: 0, y: 0}
2806 | m_SizeDelta: {x: 0, y: 0}
2807 | m_Pivot: {x: 0, y: 0}
2808 | --- !u!1 &2020215608
2809 | GameObject:
2810 | m_ObjectHideFlags: 0
2811 | m_CorrespondingSourceObject: {fileID: 0}
2812 | m_PrefabInstance: {fileID: 0}
2813 | m_PrefabAsset: {fileID: 0}
2814 | serializedVersion: 6
2815 | m_Component:
2816 | - component: {fileID: 2020215609}
2817 | - component: {fileID: 2020215611}
2818 | - component: {fileID: 2020215610}
2819 | m_Layer: 5
2820 | m_Name: Text
2821 | m_TagString: Untagged
2822 | m_Icon: {fileID: 0}
2823 | m_NavMeshLayer: 0
2824 | m_StaticEditorFlags: 0
2825 | m_IsActive: 1
2826 | --- !u!224 &2020215609
2827 | RectTransform:
2828 | m_ObjectHideFlags: 0
2829 | m_CorrespondingSourceObject: {fileID: 0}
2830 | m_PrefabInstance: {fileID: 0}
2831 | m_PrefabAsset: {fileID: 0}
2832 | m_GameObject: {fileID: 2020215608}
2833 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
2834 | m_LocalPosition: {x: 0, y: 0, z: 0}
2835 | m_LocalScale: {x: 1, y: 1, z: 1}
2836 | m_Children: []
2837 | m_Father: {fileID: 993261494}
2838 | m_RootOrder: 0
2839 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
2840 | m_AnchorMin: {x: 0, y: 0}
2841 | m_AnchorMax: {x: 1, y: 1}
2842 | m_AnchoredPosition: {x: 0, y: 0}
2843 | m_SizeDelta: {x: 0, y: 0}
2844 | m_Pivot: {x: 0.5, y: 0.5}
2845 | --- !u!114 &2020215610
2846 | MonoBehaviour:
2847 | m_ObjectHideFlags: 0
2848 | m_CorrespondingSourceObject: {fileID: 0}
2849 | m_PrefabInstance: {fileID: 0}
2850 | m_PrefabAsset: {fileID: 0}
2851 | m_GameObject: {fileID: 2020215608}
2852 | m_Enabled: 1
2853 | m_EditorHideFlags: 0
2854 | m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
2855 | m_Name:
2856 | m_EditorClassIdentifier:
2857 | m_Material: {fileID: 0}
2858 | m_Color: {r: 1, g: 1, b: 1, a: 1}
2859 | m_RaycastTarget: 1
2860 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
2861 | m_Maskable: 1
2862 | m_OnCullStateChanged:
2863 | m_PersistentCalls:
2864 | m_Calls: []
2865 | m_FontData:
2866 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
2867 | m_FontSize: 12
2868 | m_FontStyle: 0
2869 | m_BestFit: 0
2870 | m_MinSize: 1
2871 | m_MaxSize: 40
2872 | m_Alignment: 4
2873 | m_AlignByGeometry: 0
2874 | m_RichText: 1
2875 | m_HorizontalOverflow: 0
2876 | m_VerticalOverflow: 0
2877 | m_LineSpacing: 1
2878 | m_Text: Visit GitHub Repository
2879 | --- !u!222 &2020215611
2880 | CanvasRenderer:
2881 | m_ObjectHideFlags: 0
2882 | m_CorrespondingSourceObject: {fileID: 0}
2883 | m_PrefabInstance: {fileID: 0}
2884 | m_PrefabAsset: {fileID: 0}
2885 | m_GameObject: {fileID: 2020215608}
2886 | m_CullTransparentMesh: 0
2887 | --- !u!1 &2054208274
2888 | GameObject:
2889 | m_ObjectHideFlags: 0
2890 | m_CorrespondingSourceObject: {fileID: 0}
2891 | m_PrefabInstance: {fileID: 0}
2892 | m_PrefabAsset: {fileID: 0}
2893 | serializedVersion: 6
2894 | m_Component:
2895 | - component: {fileID: 2054208276}
2896 | - component: {fileID: 2054208275}
2897 | m_Layer: 0
2898 | m_Name: Directional light
2899 | m_TagString: Untagged
2900 | m_Icon: {fileID: 0}
2901 | m_NavMeshLayer: 0
2902 | m_StaticEditorFlags: 0
2903 | m_IsActive: 1
2904 | --- !u!108 &2054208275
2905 | Light:
2906 | m_ObjectHideFlags: 0
2907 | m_CorrespondingSourceObject: {fileID: 0}
2908 | m_PrefabInstance: {fileID: 0}
2909 | m_PrefabAsset: {fileID: 0}
2910 | m_GameObject: {fileID: 2054208274}
2911 | m_Enabled: 1
2912 | serializedVersion: 10
2913 | m_Type: 1
2914 | m_Shape: 0
2915 | m_Color: {r: 1, g: 1, b: 1, a: 1}
2916 | m_Intensity: 1
2917 | m_Range: 10
2918 | m_SpotAngle: 30
2919 | m_InnerSpotAngle: 21.80208
2920 | m_CookieSize: 10
2921 | m_Shadows:
2922 | m_Type: 2
2923 | m_Resolution: -1
2924 | m_CustomResolution: -1
2925 | m_Strength: 1
2926 | m_Bias: 0.05
2927 | m_NormalBias: 0.4
2928 | m_NearPlane: 0.2
2929 | m_CullingMatrixOverride:
2930 | e00: 1
2931 | e01: 0
2932 | e02: 0
2933 | e03: 0
2934 | e10: 0
2935 | e11: 1
2936 | e12: 0
2937 | e13: 0
2938 | e20: 0
2939 | e21: 0
2940 | e22: 1
2941 | e23: 0
2942 | e30: 0
2943 | e31: 0
2944 | e32: 0
2945 | e33: 1
2946 | m_UseCullingMatrixOverride: 0
2947 | m_Cookie: {fileID: 0}
2948 | m_DrawHalo: 0
2949 | m_Flare: {fileID: 0}
2950 | m_RenderMode: 0
2951 | m_CullingMask:
2952 | serializedVersion: 2
2953 | m_Bits: 4294967295
2954 | m_RenderingLayerMask: 1
2955 | m_Lightmapping: 4
2956 | m_LightShadowCasterMode: 0
2957 | m_AreaSize: {x: 1, y: 1}
2958 | m_BounceIntensity: 1
2959 | m_ColorTemperature: 6570
2960 | m_UseColorTemperature: 0
2961 | m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
2962 | m_UseBoundingSphereOverride: 0
2963 | m_UseViewFrustumForShadowCasterCull: 1
2964 | m_ShadowRadius: 0
2965 | m_ShadowAngle: 0
2966 | --- !u!4 &2054208276
2967 | Transform:
2968 | m_ObjectHideFlags: 0
2969 | m_CorrespondingSourceObject: {fileID: 0}
2970 | m_PrefabInstance: {fileID: 0}
2971 | m_PrefabAsset: {fileID: 0}
2972 | m_GameObject: {fileID: 2054208274}
2973 | m_LocalRotation: {x: 0.10938167, y: 0.8754261, z: -0.40821788, w: 0.23456976}
2974 | m_LocalPosition: {x: 0, y: 10, z: 0}
2975 | m_LocalScale: {x: 1, y: 1, z: 1}
2976 | m_Children: []
2977 | m_Father: {fileID: 0}
2978 | m_RootOrder: 4
2979 | m_LocalEulerAnglesHint: {x: 50, y: 150, z: 0}
2980 | --- !u!1 &2064208030
2981 | GameObject:
2982 | m_ObjectHideFlags: 0
2983 | m_CorrespondingSourceObject: {fileID: 0}
2984 | m_PrefabInstance: {fileID: 0}
2985 | m_PrefabAsset: {fileID: 0}
2986 | serializedVersion: 6
2987 | m_Component:
2988 | - component: {fileID: 2064208031}
2989 | - component: {fileID: 2064208033}
2990 | - component: {fileID: 2064208032}
2991 | m_Layer: 5
2992 | m_Name: Handle
2993 | m_TagString: Untagged
2994 | m_Icon: {fileID: 0}
2995 | m_NavMeshLayer: 0
2996 | m_StaticEditorFlags: 0
2997 | m_IsActive: 1
2998 | --- !u!224 &2064208031
2999 | RectTransform:
3000 | m_ObjectHideFlags: 0
3001 | m_CorrespondingSourceObject: {fileID: 0}
3002 | m_PrefabInstance: {fileID: 0}
3003 | m_PrefabAsset: {fileID: 0}
3004 | m_GameObject: {fileID: 2064208030}
3005 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
3006 | m_LocalPosition: {x: 0, y: 0, z: 0}
3007 | m_LocalScale: {x: 1, y: 1, z: 1}
3008 | m_Children: []
3009 | m_Father: {fileID: 1345848863}
3010 | m_RootOrder: 0
3011 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
3012 | m_AnchorMin: {x: 0, y: 0}
3013 | m_AnchorMax: {x: 0, y: 0}
3014 | m_AnchoredPosition: {x: 0, y: 0}
3015 | m_SizeDelta: {x: 20, y: 20}
3016 | m_Pivot: {x: 0.5, y: 0.5}
3017 | --- !u!114 &2064208032
3018 | MonoBehaviour:
3019 | m_ObjectHideFlags: 0
3020 | m_CorrespondingSourceObject: {fileID: 0}
3021 | m_PrefabInstance: {fileID: 0}
3022 | m_PrefabAsset: {fileID: 0}
3023 | m_GameObject: {fileID: 2064208030}
3024 | m_Enabled: 1
3025 | m_EditorHideFlags: 0
3026 | m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
3027 | m_Name:
3028 | m_EditorClassIdentifier:
3029 | m_Material: {fileID: 0}
3030 | m_Color: {r: 1, g: 1, b: 1, a: 1}
3031 | m_RaycastTarget: 1
3032 | m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
3033 | m_Maskable: 1
3034 | m_OnCullStateChanged:
3035 | m_PersistentCalls:
3036 | m_Calls: []
3037 | m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
3038 | m_Type: 1
3039 | m_PreserveAspect: 0
3040 | m_FillCenter: 1
3041 | m_FillMethod: 4
3042 | m_FillAmount: 1
3043 | m_FillClockwise: 1
3044 | m_FillOrigin: 0
3045 | m_UseSpriteMesh: 0
3046 | m_PixelsPerUnitMultiplier: 1
3047 | --- !u!222 &2064208033
3048 | CanvasRenderer:
3049 | m_ObjectHideFlags: 0
3050 | m_CorrespondingSourceObject: {fileID: 0}
3051 | m_PrefabInstance: {fileID: 0}
3052 | m_PrefabAsset: {fileID: 0}
3053 | m_GameObject: {fileID: 2064208030}
3054 | m_CullTransparentMesh: 0
3055 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Example/List Example.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ccdea83d270df4b078963a0243e41ac0
3 | timeCreated: 1426587410
4 | licenseType: Free
5 | DefaultImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Example/Scripts.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ae9c5d5683b86234f95ce1c9210f513c
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Example/Scripts/ServerListBrowser.cs:
--------------------------------------------------------------------------------
1 | // This file is part of the NodeListServer Example package.
2 | using System;
3 | using System.Collections;
4 | using System.Collections.Generic;
5 | using UnityEngine;
6 | using UnityEngine.UI;
7 |
8 | namespace NodeListServer
9 | {
10 | public class ServerListBrowser : MonoBehaviour
11 | {
12 | [Header("API Configuration")]
13 | [Tooltip("The URL to connect to the NodeListServer. For example, http://127.0.0.1:8889. Omit the last slash.")]
14 | [SerializeField] private string serverEndpoint = "http://127.0.0.1:8889";
15 | [Tooltip("The key required to talk to the server. It must match. Default is NodeListServerDefaultKey.")]
16 | [SerializeField] private string communicationKey = "NodeListServerDefaultKey";
17 |
18 | [Header("Refresh Settings")]
19 | [Tooltip("Refresh the server list on startup?")]
20 | [SerializeField] private bool refreshOnStart = true;
21 | [Tooltip("Should we automatically refresh the server list? Set to 0 to disable. Default is 10 seconds.")]
22 | [SerializeField] private int refreshInterval = 10;
23 |
24 | [Header("Cosmetics")]
25 | public GameObject popup;
26 | public Text mainStatusText;
27 | public Text popupStatusText;
28 | public GameObject ListElementPrefab;
29 | public GameObject ListElementContainer;
30 |
31 | public Button refreshButton;
32 | public Button supportButton;
33 |
34 | // Stop editing from this point onwards //
35 | public Action OnJoinButtonClicked;
36 |
37 | private bool IsBusy => nlsCommunicator.Busy;
38 |
39 | private NLSCommunicator nlsCommunicator = new NLSCommunicator();
40 | private List listServerListEntries = new List();
41 |
42 | private void Awake()
43 | {
44 | // Sanity Checks
45 | if (string.IsNullOrEmpty(communicationKey))
46 | {
47 | Debug.LogError("The communication Key cannot be null or empty!");
48 | enabled = false;
49 | return;
50 | }
51 |
52 | nlsCommunicator.EndPoint = serverEndpoint;
53 | nlsCommunicator.OnServerListRetrieved += OnServerListRetrieved;
54 |
55 | if (mainStatusText != null)
56 | {
57 | mainStatusText.text = "Initializing";
58 | }
59 |
60 | if (refreshButton)
61 | refreshButton.onClick.AddListener(RefreshList);
62 |
63 | // For experts only
64 | if (supportButton)
65 | supportButton.onClick.AddListener(SupportButton);
66 | }
67 |
68 | private void Start()
69 | {
70 | if (refreshOnStart)
71 | {
72 | RefreshList();
73 | }
74 |
75 | if (refreshInterval > 0)
76 | {
77 | InvokeRepeating(nameof(RefreshList), Time.realtimeSinceStartup + refreshInterval, refreshInterval);
78 | }
79 | }
80 |
81 | private void LateUpdate()
82 | {
83 | if (popup != null)
84 | {
85 | popup.SetActive(IsBusy);
86 | }
87 | }
88 |
89 | // Apparently invoke repeating doesn't work for IEnumerators
90 | // So I guess the workaround is to make a bootstrapper.
91 | private void RefreshList()
92 | {
93 | // Don't refresh again if we're busy.
94 | if (IsBusy) return;
95 |
96 | StartCoroutine(nlsCommunicator.RetrieveList(communicationKey));
97 | }
98 |
99 | // -- UI Elements -- //
100 | // instantiate/remove enough prefabs to match amount (thanks vis2k)
101 | public void BalancePrefabs(int amount, Transform parent)
102 | {
103 | // instantiate until amount
104 | for (int i = parent.childCount; i < amount; ++i)
105 | {
106 | if (ListElementPrefab != null) Instantiate(ListElementPrefab, parent, false);
107 | }
108 |
109 | // delete everything that's too much
110 | // (backwards loop because Destroy changes childCount)
111 | for (int i = parent.childCount - 1; i >= amount; --i)
112 | {
113 | Destroy(parent.GetChild(i).gameObject);
114 | }
115 | }
116 |
117 | private void UpdateListElements()
118 | {
119 | for (int i = 0; i < listServerListEntries.Count; i++)
120 | {
121 | if (i >= ListElementContainer.transform.childCount || ListElementContainer.transform.GetChild(i) == null)
122 | {
123 | print("That's null");
124 | continue;
125 | }
126 |
127 | ListEntryController entryController = ListElementContainer.transform.GetChild(i).GetComponent();
128 |
129 | string modifiedAddress;
130 | int port;
131 |
132 | if (listServerListEntries[i].ip.StartsWith("::ffff:"))
133 | {
134 | modifiedAddress = listServerListEntries[i].ip.Replace("::ffff:", string.Empty);
135 | }
136 | else
137 | {
138 | modifiedAddress = listServerListEntries[i].ip;
139 | }
140 |
141 | port = listServerListEntries[i].port;
142 | entryController.titleText.text = listServerListEntries[i].name;
143 | entryController.addressText.text = modifiedAddress;
144 | entryController.playersText.text = $"{listServerListEntries[i].players} {(listServerListEntries[i].capacity > 0 ? $"/ {listServerListEntries[i].capacity}" : string.Empty)}";
145 | // It is up to you to figure out how to do the latency text.
146 | entryController.latencyText.text = "-";
147 |
148 | if(entryController.joinButton != null)
149 | {
150 | // Remove any existing listening callbacks.
151 | entryController.joinButton.onClick.RemoveAllListeners();
152 |
153 | // Add a new listener.
154 | entryController.joinButton.onClick.AddListener(() => OnJoinButtonClick(modifiedAddress, port));
155 | }
156 | }
157 |
158 | // Done here.
159 | }
160 |
161 | private void SupportButton()
162 | {
163 | Application.OpenURL("http://github.com/SoftwareGuy/NodeListServer-Example");
164 | }
165 |
166 | #region Callbacks for events from NLS Communicator
167 | private void OnServerListRetrieved(ServerListResponse response)
168 | {
169 | listServerListEntries = response.servers;
170 |
171 | // For debug purposes only.
172 | // print(listServerListEntries.Count);
173 |
174 | if (ListElementContainer != null)
175 | {
176 | BalancePrefabs(listServerListEntries.Count, ListElementContainer.transform);
177 | UpdateListElements();
178 | }
179 | }
180 | #endregion
181 |
182 | private void OnJoinButtonClick(string ip, int port)
183 | {
184 | print($"You clicked join on a server and we'd probably be connecting to a server at {ip} on port {port}.");
185 |
186 | OnJoinButtonClicked?.Invoke(ip, port);
187 | }
188 | }
189 | }
190 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Example/Scripts/ServerListBrowser.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 48b85de715ff2bd42b01785386816646
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Example/UI.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 04706cbb25d95f4469c37ec453d65dc9
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Example/UI/ListEntry.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1 &1009505356919436
4 | GameObject:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | serializedVersion: 6
10 | m_Component:
11 | - component: {fileID: 224428085307354514}
12 | - component: {fileID: 222534217462828066}
13 | - component: {fileID: 114077992825021022}
14 | m_Layer: 5
15 | m_Name: TextPlayers
16 | m_TagString: Untagged
17 | m_Icon: {fileID: 0}
18 | m_NavMeshLayer: 0
19 | m_StaticEditorFlags: 0
20 | m_IsActive: 1
21 | --- !u!224 &224428085307354514
22 | RectTransform:
23 | m_ObjectHideFlags: 0
24 | m_CorrespondingSourceObject: {fileID: 0}
25 | m_PrefabInstance: {fileID: 0}
26 | m_PrefabAsset: {fileID: 0}
27 | m_GameObject: {fileID: 1009505356919436}
28 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
29 | m_LocalPosition: {x: 0, y: 0, z: 0}
30 | m_LocalScale: {x: 1, y: 1, z: 1}
31 | m_Children: []
32 | m_Father: {fileID: 224813910264502154}
33 | m_RootOrder: 1
34 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
35 | m_AnchorMin: {x: 0, y: 0}
36 | m_AnchorMax: {x: 0, y: 0}
37 | m_AnchoredPosition: {x: 0, y: 0}
38 | m_SizeDelta: {x: 60, y: 16}
39 | m_Pivot: {x: 0.5, y: 0.5}
40 | --- !u!222 &222534217462828066
41 | CanvasRenderer:
42 | m_ObjectHideFlags: 0
43 | m_CorrespondingSourceObject: {fileID: 0}
44 | m_PrefabInstance: {fileID: 0}
45 | m_PrefabAsset: {fileID: 0}
46 | m_GameObject: {fileID: 1009505356919436}
47 | m_CullTransparentMesh: 0
48 | --- !u!114 &114077992825021022
49 | MonoBehaviour:
50 | m_ObjectHideFlags: 0
51 | m_CorrespondingSourceObject: {fileID: 0}
52 | m_PrefabInstance: {fileID: 0}
53 | m_PrefabAsset: {fileID: 0}
54 | m_GameObject: {fileID: 1009505356919436}
55 | m_Enabled: 1
56 | m_EditorHideFlags: 0
57 | m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
58 | m_Name:
59 | m_EditorClassIdentifier:
60 | m_Material: {fileID: 0}
61 | m_Color: {r: 1, g: 1, b: 1, a: 1}
62 | m_RaycastTarget: 1
63 | m_OnCullStateChanged:
64 | m_PersistentCalls:
65 | m_Calls: []
66 | m_FontData:
67 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
68 | m_FontSize: 12
69 | m_FontStyle: 0
70 | m_BestFit: 0
71 | m_MinSize: 1
72 | m_MaxSize: 40
73 | m_Alignment: 5
74 | m_AlignByGeometry: 0
75 | m_RichText: 1
76 | m_HorizontalOverflow: 0
77 | m_VerticalOverflow: 0
78 | m_LineSpacing: 1
79 | m_Text: '[Players]'
80 | --- !u!1 &1165846264137056
81 | GameObject:
82 | m_ObjectHideFlags: 0
83 | m_CorrespondingSourceObject: {fileID: 0}
84 | m_PrefabInstance: {fileID: 0}
85 | m_PrefabAsset: {fileID: 0}
86 | serializedVersion: 6
87 | m_Component:
88 | - component: {fileID: 224595697833923954}
89 | - component: {fileID: 222565095748274674}
90 | - component: {fileID: 114410999938197916}
91 | m_Layer: 5
92 | m_Name: TextLatency
93 | m_TagString: Untagged
94 | m_Icon: {fileID: 0}
95 | m_NavMeshLayer: 0
96 | m_StaticEditorFlags: 0
97 | m_IsActive: 1
98 | --- !u!224 &224595697833923954
99 | RectTransform:
100 | m_ObjectHideFlags: 0
101 | m_CorrespondingSourceObject: {fileID: 0}
102 | m_PrefabInstance: {fileID: 0}
103 | m_PrefabAsset: {fileID: 0}
104 | m_GameObject: {fileID: 1165846264137056}
105 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
106 | m_LocalPosition: {x: 0, y: 0, z: 0}
107 | m_LocalScale: {x: 1, y: 1, z: 1}
108 | m_Children: []
109 | m_Father: {fileID: 224813910264502154}
110 | m_RootOrder: 2
111 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
112 | m_AnchorMin: {x: 0, y: 0}
113 | m_AnchorMax: {x: 0, y: 0}
114 | m_AnchoredPosition: {x: 0, y: 0}
115 | m_SizeDelta: {x: 60, y: 16}
116 | m_Pivot: {x: 0.5, y: 0.5}
117 | --- !u!222 &222565095748274674
118 | CanvasRenderer:
119 | m_ObjectHideFlags: 0
120 | m_CorrespondingSourceObject: {fileID: 0}
121 | m_PrefabInstance: {fileID: 0}
122 | m_PrefabAsset: {fileID: 0}
123 | m_GameObject: {fileID: 1165846264137056}
124 | m_CullTransparentMesh: 0
125 | --- !u!114 &114410999938197916
126 | MonoBehaviour:
127 | m_ObjectHideFlags: 0
128 | m_CorrespondingSourceObject: {fileID: 0}
129 | m_PrefabInstance: {fileID: 0}
130 | m_PrefabAsset: {fileID: 0}
131 | m_GameObject: {fileID: 1165846264137056}
132 | m_Enabled: 1
133 | m_EditorHideFlags: 0
134 | m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
135 | m_Name:
136 | m_EditorClassIdentifier:
137 | m_Material: {fileID: 0}
138 | m_Color: {r: 1, g: 1, b: 1, a: 1}
139 | m_RaycastTarget: 1
140 | m_OnCullStateChanged:
141 | m_PersistentCalls:
142 | m_Calls: []
143 | m_FontData:
144 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
145 | m_FontSize: 12
146 | m_FontStyle: 0
147 | m_BestFit: 0
148 | m_MinSize: 1
149 | m_MaxSize: 40
150 | m_Alignment: 5
151 | m_AlignByGeometry: 0
152 | m_RichText: 1
153 | m_HorizontalOverflow: 0
154 | m_VerticalOverflow: 0
155 | m_LineSpacing: 1
156 | m_Text: '[Latency]'
157 | --- !u!1 &1259177336467004
158 | GameObject:
159 | m_ObjectHideFlags: 0
160 | m_CorrespondingSourceObject: {fileID: 0}
161 | m_PrefabInstance: {fileID: 0}
162 | m_PrefabAsset: {fileID: 0}
163 | serializedVersion: 6
164 | m_Component:
165 | - component: {fileID: 224813910264502154}
166 | - component: {fileID: 222443701544564472}
167 | - component: {fileID: 114424214131292870}
168 | - component: {fileID: 114617214395066132}
169 | - component: {fileID: 114618400118094574}
170 | - component: {fileID: 114307996561067868}
171 | m_Layer: 5
172 | m_Name: ListEntry
173 | m_TagString: Untagged
174 | m_Icon: {fileID: 0}
175 | m_NavMeshLayer: 0
176 | m_StaticEditorFlags: 0
177 | m_IsActive: 1
178 | --- !u!224 &224813910264502154
179 | RectTransform:
180 | m_ObjectHideFlags: 0
181 | m_CorrespondingSourceObject: {fileID: 0}
182 | m_PrefabInstance: {fileID: 0}
183 | m_PrefabAsset: {fileID: 0}
184 | m_GameObject: {fileID: 1259177336467004}
185 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
186 | m_LocalPosition: {x: 0, y: 0, z: 0}
187 | m_LocalScale: {x: 1, y: 1, z: 1}
188 | m_Children:
189 | - {fileID: 224596263305646570}
190 | - {fileID: 224428085307354514}
191 | - {fileID: 224595697833923954}
192 | - {fileID: 2588874080615256095}
193 | - {fileID: 224530003443674914}
194 | m_Father: {fileID: 0}
195 | m_RootOrder: 0
196 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
197 | m_AnchorMin: {x: 0, y: 0}
198 | m_AnchorMax: {x: 0, y: 0}
199 | m_AnchoredPosition: {x: 0, y: 0}
200 | m_SizeDelta: {x: 0, y: 0}
201 | m_Pivot: {x: 0.5, y: 0.5}
202 | --- !u!222 &222443701544564472
203 | CanvasRenderer:
204 | m_ObjectHideFlags: 0
205 | m_CorrespondingSourceObject: {fileID: 0}
206 | m_PrefabInstance: {fileID: 0}
207 | m_PrefabAsset: {fileID: 0}
208 | m_GameObject: {fileID: 1259177336467004}
209 | m_CullTransparentMesh: 0
210 | --- !u!114 &114424214131292870
211 | MonoBehaviour:
212 | m_ObjectHideFlags: 0
213 | m_CorrespondingSourceObject: {fileID: 0}
214 | m_PrefabInstance: {fileID: 0}
215 | m_PrefabAsset: {fileID: 0}
216 | m_GameObject: {fileID: 1259177336467004}
217 | m_Enabled: 1
218 | m_EditorHideFlags: 0
219 | m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
220 | m_Name:
221 | m_EditorClassIdentifier:
222 | m_Material: {fileID: 0}
223 | m_Color: {r: 0.2509804, g: 0.2509804, b: 0.2509804, a: 1}
224 | m_RaycastTarget: 1
225 | m_OnCullStateChanged:
226 | m_PersistentCalls:
227 | m_Calls: []
228 | m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
229 | m_Type: 1
230 | m_PreserveAspect: 0
231 | m_FillCenter: 1
232 | m_FillMethod: 4
233 | m_FillAmount: 1
234 | m_FillClockwise: 1
235 | m_FillOrigin: 0
236 | m_UseSpriteMesh: 0
237 | --- !u!114 &114617214395066132
238 | MonoBehaviour:
239 | m_ObjectHideFlags: 0
240 | m_CorrespondingSourceObject: {fileID: 0}
241 | m_PrefabInstance: {fileID: 0}
242 | m_PrefabAsset: {fileID: 0}
243 | m_GameObject: {fileID: 1259177336467004}
244 | m_Enabled: 1
245 | m_EditorHideFlags: 0
246 | m_Script: {fileID: 1741964061, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
247 | m_Name:
248 | m_EditorClassIdentifier:
249 | m_HorizontalFit: 0
250 | m_VerticalFit: 2
251 | --- !u!114 &114618400118094574
252 | MonoBehaviour:
253 | m_ObjectHideFlags: 0
254 | m_CorrespondingSourceObject: {fileID: 0}
255 | m_PrefabInstance: {fileID: 0}
256 | m_PrefabAsset: {fileID: 0}
257 | m_GameObject: {fileID: 1259177336467004}
258 | m_Enabled: 1
259 | m_EditorHideFlags: 0
260 | m_Script: {fileID: -405508275, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
261 | m_Name:
262 | m_EditorClassIdentifier:
263 | m_Padding:
264 | m_Left: 4
265 | m_Right: 2
266 | m_Top: 1
267 | m_Bottom: 1
268 | m_ChildAlignment: 0
269 | m_Spacing: 0
270 | m_ChildForceExpandWidth: 0
271 | m_ChildForceExpandHeight: 0
272 | m_ChildControlWidth: 0
273 | m_ChildControlHeight: 0
274 | --- !u!114 &114307996561067868
275 | MonoBehaviour:
276 | m_ObjectHideFlags: 0
277 | m_CorrespondingSourceObject: {fileID: 0}
278 | m_PrefabInstance: {fileID: 0}
279 | m_PrefabAsset: {fileID: 0}
280 | m_GameObject: {fileID: 1259177336467004}
281 | m_Enabled: 1
282 | m_EditorHideFlags: 0
283 | m_Script: {fileID: 11500000, guid: 16a803c8ef7969842b87112ee7dc24f4, type: 3}
284 | m_Name:
285 | m_EditorClassIdentifier:
286 | titleText: {fileID: 114105517410707240}
287 | playersText: {fileID: 114077992825021022}
288 | latencyText: {fileID: 114410999938197916}
289 | addressText: {fileID: 1711666012325280996}
290 | joinButton: {fileID: 114358377111651776}
291 | --- !u!1 &1368168976437814
292 | GameObject:
293 | m_ObjectHideFlags: 0
294 | m_CorrespondingSourceObject: {fileID: 0}
295 | m_PrefabInstance: {fileID: 0}
296 | m_PrefabAsset: {fileID: 0}
297 | serializedVersion: 6
298 | m_Component:
299 | - component: {fileID: 224596263305646570}
300 | - component: {fileID: 222703717971346548}
301 | - component: {fileID: 114105517410707240}
302 | m_Layer: 5
303 | m_Name: TextTitle
304 | m_TagString: Untagged
305 | m_Icon: {fileID: 0}
306 | m_NavMeshLayer: 0
307 | m_StaticEditorFlags: 0
308 | m_IsActive: 1
309 | --- !u!224 &224596263305646570
310 | RectTransform:
311 | m_ObjectHideFlags: 0
312 | m_CorrespondingSourceObject: {fileID: 0}
313 | m_PrefabInstance: {fileID: 0}
314 | m_PrefabAsset: {fileID: 0}
315 | m_GameObject: {fileID: 1368168976437814}
316 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
317 | m_LocalPosition: {x: 0, y: 0, z: 0}
318 | m_LocalScale: {x: 1, y: 1, z: 1}
319 | m_Children: []
320 | m_Father: {fileID: 224813910264502154}
321 | m_RootOrder: 0
322 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
323 | m_AnchorMin: {x: 0, y: 0}
324 | m_AnchorMax: {x: 0, y: 0}
325 | m_AnchoredPosition: {x: 0, y: 0}
326 | m_SizeDelta: {x: 218, y: 16}
327 | m_Pivot: {x: 0.5, y: 0.5}
328 | --- !u!222 &222703717971346548
329 | CanvasRenderer:
330 | m_ObjectHideFlags: 0
331 | m_CorrespondingSourceObject: {fileID: 0}
332 | m_PrefabInstance: {fileID: 0}
333 | m_PrefabAsset: {fileID: 0}
334 | m_GameObject: {fileID: 1368168976437814}
335 | m_CullTransparentMesh: 0
336 | --- !u!114 &114105517410707240
337 | MonoBehaviour:
338 | m_ObjectHideFlags: 0
339 | m_CorrespondingSourceObject: {fileID: 0}
340 | m_PrefabInstance: {fileID: 0}
341 | m_PrefabAsset: {fileID: 0}
342 | m_GameObject: {fileID: 1368168976437814}
343 | m_Enabled: 1
344 | m_EditorHideFlags: 0
345 | m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
346 | m_Name:
347 | m_EditorClassIdentifier:
348 | m_Material: {fileID: 0}
349 | m_Color: {r: 1, g: 1, b: 1, a: 1}
350 | m_RaycastTarget: 1
351 | m_OnCullStateChanged:
352 | m_PersistentCalls:
353 | m_Calls: []
354 | m_FontData:
355 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
356 | m_FontSize: 12
357 | m_FontStyle: 0
358 | m_BestFit: 0
359 | m_MinSize: 1
360 | m_MaxSize: 40
361 | m_Alignment: 3
362 | m_AlignByGeometry: 0
363 | m_RichText: 1
364 | m_HorizontalOverflow: 0
365 | m_VerticalOverflow: 0
366 | m_LineSpacing: 1
367 | m_Text: '[Title]'
368 | --- !u!1 &1462871638010074
369 | GameObject:
370 | m_ObjectHideFlags: 0
371 | m_CorrespondingSourceObject: {fileID: 0}
372 | m_PrefabInstance: {fileID: 0}
373 | m_PrefabAsset: {fileID: 0}
374 | serializedVersion: 6
375 | m_Component:
376 | - component: {fileID: 224530003443674914}
377 | - component: {fileID: 222322555260831376}
378 | - component: {fileID: 114653458098104780}
379 | - component: {fileID: 114358377111651776}
380 | m_Layer: 5
381 | m_Name: ButtonJoin
382 | m_TagString: Untagged
383 | m_Icon: {fileID: 0}
384 | m_NavMeshLayer: 0
385 | m_StaticEditorFlags: 0
386 | m_IsActive: 1
387 | --- !u!224 &224530003443674914
388 | RectTransform:
389 | m_ObjectHideFlags: 0
390 | m_CorrespondingSourceObject: {fileID: 0}
391 | m_PrefabInstance: {fileID: 0}
392 | m_PrefabAsset: {fileID: 0}
393 | m_GameObject: {fileID: 1462871638010074}
394 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
395 | m_LocalPosition: {x: 0, y: 0, z: 0}
396 | m_LocalScale: {x: 1, y: 1, z: 1}
397 | m_Children:
398 | - {fileID: 224615151935076648}
399 | m_Father: {fileID: 224813910264502154}
400 | m_RootOrder: 4
401 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
402 | m_AnchorMin: {x: 0, y: 0}
403 | m_AnchorMax: {x: 0, y: 0}
404 | m_AnchoredPosition: {x: 0, y: 0}
405 | m_SizeDelta: {x: 40, y: 18}
406 | m_Pivot: {x: 0.5, y: 0.5}
407 | --- !u!222 &222322555260831376
408 | CanvasRenderer:
409 | m_ObjectHideFlags: 0
410 | m_CorrespondingSourceObject: {fileID: 0}
411 | m_PrefabInstance: {fileID: 0}
412 | m_PrefabAsset: {fileID: 0}
413 | m_GameObject: {fileID: 1462871638010074}
414 | m_CullTransparentMesh: 0
415 | --- !u!114 &114653458098104780
416 | MonoBehaviour:
417 | m_ObjectHideFlags: 0
418 | m_CorrespondingSourceObject: {fileID: 0}
419 | m_PrefabInstance: {fileID: 0}
420 | m_PrefabAsset: {fileID: 0}
421 | m_GameObject: {fileID: 1462871638010074}
422 | m_Enabled: 1
423 | m_EditorHideFlags: 0
424 | m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3}
425 | m_Name:
426 | m_EditorClassIdentifier:
427 | m_Material: {fileID: 0}
428 | m_Color: {r: 1, g: 1, b: 1, a: 1}
429 | m_RaycastTarget: 1
430 | m_OnCullStateChanged:
431 | m_PersistentCalls:
432 | m_Calls: []
433 | m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
434 | m_Type: 1
435 | m_PreserveAspect: 0
436 | m_FillCenter: 1
437 | m_FillMethod: 4
438 | m_FillAmount: 1
439 | m_FillClockwise: 1
440 | m_FillOrigin: 0
441 | m_UseSpriteMesh: 0
442 | --- !u!114 &114358377111651776
443 | MonoBehaviour:
444 | m_ObjectHideFlags: 0
445 | m_CorrespondingSourceObject: {fileID: 0}
446 | m_PrefabInstance: {fileID: 0}
447 | m_PrefabAsset: {fileID: 0}
448 | m_GameObject: {fileID: 1462871638010074}
449 | m_Enabled: 1
450 | m_EditorHideFlags: 0
451 | m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3}
452 | m_Name:
453 | m_EditorClassIdentifier:
454 | m_Navigation:
455 | m_Mode: 3
456 | m_SelectOnUp: {fileID: 0}
457 | m_SelectOnDown: {fileID: 0}
458 | m_SelectOnLeft: {fileID: 0}
459 | m_SelectOnRight: {fileID: 0}
460 | m_Transition: 1
461 | m_Colors:
462 | m_NormalColor: {r: 0.32156864, g: 0.32156864, b: 0.32156864, a: 1}
463 | m_HighlightedColor: {r: 0.3529412, g: 0.3529412, b: 0.3529412, a: 1}
464 | m_PressedColor: {r: 0.3882353, g: 0.3882353, b: 0.3882353, a: 1}
465 | m_DisabledColor: {r: 0.3882353, g: 0.3882353, b: 0.3882353, a: 0.37254903}
466 | m_ColorMultiplier: 1
467 | m_FadeDuration: 0.1
468 | m_SpriteState:
469 | m_HighlightedSprite: {fileID: 0}
470 | m_PressedSprite: {fileID: 0}
471 | m_DisabledSprite: {fileID: 0}
472 | m_AnimationTriggers:
473 | m_NormalTrigger: Normal
474 | m_HighlightedTrigger: Highlighted
475 | m_PressedTrigger: Pressed
476 | m_DisabledTrigger: Disabled
477 | m_Interactable: 1
478 | m_TargetGraphic: {fileID: 114653458098104780}
479 | m_OnClick:
480 | m_PersistentCalls:
481 | m_Calls: []
482 | --- !u!1 &1575165076438694
483 | GameObject:
484 | m_ObjectHideFlags: 0
485 | m_CorrespondingSourceObject: {fileID: 0}
486 | m_PrefabInstance: {fileID: 0}
487 | m_PrefabAsset: {fileID: 0}
488 | serializedVersion: 6
489 | m_Component:
490 | - component: {fileID: 224615151935076648}
491 | - component: {fileID: 222903696298421472}
492 | - component: {fileID: 114447744505293664}
493 | m_Layer: 5
494 | m_Name: Text
495 | m_TagString: Untagged
496 | m_Icon: {fileID: 0}
497 | m_NavMeshLayer: 0
498 | m_StaticEditorFlags: 0
499 | m_IsActive: 1
500 | --- !u!224 &224615151935076648
501 | RectTransform:
502 | m_ObjectHideFlags: 0
503 | m_CorrespondingSourceObject: {fileID: 0}
504 | m_PrefabInstance: {fileID: 0}
505 | m_PrefabAsset: {fileID: 0}
506 | m_GameObject: {fileID: 1575165076438694}
507 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
508 | m_LocalPosition: {x: 0, y: 0, z: 0}
509 | m_LocalScale: {x: 1, y: 1, z: 1}
510 | m_Children: []
511 | m_Father: {fileID: 224530003443674914}
512 | m_RootOrder: 0
513 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
514 | m_AnchorMin: {x: 0, y: 0}
515 | m_AnchorMax: {x: 1, y: 1}
516 | m_AnchoredPosition: {x: 0, y: 0}
517 | m_SizeDelta: {x: 0, y: 0}
518 | m_Pivot: {x: 0.5, y: 0.5}
519 | --- !u!222 &222903696298421472
520 | CanvasRenderer:
521 | m_ObjectHideFlags: 0
522 | m_CorrespondingSourceObject: {fileID: 0}
523 | m_PrefabInstance: {fileID: 0}
524 | m_PrefabAsset: {fileID: 0}
525 | m_GameObject: {fileID: 1575165076438694}
526 | m_CullTransparentMesh: 0
527 | --- !u!114 &114447744505293664
528 | MonoBehaviour:
529 | m_ObjectHideFlags: 0
530 | m_CorrespondingSourceObject: {fileID: 0}
531 | m_PrefabInstance: {fileID: 0}
532 | m_PrefabAsset: {fileID: 0}
533 | m_GameObject: {fileID: 1575165076438694}
534 | m_Enabled: 1
535 | m_EditorHideFlags: 0
536 | m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3}
537 | m_Name:
538 | m_EditorClassIdentifier:
539 | m_Material: {fileID: 0}
540 | m_Color: {r: 1, g: 1, b: 1, a: 1}
541 | m_RaycastTarget: 1
542 | m_OnCullStateChanged:
543 | m_PersistentCalls:
544 | m_Calls: []
545 | m_FontData:
546 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
547 | m_FontSize: 12
548 | m_FontStyle: 0
549 | m_BestFit: 0
550 | m_MinSize: 1
551 | m_MaxSize: 40
552 | m_Alignment: 4
553 | m_AlignByGeometry: 0
554 | m_RichText: 1
555 | m_HorizontalOverflow: 0
556 | m_VerticalOverflow: 0
557 | m_LineSpacing: 1
558 | m_Text: Join
559 | --- !u!1 &2231260898927249423
560 | GameObject:
561 | m_ObjectHideFlags: 0
562 | m_CorrespondingSourceObject: {fileID: 0}
563 | m_PrefabInstance: {fileID: 0}
564 | m_PrefabAsset: {fileID: 0}
565 | serializedVersion: 6
566 | m_Component:
567 | - component: {fileID: 2588874080615256095}
568 | - component: {fileID: 2389080155505640677}
569 | - component: {fileID: 1711666012325280996}
570 | m_Layer: 5
571 | m_Name: TextAddress
572 | m_TagString: Untagged
573 | m_Icon: {fileID: 0}
574 | m_NavMeshLayer: 0
575 | m_StaticEditorFlags: 0
576 | m_IsActive: 1
577 | --- !u!224 &2588874080615256095
578 | RectTransform:
579 | m_ObjectHideFlags: 0
580 | m_CorrespondingSourceObject: {fileID: 0}
581 | m_PrefabInstance: {fileID: 0}
582 | m_PrefabAsset: {fileID: 0}
583 | m_GameObject: {fileID: 2231260898927249423}
584 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
585 | m_LocalPosition: {x: 0, y: 0, z: 0}
586 | m_LocalScale: {x: 1, y: 1, z: 1}
587 | m_Children: []
588 | m_Father: {fileID: 224813910264502154}
589 | m_RootOrder: 3
590 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
591 | m_AnchorMin: {x: 0, y: 0}
592 | m_AnchorMax: {x: 0, y: 0}
593 | m_AnchoredPosition: {x: 0, y: 0}
594 | m_SizeDelta: {x: 130, y: 16}
595 | m_Pivot: {x: 0.5, y: 0.5}
596 | --- !u!222 &2389080155505640677
597 | CanvasRenderer:
598 | m_ObjectHideFlags: 0
599 | m_CorrespondingSourceObject: {fileID: 0}
600 | m_PrefabInstance: {fileID: 0}
601 | m_PrefabAsset: {fileID: 0}
602 | m_GameObject: {fileID: 2231260898927249423}
603 | m_CullTransparentMesh: 0
604 | --- !u!114 &1711666012325280996
605 | MonoBehaviour:
606 | m_ObjectHideFlags: 0
607 | m_CorrespondingSourceObject: {fileID: 0}
608 | m_PrefabInstance: {fileID: 0}
609 | m_PrefabAsset: {fileID: 0}
610 | m_GameObject: {fileID: 2231260898927249423}
611 | m_Enabled: 1
612 | m_EditorHideFlags: 0
613 | m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
614 | m_Name:
615 | m_EditorClassIdentifier:
616 | m_Material: {fileID: 0}
617 | m_Color: {r: 1, g: 1, b: 1, a: 1}
618 | m_RaycastTarget: 1
619 | m_OnCullStateChanged:
620 | m_PersistentCalls:
621 | m_Calls: []
622 | m_FontData:
623 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
624 | m_FontSize: 12
625 | m_FontStyle: 0
626 | m_BestFit: 0
627 | m_MinSize: 1
628 | m_MaxSize: 40
629 | m_Alignment: 5
630 | m_AlignByGeometry: 0
631 | m_RichText: 1
632 | m_HorizontalOverflow: 0
633 | m_VerticalOverflow: 0
634 | m_LineSpacing: 1
635 | m_Text: '[Address]'
636 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Example/UI/ListEntry.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c6ca829569179c749a037f1b7d8631a0
3 | PrefabImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Example/UI/ListEntryController.cs:
--------------------------------------------------------------------------------
1 | // Attach to the prefab for easier component access by the UI Scripts.
2 | // Otherwise we would need slot.GetChild(0).GetComponentInChildren etc.
3 | using UnityEngine;
4 | using UnityEngine.UI;
5 |
6 | namespace NodeListServer
7 | {
8 | public class ListEntryController : MonoBehaviour
9 | {
10 | public Text titleText;
11 | public Text playersText;
12 | public Text latencyText;
13 | public Text addressText;
14 | public Button joinButton;
15 | }
16 | }
--------------------------------------------------------------------------------
/Assets/NodeLS Client/Example/UI/ListEntryController.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 16a803c8ef7969842b87112ee7dc24f4
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/NodeLS Client/NodeLS.Client.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "NodeLS.Client",
3 | "rootNamespace": "",
4 | "references": [
5 | "Mirror"
6 | ],
7 | "includePlatforms": [],
8 | "excludePlatforms": [],
9 | "allowUnsafeCode": false,
10 | "overrideReferences": false,
11 | "precompiledReferences": [],
12 | "autoReferenced": true,
13 | "defineConstraints": [],
14 | "versionDefines": [],
15 | "noEngineReferences": false
16 | }
--------------------------------------------------------------------------------
/Assets/NodeLS Client/NodeLS.Client.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 88679657d773aca42bdbdb039331a909
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2020 Matt Coburn
4 | This software uses dependencies (Mirror and other libraries)
5 | licensed under other different licenses.
6 |
7 | Permission is hereby granted, free of charge, to any person obtaining a copy
8 | of this software and associated documentation files (the "Software"), to deal
9 | in the Software without restriction, including without limitation the rights
10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11 | copies of the Software, and to permit persons to whom the Software is
12 | furnished to do so, subject to the following conditions:
13 |
14 | The above copyright notice and this permission notice shall be included in all
15 | copies or substantial portions of the Software.
16 |
17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23 | SOFTWARE.
24 |
25 |
--------------------------------------------------------------------------------
/Packages/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "com.unity.2d.sprite": "1.0.0",
4 | "com.unity.2d.tilemap": "1.0.0",
5 | "com.unity.ide.rider": "2.0.7",
6 | "com.unity.ide.visualstudio": "2.0.14",
7 | "com.unity.ide.vscode": "1.2.5",
8 | "com.unity.test-framework": "1.1.31",
9 | "com.unity.timeline": "1.4.8",
10 | "com.unity.ugui": "1.0.0",
11 | "com.unity.xr.legacyinputhelpers": "2.1.9",
12 | "com.unity.modules.ai": "1.0.0",
13 | "com.unity.modules.androidjni": "1.0.0",
14 | "com.unity.modules.animation": "1.0.0",
15 | "com.unity.modules.assetbundle": "1.0.0",
16 | "com.unity.modules.audio": "1.0.0",
17 | "com.unity.modules.cloth": "1.0.0",
18 | "com.unity.modules.director": "1.0.0",
19 | "com.unity.modules.imageconversion": "1.0.0",
20 | "com.unity.modules.imgui": "1.0.0",
21 | "com.unity.modules.jsonserialize": "1.0.0",
22 | "com.unity.modules.particlesystem": "1.0.0",
23 | "com.unity.modules.physics": "1.0.0",
24 | "com.unity.modules.physics2d": "1.0.0",
25 | "com.unity.modules.screencapture": "1.0.0",
26 | "com.unity.modules.terrain": "1.0.0",
27 | "com.unity.modules.terrainphysics": "1.0.0",
28 | "com.unity.modules.tilemap": "1.0.0",
29 | "com.unity.modules.ui": "1.0.0",
30 | "com.unity.modules.uielements": "1.0.0",
31 | "com.unity.modules.umbra": "1.0.0",
32 | "com.unity.modules.unityanalytics": "1.0.0",
33 | "com.unity.modules.unitywebrequest": "1.0.0",
34 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
35 | "com.unity.modules.unitywebrequestaudio": "1.0.0",
36 | "com.unity.modules.unitywebrequesttexture": "1.0.0",
37 | "com.unity.modules.unitywebrequestwww": "1.0.0",
38 | "com.unity.modules.vehicles": "1.0.0",
39 | "com.unity.modules.video": "1.0.0",
40 | "com.unity.modules.vr": "1.0.0",
41 | "com.unity.modules.wind": "1.0.0",
42 | "com.unity.modules.xr": "1.0.0"
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/Packages/packages-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "com.unity.2d.sprite": {
4 | "version": "1.0.0",
5 | "depth": 0,
6 | "source": "builtin",
7 | "dependencies": {}
8 | },
9 | "com.unity.2d.tilemap": {
10 | "version": "1.0.0",
11 | "depth": 0,
12 | "source": "builtin",
13 | "dependencies": {}
14 | },
15 | "com.unity.ext.nunit": {
16 | "version": "1.0.6",
17 | "depth": 1,
18 | "source": "registry",
19 | "dependencies": {},
20 | "url": "https://packages.unity.com"
21 | },
22 | "com.unity.ide.rider": {
23 | "version": "2.0.7",
24 | "depth": 0,
25 | "source": "registry",
26 | "dependencies": {
27 | "com.unity.test-framework": "1.1.1"
28 | },
29 | "url": "https://packages.unity.com"
30 | },
31 | "com.unity.ide.visualstudio": {
32 | "version": "2.0.14",
33 | "depth": 0,
34 | "source": "registry",
35 | "dependencies": {
36 | "com.unity.test-framework": "1.1.9"
37 | },
38 | "url": "https://packages.unity.com"
39 | },
40 | "com.unity.ide.vscode": {
41 | "version": "1.2.5",
42 | "depth": 0,
43 | "source": "registry",
44 | "dependencies": {},
45 | "url": "https://packages.unity.com"
46 | },
47 | "com.unity.test-framework": {
48 | "version": "1.1.31",
49 | "depth": 0,
50 | "source": "registry",
51 | "dependencies": {
52 | "com.unity.ext.nunit": "1.0.6",
53 | "com.unity.modules.imgui": "1.0.0",
54 | "com.unity.modules.jsonserialize": "1.0.0"
55 | },
56 | "url": "https://packages.unity.com"
57 | },
58 | "com.unity.timeline": {
59 | "version": "1.4.8",
60 | "depth": 0,
61 | "source": "registry",
62 | "dependencies": {
63 | "com.unity.modules.director": "1.0.0",
64 | "com.unity.modules.animation": "1.0.0",
65 | "com.unity.modules.audio": "1.0.0",
66 | "com.unity.modules.particlesystem": "1.0.0"
67 | },
68 | "url": "https://packages.unity.com"
69 | },
70 | "com.unity.ugui": {
71 | "version": "1.0.0",
72 | "depth": 0,
73 | "source": "builtin",
74 | "dependencies": {
75 | "com.unity.modules.ui": "1.0.0",
76 | "com.unity.modules.imgui": "1.0.0"
77 | }
78 | },
79 | "com.unity.xr.legacyinputhelpers": {
80 | "version": "2.1.9",
81 | "depth": 0,
82 | "source": "registry",
83 | "dependencies": {
84 | "com.unity.modules.vr": "1.0.0",
85 | "com.unity.modules.xr": "1.0.0"
86 | },
87 | "url": "https://packages.unity.com"
88 | },
89 | "com.unity.modules.ai": {
90 | "version": "1.0.0",
91 | "depth": 0,
92 | "source": "builtin",
93 | "dependencies": {}
94 | },
95 | "com.unity.modules.androidjni": {
96 | "version": "1.0.0",
97 | "depth": 0,
98 | "source": "builtin",
99 | "dependencies": {}
100 | },
101 | "com.unity.modules.animation": {
102 | "version": "1.0.0",
103 | "depth": 0,
104 | "source": "builtin",
105 | "dependencies": {}
106 | },
107 | "com.unity.modules.assetbundle": {
108 | "version": "1.0.0",
109 | "depth": 0,
110 | "source": "builtin",
111 | "dependencies": {}
112 | },
113 | "com.unity.modules.audio": {
114 | "version": "1.0.0",
115 | "depth": 0,
116 | "source": "builtin",
117 | "dependencies": {}
118 | },
119 | "com.unity.modules.cloth": {
120 | "version": "1.0.0",
121 | "depth": 0,
122 | "source": "builtin",
123 | "dependencies": {
124 | "com.unity.modules.physics": "1.0.0"
125 | }
126 | },
127 | "com.unity.modules.director": {
128 | "version": "1.0.0",
129 | "depth": 0,
130 | "source": "builtin",
131 | "dependencies": {
132 | "com.unity.modules.audio": "1.0.0",
133 | "com.unity.modules.animation": "1.0.0"
134 | }
135 | },
136 | "com.unity.modules.imageconversion": {
137 | "version": "1.0.0",
138 | "depth": 0,
139 | "source": "builtin",
140 | "dependencies": {}
141 | },
142 | "com.unity.modules.imgui": {
143 | "version": "1.0.0",
144 | "depth": 0,
145 | "source": "builtin",
146 | "dependencies": {}
147 | },
148 | "com.unity.modules.jsonserialize": {
149 | "version": "1.0.0",
150 | "depth": 0,
151 | "source": "builtin",
152 | "dependencies": {}
153 | },
154 | "com.unity.modules.particlesystem": {
155 | "version": "1.0.0",
156 | "depth": 0,
157 | "source": "builtin",
158 | "dependencies": {}
159 | },
160 | "com.unity.modules.physics": {
161 | "version": "1.0.0",
162 | "depth": 0,
163 | "source": "builtin",
164 | "dependencies": {}
165 | },
166 | "com.unity.modules.physics2d": {
167 | "version": "1.0.0",
168 | "depth": 0,
169 | "source": "builtin",
170 | "dependencies": {}
171 | },
172 | "com.unity.modules.screencapture": {
173 | "version": "1.0.0",
174 | "depth": 0,
175 | "source": "builtin",
176 | "dependencies": {
177 | "com.unity.modules.imageconversion": "1.0.0"
178 | }
179 | },
180 | "com.unity.modules.subsystems": {
181 | "version": "1.0.0",
182 | "depth": 1,
183 | "source": "builtin",
184 | "dependencies": {
185 | "com.unity.modules.jsonserialize": "1.0.0"
186 | }
187 | },
188 | "com.unity.modules.terrain": {
189 | "version": "1.0.0",
190 | "depth": 0,
191 | "source": "builtin",
192 | "dependencies": {}
193 | },
194 | "com.unity.modules.terrainphysics": {
195 | "version": "1.0.0",
196 | "depth": 0,
197 | "source": "builtin",
198 | "dependencies": {
199 | "com.unity.modules.physics": "1.0.0",
200 | "com.unity.modules.terrain": "1.0.0"
201 | }
202 | },
203 | "com.unity.modules.tilemap": {
204 | "version": "1.0.0",
205 | "depth": 0,
206 | "source": "builtin",
207 | "dependencies": {
208 | "com.unity.modules.physics2d": "1.0.0"
209 | }
210 | },
211 | "com.unity.modules.ui": {
212 | "version": "1.0.0",
213 | "depth": 0,
214 | "source": "builtin",
215 | "dependencies": {}
216 | },
217 | "com.unity.modules.uielements": {
218 | "version": "1.0.0",
219 | "depth": 0,
220 | "source": "builtin",
221 | "dependencies": {
222 | "com.unity.modules.ui": "1.0.0",
223 | "com.unity.modules.imgui": "1.0.0",
224 | "com.unity.modules.jsonserialize": "1.0.0",
225 | "com.unity.modules.uielementsnative": "1.0.0"
226 | }
227 | },
228 | "com.unity.modules.uielementsnative": {
229 | "version": "1.0.0",
230 | "depth": 1,
231 | "source": "builtin",
232 | "dependencies": {
233 | "com.unity.modules.ui": "1.0.0",
234 | "com.unity.modules.imgui": "1.0.0",
235 | "com.unity.modules.jsonserialize": "1.0.0"
236 | }
237 | },
238 | "com.unity.modules.umbra": {
239 | "version": "1.0.0",
240 | "depth": 0,
241 | "source": "builtin",
242 | "dependencies": {}
243 | },
244 | "com.unity.modules.unityanalytics": {
245 | "version": "1.0.0",
246 | "depth": 0,
247 | "source": "builtin",
248 | "dependencies": {
249 | "com.unity.modules.unitywebrequest": "1.0.0",
250 | "com.unity.modules.jsonserialize": "1.0.0"
251 | }
252 | },
253 | "com.unity.modules.unitywebrequest": {
254 | "version": "1.0.0",
255 | "depth": 0,
256 | "source": "builtin",
257 | "dependencies": {}
258 | },
259 | "com.unity.modules.unitywebrequestassetbundle": {
260 | "version": "1.0.0",
261 | "depth": 0,
262 | "source": "builtin",
263 | "dependencies": {
264 | "com.unity.modules.assetbundle": "1.0.0",
265 | "com.unity.modules.unitywebrequest": "1.0.0"
266 | }
267 | },
268 | "com.unity.modules.unitywebrequestaudio": {
269 | "version": "1.0.0",
270 | "depth": 0,
271 | "source": "builtin",
272 | "dependencies": {
273 | "com.unity.modules.unitywebrequest": "1.0.0",
274 | "com.unity.modules.audio": "1.0.0"
275 | }
276 | },
277 | "com.unity.modules.unitywebrequesttexture": {
278 | "version": "1.0.0",
279 | "depth": 0,
280 | "source": "builtin",
281 | "dependencies": {
282 | "com.unity.modules.unitywebrequest": "1.0.0",
283 | "com.unity.modules.imageconversion": "1.0.0"
284 | }
285 | },
286 | "com.unity.modules.unitywebrequestwww": {
287 | "version": "1.0.0",
288 | "depth": 0,
289 | "source": "builtin",
290 | "dependencies": {
291 | "com.unity.modules.unitywebrequest": "1.0.0",
292 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
293 | "com.unity.modules.unitywebrequestaudio": "1.0.0",
294 | "com.unity.modules.audio": "1.0.0",
295 | "com.unity.modules.assetbundle": "1.0.0",
296 | "com.unity.modules.imageconversion": "1.0.0"
297 | }
298 | },
299 | "com.unity.modules.vehicles": {
300 | "version": "1.0.0",
301 | "depth": 0,
302 | "source": "builtin",
303 | "dependencies": {
304 | "com.unity.modules.physics": "1.0.0"
305 | }
306 | },
307 | "com.unity.modules.video": {
308 | "version": "1.0.0",
309 | "depth": 0,
310 | "source": "builtin",
311 | "dependencies": {
312 | "com.unity.modules.audio": "1.0.0",
313 | "com.unity.modules.ui": "1.0.0",
314 | "com.unity.modules.unitywebrequest": "1.0.0"
315 | }
316 | },
317 | "com.unity.modules.vr": {
318 | "version": "1.0.0",
319 | "depth": 0,
320 | "source": "builtin",
321 | "dependencies": {
322 | "com.unity.modules.jsonserialize": "1.0.0",
323 | "com.unity.modules.physics": "1.0.0",
324 | "com.unity.modules.xr": "1.0.0"
325 | }
326 | },
327 | "com.unity.modules.wind": {
328 | "version": "1.0.0",
329 | "depth": 0,
330 | "source": "builtin",
331 | "dependencies": {}
332 | },
333 | "com.unity.modules.xr": {
334 | "version": "1.0.0",
335 | "depth": 0,
336 | "source": "builtin",
337 | "dependencies": {
338 | "com.unity.modules.physics": "1.0.0",
339 | "com.unity.modules.jsonserialize": "1.0.0",
340 | "com.unity.modules.subsystems": "1.0.0"
341 | }
342 | }
343 | }
344 | }
345 |
--------------------------------------------------------------------------------
/ProjectSettings/AudioManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!11 &1
4 | AudioManager:
5 | m_ObjectHideFlags: 0
6 | m_Volume: 1
7 | Rolloff Scale: 1
8 | Doppler Factor: 1
9 | Default Speaker Mode: 2
10 | m_SampleRate: 0
11 | m_DSPBufferSize: 1024
12 | m_VirtualVoiceCount: 512
13 | m_RealVoiceCount: 32
14 | m_SpatializerPlugin:
15 | m_AmbisonicDecoderPlugin:
16 | m_DisableAudio: 0
17 | m_VirtualizeEffects: 1
18 |
--------------------------------------------------------------------------------
/ProjectSettings/ClusterInputManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!236 &1
4 | ClusterInputManager:
5 | m_ObjectHideFlags: 0
6 | m_Inputs: []
7 |
--------------------------------------------------------------------------------
/ProjectSettings/DynamicsManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!55 &1
4 | PhysicsManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 8
7 | m_Gravity: {x: 0, y: -9.81, z: 0}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_BounceThreshold: 2
10 | m_SleepThreshold: 0.005
11 | m_DefaultContactOffset: 0.01
12 | m_DefaultSolverIterations: 6
13 | m_DefaultSolverVelocityIterations: 1
14 | m_QueriesHitBackfaces: 0
15 | m_QueriesHitTriggers: 1
16 | m_EnableAdaptiveForce: 0
17 | m_ClothInterCollisionDistance: 0
18 | m_ClothInterCollisionStiffness: 0
19 | m_ContactsGeneration: 1
20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
21 | m_AutoSimulation: 1
22 | m_AutoSyncTransforms: 0
23 | m_ReuseCollisionCallbacks: 1
24 | m_ClothInterCollisionSettingsToggle: 0
25 | m_ContactPairsMode: 0
26 | m_BroadphaseType: 0
27 | m_WorldBounds:
28 | m_Center: {x: 0, y: 0, z: 0}
29 | m_Extent: {x: 250, y: 250, z: 250}
30 | m_WorldSubdivisions: 8
31 |
--------------------------------------------------------------------------------
/ProjectSettings/EditorBuildSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1045 &1
4 | EditorBuildSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_Scenes:
8 | - enabled: 1
9 | path: Assets/NodeLS Client/Example/List Example.unity
10 | guid: ccdea83d270df4b078963a0243e41ac0
11 | m_configObjects: {}
12 |
--------------------------------------------------------------------------------
/ProjectSettings/EditorSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!159 &1
4 | EditorSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 9
7 | m_ExternalVersionControlSupport: Visible Meta Files
8 | m_SerializationMode: 2
9 | m_LineEndingsForNewScripts: 2
10 | m_DefaultBehaviorMode: 0
11 | m_PrefabRegularEnvironment: {fileID: 0}
12 | m_PrefabUIEnvironment: {fileID: 0}
13 | m_SpritePackerMode: 0
14 | m_SpritePackerPaddingPower: 1
15 | m_EtcTextureCompressorBehavior: 1
16 | m_EtcTextureFastCompressor: 1
17 | m_EtcTextureNormalCompressor: 2
18 | m_EtcTextureBestCompressor: 4
19 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmref
20 | m_ProjectGenerationRootNamespace:
21 | m_CollabEditorSettings:
22 | inProgressEnabled: 1
23 | m_EnableTextureStreamingInEditMode: 1
24 | m_EnableTextureStreamingInPlayMode: 1
25 | m_AsyncShaderCompilation: 1
26 | m_EnterPlayModeOptionsEnabled: 0
27 | m_EnterPlayModeOptions: 3
28 | m_ShowLightmapResolutionOverlay: 1
29 | m_UseLegacyProbeSampleCount: 1
30 | m_AssetPipelineMode: 1
31 | m_CacheServerMode: 0
32 | m_CacheServerEndpoint:
33 | m_CacheServerNamespacePrefix: default
34 | m_CacheServerEnableDownload: 1
35 | m_CacheServerEnableUpload: 1
36 |
--------------------------------------------------------------------------------
/ProjectSettings/GraphicsSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!30 &1
4 | GraphicsSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 12
7 | m_Deferred:
8 | m_Mode: 1
9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
10 | m_DeferredReflections:
11 | m_Mode: 1
12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
13 | m_ScreenSpaceShadows:
14 | m_Mode: 1
15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
16 | m_LegacyDeferred:
17 | m_Mode: 1
18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
19 | m_DepthNormals:
20 | m_Mode: 1
21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
22 | m_MotionVectors:
23 | m_Mode: 1
24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
25 | m_LightHalo:
26 | m_Mode: 1
27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
28 | m_LensFlare:
29 | m_Mode: 1
30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
31 | m_AlwaysIncludedShaders:
32 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
33 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
34 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
35 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
36 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
37 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
38 | - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0}
39 | - {fileID: 16000, guid: 0000000000000000f000000000000000, type: 0}
40 | - {fileID: 17000, guid: 0000000000000000f000000000000000, type: 0}
41 | m_PreloadedShaders: []
42 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000,
43 | type: 0}
44 | m_CustomRenderPipeline: {fileID: 0}
45 | m_TransparencySortMode: 0
46 | m_TransparencySortAxis: {x: 0, y: 0, z: 1}
47 | m_DefaultRenderingPath: 1
48 | m_DefaultMobileRenderingPath: 1
49 | m_TierSettings: []
50 | m_LightmapStripping: 0
51 | m_FogStripping: 0
52 | m_InstancingStripping: 0
53 | m_LightmapKeepPlain: 1
54 | m_LightmapKeepDirCombined: 1
55 | m_LightmapKeepDynamicPlain: 1
56 | m_LightmapKeepDynamicDirCombined: 1
57 | m_LightmapKeepShadowMask: 1
58 | m_LightmapKeepSubtractive: 1
59 | m_FogKeepLinear: 1
60 | m_FogKeepExp: 1
61 | m_FogKeepExp2: 1
62 | m_AlbedoSwatchInfos: []
63 | m_LightsUseLinearIntensity: 0
64 | m_LightsUseColorTemperature: 0
65 | m_LogWhenShaderIsCompiled: 0
66 |
--------------------------------------------------------------------------------
/ProjectSettings/InputManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!13 &1
4 | InputManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_Axes:
8 | - serializedVersion: 3
9 | m_Name: Horizontal
10 | descriptiveName:
11 | descriptiveNegativeName:
12 | negativeButton: left
13 | positiveButton: right
14 | altNegativeButton: a
15 | altPositiveButton: d
16 | gravity: 3
17 | dead: 0.001
18 | sensitivity: 3
19 | snap: 1
20 | invert: 0
21 | type: 0
22 | axis: 0
23 | joyNum: 0
24 | - serializedVersion: 3
25 | m_Name: Vertical
26 | descriptiveName:
27 | descriptiveNegativeName:
28 | negativeButton: down
29 | positiveButton: up
30 | altNegativeButton: s
31 | altPositiveButton: w
32 | gravity: 3
33 | dead: 0.001
34 | sensitivity: 3
35 | snap: 1
36 | invert: 0
37 | type: 0
38 | axis: 0
39 | joyNum: 0
40 | - serializedVersion: 3
41 | m_Name: Fire1
42 | descriptiveName:
43 | descriptiveNegativeName:
44 | negativeButton:
45 | positiveButton: left ctrl
46 | altNegativeButton:
47 | altPositiveButton: mouse 0
48 | gravity: 1000
49 | dead: 0.001
50 | sensitivity: 1000
51 | snap: 0
52 | invert: 0
53 | type: 0
54 | axis: 0
55 | joyNum: 0
56 | - serializedVersion: 3
57 | m_Name: Fire2
58 | descriptiveName:
59 | descriptiveNegativeName:
60 | negativeButton:
61 | positiveButton: left alt
62 | altNegativeButton:
63 | altPositiveButton: mouse 1
64 | gravity: 1000
65 | dead: 0.001
66 | sensitivity: 1000
67 | snap: 0
68 | invert: 0
69 | type: 0
70 | axis: 0
71 | joyNum: 0
72 | - serializedVersion: 3
73 | m_Name: Fire3
74 | descriptiveName:
75 | descriptiveNegativeName:
76 | negativeButton:
77 | positiveButton: left shift
78 | altNegativeButton:
79 | altPositiveButton: mouse 2
80 | gravity: 1000
81 | dead: 0.001
82 | sensitivity: 1000
83 | snap: 0
84 | invert: 0
85 | type: 0
86 | axis: 0
87 | joyNum: 0
88 | - serializedVersion: 3
89 | m_Name: Jump
90 | descriptiveName:
91 | descriptiveNegativeName:
92 | negativeButton:
93 | positiveButton: space
94 | altNegativeButton:
95 | altPositiveButton:
96 | gravity: 1000
97 | dead: 0.001
98 | sensitivity: 1000
99 | snap: 0
100 | invert: 0
101 | type: 0
102 | axis: 0
103 | joyNum: 0
104 | - serializedVersion: 3
105 | m_Name: Mouse X
106 | descriptiveName:
107 | descriptiveNegativeName:
108 | negativeButton:
109 | positiveButton:
110 | altNegativeButton:
111 | altPositiveButton:
112 | gravity: 0
113 | dead: 0
114 | sensitivity: 0.1
115 | snap: 0
116 | invert: 0
117 | type: 1
118 | axis: 0
119 | joyNum: 0
120 | - serializedVersion: 3
121 | m_Name: Mouse Y
122 | descriptiveName:
123 | descriptiveNegativeName:
124 | negativeButton:
125 | positiveButton:
126 | altNegativeButton:
127 | altPositiveButton:
128 | gravity: 0
129 | dead: 0
130 | sensitivity: 0.1
131 | snap: 0
132 | invert: 0
133 | type: 1
134 | axis: 1
135 | joyNum: 0
136 | - serializedVersion: 3
137 | m_Name: Mouse ScrollWheel
138 | descriptiveName:
139 | descriptiveNegativeName:
140 | negativeButton:
141 | positiveButton:
142 | altNegativeButton:
143 | altPositiveButton:
144 | gravity: 0
145 | dead: 0
146 | sensitivity: 0.1
147 | snap: 0
148 | invert: 0
149 | type: 1
150 | axis: 2
151 | joyNum: 0
152 | - serializedVersion: 3
153 | m_Name: Horizontal
154 | descriptiveName:
155 | descriptiveNegativeName:
156 | negativeButton:
157 | positiveButton:
158 | altNegativeButton:
159 | altPositiveButton:
160 | gravity: 0
161 | dead: 0.19
162 | sensitivity: 1
163 | snap: 0
164 | invert: 0
165 | type: 2
166 | axis: 0
167 | joyNum: 0
168 | - serializedVersion: 3
169 | m_Name: Vertical
170 | descriptiveName:
171 | descriptiveNegativeName:
172 | negativeButton:
173 | positiveButton:
174 | altNegativeButton:
175 | altPositiveButton:
176 | gravity: 0
177 | dead: 0.19
178 | sensitivity: 1
179 | snap: 0
180 | invert: 1
181 | type: 2
182 | axis: 1
183 | joyNum: 0
184 | - serializedVersion: 3
185 | m_Name: Fire1
186 | descriptiveName:
187 | descriptiveNegativeName:
188 | negativeButton:
189 | positiveButton: joystick button 0
190 | altNegativeButton:
191 | altPositiveButton:
192 | gravity: 1000
193 | dead: 0.001
194 | sensitivity: 1000
195 | snap: 0
196 | invert: 0
197 | type: 0
198 | axis: 0
199 | joyNum: 0
200 | - serializedVersion: 3
201 | m_Name: Fire2
202 | descriptiveName:
203 | descriptiveNegativeName:
204 | negativeButton:
205 | positiveButton: joystick button 1
206 | altNegativeButton:
207 | altPositiveButton:
208 | gravity: 1000
209 | dead: 0.001
210 | sensitivity: 1000
211 | snap: 0
212 | invert: 0
213 | type: 0
214 | axis: 0
215 | joyNum: 0
216 | - serializedVersion: 3
217 | m_Name: Fire3
218 | descriptiveName:
219 | descriptiveNegativeName:
220 | negativeButton:
221 | positiveButton: joystick button 2
222 | altNegativeButton:
223 | altPositiveButton:
224 | gravity: 1000
225 | dead: 0.001
226 | sensitivity: 1000
227 | snap: 0
228 | invert: 0
229 | type: 0
230 | axis: 0
231 | joyNum: 0
232 | - serializedVersion: 3
233 | m_Name: Jump
234 | descriptiveName:
235 | descriptiveNegativeName:
236 | negativeButton:
237 | positiveButton: joystick button 3
238 | altNegativeButton:
239 | altPositiveButton:
240 | gravity: 1000
241 | dead: 0.001
242 | sensitivity: 1000
243 | snap: 0
244 | invert: 0
245 | type: 0
246 | axis: 0
247 | joyNum: 0
248 | - serializedVersion: 3
249 | m_Name: Submit
250 | descriptiveName:
251 | descriptiveNegativeName:
252 | negativeButton:
253 | positiveButton: return
254 | altNegativeButton:
255 | altPositiveButton: joystick button 0
256 | gravity: 1000
257 | dead: 0.001
258 | sensitivity: 1000
259 | snap: 0
260 | invert: 0
261 | type: 0
262 | axis: 0
263 | joyNum: 0
264 | - serializedVersion: 3
265 | m_Name: Submit
266 | descriptiveName:
267 | descriptiveNegativeName:
268 | negativeButton:
269 | positiveButton: enter
270 | altNegativeButton:
271 | altPositiveButton: space
272 | gravity: 1000
273 | dead: 0.001
274 | sensitivity: 1000
275 | snap: 0
276 | invert: 0
277 | type: 0
278 | axis: 0
279 | joyNum: 0
280 | - serializedVersion: 3
281 | m_Name: Cancel
282 | descriptiveName:
283 | descriptiveNegativeName:
284 | negativeButton:
285 | positiveButton: escape
286 | altNegativeButton:
287 | altPositiveButton: joystick button 1
288 | gravity: 1000
289 | dead: 0.001
290 | sensitivity: 1000
291 | snap: 0
292 | invert: 0
293 | type: 0
294 | axis: 0
295 | joyNum: 0
296 |
--------------------------------------------------------------------------------
/ProjectSettings/NavMeshAreas.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!126 &1
4 | NavMeshProjectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | areas:
8 | - name: Walkable
9 | cost: 1
10 | - name: Not Walkable
11 | cost: 1
12 | - name: Jump
13 | cost: 2
14 | - name:
15 | cost: 1
16 | - name:
17 | cost: 1
18 | - name:
19 | cost: 1
20 | - name:
21 | cost: 1
22 | - name:
23 | cost: 1
24 | - name:
25 | cost: 1
26 | - name:
27 | cost: 1
28 | - name:
29 | cost: 1
30 | - name:
31 | cost: 1
32 | - name:
33 | cost: 1
34 | - name:
35 | cost: 1
36 | - name:
37 | cost: 1
38 | - name:
39 | cost: 1
40 | - name:
41 | cost: 1
42 | - name:
43 | cost: 1
44 | - name:
45 | cost: 1
46 | - name:
47 | cost: 1
48 | - name:
49 | cost: 1
50 | - name:
51 | cost: 1
52 | - name:
53 | cost: 1
54 | - name:
55 | cost: 1
56 | - name:
57 | cost: 1
58 | - name:
59 | cost: 1
60 | - name:
61 | cost: 1
62 | - name:
63 | cost: 1
64 | - name:
65 | cost: 1
66 | - name:
67 | cost: 1
68 | - name:
69 | cost: 1
70 | - name:
71 | cost: 1
72 | m_LastAgentTypeID: -887442657
73 | m_Settings:
74 | - serializedVersion: 2
75 | agentTypeID: 0
76 | agentRadius: 0.5
77 | agentHeight: 2
78 | agentSlope: 45
79 | agentClimb: 0.75
80 | ledgeDropHeight: 0
81 | maxJumpAcrossDistance: 0
82 | minRegionArea: 2
83 | manualCellSize: 0
84 | cellSize: 0.16666667
85 | manualTileSize: 0
86 | tileSize: 256
87 | accuratePlacement: 0
88 | debug:
89 | m_Flags: 0
90 | m_SettingNames:
91 | - Humanoid
92 |
--------------------------------------------------------------------------------
/ProjectSettings/NetworkManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!149 &1
4 | NetworkManager:
5 | m_ObjectHideFlags: 0
6 | m_DebugLevel: 0
7 | m_Sendrate: 15
8 | m_AssetToPrefab: {}
9 |
--------------------------------------------------------------------------------
/ProjectSettings/PackageManagerSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &1
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 61
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_GameObject: {fileID: 0}
10 | m_Enabled: 1
11 | m_EditorHideFlags: 0
12 | m_Script: {fileID: 13964, guid: 0000000000000000e000000000000000, type: 0}
13 | m_Name:
14 | m_EditorClassIdentifier:
15 | m_EnablePreviewPackages: 0
16 | m_EnablePackageDependencies: 0
17 | m_AdvancedSettingsExpanded: 1
18 | m_ScopedRegistriesSettingsExpanded: 1
19 | oneTimeWarningShown: 0
20 | m_Registries:
21 | - m_Id: main
22 | m_Name:
23 | m_Url: https://packages.unity.com
24 | m_Scopes: []
25 | m_IsDefault: 1
26 | m_Capabilities: 7
27 | m_UserSelectedRegistryName:
28 | m_UserAddingNewScopedRegistry: 0
29 | m_RegistryInfoDraft:
30 | m_ErrorMessage:
31 | m_Original:
32 | m_Id:
33 | m_Name:
34 | m_Url:
35 | m_Scopes: []
36 | m_IsDefault: 0
37 | m_Capabilities: 0
38 | m_Modified: 0
39 | m_Name:
40 | m_Url:
41 | m_Scopes:
42 | -
43 | m_SelectedScopeIndex: 0
44 |
--------------------------------------------------------------------------------
/ProjectSettings/Physics2DSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!19 &1
4 | Physics2DSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 4
7 | m_Gravity: {x: 0, y: -9.81}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_VelocityIterations: 8
10 | m_PositionIterations: 3
11 | m_VelocityThreshold: 1
12 | m_MaxLinearCorrection: 0.2
13 | m_MaxAngularCorrection: 8
14 | m_MaxTranslationSpeed: 100
15 | m_MaxRotationSpeed: 360
16 | m_BaumgarteScale: 0.2
17 | m_BaumgarteTimeOfImpactScale: 0.75
18 | m_TimeToSleep: 0.5
19 | m_LinearSleepTolerance: 0.01
20 | m_AngularSleepTolerance: 2
21 | m_DefaultContactOffset: 0.01
22 | m_AutoSimulation: 1
23 | m_QueriesHitTriggers: 1
24 | m_QueriesStartInColliders: 1
25 | m_ChangeStopsCallbacks: 0
26 | m_CallbacksOnDisable: 1
27 | m_ReuseCollisionCallbacks: 1
28 | m_AutoSyncTransforms: 0
29 | m_AlwaysShowColliders: 0
30 | m_ShowColliderSleep: 1
31 | m_ShowColliderContacts: 0
32 | m_ShowColliderAABB: 0
33 | m_ContactArrowScale: 0.2
34 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412}
35 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432}
36 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745}
37 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804}
38 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
39 |
--------------------------------------------------------------------------------
/ProjectSettings/PresetManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1386491679 &1
4 | PresetManager:
5 | m_ObjectHideFlags: 0
6 | m_DefaultList:
7 | - type:
8 | m_NativeTypeID: 108
9 | m_ManagedTypePPtr: {fileID: 0}
10 | m_ManagedTypeFallback:
11 | defaultPresets:
12 | - m_Preset: {fileID: 2655988077585873504, guid: c1cf8506f04ef2c4a88b64b6c4202eea,
13 | type: 2}
14 | - type:
15 | m_NativeTypeID: 1020
16 | m_ManagedTypePPtr: {fileID: 0}
17 | m_ManagedTypeFallback:
18 | defaultPresets:
19 | - m_Preset: {fileID: 2655988077585873504, guid: 0cd792cc87e492d43b4e95b205fc5cc6,
20 | type: 2}
21 | - type:
22 | m_NativeTypeID: 1006
23 | m_ManagedTypePPtr: {fileID: 0}
24 | m_ManagedTypeFallback:
25 | defaultPresets:
26 | - m_Preset: {fileID: 2655988077585873504, guid: 7a99f8aa944efe94cb9bd74562b7d5f9,
27 | type: 2}
28 |
--------------------------------------------------------------------------------
/ProjectSettings/ProjectSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!129 &1
4 | PlayerSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 22
7 | productGUID: 3cc85800ab570d04789e8c579c748c13
8 | AndroidProfiler: 0
9 | AndroidFilterTouchesWhenObscured: 0
10 | AndroidEnableSustainedPerformanceMode: 0
11 | defaultScreenOrientation: 4
12 | targetDevice: 2
13 | useOnDemandResources: 0
14 | accelerometerFrequency: 60
15 | companyName: DefaultCompany
16 | productName: NodeListServer-Example
17 | defaultCursor: {fileID: 0}
18 | cursorHotspot: {x: 0, y: 0}
19 | m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1}
20 | m_ShowUnitySplashScreen: 1
21 | m_ShowUnitySplashLogo: 1
22 | m_SplashScreenOverlayOpacity: 1
23 | m_SplashScreenAnimation: 1
24 | m_SplashScreenLogoStyle: 1
25 | m_SplashScreenDrawMode: 0
26 | m_SplashScreenBackgroundAnimationZoom: 1
27 | m_SplashScreenLogoAnimationZoom: 1
28 | m_SplashScreenBackgroundLandscapeAspect: 1
29 | m_SplashScreenBackgroundPortraitAspect: 1
30 | m_SplashScreenBackgroundLandscapeUvs:
31 | serializedVersion: 2
32 | x: 0
33 | y: 0
34 | width: 1
35 | height: 1
36 | m_SplashScreenBackgroundPortraitUvs:
37 | serializedVersion: 2
38 | x: 0
39 | y: 0
40 | width: 1
41 | height: 1
42 | m_SplashScreenLogos: []
43 | m_VirtualRealitySplashScreen: {fileID: 0}
44 | m_HolographicTrackingLossScreen: {fileID: 0}
45 | defaultScreenWidth: 1024
46 | defaultScreenHeight: 768
47 | defaultScreenWidthWeb: 960
48 | defaultScreenHeightWeb: 600
49 | m_StereoRenderingPath: 0
50 | m_ActiveColorSpace: 0
51 | m_MTRendering: 1
52 | mipStripping: 0
53 | numberOfMipsStripped: 0
54 | m_StackTraceTypes: 010000000100000001000000010000000100000001000000
55 | iosShowActivityIndicatorOnLoading: -1
56 | androidShowActivityIndicatorOnLoading: -1
57 | iosUseCustomAppBackgroundBehavior: 0
58 | iosAllowHTTPDownload: 1
59 | allowedAutorotateToPortrait: 1
60 | allowedAutorotateToPortraitUpsideDown: 1
61 | allowedAutorotateToLandscapeRight: 1
62 | allowedAutorotateToLandscapeLeft: 1
63 | useOSAutorotation: 1
64 | use32BitDisplayBuffer: 1
65 | preserveFramebufferAlpha: 0
66 | disableDepthAndStencilBuffers: 0
67 | androidStartInFullscreen: 1
68 | androidRenderOutsideSafeArea: 0
69 | androidUseSwappy: 0
70 | androidBlitType: 0
71 | androidResizableWindow: 0
72 | androidDefaultWindowWidth: 1920
73 | androidDefaultWindowHeight: 1080
74 | androidMinimumWindowWidth: 400
75 | androidMinimumWindowHeight: 300
76 | androidFullscreenMode: 1
77 | defaultIsNativeResolution: 1
78 | macRetinaSupport: 1
79 | runInBackground: 1
80 | captureSingleScreen: 0
81 | muteOtherAudioSources: 0
82 | Prepare IOS For Recording: 0
83 | Force IOS Speakers When Recording: 0
84 | deferSystemGesturesMode: 0
85 | hideHomeButton: 0
86 | submitAnalytics: 1
87 | usePlayerLog: 1
88 | bakeCollisionMeshes: 0
89 | forceSingleInstance: 0
90 | useFlipModelSwapchain: 1
91 | resizableWindow: 0
92 | useMacAppStoreValidation: 0
93 | macAppStoreCategory: public.app-category.games
94 | gpuSkinning: 1
95 | xboxPIXTextureCapture: 0
96 | xboxEnableAvatar: 0
97 | xboxEnableKinect: 0
98 | xboxEnableKinectAutoTracking: 0
99 | xboxEnableFitness: 0
100 | visibleInBackground: 1
101 | allowFullscreenSwitch: 1
102 | fullscreenMode: 1
103 | xboxSpeechDB: 0
104 | xboxEnableHeadOrientation: 0
105 | xboxEnableGuest: 0
106 | xboxEnablePIXSampling: 0
107 | metalFramebufferOnly: 0
108 | xboxOneResolution: 0
109 | xboxOneSResolution: 0
110 | xboxOneXResolution: 3
111 | xboxOneMonoLoggingLevel: 0
112 | xboxOneLoggingLevel: 1
113 | xboxOneDisableEsram: 0
114 | xboxOneEnableTypeOptimization: 0
115 | xboxOnePresentImmediateThreshold: 0
116 | switchQueueCommandMemory: 0
117 | switchQueueControlMemory: 16384
118 | switchQueueComputeMemory: 262144
119 | switchNVNShaderPoolsGranularity: 33554432
120 | switchNVNDefaultPoolsGranularity: 16777216
121 | switchNVNOtherPoolsGranularity: 16777216
122 | switchNVNMaxPublicTextureIDCount: 0
123 | switchNVNMaxPublicSamplerIDCount: 0
124 | stadiaPresentMode: 0
125 | stadiaTargetFramerate: 0
126 | vulkanNumSwapchainBuffers: 3
127 | vulkanEnableSetSRGBWrite: 0
128 | vulkanEnablePreTransform: 0
129 | vulkanEnableLateAcquireNextImage: 0
130 | vulkanEnableCommandBufferRecycling: 1
131 | m_SupportedAspectRatios:
132 | 4:3: 1
133 | 5:4: 1
134 | 16:10: 1
135 | 16:9: 1
136 | Others: 1
137 | bundleVersion: 0.1
138 | preloadedAssets: []
139 | metroInputSource: 0
140 | wsaTransparentSwapchain: 0
141 | m_HolographicPauseOnTrackingLoss: 1
142 | xboxOneDisableKinectGpuReservation: 1
143 | xboxOneEnable7thCore: 1
144 | vrSettings:
145 | enable360StereoCapture: 0
146 | isWsaHolographicRemotingEnabled: 0
147 | enableFrameTimingStats: 0
148 | useHDRDisplay: 0
149 | D3DHDRBitDepth: 0
150 | m_ColorGamuts: 00000000
151 | targetPixelDensity: 30
152 | resolutionScalingMode: 0
153 | androidSupportedAspectRatio: 1
154 | androidMaxAspectRatio: 2.1
155 | applicationIdentifier: {}
156 | buildNumber:
157 | Standalone: 0
158 | iPhone: 0
159 | tvOS: 0
160 | overrideDefaultApplicationIdentifier: 0
161 | AndroidBundleVersionCode: 1
162 | AndroidMinSdkVersion: 19
163 | AndroidTargetSdkVersion: 0
164 | AndroidPreferredInstallLocation: 1
165 | aotOptions:
166 | stripEngineCode: 1
167 | iPhoneStrippingLevel: 0
168 | iPhoneScriptCallOptimization: 0
169 | ForceInternetPermission: 0
170 | ForceSDCardPermission: 0
171 | CreateWallpaper: 0
172 | APKExpansionFiles: 0
173 | keepLoadedShadersAlive: 0
174 | StripUnusedMeshComponents: 1
175 | VertexChannelCompressionMask: 4054
176 | iPhoneSdkVersion: 988
177 | iOSTargetOSVersionString: 11.0
178 | tvOSSdkVersion: 0
179 | tvOSRequireExtendedGameController: 0
180 | tvOSTargetOSVersionString: 11.0
181 | uIPrerenderedIcon: 0
182 | uIRequiresPersistentWiFi: 0
183 | uIRequiresFullScreen: 1
184 | uIStatusBarHidden: 1
185 | uIExitOnSuspend: 0
186 | uIStatusBarStyle: 0
187 | appleTVSplashScreen: {fileID: 0}
188 | appleTVSplashScreen2x: {fileID: 0}
189 | tvOSSmallIconLayers: []
190 | tvOSSmallIconLayers2x: []
191 | tvOSLargeIconLayers: []
192 | tvOSLargeIconLayers2x: []
193 | tvOSTopShelfImageLayers: []
194 | tvOSTopShelfImageLayers2x: []
195 | tvOSTopShelfImageWideLayers: []
196 | tvOSTopShelfImageWideLayers2x: []
197 | iOSLaunchScreenType: 0
198 | iOSLaunchScreenPortrait: {fileID: 0}
199 | iOSLaunchScreenLandscape: {fileID: 0}
200 | iOSLaunchScreenBackgroundColor:
201 | serializedVersion: 2
202 | rgba: 0
203 | iOSLaunchScreenFillPct: 100
204 | iOSLaunchScreenSize: 100
205 | iOSLaunchScreenCustomXibPath:
206 | iOSLaunchScreeniPadType: 0
207 | iOSLaunchScreeniPadImage: {fileID: 0}
208 | iOSLaunchScreeniPadBackgroundColor:
209 | serializedVersion: 2
210 | rgba: 0
211 | iOSLaunchScreeniPadFillPct: 100
212 | iOSLaunchScreeniPadSize: 100
213 | iOSLaunchScreeniPadCustomXibPath:
214 | iOSLaunchScreenCustomStoryboardPath:
215 | iOSLaunchScreeniPadCustomStoryboardPath:
216 | iOSDeviceRequirements: []
217 | iOSURLSchemes: []
218 | iOSBackgroundModes: 0
219 | iOSMetalForceHardShadows: 0
220 | metalEditorSupport: 1
221 | metalAPIValidation: 1
222 | iOSRenderExtraFrameOnPause: 0
223 | iosCopyPluginsCodeInsteadOfSymlink: 0
224 | appleDeveloperTeamID:
225 | iOSManualSigningProvisioningProfileID:
226 | tvOSManualSigningProvisioningProfileID:
227 | iOSManualSigningProvisioningProfileType: 0
228 | tvOSManualSigningProvisioningProfileType: 0
229 | appleEnableAutomaticSigning: 0
230 | iOSRequireARKit: 0
231 | iOSAutomaticallyDetectAndAddCapabilities: 1
232 | appleEnableProMotion: 0
233 | shaderPrecisionModel: 0
234 | clonedFromGUID: c0afd0d1d80e3634a9dac47e8a0426ea
235 | templatePackageId: com.unity.template.3d@1.3.0
236 | templateDefaultScene: Assets/Scenes/SampleScene.unity
237 | useCustomMainManifest: 0
238 | useCustomLauncherManifest: 0
239 | useCustomMainGradleTemplate: 0
240 | useCustomLauncherGradleManifest: 0
241 | useCustomBaseGradleTemplate: 0
242 | useCustomGradlePropertiesTemplate: 0
243 | useCustomProguardFile: 0
244 | AndroidTargetArchitectures: 5
245 | AndroidTargetDevices: 0
246 | AndroidSplashScreenScale: 0
247 | androidSplashScreen: {fileID: 0}
248 | AndroidKeystoreName:
249 | AndroidKeyaliasName:
250 | AndroidBuildApkPerCpuArchitecture: 0
251 | AndroidTVCompatibility: 1
252 | AndroidIsGame: 1
253 | AndroidEnableTango: 0
254 | androidEnableBanner: 1
255 | androidUseLowAccuracyLocation: 0
256 | androidUseCustomKeystore: 0
257 | m_AndroidBanners:
258 | - width: 320
259 | height: 180
260 | banner: {fileID: 0}
261 | androidGamepadSupportLevel: 0
262 | chromeosInputEmulation: 1
263 | AndroidMinifyWithR8: 0
264 | AndroidMinifyRelease: 0
265 | AndroidMinifyDebug: 0
266 | AndroidValidateAppBundleSize: 1
267 | AndroidAppBundleSizeToValidate: 150
268 | m_BuildTargetIcons: []
269 | m_BuildTargetPlatformIcons: []
270 | m_BuildTargetBatching:
271 | - m_BuildTarget: Standalone
272 | m_StaticBatching: 1
273 | m_DynamicBatching: 0
274 | - m_BuildTarget: tvOS
275 | m_StaticBatching: 1
276 | m_DynamicBatching: 0
277 | - m_BuildTarget: Android
278 | m_StaticBatching: 1
279 | m_DynamicBatching: 0
280 | - m_BuildTarget: iPhone
281 | m_StaticBatching: 1
282 | m_DynamicBatching: 0
283 | - m_BuildTarget: WebGL
284 | m_StaticBatching: 0
285 | m_DynamicBatching: 0
286 | m_BuildTargetGraphicsJobs:
287 | - m_BuildTarget: MacStandaloneSupport
288 | m_GraphicsJobs: 0
289 | - m_BuildTarget: Switch
290 | m_GraphicsJobs: 0
291 | - m_BuildTarget: MetroSupport
292 | m_GraphicsJobs: 0
293 | - m_BuildTarget: AppleTVSupport
294 | m_GraphicsJobs: 0
295 | - m_BuildTarget: BJMSupport
296 | m_GraphicsJobs: 0
297 | - m_BuildTarget: LinuxStandaloneSupport
298 | m_GraphicsJobs: 0
299 | - m_BuildTarget: PS4Player
300 | m_GraphicsJobs: 0
301 | - m_BuildTarget: iOSSupport
302 | m_GraphicsJobs: 0
303 | - m_BuildTarget: WindowsStandaloneSupport
304 | m_GraphicsJobs: 0
305 | - m_BuildTarget: XboxOnePlayer
306 | m_GraphicsJobs: 0
307 | - m_BuildTarget: LuminSupport
308 | m_GraphicsJobs: 0
309 | - m_BuildTarget: CloudRendering
310 | m_GraphicsJobs: 0
311 | - m_BuildTarget: AndroidPlayer
312 | m_GraphicsJobs: 0
313 | - m_BuildTarget: WebGLSupport
314 | m_GraphicsJobs: 0
315 | m_BuildTargetGraphicsJobMode:
316 | - m_BuildTarget: PS4Player
317 | m_GraphicsJobMode: 0
318 | - m_BuildTarget: XboxOnePlayer
319 | m_GraphicsJobMode: 0
320 | m_BuildTargetGraphicsAPIs:
321 | - m_BuildTarget: AndroidPlayer
322 | m_APIs: 0b00000008000000
323 | m_Automatic: 1
324 | - m_BuildTarget: iOSSupport
325 | m_APIs: 10000000
326 | m_Automatic: 1
327 | - m_BuildTarget: AppleTVSupport
328 | m_APIs: 10000000
329 | m_Automatic: 1
330 | - m_BuildTarget: WebGLSupport
331 | m_APIs: 0b000000
332 | m_Automatic: 1
333 | m_BuildTargetVRSettings:
334 | - m_BuildTarget: Standalone
335 | m_Enabled: 0
336 | m_Devices:
337 | - Oculus
338 | - OpenVR
339 | openGLRequireES31: 0
340 | openGLRequireES31AEP: 0
341 | openGLRequireES32: 0
342 | m_TemplateCustomTags: {}
343 | mobileMTRendering:
344 | Android: 1
345 | iPhone: 1
346 | tvOS: 1
347 | m_BuildTargetGroupLightmapEncodingQuality: []
348 | m_BuildTargetGroupLightmapSettings: []
349 | m_BuildTargetNormalMapEncoding: []
350 | playModeTestRunnerEnabled: 0
351 | runPlayModeTestAsEditModeTest: 0
352 | actionOnDotNetUnhandledException: 1
353 | enableInternalProfiler: 0
354 | logObjCUncaughtExceptions: 1
355 | enableCrashReportAPI: 0
356 | cameraUsageDescription:
357 | locationUsageDescription:
358 | microphoneUsageDescription:
359 | bluetoothUsageDescription:
360 | switchNMETAOverride:
361 | switchNetLibKey:
362 | switchSocketMemoryPoolSize: 6144
363 | switchSocketAllocatorPoolSize: 128
364 | switchSocketConcurrencyLimit: 14
365 | switchScreenResolutionBehavior: 2
366 | switchUseCPUProfiler: 0
367 | switchUseGOLDLinker: 0
368 | switchApplicationID: 0x01004b9000490000
369 | switchNSODependencies:
370 | switchTitleNames_0:
371 | switchTitleNames_1:
372 | switchTitleNames_2:
373 | switchTitleNames_3:
374 | switchTitleNames_4:
375 | switchTitleNames_5:
376 | switchTitleNames_6:
377 | switchTitleNames_7:
378 | switchTitleNames_8:
379 | switchTitleNames_9:
380 | switchTitleNames_10:
381 | switchTitleNames_11:
382 | switchTitleNames_12:
383 | switchTitleNames_13:
384 | switchTitleNames_14:
385 | switchTitleNames_15:
386 | switchPublisherNames_0:
387 | switchPublisherNames_1:
388 | switchPublisherNames_2:
389 | switchPublisherNames_3:
390 | switchPublisherNames_4:
391 | switchPublisherNames_5:
392 | switchPublisherNames_6:
393 | switchPublisherNames_7:
394 | switchPublisherNames_8:
395 | switchPublisherNames_9:
396 | switchPublisherNames_10:
397 | switchPublisherNames_11:
398 | switchPublisherNames_12:
399 | switchPublisherNames_13:
400 | switchPublisherNames_14:
401 | switchPublisherNames_15:
402 | switchIcons_0: {fileID: 0}
403 | switchIcons_1: {fileID: 0}
404 | switchIcons_2: {fileID: 0}
405 | switchIcons_3: {fileID: 0}
406 | switchIcons_4: {fileID: 0}
407 | switchIcons_5: {fileID: 0}
408 | switchIcons_6: {fileID: 0}
409 | switchIcons_7: {fileID: 0}
410 | switchIcons_8: {fileID: 0}
411 | switchIcons_9: {fileID: 0}
412 | switchIcons_10: {fileID: 0}
413 | switchIcons_11: {fileID: 0}
414 | switchIcons_12: {fileID: 0}
415 | switchIcons_13: {fileID: 0}
416 | switchIcons_14: {fileID: 0}
417 | switchIcons_15: {fileID: 0}
418 | switchSmallIcons_0: {fileID: 0}
419 | switchSmallIcons_1: {fileID: 0}
420 | switchSmallIcons_2: {fileID: 0}
421 | switchSmallIcons_3: {fileID: 0}
422 | switchSmallIcons_4: {fileID: 0}
423 | switchSmallIcons_5: {fileID: 0}
424 | switchSmallIcons_6: {fileID: 0}
425 | switchSmallIcons_7: {fileID: 0}
426 | switchSmallIcons_8: {fileID: 0}
427 | switchSmallIcons_9: {fileID: 0}
428 | switchSmallIcons_10: {fileID: 0}
429 | switchSmallIcons_11: {fileID: 0}
430 | switchSmallIcons_12: {fileID: 0}
431 | switchSmallIcons_13: {fileID: 0}
432 | switchSmallIcons_14: {fileID: 0}
433 | switchSmallIcons_15: {fileID: 0}
434 | switchManualHTML:
435 | switchAccessibleURLs:
436 | switchLegalInformation:
437 | switchMainThreadStackSize: 1048576
438 | switchPresenceGroupId:
439 | switchLogoHandling: 0
440 | switchReleaseVersion: 0
441 | switchDisplayVersion: 1.0.0
442 | switchStartupUserAccount: 0
443 | switchTouchScreenUsage: 0
444 | switchSupportedLanguagesMask: 0
445 | switchLogoType: 0
446 | switchApplicationErrorCodeCategory:
447 | switchUserAccountSaveDataSize: 0
448 | switchUserAccountSaveDataJournalSize: 0
449 | switchApplicationAttribute: 0
450 | switchCardSpecSize: -1
451 | switchCardSpecClock: -1
452 | switchRatingsMask: 0
453 | switchRatingsInt_0: 0
454 | switchRatingsInt_1: 0
455 | switchRatingsInt_2: 0
456 | switchRatingsInt_3: 0
457 | switchRatingsInt_4: 0
458 | switchRatingsInt_5: 0
459 | switchRatingsInt_6: 0
460 | switchRatingsInt_7: 0
461 | switchRatingsInt_8: 0
462 | switchRatingsInt_9: 0
463 | switchRatingsInt_10: 0
464 | switchRatingsInt_11: 0
465 | switchRatingsInt_12: 0
466 | switchLocalCommunicationIds_0:
467 | switchLocalCommunicationIds_1:
468 | switchLocalCommunicationIds_2:
469 | switchLocalCommunicationIds_3:
470 | switchLocalCommunicationIds_4:
471 | switchLocalCommunicationIds_5:
472 | switchLocalCommunicationIds_6:
473 | switchLocalCommunicationIds_7:
474 | switchParentalControl: 0
475 | switchAllowsScreenshot: 1
476 | switchAllowsVideoCapturing: 1
477 | switchAllowsRuntimeAddOnContentInstall: 0
478 | switchDataLossConfirmation: 0
479 | switchUserAccountLockEnabled: 0
480 | switchSystemResourceMemory: 16777216
481 | switchSupportedNpadStyles: 3
482 | switchNativeFsCacheSize: 32
483 | switchIsHoldTypeHorizontal: 0
484 | switchSupportedNpadCount: 8
485 | switchSocketConfigEnabled: 0
486 | switchTcpInitialSendBufferSize: 32
487 | switchTcpInitialReceiveBufferSize: 64
488 | switchTcpAutoSendBufferSizeMax: 256
489 | switchTcpAutoReceiveBufferSizeMax: 256
490 | switchUdpSendBufferSize: 9
491 | switchUdpReceiveBufferSize: 42
492 | switchSocketBufferEfficiency: 4
493 | switchSocketInitializeEnabled: 1
494 | switchNetworkInterfaceManagerInitializeEnabled: 1
495 | switchPlayerConnectionEnabled: 1
496 | switchUseNewStyleFilepaths: 0
497 | switchUseMicroSleepForYield: 1
498 | switchEnableRamDiskSupport: 0
499 | switchMicroSleepForYieldTime: 25
500 | switchRamDiskSpaceSize: 12
501 | ps4NPAgeRating: 12
502 | ps4NPTitleSecret:
503 | ps4NPTrophyPackPath:
504 | ps4ParentalLevel: 11
505 | ps4ContentID: ED1633-NPXX51362_00-0000000000000000
506 | ps4Category: 0
507 | ps4MasterVersion: 01.00
508 | ps4AppVersion: 01.00
509 | ps4AppType: 0
510 | ps4ParamSfxPath:
511 | ps4VideoOutPixelFormat: 0
512 | ps4VideoOutInitialWidth: 1920
513 | ps4VideoOutBaseModeInitialWidth: 1920
514 | ps4VideoOutReprojectionRate: 60
515 | ps4PronunciationXMLPath:
516 | ps4PronunciationSIGPath:
517 | ps4BackgroundImagePath:
518 | ps4StartupImagePath:
519 | ps4StartupImagesFolder:
520 | ps4IconImagesFolder:
521 | ps4SaveDataImagePath:
522 | ps4SdkOverride:
523 | ps4BGMPath:
524 | ps4ShareFilePath:
525 | ps4ShareOverlayImagePath:
526 | ps4PrivacyGuardImagePath:
527 | ps4ExtraSceSysFile:
528 | ps4NPtitleDatPath:
529 | ps4RemotePlayKeyAssignment: -1
530 | ps4RemotePlayKeyMappingDir:
531 | ps4PlayTogetherPlayerCount: 0
532 | ps4EnterButtonAssignment: 1
533 | ps4ApplicationParam1: 0
534 | ps4ApplicationParam2: 0
535 | ps4ApplicationParam3: 0
536 | ps4ApplicationParam4: 0
537 | ps4DownloadDataSize: 0
538 | ps4GarlicHeapSize: 2048
539 | ps4ProGarlicHeapSize: 2560
540 | playerPrefsMaxSize: 32768
541 | ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ
542 | ps4pnSessions: 1
543 | ps4pnPresence: 1
544 | ps4pnFriends: 1
545 | ps4pnGameCustomData: 1
546 | playerPrefsSupport: 0
547 | enableApplicationExit: 0
548 | resetTempFolder: 1
549 | restrictedAudioUsageRights: 0
550 | ps4UseResolutionFallback: 0
551 | ps4ReprojectionSupport: 0
552 | ps4UseAudio3dBackend: 0
553 | ps4UseLowGarlicFragmentationMode: 1
554 | ps4SocialScreenEnabled: 0
555 | ps4ScriptOptimizationLevel: 0
556 | ps4Audio3dVirtualSpeakerCount: 14
557 | ps4attribCpuUsage: 0
558 | ps4PatchPkgPath:
559 | ps4PatchLatestPkgPath:
560 | ps4PatchChangeinfoPath:
561 | ps4PatchDayOne: 0
562 | ps4attribUserManagement: 0
563 | ps4attribMoveSupport: 0
564 | ps4attrib3DSupport: 0
565 | ps4attribShareSupport: 0
566 | ps4attribExclusiveVR: 0
567 | ps4disableAutoHideSplash: 0
568 | ps4videoRecordingFeaturesUsed: 0
569 | ps4contentSearchFeaturesUsed: 0
570 | ps4CompatibilityPS5: 0
571 | ps4AllowPS5Detection: 0
572 | ps4GPU800MHz: 1
573 | ps4attribEyeToEyeDistanceSettingVR: 0
574 | ps4IncludedModules: []
575 | ps4attribVROutputEnabled: 0
576 | monoEnv:
577 | splashScreenBackgroundSourceLandscape: {fileID: 0}
578 | splashScreenBackgroundSourcePortrait: {fileID: 0}
579 | blurSplashScreenBackground: 1
580 | spritePackerPolicy:
581 | webGLMemorySize: 256
582 | webGLExceptionSupport: 1
583 | webGLNameFilesAsHashes: 0
584 | webGLDataCaching: 1
585 | webGLDebugSymbols: 0
586 | webGLEmscriptenArgs:
587 | webGLModulesDirectory:
588 | webGLTemplate: APPLICATION:Default
589 | webGLAnalyzeBuildSize: 0
590 | webGLUseEmbeddedResources: 0
591 | webGLCompressionFormat: 1
592 | webGLWasmArithmeticExceptions: 0
593 | webGLLinkerTarget: 1
594 | webGLThreadsSupport: 0
595 | webGLDecompressionFallback: 0
596 | scriptingDefineSymbols:
597 | 1: MIRROR;MIRROR_1726_OR_NEWER;MIRROR_3_0_OR_NEWER;MIRROR_3_12_OR_NEWER;MIRROR_4_0_OR_NEWER;MIRROR_5_0_OR_NEWER;MIRROR_6_0_OR_NEWER;MIRROR_7_0_OR_NEWER;MIRROR_8_0_OR_NEWER;MIRROR_9_0_OR_NEWER;MIRROR_10_0_OR_NEWER;MIRROR_11_0_OR_NEWER;MIRROR_12_0_OR_NEWER;MIRROR_13_0_OR_NEWER;MIRROR_14_0_OR_NEWER;MIRROR_15_0_OR_NEWER;MIRROR_16_0_OR_NEWER;MIRROR_17_0_OR_NEWER;MIRROR_18_0_OR_NEWER;MIRROR_24_0_OR_NEWER;MIRROR_26_0_OR_NEWER;MIRROR_27_0_OR_NEWER;MIRROR_28_0_OR_NEWER;MIRROR_29_0_OR_NEWER;MIRROR_30_0_OR_NEWER;MIRROR_30_5_2_OR_NEWER;MIRROR_32_1_2_OR_NEWER;MIRROR_32_1_4_OR_NEWER;MIRROR_35_0_OR_NEWER;MIRROR_35_1_OR_NEWER;MIRROR_37_0_OR_NEWER;MIRROR_38_0_OR_NEWER;MIRROR_39_0_OR_NEWER;MIRROR_40_0_OR_NEWER;MIRROR_41_0_OR_NEWER;MIRROR_42_0_OR_NEWER;MIRROR_43_0_OR_NEWER;MIRROR_44_0_OR_NEWER;MIRROR_46_0_OR_NEWER;MIRROR_47_0_OR_NEWER;MIRROR_53_0_OR_NEWER;MIRROR_55_0_OR_NEWER;MIRROR_57_0_OR_NEWER;MIRROR_58_0_OR_NEWER;MIRROR_65_0_OR_NEWER
598 | additionalCompilerArguments: {}
599 | platformArchitecture: {}
600 | scriptingBackend: {}
601 | il2cppCompilerConfiguration: {}
602 | managedStrippingLevel: {}
603 | incrementalIl2cppBuild: {}
604 | suppressCommonWarnings: 1
605 | allowUnsafeCode: 0
606 | useDeterministicCompilation: 1
607 | useReferenceAssemblies: 1
608 | enableRoslynAnalyzers: 1
609 | additionalIl2CppArgs:
610 | scriptingRuntimeVersion: 1
611 | gcIncremental: 0
612 | assemblyVersionValidation: 1
613 | gcWBarrierValidation: 0
614 | apiCompatibilityLevelPerPlatform: {}
615 | m_RenderingPath: 1
616 | m_MobileRenderingPath: 1
617 | metroPackageName: Template_3D
618 | metroPackageVersion:
619 | metroCertificatePath:
620 | metroCertificatePassword:
621 | metroCertificateSubject:
622 | metroCertificateIssuer:
623 | metroCertificateNotAfter: 0000000000000000
624 | metroApplicationDescription: Template_3D
625 | wsaImages: {}
626 | metroTileShortName:
627 | metroTileShowName: 0
628 | metroMediumTileShowName: 0
629 | metroLargeTileShowName: 0
630 | metroWideTileShowName: 0
631 | metroSupportStreamingInstall: 0
632 | metroLastRequiredScene: 0
633 | metroDefaultTileSize: 1
634 | metroTileForegroundText: 2
635 | metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0}
636 | metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628,
637 | a: 1}
638 | metroSplashScreenUseBackgroundColor: 0
639 | platformCapabilities: {}
640 | metroTargetDeviceFamilies: {}
641 | metroFTAName:
642 | metroFTAFileTypes: []
643 | metroProtocolName:
644 | XboxOneProductId:
645 | XboxOneUpdateKey:
646 | XboxOneSandboxId:
647 | XboxOneContentId:
648 | XboxOneTitleId:
649 | XboxOneSCId:
650 | XboxOneGameOsOverridePath:
651 | XboxOnePackagingOverridePath:
652 | XboxOneAppManifestOverridePath:
653 | XboxOneVersion: 1.0.0.0
654 | XboxOnePackageEncryption: 0
655 | XboxOnePackageUpdateGranularity: 2
656 | XboxOneDescription:
657 | XboxOneLanguage:
658 | - enus
659 | XboxOneCapability: []
660 | XboxOneGameRating: {}
661 | XboxOneIsContentPackage: 0
662 | XboxOneEnhancedXboxCompatibilityMode: 0
663 | XboxOneEnableGPUVariability: 1
664 | XboxOneSockets: {}
665 | XboxOneSplashScreen: {fileID: 0}
666 | XboxOneAllowedProductIds: []
667 | XboxOnePersistentLocalStorageSize: 0
668 | XboxOneXTitleMemory: 8
669 | XboxOneOverrideIdentityName:
670 | XboxOneOverrideIdentityPublisher:
671 | vrEditorSettings: {}
672 | cloudServicesEnabled:
673 | UNet: 1
674 | luminIcon:
675 | m_Name:
676 | m_ModelFolderPath:
677 | m_PortalFolderPath:
678 | luminCert:
679 | m_CertPath:
680 | m_SignPackage: 1
681 | luminIsChannelApp: 0
682 | luminVersion:
683 | m_VersionCode: 1
684 | m_VersionName:
685 | apiCompatibilityLevel: 6
686 | activeInputHandler: 0
687 | cloudProjectId:
688 | framebufferDepthMemorylessMode: 0
689 | qualitySettingsNames: []
690 | projectName:
691 | organizationId:
692 | cloudEnabled: 0
693 | legacyClampBlendShapeWeights: 0
694 | virtualTexturingSupportEnabled: 0
695 |
--------------------------------------------------------------------------------
/ProjectSettings/ProjectVersion.txt:
--------------------------------------------------------------------------------
1 | m_EditorVersion: 2020.3.30f1
2 | m_EditorVersionWithRevision: 2020.3.30f1 (1fb1bf06830e)
3 |
--------------------------------------------------------------------------------
/ProjectSettings/QualitySettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!47 &1
4 | QualitySettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 5
7 | m_CurrentQuality: 4
8 | m_QualitySettings:
9 | - serializedVersion: 2
10 | name: Very Low
11 | pixelLightCount: 0
12 | shadows: 0
13 | shadowResolution: 0
14 | shadowProjection: 1
15 | shadowCascades: 1
16 | shadowDistance: 15
17 | shadowNearPlaneOffset: 3
18 | shadowCascade2Split: 0.33333334
19 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
20 | shadowmaskMode: 0
21 | blendWeights: 1
22 | textureQuality: 1
23 | anisotropicTextures: 0
24 | antiAliasing: 0
25 | softParticles: 0
26 | softVegetation: 0
27 | realtimeReflectionProbes: 0
28 | billboardsFaceCameraPosition: 0
29 | vSyncCount: 0
30 | lodBias: 0.3
31 | maximumLODLevel: 0
32 | particleRaycastBudget: 4
33 | asyncUploadTimeSlice: 2
34 | asyncUploadBufferSize: 16
35 | resolutionScalingFixedDPIFactor: 1
36 | excludedTargetPlatforms: []
37 | - serializedVersion: 2
38 | name: Low
39 | pixelLightCount: 0
40 | shadows: 0
41 | shadowResolution: 0
42 | shadowProjection: 1
43 | shadowCascades: 1
44 | shadowDistance: 20
45 | shadowNearPlaneOffset: 3
46 | shadowCascade2Split: 0.33333334
47 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
48 | shadowmaskMode: 0
49 | blendWeights: 2
50 | textureQuality: 0
51 | anisotropicTextures: 0
52 | antiAliasing: 0
53 | softParticles: 0
54 | softVegetation: 0
55 | realtimeReflectionProbes: 0
56 | billboardsFaceCameraPosition: 0
57 | vSyncCount: 0
58 | lodBias: 0.4
59 | maximumLODLevel: 0
60 | particleRaycastBudget: 16
61 | asyncUploadTimeSlice: 2
62 | asyncUploadBufferSize: 16
63 | resolutionScalingFixedDPIFactor: 1
64 | excludedTargetPlatforms: []
65 | - serializedVersion: 2
66 | name: Medium
67 | pixelLightCount: 1
68 | shadows: 1
69 | shadowResolution: 0
70 | shadowProjection: 1
71 | shadowCascades: 1
72 | shadowDistance: 20
73 | shadowNearPlaneOffset: 3
74 | shadowCascade2Split: 0.33333334
75 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
76 | shadowmaskMode: 0
77 | blendWeights: 2
78 | textureQuality: 0
79 | anisotropicTextures: 1
80 | antiAliasing: 0
81 | softParticles: 0
82 | softVegetation: 0
83 | realtimeReflectionProbes: 0
84 | billboardsFaceCameraPosition: 0
85 | vSyncCount: 1
86 | lodBias: 0.7
87 | maximumLODLevel: 0
88 | particleRaycastBudget: 64
89 | asyncUploadTimeSlice: 2
90 | asyncUploadBufferSize: 16
91 | resolutionScalingFixedDPIFactor: 1
92 | excludedTargetPlatforms: []
93 | - serializedVersion: 2
94 | name: High
95 | pixelLightCount: 2
96 | shadows: 2
97 | shadowResolution: 1
98 | shadowProjection: 1
99 | shadowCascades: 2
100 | shadowDistance: 40
101 | shadowNearPlaneOffset: 3
102 | shadowCascade2Split: 0.33333334
103 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
104 | shadowmaskMode: 1
105 | blendWeights: 2
106 | textureQuality: 0
107 | anisotropicTextures: 1
108 | antiAliasing: 2
109 | softParticles: 0
110 | softVegetation: 1
111 | realtimeReflectionProbes: 1
112 | billboardsFaceCameraPosition: 1
113 | vSyncCount: 1
114 | lodBias: 1
115 | maximumLODLevel: 0
116 | particleRaycastBudget: 256
117 | asyncUploadTimeSlice: 2
118 | asyncUploadBufferSize: 16
119 | resolutionScalingFixedDPIFactor: 1
120 | excludedTargetPlatforms: []
121 | - serializedVersion: 2
122 | name: Very High
123 | pixelLightCount: 3
124 | shadows: 2
125 | shadowResolution: 2
126 | shadowProjection: 1
127 | shadowCascades: 2
128 | shadowDistance: 40
129 | shadowNearPlaneOffset: 3
130 | shadowCascade2Split: 0.33333334
131 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
132 | shadowmaskMode: 1
133 | blendWeights: 4
134 | textureQuality: 0
135 | anisotropicTextures: 1
136 | antiAliasing: 4
137 | softParticles: 1
138 | softVegetation: 1
139 | realtimeReflectionProbes: 1
140 | billboardsFaceCameraPosition: 1
141 | vSyncCount: 1
142 | lodBias: 1.5
143 | maximumLODLevel: 0
144 | particleRaycastBudget: 1024
145 | asyncUploadTimeSlice: 2
146 | asyncUploadBufferSize: 16
147 | resolutionScalingFixedDPIFactor: 1
148 | excludedTargetPlatforms: []
149 | - serializedVersion: 2
150 | name: Ultra
151 | pixelLightCount: 4
152 | shadows: 2
153 | shadowResolution: 2
154 | shadowProjection: 1
155 | shadowCascades: 4
156 | shadowDistance: 150
157 | shadowNearPlaneOffset: 3
158 | shadowCascade2Split: 0.33333334
159 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
160 | shadowmaskMode: 1
161 | blendWeights: 4
162 | textureQuality: 0
163 | anisotropicTextures: 1
164 | antiAliasing: 4
165 | softParticles: 1
166 | softVegetation: 1
167 | realtimeReflectionProbes: 1
168 | billboardsFaceCameraPosition: 1
169 | vSyncCount: 1
170 | lodBias: 2
171 | maximumLODLevel: 0
172 | particleRaycastBudget: 4096
173 | asyncUploadTimeSlice: 2
174 | asyncUploadBufferSize: 16
175 | resolutionScalingFixedDPIFactor: 1
176 | excludedTargetPlatforms: []
177 | m_PerPlatformDefaultQuality:
178 | Android: 2
179 | Nintendo 3DS: 5
180 | Nintendo Switch: 5
181 | PS4: 5
182 | PSP2: 2
183 | Standalone: 5
184 | Tizen: 2
185 | WebGL: 3
186 | WiiU: 5
187 | Windows Store Apps: 5
188 | XboxOne: 5
189 | iPhone: 2
190 | tvOS: 2
191 |
--------------------------------------------------------------------------------
/ProjectSettings/TagManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!78 &1
4 | TagManager:
5 | serializedVersion: 2
6 | tags: []
7 | layers:
8 | - Default
9 | - TransparentFX
10 | - Ignore Raycast
11 | -
12 | - Water
13 | - UI
14 | -
15 | -
16 | - PostProcessing
17 | -
18 | -
19 | -
20 | -
21 | -
22 | -
23 | -
24 | -
25 | -
26 | -
27 | -
28 | -
29 | -
30 | -
31 | -
32 | -
33 | -
34 | -
35 | -
36 | -
37 | -
38 | -
39 | -
40 | m_SortingLayers:
41 | - name: Default
42 | uniqueID: 0
43 | locked: 0
44 |
--------------------------------------------------------------------------------
/ProjectSettings/TimeManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!5 &1
4 | TimeManager:
5 | m_ObjectHideFlags: 0
6 | Fixed Timestep: 0.02
7 | Maximum Allowed Timestep: 0.1
8 | m_TimeScale: 1
9 | Maximum Particle Timestep: 0.03
10 |
--------------------------------------------------------------------------------
/ProjectSettings/UnityConnectSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!310 &1
4 | UnityConnectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 1
7 | m_Enabled: 0
8 | m_TestMode: 0
9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events
10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events
11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com
12 | m_TestInitMode: 0
13 | CrashReportingSettings:
14 | m_EventUrl: https://perf-events.cloud.unity3d.com
15 | m_Enabled: 0
16 | m_LogBufferSize: 10
17 | m_CaptureEditorExceptions: 1
18 | UnityPurchasingSettings:
19 | m_Enabled: 0
20 | m_TestMode: 0
21 | UnityAnalyticsSettings:
22 | m_Enabled: 0
23 | m_TestMode: 0
24 | m_InitializeOnStartup: 1
25 | UnityAdsSettings:
26 | m_Enabled: 0
27 | m_InitializeOnStartup: 1
28 | m_TestMode: 0
29 | m_IosGameId:
30 | m_AndroidGameId:
31 | m_GameIds: {}
32 | m_GameId:
33 | PerformanceReportingSettings:
34 | m_Enabled: 0
35 |
--------------------------------------------------------------------------------
/ProjectSettings/VFXManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!937362698 &1
4 | VFXManager:
5 | m_ObjectHideFlags: 0
6 | m_IndirectShader: {fileID: 0}
7 | m_CopyBufferShader: {fileID: 0}
8 | m_SortShader: {fileID: 0}
9 | m_RenderPipeSettingsPath:
10 | m_FixedTimeStep: 0.016666668
11 | m_MaxDeltaTime: 0.05
12 |
--------------------------------------------------------------------------------
/ProjectSettings/VersionControlSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!890905787 &1
4 | VersionControlSettings:
5 | m_ObjectHideFlags: 0
6 | m_Mode: Visible Meta Files
7 | m_CollabEditorSettings:
8 | inProgressEnabled: 1
9 |
--------------------------------------------------------------------------------
/ProjectSettings/XRSettings.asset:
--------------------------------------------------------------------------------
1 | {
2 | "m_SettingKeys": [
3 | "VR Device Disabled",
4 | "VR Device User Alert"
5 | ],
6 | "m_SettingValues": [
7 | "False",
8 | "False"
9 | ]
10 | }
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # NodeListServer Example Project
2 |
3 | [](https://ko-fi.com/coburn)
4 | [](https://paypal.me/coburn64)
5 | 
6 |
7 | _**Please consider a donation (see the Ko-Fi button above) if this project is useful to you.**_
8 |
9 | This repository contains a Unity 2020.3 LTS project that demostrates a implementation of a classic Server Browser (one you'd see in classic games such as Battlefield 1942, old Call of Duty games, etc).
10 |
11 | It is advised that this project is only used as a reference, don't expect it to be feature rich.
12 |
13 | While the Server Browser logic is network stack agnostic (as in, it doesn't care if you're using Mirror, Mirage, a fishy-named network library or something paid), the Mirror and Mirage integrations are
14 | dependent on the respective network stacks and require further steps. To help keep dependencies to a minimum the mentioned network stacks are **not** included in the repository.
15 |
16 | ## Requirements
17 |
18 | - You must have installed and configured Node List Server. You can get it here from the [NodeListServer repository](https://github.com/SoftwareGuy/NodeListServer).
19 |
20 | ## Setup
21 |
22 | 1. You can either clone this repository and open it in your version of Unity, please note that any versions below Unity 2020 LTS are unsupported and I cannot have 50 different Unity versions on my workstation. Alternatively, download a snapshot
23 | archive of this repository and copy the **NodeLS Client** directory into your project's Assets directory.
24 | 2. If you use Unity Assembly Definitions, add a reference to the `NodeLS.Client` Definition. This will allow you to access the `NodeListServer` namespace.
25 | 3. You're good to go! You can now create class instances of the NodeLS Client. An example would be `NLSCommunicator myCommunicator = new NLSCommunicator();`.
26 |
27 | Review the `Communicator.cs` as it's commented and does explain what it's trying to do.
28 |
29 | ### Testing with DebugCommunicator
30 |
31 | - There is a `DebugCommunicator` script that I used during development to ensure things are operating correctly. It uses three keys which are **Q**, **W** and **E**.
32 | - **Q** sends a request to retrieve the server list, **W** fakes a server registration request and **E** removes the fake server that it created (if it was successful).
33 | - You'll need to modify the Endpoint in which it uses for it to work on your setup. This script has a compile define to only be available inside the Unity Editor. It will not be compiled in standalone builds.
34 | - Using this script outside of a testing environment is a bad idea. You've been warned.
35 |
36 | ### Integration Packages
37 |
38 | - Some integrations exist for various network stacks as mentioned earlier.
39 | - Look inside the `NodeLS Client Integrations` folder for a UnityPackage file that contains scripts for use with the network stack the integration is for.
40 | - Note that some integrations may be cause a compile error or warning about things being obsolete over time. If this happens, please open a issue ticket.
41 |
42 | ## Wait, why I cannot connect to a listed server?
43 |
44 | **The easy answers...**
45 |
46 | - The server died. It happens, as it's Unity Engine after all.
47 | - The server port is closed or needs Port Forwarding. If the server is on your ISP connection, open that port in your router: read the manual to figure out how to do that. See the footnote for additional info.
48 |
49 | **The more technicial answers...**
50 |
51 | *Are you trying to connect a server hosted on your network using the Server Browser?*
52 |
53 | - Unless your NodeLS instance is inside your local network, NodeLS will detect your **public** IP address. Your private IP might be `10.0.0.2`, but your public IP might be `42.69.4.20`.
54 | - Most routers may not support loop-back connections, which is basically a LAN connection calling the external outside IP address.
55 | - Some ISPs block game server traffic. Comcast, Verizon and Vodafone are some that do traffic blocking, including servers on non-business grade connections. You're screwed if your ISP does that to you.
56 | - Hosting servers behind a VPN connection is a bad idea.
57 | - Mobile connections will not work for server hosting. Due to the nature of how mobile internet works, even if it *does* work partially, if you drop signal then you're in the dark.
58 |
59 | Footnote: Keep in mind some ISPs can disallow port forwarding for stupid reasons, or they'll penalize you for doing so. If it's on a Windows/Linux cloud instance, open the firewall using Windows Firewall or
60 | iptables, although if you're using Google Cloud/Amazon AWS/Microsoft Azure then it can be a clusterfuck.
61 |
62 | ## I need help!
63 |
64 | - Open a issue ticket, although I expect you to know the absolute basics of C# and Unity Engine first.
65 | - Don't be shy asking for help, but please give details as to what you tried, and what went wrong.
66 |
67 | ## Credits
68 |
69 | - AnthonyE
70 | - JesusLuvsYooh
71 | - NodeLS users & contributors
72 | - Coffee donators
73 | - Mirror discord
74 |
75 | _**Thanks for using Australian Open Source Software!**_
76 |
--------------------------------------------------------------------------------
/UserSettings/EditorUserSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!162 &1
4 | EditorUserSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 4
7 | m_ConfigSettings:
8 | RecentlyUsedScenePath-0:
9 | value: 2242470311464675020a090e19304b2313050e2f3e6703282c240d3fe7af1831f1f376ccff3b322c3507a1290a371526
10 | flags: 0
11 | vcSharedLogLevel:
12 | value: 0d5e400f0650
13 | flags: 0
14 | m_VCAutomaticAdd: 1
15 | m_VCDebugCom: 0
16 | m_VCDebugCmd: 0
17 | m_VCDebugOut: 0
18 | m_SemanticMergeMode: 2
19 | m_VCShowFailedCheckout: 1
20 | m_VCOverwriteFailedCheckoutAssets: 1
21 | m_VCProjectOverlayIcons: 1
22 | m_VCHierarchyOverlayIcons: 1
23 | m_VCOtherOverlayIcons: 1
24 | m_VCAllowAsyncUpdate: 1
25 |
--------------------------------------------------------------------------------