Reference API Roblox

Engine API

Website

Related

Reference API Roblox

ControllerPartSensor

A SensorBase that outputs data about another BasePart based on Humanoid floor and ladder detection logic.

Member index 8

HistoryMember
731HitFrame: CFrame
731HitNormal: Vector3
731LadderSearchHeight: float
731LadderSearchOffset: float
731SearchDistance: float
731SensedMaterial: Material
731SensedPart: BasePart
731SensorMode: SensorMode
inherited from SensorBase
731UpdateType: SensorUpdateType
574Sense(): null
565OnSensorOutputChanged()
inherited from Instance
731Archivable: bool
731Capabilities: SecurityCapabilities
731IsInSandbox: bool
731Name: string
731Parent: Instance
731PredictionMode: PredictionMode
731Sandboxed: bool
731UniqueId: UniqueId
576AddTag(tag: string): null
573ClearAllChildren(): null
462Clone(): Instance
573Destroy(): null
486FindFirstAncestor(name: string): Instance
486FindFirstAncestorOfClass(className: string): Instance
486FindFirstAncestorWhichIsA(className: string): Instance
486FindFirstChild(name: string, recursive: bool = false): Instance
486FindFirstChildOfClass(className: string): Instance
486FindFirstChildWhichIsA(className: string, recursive: bool = false): Instance
486FindFirstDescendant(name: string): Instance
563GetActor(): Actor
486GetAttribute(attribute: string): Variant
462GetAttributeChangedSignal(attribute: string): RBXScriptSignal
631GetAttributes(): Dictionary
648GetChildren(): Instances
462GetDebugId(scopeLength: int = 4): string
707GetDescendants(): Instances
486GetFullName(): string
706GetStyled(name: string, selector: string?): Variant
657GetStyledPropertyChangedSignal(property: string): RBXScriptSignal
576GetTags(): Array
576HasTag(tag: string): bool
486IsAncestorOf(descendant: Instance): bool
486IsDescendantOf(ancestor: Instance): bool
664IsPropertyModified(property: string): bool
698QueryDescendants(selector: string): Instances
573Remove(): null
576RemoveTag(tag: string): null
664ResetPropertyToDefault(property: string): null
573SetAttribute(attribute: string, value: Variant): null
462WaitForChild(childName: string, timeOut: double): Instance
731children(): Instances
731clone(): Instance
731destroy(): null
731findFirstChild(name: string, recursive: bool = false): Instance
731getChildren(): Instances
731isDescendantOf(ancestor: Instance): bool
731remove(): null
462AncestryChanged(child: Instance, parent: Instance)
462AttributeChanged(attribute: string)
462ChildAdded(child: Instance)
462ChildRemoved(child: Instance)
462DescendantAdded(descendant: Instance)
462DescendantRemoving(descendant: Instance)
500Destroying()
657StyledPropertiesChanged()
731childAdded(child: Instance)
inherited from Object
731ClassName: string
731className: string
647GetPropertyChangedSignal(property: string): RBXScriptSignal
647IsA(className: string): bool
731isA(className: string): bool
647Changed(property: string)

Description

A SensorBase that outputs data about another BasePart based on Humanoid floor and ladder detection logic. It is primarily used for sending data to a character controller. Using a ControllerPartSensor allows you to detect BaseParts in the same manner as the Humanoid uses for detecting floors and ladders.

History 30

Members 8

HitFrame

TypeDefault
CFrame0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1

The position in world space where the sensor hit the ControllerPartSensor.SensedPart.

History 6

HitNormal

TypeDefault
Vector30, 1, 0

The surface normal at the position where the sensor hit the SensedPart.

History 4

LadderSearchHeight

TypeDefault
float6

Top of the vertical extent the sensor scans for a climbable ladder, in studs relative to the sensor's parent BasePart. Together with ControllerPartSensor.LadderSearchOffset, it defines the height range: the region extends upward to LadderSearchHeight minus LadderSearchOffset.

Defaults to 6; clamped to non-negative values.

Only affects sensing when ControllerPartSensor.SensorMode is a ladder mode such as SensorMode.Ladder. Because SensorMode defaults to SensorMode.Floor, this has no effect until SensorMode is changed.

History 3

LadderSearchOffset

TypeDefault
float5

Downward offset, in studs relative to the parent BasePart, that positions the vertical extent scanned for a climbable ladder. Behaves like a hip-height offset: increasing it lowers both the bottom and top of the searched region, and scales the rung-spacing tolerance used to decide whether a surface is climbable.

Defaults to 5; clamped to non-negative values.

Only affects sensing when ControllerPartSensor.SensorMode is a ladder mode such as SensorMode.Ladder. Because SensorMode defaults to SensorMode.Floor, this has no effect until SensorMode is changed.

History 3

SearchDistance

TypeDefault
float0

The distance from the sensor's parent BasePart to use when sensing other parts.

History 3

SensedMaterial

TypeDefault
MaterialAir

Surface Material of the part the sensor currently detects, matching the material Humanoid floor and ladder detection report for the same contact. Updated as an output alongside ControllerPartSensor.SensedPart, ControllerPartSensor.HitFrame, and ControllerPartSensor.HitNormal each time the sensor senses.

Defaults to Material.Air.

History 3

SensedPart

TypeDefault
BasePart

A reference to the BasePart hit by the sensor.

History 3

SensorMode

TypeDefault
SensorModeFloor

Determines what behavior this SensorBase uses when sensing other parts.

A setting of SensorMode.Ladder performs the same ladder detection logic used by a Humanoid to populate sensor output. It currently always senses along the forward vector of its parent BasePart.

A setting of SensorMode.Floor performs the same floor detection logic used by a Humanoid to populate sensor output. It currently always senses along the negative up vector of the world.

History 3

Settings