The change was fixed originally (Post), but the “fix” was undone.
As aforementioned, actors should inherit all properties from models and act as a backup. This bug halts people from using actors as player characters.
While Actors do indeed inherit all of the properties from a model instance, they should not be used as a replacement for a model. An actor instance should be used to create scripts that run in parallel as stated in the Documentation. The classname of an Actor is “Actor”, the clasname of a model is “Model”. Roblox’s system checks if the Character is a model and not anything else.
Edit: Fixed Documentation link
So this would be similar to setting the Player.Character to a “Tool”…?
Is there any reason why they shouldn’t be? Actors are intended to also house all instances accessed by their scripts as-per the documentation so including character assets if that is what you are accessing is ideal. Using them as the overall character container then sounds reasonable given that documentation; otherwise, you’d need to effectively have two container objects for the character.
Plus, given this post’s wording, it also seems that this is perhaps a regression in behaviour; meaning it would rightfully be a bug rather than a feature, if so.
I wan’t to correct myself here, giving the fact that the documentation also states that an actor instance should also contain the instances the scripts will use. From my personal view I always thought Actors should only be used to hold scripts and aren’t a container for multiple different instances unlike models. Giving the safety limitations you get when having any script inside an Actor (unless the script is correctly designed to correspond to these limitations), it’s (in my opinion) fairly reasonable for roblox internal systems to only check if the Character of a player is a model. This behavior ensures compatibility and avoids unintended issues.
Imagine this scenario:
A developer replaces the top level instance of their character with an actor, animations stop working and the character won’t move. Errors start flooding the console. They think it’s true that Actors are a replacement for models, which is why they think it’s an issue on roblox’s end and these errors are not caused by the limitations that came from using an Actor.
I think it’s fine to allow users to use Actors instead of models for their characters, but I don’t see this limitation as a bug but rather as a safety measure. This is why I think that it should be a feature request rather than a bug report. I’d also like to apologize for the previous confusion.
Thanks for the report! We’ll follow up when we have an update for you!