Fähigkeiten in der Character Controller Library (CCL) bewerten, was ein Charakter tun kann, wie die Fähigkeit zu laufen, zu springen, zu klettern und zu schwimmen. Anstatt sich auf starre, vom Engine definierten Charakterzustände wie die in Enum.HumanoidStateType zu verlassen, ermöglicht die CCL eine flexible Verhaltenskomposition, sodass ein Charakter sich bewegen kann, während er gleichzeitig zielt und sich duckt.
CCL aktivieren
Die CCL ist optional über das Avatar-Einstellungen Fenster im Studio aktivierbar. Um es zu aktivieren:
Öffnen Sie im Avatar Tab die Avatar-Einstellungen.

Wählen Sie den Bewegung Tab auf der linken Seite des Fensters und wählen Sie im Abschnitt Fähigkeiten die Character Controller Library aus.

Alle Standardfähigkeiten wie Laufen, Springen und Klettern sind standardmäßig aktiviert. Um eine davon zur Laufzeit zu deaktivieren, deaktivieren Sie das entsprechende Kästchen.
Konfiguration
Während Ihr Spiel läuft (oder durch ein Skript, das von ServerScriptService ausgeführt wird), können Sie mit den integrierten Fähigkeitskonfigurationen experimentieren. Sie können auch spezifische Controller modifizieren, um die physikalische Simulation des Charakters und seine Interaktion mit der Umgebung anzupassen, wie die Basismovementgeschwindigkeit des Charakters.
Zur Laufzeit
Um mit Fähigkeitskonfigurationen zur Laufzeit zu experimentieren:
Beginnen Sie einen Spieletest.
Wählen Sie eine der integrierten Fähigkeiten aus und passen Sie im Abschnitt Attribute des Eigenschaften Fensters die Attribute wie die unten aufgeführten an.
Fähigkeit Attribute Klettern - Geschwindigkeitsmultiplikator — Multiplikator für die ClimbController.MoveSpeedFactor-Eigenschaft, wenn der Charakter klettert.
Tot - Aktiviert — Der Charakter stirbt, wenn die Gesundheit 0 oder weniger ist.
- Gesundheit ⇔ Humanoid.Health
- MaxGesundheit ⇔ Humanoid.MaxHealth
- BenötigtHals ⇔ Humanoid.RequiresNeck
BewegungsrichtungAnzeigen - Aktiviert ⇔ Humanoid.AutoRotate
Fallen FreierFall - Geschwindigkeitsmultiplikator — Multiplikator für die AirController.MoveSpeedFactor-Eigenschaft, wenn der Charakter im freien Fall ist. Beachten Sie, dass der Effekt subtil sein kann, wenn der Charakter für sehr kurze Zeit im freien Fall ist.
Aufstehen Springen - Sprunghöhe ⇔ Humanoid.JumpHeight
- Sprungkraft ⇔ Humanoid.JumpPower
- SprungkraftVerwenden ⇔ Humanoid.UseJumpPower
KeineBewegung Laufen - Geschwindigkeitsmultiplikator — Multiplikator für die GroundController.MoveSpeedFactor-Eigenschaft, wenn der Charakter läuft.
Sitzen Schwimmen - SchnellesAufsteigenAktivieren — Schneller an die Oberfläche steigen, indem man den Sprung-Input gedrückt hält.
- Geschwindigkeitsmultiplikator — Multiplikator für die SwimController.MoveSpeedFactor-Eigenschaft, wenn der Charakter schwimmt.
Programmiert
Um Fähigkeitskonfigurationen für alle Charaktere über ein Skript festzulegen:
Erstellen Sie ein neues serverseitiges Script innerhalb von ServerScriptService und benennen Sie es in AbilitiesScript um.
Kopieren Sie den folgenden Code in das neue Skript. Dieses Beispiel multipliziert die Basismovementgeschwindigkeit für die Laufen-Fähigkeit mit 2. Passen Sie gerne andere Fähigkeitsattribute an, wie sie in der oberen Tabelle beschrieben sind.
Skript in ServerScriptServicelocal Players = game:GetService("Players")local function onCharacterAdded(character)local AbilityManagerActor = character:WaitForChild("AbilityManagerActor")local Abilities = AbilityManagerActor:WaitForChild("Abilities")local Running = Abilities:FindFirstChild("Running")if Running then-- Verdopple die BasisbewegungsgeschwindigkeitRunning:SetAttribute("SpeedMultiplier", 2)endendlocal function onPlayerAdded(player)if player.Character thenonCharacterAdded(player.Character)endplayer.CharacterAdded:Connect(onCharacterAdded)endPlayers.PlayerAdded:Connect(onPlayerAdded)
