AnimationWeight and Arm Movement issues

Before reading, I want to let you know that I didn’t modify the game and scripts whatsoever, EVERYTHING WAS WORKING FINE A DAY BEFORE MAKING THIS POST.

ISSUE 1:

While working on one of my games, I’ve noticed that AnimationWeight was enabled even though I have disabled it few months ago, when I went Into workspace’s properties to disable AnimationWeight, there wasn’t an option to disable it.

image

Video:

As seen In the video, whenever I aim the gun, the animation doesn’t play as it should, this is how it looks:
image

How it should look:
image

ISSUE 2:

The first person arm movement script I use for R15 stopped working aswell, the arms don’t follow the camera’s direction. I’ve also tried other first person arm movement scripts, but they don’t seem to work at all.

Video:

The script I currently use for the arm movement In first person:

local player = game.Players.LocalPlayer

local character = player.Character

if not character or not character.Parent then

character = player.CharacterAdded:wait()

end

local torso = character:WaitForChild("UpperTorso")

local LeftArm = character:WaitForChild("LeftUpperArm")

local RightArm = character:WaitForChild("RightUpperArm")

local rightShoulder = RightArm:WaitForChild("RightShoulder")

local leftShoulder = LeftArm:WaitForChild("LeftShoulder")

local camera = game.Workspace.CurrentCamera

local lla = character:WaitForChild("LeftLowerArm")

local rla = character:WaitForChild("RightLowerArm")

local lh = character:WaitForChild("LeftHand")

local rh = character:WaitForChild("RightHand")

lla.CastShadow = false

rla.CastShadow = false

lh.CastShadow = false

rh.CastShadow = false

LeftArm.CastShadow = false

RightArm.CastShadow = false

updateSpeed = 0.5/2

while true do

game:GetService("RunService").RenderStepped:wait()

RightArm.LocalTransparencyModifier = RightArm.Transparency

LeftArm.LocalTransparencyModifier = LeftArm.Transparency

character.LeftLowerArm.LocalTransparencyModifier = character.LeftLowerArm.Transparency

character.RightLowerArm.LocalTransparencyModifier = character.RightLowerArm.Transparency

character.LeftHand.LocalTransparencyModifier = character.LeftHand.Transparency

character.RightHand.LocalTransparencyModifier = character.RightHand.Transparency

local distance = (character.Head.Position - camera.CoordinateFrame.p).magnitude

if distance <= 2 and camera.CameraType ~= Enum.CameraType.Scriptable then

rightShoulder.C0 = rightShoulder.C0:lerp((camera.CoordinateFrame * CFrame.new(1, -1, 0.5)):toObjectSpace(torso.CFrame):inverse() * CFrame.Angles(0, 0, 0), updateSpeed)

leftShoulder.C0 = leftShoulder.C0:lerp((camera.CoordinateFrame * CFrame.new(-0.2, -1, 0.5)):toObjectSpace(torso.CFrame):inverse() * CFrame.Angles(0, 0, 0), updateSpeed)

else

rightShoulder.C0 = rightShoulder.C0:lerp(CFrame.new(1, 0.5, 0) * CFrame.Angles(0, 0, 0),updateSpeed)

leftShoulder.C0 = leftShoulder.C0:lerp(CFrame.new(-1, 0.5, 0) * CFrame.Angles(0, 0, 0),updateSpeed)

end

end


I want to know how I’d be able to disable the AnimationWeight and what stops my arm movement script from working. Any help provided Is appreciated.

1 Like

AnimationWeightedBlendFix is the property you’re looking for. It was removed on November 1st.

Feature rollout options are provided so developers can disable them if they pose issues in their experience and raise those concerns to engineers or take the time to update their experiences to meet the new behaviour. Please read this announcement for more information on the update. The deadline to update experiences has ended so the fixed blending is now default behaviour and can’t be disabled. You’ll have to update your animations so they’re compliant with the new behaviour.

3 Likes

Thanks for reaching out about this,

Im sorry can anyone tell me what the point of removing the option is??
This just messed up so many things in my game and it is an abolute pain to fix

The option is temporary. On Roblox, some features are developed such that a rollout is needed because it’s a largely breaking change - in this case an option is provided in the Workspace. This is opposed to shipping the feature update immediately with new behaviour. It works like this:

  • An option is provided in the Workspace to disable the new behaviour. For developers who have an experience that’ll break if new behaviour is enabled, they can disable the feature and work to update their experiences or communicate issues with engineers. There is a deadline to do this.

  • The option starts as “Default” which remaps to different behaviours during rollout. Initially it’s typically Disabled and then during late rollout it’s changed to Enabled. The Enabled/Disabled settings are so you can explicitly prepare: Disabled is for developers who need to update because the feature breaks their experience, Enabled is for experiences that are already compliant with the new behaviour and therefore do not need to rely on the old behaviour.

  • After the deadline passes, the option is removed and effectively all experiences going forward use the new behaviour. The old behaviour cannot be reverted to and it’s eventually removed out of the engine when it’s safe to do so.

The options are added there with the eventual intent of removal. You’re not supposed to leave them disabled and expect they’ll permanently persist. As another example, the SignalBehavior option in the Workspace can be switched between Default/Immediate/Deferred; eventually Deferred will become the only way to work with signals and the option to switch between signal behaviours will be removed.

You’re expected to keep up with announcements relating to the property and use the time before the deadline to update your experience or voice concerns you ran into while dealing with the migration process (e.g. lack of animation priorities was an issue raised for the blending fix which resulted in additional layers of Action priorities to assist in easy transitioning).

2 Likes

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.