CVR World
The primary component for a world. Required for a world to be uploaded. Requires a CVRAssetInfo on the same GameObject and runs with an execution order of int.MinValue so it initialises before other behaviours.
World Settings
Section titled “World Settings”Spawns
Section titled “Spawns”GameObject[]. Each assigned object acts as a spawn point (position and rotation). Null entries are stripped at runtime. When no spawn points are configured, the transform of the CVRWorld GameObject is used.
Spawn Rule
Section titled “Spawn Rule”Enum SpawnRule:
Sequential— new players spawn at the points in ascending order.Random— new players spawn at a random point (default).
Spawn Radius
Section titled “Spawn Radius”float. Radius around the chosen spawn point players may be placed within.
Reference Camera
Section titled “Reference Camera”GameObject. Camera whose settings are copied to the player’s main camera in-game. When assigned, its SteamAudioListener (and any SteamAudioBakedListener) are copied to both the VR and desktop cameras.
Respawn Height Y
Section titled “Respawn Height Y”int. Y-coordinate threshold (world space) below which a falling player is respawned. Default -100.
Object Respawn Behaviour
Section titled “Object Respawn Behaviour”Enum RespawnBehaviour:
Respawn— respawns the object when it falls past the respawn height.Destroy— destroys it instead (default).
Editor LOD Bias
Section titled “Editor LOD Bias”float. Base LOD bias; multiplied by camera FOV-derived term to set QualitySettings.lodBias on world load. Default 2.
Advanced Settings
Section titled “Advanced Settings”Use Advanced Settings
Section titled “Use Advanced Settings”bool. Master toggle. When false, all rules below reset to engine defaults on load.
Allow Spawnables
Section titled “Allow Spawnables”bool. Permits props to be spawned in the world. Default true.
Allow Portals
Section titled “Allow Portals”bool. Permits portal placement. Default true.
Allow Flying
Section titled “Allow Flying”bool. Lets players toggle flight. Default true. When false, the active flight state is also forced off.
Show Name Plates
Section titled “Show Name Plates”bool. Shows player name plates. Default true.
Enable Builder
Section titled “Enable Builder”bool. Permits the in-world builder tools. Default true.
Enable Zoom
Section titled “Enable Zoom”bool. Permits the desktop zoom (right-click) camera feature. Default true.
float. Default field of view used by the zoom controller. Default 60.
Enable Depth Normals
Section titled “Enable Depth Normals”bool. Enables depth-normals rendering on the player’s camera (for shaders that sample it).
Allow Extreme Far Clipping Plane
Section titled “Allow Extreme Far Clipping Plane”bool (formerly allowCustomFarClippingPlane). Allows the reference camera’s far clipping plane to be copied without capping.
Highlight Profile
Section titled “Highlight Profile”HighlightProfile. Override for the highlight plus outline profile. Falls back to defaultHighlightProfile if null.
Movement
Section titled “Movement”The following fields drive BetterBetterCharacterController and the gravity system when useAdvancedSettings is enabled. Setters (SetBaseMovementSpeed, SetSprintMultiplier, etc.) also re-apply settings at runtime. Default constants are exposed as DefaultBaseMovementSpeed, etc.
| Field | Default | Meaning |
|---|---|---|
baseMovementSpeed | 2 | World walking speed |
sprintMultiplier | 2 | Sprint multiplier |
strafeMultiplier | 1 | Strafe multiplier |
crouchMultiplier | 0.5 | Crouch speed multiplier |
proneMultiplier | 0.3 | Prone speed multiplier |
flyMultiplier | 5 | Flight speed multiplier |
inAirMovementMultiplier | 1 | Air-control multiplier |
jumpHeight | 1 | Jump impulse |
airFriction | 0.3 | World air friction |
gravity | 18 | Player gravity |
objectGravity | 9.81 | Object / physics gravity |
playerGravityAlignmentMode | Auto | GravitySystem.PlayerAlignmentMode |
playerGravityCustomAlignmentValue | 0 | Custom alignment angle (range 0..3600) |
Values that are NaN or infinite are ignored and the world falls back to engine defaults with a warning.
Collision Matrix
Section titled “Collision Matrix”Use Custom Collision Matrix
Section titled “Use Custom Collision Matrix”bool. When enabled with advanced settings, applies the custom layer-collision triangle from collisionMatrix.
Collision Matrix
Section titled “Collision Matrix”List<CVRCollisionListWrapper>. Upper-triangular matrix of per-layer collision flags. Defaults to all true. CaptureCollisionMatrix() can populate it from the live Physics.GetIgnoreLayerCollision state.
Object Catalog
Section titled “Object Catalog”Object Catalog Categories
Section titled “Object Catalog Categories”List<CVRObjectCatalogCategory>. Categories shown in the builder catalog.
Object Catalog Entries
Section titled “Object Catalog Entries”List<CVRObjectCatalogEntry>. Buildable entries referenced by category.
Runtime-only data
Section titled “Runtime-only data”Instance— static singleton of the world; extra instances self-destruct.GameRulesUpdated— staticActioninvoked when movement rules or gameplay flags are re-applied.PickupMarkers— runtime list of registeredIPickupMarkerconsumers.InstancedTerrains/AllTerrains— terrain bookkeeping;drawInstancedis flipped around world transitions.MaterialsInWorld— collected for shader replacement.CompatibilityVersion— staticCompatibilityVersionsindicating legacy vs SPI content.AssetInfo/DataStore— required / optional sub-components.
Selected public methods (documented for Lua / scripting consumers):
SetBaseMovementSpeed,SetSprintMultiplier,SetStrafeMultiplier,SetCrouchMultiplier,SetProneMultiplier,SetFlyMultiplier,SetInAirMovementMultiplier,SetJumpHeight,SetAirFriction,SetGravity,SetObjectGravity,SetPlayerGravityAlignmentMode,SetPlayerGravityCustomAlignmentValue— set a value and re-apply movement settings.ApplyMovementSettings()— re-apply without changing a value.SetPlayerRemotePlayerVisibility,SetPlayerPropVisibility— toggle remote players / spawnables.GetVideoPlayer,RegisterVideoPlayer,UnregisterVideoPlayer,ClearRegisteredVideoPlayers— manageCVRVideoPlayerregistrations.GetRespawnHeight,GetSafeRespawnHeight— resolved respawn thresholds.CaptureCollisionMatrix()— snapshot currentPhysicslayer-collision state.
Related
Section titled “Related”Source
Section titled “Source”CVR-GameFiles/ABI.CCK.Components/CVRWorld.cs