-
Wearing the cartoon pack, and only the cartoon pack, while in Jailbreak breaks crouch. The animation pack might have too high of a priority.
-
This happens every time. You press c to crouch, and walking makes you stand right back up.
-
This happens in Jailbreak. (We get a ton of complaints about this from cartoon package owners). https://www.roblox.com/games/606849621/Jailbreak-Beta
-
We’d (@badcc) seriously appreciate this patched!
Yeah, you are right about the priority issue. The problem is that the Cartoony animation package is using the Action priority rather than the Core priority.
Not at work right now so I can’t get this updated, I think we can fix this first thing tomorrow morning though.
For now you can set the Priority on the AnimationTracks loaded in the Animate script.
We appreciate it, thank you so much!
I recall having issues with the mage animation package as well. Just wanted to let you know in case you guys hadn’t realized.
The Mage, Pirate and Cartoony animation packages have now been updated to fix this issue.
yay i made that feature
This is why you don’t rely on these things, they are bound to be a problem later
I just checked out a server and found the issue still there with the cartoon animation pack.
I just equipped the package and joined Jailbreak and it worked fine.
Is it possible that this is a caching issue? I’m not 100% sure about how animations are cached but maybe the data is cached server side and that is causing the issue in this case. Do you think the server could have been more than a day old?
Here is some code that can be used in the studio command bar (note: modifies Workspace, use in empty baseplate only) to verify that all the animation packages have the correct priority.
local animationPackageIds = {658839027, 619547874, 619520125, 619526284, 619540515, 619533495, 734338331, 754668466, 837018588, 837029051}
local MarketplaceService = game:GetService("MarketplaceService")
local InsertService = game:GetService("InsertService")
local AssetService = game:GetService("AssetService")
local KeyframeSequenceProvider = game:GetService("KeyframeSequenceProvider")
local ServerStorage = game:GetService("ServerStorage")
local Selection = game:GetService("Selection")
local plugin = PluginManager():CreatePlugin()
for _, packageId in pairs (animationPackageIds) do
local packageName = MarketplaceService:GetProductInfo(packageId).Name
local containerModel = Instance.new("Model")
containerModel.Name = packageName
local assetsInPackage = AssetService:GetAssetIdsForPackage(packageId)
local assetsLoaded = 0
for _, id in pairs(assetsInPackage) do
spawn(function()
local loadedModel = InsertService:LoadAsset(id)
loadedModel.Name = MarketplaceService:GetProductInfo(id).Name
loadedModel.Parent = containerModel
assetsLoaded = assetsLoaded + 1
end)
end
repeat wait() until assetsLoaded == #assetsInPackage
function getAnimations(obj)
local resultTable = {}
local function getAnimationsRecursive(curObj)
if curObj:IsA("Animation") then
table.insert(resultTable, curObj)
else
for _, child in pairs(curObj:GetChildren()) do
getAnimationsRecursive(child)
end
end
end
getAnimationsRecursive(obj)
return resultTable
end
for _, anim in pairs(getAnimations(containerModel)) do
local keyframeSequence = KeyframeSequenceProvider:GetKeyframeSequence(anim.AnimationId)
keyframeSequence.Parent = anim
if keyframeSequence.Priority ~= Enum.AnimationPriority.Core then
local assetId = string.gmatch(anim.AnimationId, "%d+")()
print("Wrong priority for animation with assetId " ..tostring(assetId))
-- Code to save fixed version of the files
--[[
local keyframeSequenceClone = keyframeSequence:Clone()
keyframeSequenceClone.Priority = Enum.AnimationPriority.Core
keyframeSequenceClone.Parent = ServerStorage
Selection:Set({keyframeSequenceClone})
plugin:PromptSaveSelection(tostring(assetId))
keyframeSequenceClone:Destroy()
--]]
end
end
containerModel.Parent = workspace
end