Class WorldSceneSettings
MonoBehaviour holding per-scene server-facing configuration and the link to the scene's WorldMapDefinition. Day/night cycle authoring has moved to WorldDayNightCycle on its own component so a scene can mix and match (a dungeon may want only the settings, a surface zone may want both).
public class WorldSceneSettings : MonoBehaviour
- Inheritance
-
ObjectComponentBehaviourMonoBehaviourWorldSceneSettings
- Inherited Members
-
MonoBehaviour.IsInvoking()MonoBehaviour.CancelInvoke()MonoBehaviour.StopCoroutine(Coroutine)MonoBehaviour.StopAllCoroutines()MonoBehaviour.destroyCancellationTokenMonoBehaviour.useGUILayoutMonoBehaviour.didStartMonoBehaviour.didAwakeMonoBehaviour.runInEditModeBehaviour.enabledBehaviour.isActiveAndEnabledComponent.GetComponent<T>()Component.TryGetComponent<T>(out T)Component.GetComponentInChildren<T>()Component.GetComponentsInChildren<T>()Component.GetComponentInParent<T>()Component.GetComponentsInParent<T>()Component.GetComponents<T>()Component.GetComponentIndex()Component.CompareTag(TagHandle)Component.transformComponent.transformHandleComponent.gameObjectComponent.tagObject.GetEntityId()Object.GetInstanceID()Object.GetHashCode()Object.InstantiateAsync<T>(T)Object.InstantiateAsync<T>(T, Transform)Object.InstantiateAsync<T>(T, Vector3, Quaternion)Object.InstantiateAsync<T>(T, Transform, Vector3, Quaternion)Object.Instantiate(Object, Vector3, Quaternion)Object.Instantiate(Object, Vector3, Quaternion, Transform)Object.Instantiate(Object)Object.Instantiate(Object, Scene)Object.Instantiate<T>(T, InstantiateParameters)Object.Instantiate<T>(T, Vector3, Quaternion, InstantiateParameters)Object.Instantiate(Object, Transform)Object.Instantiate<T>(T)Object.Instantiate<T>(T, Vector3, Quaternion)Object.Instantiate<T>(T, Vector3, Quaternion, Transform)Object.Instantiate<T>(T, Transform)Object.Destroy(Object)Object.DestroyImmediate(Object)Object.DontDestroyOnLoad(Object)Object.DestroyObject(Object)Object.FindObjectsOfType<T>()Object.FindObjectsByType<T>(FindObjectsSortMode)Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)Object.FindObjectOfType<T>()Object.FindFirstObjectByType<T>()Object.FindAnyObjectByType<T>()Object.FindFirstObjectByType<T>(FindObjectsInactive)Object.FindAnyObjectByType<T>(FindObjectsInactive)Object.FindObjectsByType<T>()Object.FindObjectsByType<T>(FindObjectsInactive)Object.ToString()Object.nameObject.hideFlags
Fields
MapDefinition
The scene's map, loading image and player-facing name.
[Tooltip("The scene's map definition. Created and assigned automatically by FishMMO/World Map/Bake Maps.")]
public WorldMapDefinition MapDefinition
Field Value
Remarks
Created and filled in by FishMMO/World Map/Bake Maps, which also assigns it here
if the field is empty. Left assignable by hand so a set of scenes that share a map — a
dungeon and its instanced twin — can point at one definition.
MaxClients
The maximum number of clients allowed in this scene.
[Tooltip("The maximum number of clients allowed in this scene. Clamped to 200.")]
[Range(1, 200)]
public int MaxClients
Field Value
Remarks
The UnityEngine.RangeAttribute constrains the inspector; it does not constrain a value edited into the scene YAML by hand or arriving from an older asset, so every consumer clamps to MaximumClientsPerScene on read as well.
MaximumClientsPerScene
The hard ceiling on clients in any one scene, anywhere in the project.
public const int MaximumClientsPerScene = 200
Field Value
Remarks
The single source of truth for the cap. The world server (routing and instance spin-up) and the scene server (channel admission) both clamp to this, so a scene authored above it is reduced rather than honoured — a designer cannot raise a scene's population past what the bandwidth and observer budgets were sized for.
200 is a deliberate ceiling, not a guess: per-client cost is bounded by the observer
visibility budget rather than by scene population, so scaling past this is done by
adding scene instances (and scene servers), never by widening one scene. See
SceneServerPlacementPolicy.
SceneTransitionImage
Legacy home of the scene's loading image, migrated into MapDefinition.
[Tooltip("Deprecated. Migrated into the Map Definition by FishMMO/World Map/Bake Maps.")]
public Sprite SceneTransitionImage
Field Value
- Sprite
Remarks
The image belongs with the rest of a scene's presentation, and living on a component meant it could only be found by opening the scene. The map bake moves any value still here into the definition and clears this field, so a scene keeps its image without anybody re-authoring it; the reader still falls back to this for a scene that has not been baked since the move. Remove once every world scene has been baked.