Player
Player
What the player can do
PlayerController is the body for a seat. The local seat reads look and move from the input service on this chapter. The motor can be the custom kinematic motor. PlayerModel holds the tuning, including jetpack fuel when jetpack is enabled. Dash and ground slam are spells that move this body; their rules are in the spells chapter. One-way platforms and the level environment (water, kill volumes) affect the body while the life runs.
Other occupied seats are simulated. They are not a second local camera.
What ends it
The body does not end the session by itself. Health reaching death, a kill volume, or a quit ends the life through combat and the run result. Leaving the level unloads the body with the gameplay scope.
What is saved
Position, fuel, and dash readiness are runtime. The profile save does not store where the player was standing.
Numbers
Generated snapshot
Player
Generated from the Unity project. Do not edit this file. Regenerate: Deep Forest Labs → Slumber → Wiki → Write snapshots, or call WikiSnapshot.WriteAll().
Owns
States
_None._
Service interfaces
IGameplayInput(DeepForestLabs.Slumber.Services.Input) —Assets/Scripts/Services/Input/IGameplayInput.csIGlyphService(DeepForestLabs.Slumber.Services.Input) —Assets/Scripts/Services/Input/IGlyphService.csIInputDeviceTracker(DeepForestLabs.Slumber.Services.Input) —Assets/Scripts/Services/Input/IInputDeviceTracker.csIInputService(DeepForestLabs.Slumber.Services) —Assets/Scripts/Services/IInputService.csIKillZoneService(DeepForestLabs.Slumber.Environment) —Assets/Scripts/Environment/KillZone/IKillZoneService.csIMenuInput(DeepForestLabs.Slumber.Services.Input) —Assets/Scripts/Services/Input/IMenuInput.csIOneWayPlatformService(DeepForestLabs.Slumber.OneWayPlatforms) —Assets/Scripts/OneWayPlatforms/IOneWayPlatformService.csIPlayerCommandSource(DeepForestLabs.Slumber.Services.Input.Commands) —Assets/Scripts/Services/Input/Commands/IPlayerCommandSource.csISeatBound(DeepForestLabs.Slumber.Player) —Assets/Scripts/Player/ISeatBound.csISteamInputService(DeepForestLabs.Slumber.Services.Input.Steam) —Assets/Scripts/Services/Input/Steam/ISteamInputService.csITextEntryService(DeepForestLabs.Slumber.Services.Input) —Assets/Scripts/Services/Input/TextEntryService.csIWaterService(DeepForestLabs.Slumber.Environment.Water) —Assets/Scripts/Environment/Water/IWaterService.cs
Factories
PlayerFactory(DeepForestLabs.Slumber.Player) —Assets/Scripts/Player/PlayerFactory.csSeatCombatantFactory(DeepForestLabs.Slumber.Player) —Assets/Scripts/Player/SeatCombatantFactory.csSeatPlayerRosterFactory(DeepForestLabs.Slumber.Player) —Assets/Scripts/Player/SeatPlayerRosterFactory.cs
Config types
InputConfig(DeepForestLabs.Slumber.Services.Input) —Assets/Scripts/Services/Input/InputConfig.csKillZoneConfig(DeepForestLabs.Slumber.Environment) —Assets/Scripts/Environment/KillZone/KillZoneConfig.csPlayerCommandConfig(DeepForestLabs.Slumber.Services.Input.Commands) —Assets/Scripts/Services/Input/Commands/PlayerCommandConfig.csWaterConfig(DeepForestLabs.Slumber.Environment.Water) —Assets/Scripts/Environment/Water/WaterConfig.cs
Enums
GlyphAction
Assets/Scripts/Services/Input/IGlyphService.cs
- Pause = 0
- Submit = 1
- Cancel = 2
- Restart = 3
- Quit = 4
InputDeviceKind
Assets/Scripts/Services/Input/IInputDeviceTracker.cs
- KeyboardMouse = 0
- Gamepad = 1
LookQuantMode
Assets/Scripts/Services/Input/Commands/LookQuantMode.cs
- Degrees256 = 0
- Millidegrees = 1
MovementBackend
Assets/Scripts/Player/Motor/MovementBackend.cs
- UnityCharacterController = 0
- CustomMotor = 1
MovementMode
Assets/Scripts/Player/Models/PlayerModel.cs
- Idle = 0
- Walking = 1
- Airborne = 2
PlayerCommandButtons
Assets/Scripts/Services/Input/Commands/PlayerCommand.cs
- None = 0
- JumpPressed = 1
- JumpHeld = 2
- FirePressed = 4
- FireHeld = 8
- AltFirePressed = 16
- AltFireHeld = 32
- CastSpell0Pressed = 64
- CastSpell1Pressed = 128
- CastSpell2Pressed = 256
- CastSpell3Pressed = 512
- CastSpell4Pressed = 1024
- SwapNextPressed = 2048
- SwapPrevPressed = 4096
- SelectSlot1Pressed = 8192
- SelectSlot2Pressed = 16384
- ShopSkipPressed = 32768
- CastSpell2Held = 65536
PlayerCommandKind
Assets/Scripts/Services/Input/Commands/PlayerCommand.cs
- Nop = 0
- Hold = 1
- Rich = 2
- Shop = 3
PlayerModelId
Assets/Scripts/Player/Models/PlayerModel.cs
- Default = 0
SteamDigitalAction
Assets/Scripts/Services/Input/Steam/ISteamInputService.cs
- Jump = 0
- Fire = 1
- CastMovement = 2
- CastOffensive = 3
- CastSummon = 4
- CastBuff = 5
- CastSecondary = 6
- CycleWeapon = 7
- Pause = 8
- Submit = 9
- Cancel = 10
WaterVolumeType
Assets/Scripts/Environment/Water/WaterVolumeType.cs
- Surface = 0
- Waterfall = 1
Assets
PlayerFactory
Assets/Data/_AssetData/Addressables/Slumber/Player.asset
- _model - _id: Default - _name: `` - _moveSpeed: 12 - _jumpHeight: 1.8 - _gravity: -18 - _doubleJumpEnabled: true - _doubleJumpHeight: 6 - _jetpackEnabled: true - _jetpackForce: 22 - _jetpackMaxFuel: 3 - _jetpackFuelDrainRate: 1 - _jetpackFuelRechargeRate: 0.8 - _jetpackFuelRechargeDelay: 0.2 - _lookSensitivity: (0.1, 0.1) - _invertY: false - _pitchClamp: (-85, 85) - _standHeight: 1.8 - _standHeadLocalPos: (0, 1.6, 0) - _walkStride: 3
- _view - _prefab - _mode: Resources - _resourcesPath:
Prefabs/Player- _guid:02ee3e35c48c14ccab95f20e0fc5bf4c- _options - _downloadOptions: OnDemand - _loadOptions: OnDemand - _prewarm: false - _useCreate: false - _autoUnload: false - _prewarmCount: 0 - _maxPoolSize: 0 - _worldPositionStays: false - _control - _autoPromoteController: true - _defaultResult - _isValid: false - _error: `` - _skippable: -1
- _analytics - _suppressAnalyticsCalls: false - _str1: `
- _str2:- _str3:- _str4:- _str5:` - _hasAmount: false - _amount: 0 - _extraData (0)
SeatCombatantFactory
Assets/Data/_AssetData/Addressables/DeepForestLabs/Slumber/SeatCombatantFactory.asset
- _playerFactory: Assets/Data/_AssetData/Addressables/Slumber/Player.asset
- _weaponLoadoutFactory: Assets/Data/_AssetData/Addressables/DeepForestLabs/Slumber/WeaponLoadoutFactory.asset
- _spellLoadoutFactory: Assets/Data/_AssetData/Addressables/DeepForestLabs/Slumber/SpellLoadoutFactory.asset
SeatPlayerRosterFactory
Assets/Data/_AssetData/Addressables/DeepForestLabs/Slumber/SeatPlayerRosterFactory.asset
- _seatCombatantFactory: Assets/Data/_AssetData/Addressables/DeepForestLabs/Slumber/SeatCombatantFactory.asset
InputConfig
Assets/Data/_AssetData/Addressables/Slumber/InputConfig.asset
- _moveDeadzone: 0.2
- _lookDeadzone: 0.15
- _lookSensitivity: 120
- _invertLookY: false
KillZoneConfig
Assets/Data/_AssetData/Addressables/Slumber/KillZoneConfig.asset
- _killHeightY: -50
PlayerCommandConfig
Assets/Data/_AssetData/Addressables/DeepForestLabs/Slumber/PlayerCommandConfig.asset
- _lookQuantMode: Degrees256
- _maxLookDegreesPerTick: 45
WaterConfig
Assets/Data/_AssetData/Addressables/Slumber/WaterConfig.asset
- _playerSpeedMultiplier: 0.5
- _playerFlowMultiplier: 1
- _playerBuoyancyAccel: 0
- _shardSpeedMultiplier: 0.4
- _shardExtinguish: true
- _shardDeflect: false
- _enemyDrag: 4
- _enemyFlowMultiplier: 1
- _enemyStaggerDuration: 0.35
- _splashBudgetPerFrame: 12
- _splashMinTravel: 0.75
- _rippleEnabled: true
- _rippleCompute: Assets/Shaders/WaterRipple.compute
- _rippleResolution: 256
- _rippleDamping: 0.985
- _ripplePropagation: 0.25
- _rippleStampRadius: 0.02
- _rippleStampStrength: 0.5
- _rippleMaxStamps: 64
- _rippleNormalStrength: 6
Wired in
Assets/Scripts/Factories/GameplayContainerFactory.csmentionsIKillZoneServiceAssets/Scripts/Factories/GameplayContainerFactory.csmentionsIOneWayPlatformServiceAssets/Scripts/Factories/GameplayContainerFactory.csmentionsIPlayerCommandSourceAssets/Scripts/Factories/GameplayContainerFactory.csmentionsIWaterServiceAssets/Scripts/Factories/GameplayContainerFactory.csmentionsKillZoneConfigAssets/Scripts/Factories/GameplayContainerFactory.csmentionsPlayerCommandConfigAssets/Scripts/Factories/GameplayContainerFactory.csmentionsSeatPlayerRosterFactoryAssets/Scripts/Factories/GameplayContainerFactory.csmentionsWaterConfigAssets/Scripts/Factories/LevelContainerFactory.csmentionsIGameplayInputAssets/Scripts/Factories/LevelContainerFactory.csmentionsIInputServiceAssets/Scripts/Factories/SessionContainerFactory.csmentionsIGlyphServiceAssets/Scripts/Factories/SessionContainerFactory.csmentionsITextEntryServiceAssets/Scripts/Factories/SessionContainerFactory.csmentionsInputConfigAssets/Scripts/Factories/SessionContainerFactory.csmentionsPlayerCommandConfigAssets/Scripts/MainArgs.csmentionsIInputDeviceTrackerAssets/Scripts/MainArgs.csmentionsIMenuInputAssets/Scripts/MainArgs.csmentionsISteamInputServiceAssets/Scripts/MainArgs.csmentionsInputConfigAssets/Scripts/Player/PlayerFactory.csmentionsPlayerModelIdAssets/Scripts/Player/PlayerFactory.csmentionsSeatPlayerRosterFactoryAssets/Scripts/Player/SeatCombatantFactory.csmentionsPlayerFactoryAssets/Scripts/Player/SeatPlayerRosterFactory.csmentionsISeatBoundAssets/Scripts/Player/SeatPlayerRosterFactory.csmentionsSeatCombatantFactory