Roblox animations are stored as rbxm files already, and, they’ve gotta have a file format to be downloadable as well. Assets aren’t the real block for why Roblox doesn’t want to support Studio offline.
The main issue is really that Studio is being forcefully integrated with the cloud in a bunch of ways, so, if a web service is down it won’t behave as intended and many features will break. For example, beta features, plugins, fast flags, etc make lots of web requests and many features built in to studio break when offline.
Because Roblox Studio makes web requests when you boot it up to check feature availability, updates, etc they would need fallbacks for when these web APIs go down.
Personally, I just say cache requests, and ignore the cache for those requests when connectivity is available. If connectivity isn’t available, pop up a message that Roblox Studio will be running in offline mode, exactly what was done before. I mean, this could even be integrated as a global switch, and Roblox could toggle a switch to start using cached requests during big outages. If that switch request fails the default should be to enable it.
The functionality for this is already built in to studio (its part of curl), and is far better than most things. It even exists already for certain assets such as CSG parts, which are stored in full in an http cache folder. It’s easy, cheap, low effort, and still provides Roblox with control, allowing them to tell people’s studio clients to stop trying to make connections.
This could be used to reduce strain during outages, while also keeping developers able to connect at least.
This would obviously still result in things breaking, you obviously can’t publish, and you aren’t simply able to just boot up any old version of studio for the first time and get it to work, but, it is an easy solution which preserves the state of studio since the last time you had used it. It preserves assets and things as well.
Roblox could disable certain features if they wanted to, such as publishing, and any sort of things where there are concerns.
And for people worried about storage usage, for one Roblox already caches a TON of assets, but also clearing it out or just disabling this feature is always an option.
Honestly, if I can decide on a way to do this I would write my own tool for this, and maybe release it publicly, but, I’ve tried in the past without much luck due to Roblox Studio intentionally bypassing things like proxies for certain requests, so there’s not a good way for me to sandwhich myself in there and start handling requests.