We are thrilled to announce a massive upgrade to our Packages system. Packages are units of reusable content that can be seamlessly used and upgraded across Places.
This release introduces a number of changes and improvements to how packages work. The largest change is how we treat modified package instances.
You can now publish Places with modified package instances.
We will warn you when we detect a package modification happens to confirm intent.
Modifying a package instance will disable AutoUpdate, one of the key features to keep things up to date.
We envision a future where most content on Roblox is Packages and will continue investing and building towards this vision.
Additional Changes
Completely changed how we detect package modifications into a much more reliable mechanism. There should be no more cases of Packages being modified without user action.
Modified the behavior of nested packages so that a modification to a nested package will propagate the change status to its parent. This makes nested package behavior consistent and predictable.
Enabled more customization of Package instances - Name can now be edited without causing the Package to be modified.
Finally, i’ve been using packages for quite a while now and I remember how annoying it was using them like a year ago. I kept getting moderated for no absolute reason and I had to re-create the packages and put them back into each place of my game. Fortunately that issue has been resolved some time ago.
One change I don’t really like is this:
I don’t see the point of this? It will just be more of a hassle having to re-enable it everytime I edit a package.
I always wanted to use packages, but the only one fluke I saw is their availability online…
I must be wrong of course, but can someone basically get to the marketplace page of your package and just get all your stuff like that? If yes, it’s a real privacy concern I’m not ready to look into… I really wanted to use those for obvious easniess reasons but I’m still reluctant to it…
Can someone cast a light on all this? Thanks in advance!
Are there any plans to make it so that when you publish a package it goes live in every place that it’s used in instead of having to re-publish each individual place for them to be live?
Thank God. I was just having an issue with that a few days ago with the payphones around my game’s map, where I wasn’t able to publish changes because they were seemingly “modified” packages.
Packages in the toolbox are in the “Inventory / My Packages” or “Creations / Group Packages” sections or in the Asset Manager under Packages. The privacy tab in the package details dialog allows you to control access to a package. The design is to enable people to collaborate on packages without exposing all other contents of the place.
However, Roblox Studio backends will prevent unauthorized users from accessing the package contents. You can still copy / paste the instances making up a package between instances of Studio or you can save out the parts via Studio and send the RBXL or RBXM files to other users, but it won’t let unauthorized users download the contents of the packages to update them, etc.
Will I have to click this every time I open a script in a package or will this get changed in the near future? My entire project is nested in packages across multiple places so having to click this every single time I open any script is going to be very annoying.
Really happy that we can publish experiences without publishing the packages now. That happened to be an incredibly workflow damaging blocker especially when keeping development copies of a place. I’ve had to delve into some bad workarounds without this feature available.
The best workflow would be having the same package assets in both the live and development areas but only shipping finished changes from the development copy to the live. Since changed packages couldn’t be published, we always had to ship changes in parallel which defeats the purpose of a development copy because the live version would carry a potentially broken feature.
A number of my experiences have switched back and forward between using packages and not; they’re a powerful feature but this quirk blocked us on a lot of fronts especially when we do a lot of iteration. One of my experiences stopped using packages and started using a MainModule to inject changes between the development and live versions which is not a practice I support at all.