Release Notes for 453

Yep, just open the customize shortcuts menu under File.
image

Does this mean we’ll finally be able to use :ApplyDescription on the client soon?

Humanoid:ApplyDescription will be available on the client soon for locally created humanoids. That is it will be able to be used if the Humanoid doesn’t also exist on the server. The reason for this is that there is some unexpected behaviour when using it with Humanoids that also exist on the server due to legacy replication rules. We are looking into if it’s possible to change these so that ApplyDescription could be used for all Humanoids on the client but that is more long term and will not happen any time soon.

3 Likes

Why was GetPath deprecated, did it just not work (as i suspected as I couldn’t make it do anything)?

I noticed from the API reference page that Humanoid:LoadAnimation() and AnimationController were marked as deprecated. All the tutorials on the API reference should be updated to the new way of playing animations by using the Animator instance.

6 Likes

Is there any concern about exploiting in that case? E.g, would an exploiter be able to just apply anything to their character they wanted as long as its proper UGC/Roblox content?

An exploiter can already change their characters appearance on the local client and this won’t replicate to the server. This would still be the same even if we released Humanoid:ApplyDescription on the client.

3 Likes

Ah I see, I guess I misunderstood. I can definitely see how that would be useful to devs. I’m assuming if they load body parts with different collision sizes as an R15 character nothing different would happen to how the client simulates physics, but, how would it effect animation playback? (Assuming there is even a good answer to that question)

Animation playback would still work well since we replicate just the information about the current animation track to other clients, not all the individual updates about what parts are moving.

Physics might work weirdly but this wouldn’t make any client side physics exploits that aren’t currently possible now possible.

3 Likes

This appears to be a mistake in the API documentation only, possibly due to a web code change that is case sensitive. Humanoid:loadAnimation (lowercase) is showing deprecated, Humanoid:LoadAnimation is not, and is showing correctly on the Humanoid API page, but not on its own detail page (where the red deprecation banner is showing for the wrong case variant). I believe this to be in error.

EDIT: Please re-read. While there is a mistake with loadAnimation not showing as deprecated, the long term goal is to transition to working directly with the Animator instance. Deprecation of Humanoid:LoadAnimation and AnimationController:LoadAnimation are intentional.

There is no need, however, to refactor your code at this time. For those who were experiencing animation loading issues this morning (Nov 5), it was not related to this API change, there was another platform issue with content loading, as well as an animation playback issue, either of which may have been the source of animations not playing or not looking correct.

1 Like

Can we get a new icon for the Animator? It’s currently a blue blob.

1 Like

I’m late to following up on this, but after confirming how it works I can answer this question now.
GetPath was deprecated because it has no real purpose or use outside of C++

It returns a Qt resource path if the provided alias is defined in the Theme.json file of the Studio theme you are using. You can view a list of valid paths in the QtResources/themes folder of my Client Tracker.

So as an example, the following path is valid:

> print(settings().Studio.Theme:GetPath("AudioImport/RobuxIcon"))
:/images/BulkImport/DarkTheme/robux-dark.png

The images being pointed to here are also rooted in my client tracker’s QtResources folder.

Ultimately the problem with this API is that it never had any use in Lua. The decision to reflect it into Lua was an oversight by the engineer who implemented the theme system.

4 Likes

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