It somehow thinks I changed it. I’m not 100% sure how to replicate this. It seems to wonk out when I enter play mode or use undo (even though I haven’t even modified the package).
Important Notes:
Undoing the changes to the package does nothing and the game still thinks it is updated
It starts sometimes when I use play mode, or use undo, or move it to a different place in the hierarchy
The only way to solve this issue is to update the package for no reason or to delete and readd said package
The contents of this package are various NPC models with humanoids used for a ViewportFrame UI
The PackageLink is set to AutoUpdate
This is the only package I use that is affected by this bug
The player does not spawn, I use LoadCharacter (potentially relevant?)
Hi @cloakedyoshi, we are still looking into the issue.
In the meantime, I suggest to break large package into smaller ones. E.g. One NPC per package and then publish all the NPCs as a single package. Another suggestion would be refrain to use JointInstance (e.g. weld) if there is an alternative choice. Hopefully these methods will mitigate some of the pain.
Thanks for your patience!
I’ve found that using Humanoid objects in a package can cause some weird behavior. JointInstances have actually always been completely fine for me. Are the Humanoid objects necessary for you to use them in the ViewportFrames? Have you tried removing them?
I can now 100% confirm that it is a floating point error with position and rotation.
Repro:
Make and use a package with a scale including or exceeding two decimal points for either movement, scale, or rotation
Rotate the package, move it, and clone it in the workspace several times
Studio thinks you’ve changed it, when in reality you have not
This makes packages extremely inconvenient and borderline unusable.
Please let me know if you would like additional information.
This also means that @billlipeng’s earlier suggestion to make small packages within bigger packages does not work, as it creates of chain of packages that apparently were changed (when in reality it is a floating point error).
Breaking a large package into smaller ones will mitigate the issue. E.g. separate scripts out of models with 3d parts, and script package will work fine.
This issue is in our pipeline. I’ll keep you posted.
I don’t know if it helps, but it’s likely a floating point error. If you ensure everything is greater than one decimal point it makes it a lot less painful.
That said, would love to get an update on this. It’s been interrupting my workflow for over nine months.
The only fix for this I can think of is automatically adding some sort of “Object” into the PackageLink object which would be working as relative point for whole package. So when you move the whole package around the map, relative position of each of it’s descendants to the packagelink object stays the same until you modify one particular part.
I think it would also be cool to allow some easy “customization” in packages - eg allow “Configuration” object in PackageLink and if any of it’s descendants was changed, it wouldn’t affect the state of package.
To make it easy to implement updates, there could be a “DefaultConfiguration” folder (read-only unless you’re package maintainer, rewritten when updating package) and the “Configuration” one anyone can configure.
Hi, we just released a fix yesterday. Can you please check if this issue is still reproducible? If it is, can you please share the minimums steps to reproduce the bug? Thanks!