Is this possible? Loading common files from the web

I had an idea for something that I’m not sure is possible, and I’m wondering what would be entailed.

I was thinking of having a game that could have new assets load from a website. (Or at least from a local file, as I would use that initially.) But moreover, loading new content without having to stop the game for an update.

What I am thinking is having a game grab some new content files from an external source that were not compiled as part of the data originally. So like, someone could be playing a game, and the player enters a new area, and the game downloads new files that were not already on the player’s system.

My first thought is to have the game run through a web browser, (but if it could be run locally as a computer app, I imagine that would run smoother,) and in such a game I would kind-of expect to be able to load extra data from a web server after a game is already running; I wouldn’t want the player to download the entirety of the game, I would want new areas to download separately.
I suppose I should ask if this is possible, just this first phase of what I am describing.

So the next step of what I’m really looking for is to be able to add content to the player without having to exit the game. Content that possibly didn’t even exist when the player started their game. Nothing grand, mind you, and I’m not talking about new scripts or altering content. But maybe some new textures, images for the UI, music, and text.

Like, I could have someone in a game, and I amend some text file on my server with addresses for new content, and then the player loads a new scene, their local game reads the file to get addresses for the next levels content, and thus it loads the new content from a new file on the server. Bam, it’s loading game content that didn’t even exist when the player started their game!

Is this possible? If so, what kind of restrictions does this carry?
Would I have to make a completely enclosed package file for Unity to read, or are there some files that I could just directly download from the web? Specifically I was thinking of music files and some images to display in the UI, and it would be great if I could just upload those to my server as mp3’s and png’s. But it would be great if I could also load new textures (or create a new texture from a downloaded image file) and even entirely new scenes.

All day long. Look up Addressables.

I had in the past; I didn’t know they could work with assets not given at compile time.

…Which I just realized is a much simpler way to describe what I was thinking. “Add assets not given at compile time.”

Yes this is very possible. I currently manage a project that uses Unity’s old solution for this, AssetBundles, which still works but is a bit complicated. Addressables are the new way to do it. You can also download “raw” files directly and then load them at runtime, although you’ll need to be comfortable with file IO and serialization generally for that. UnityWebRequests are good for grabbing things either from the web or from a local file. Beware that you can’t (or at least shouldn’t) download code this way. You can download prefabs with scripts already included in your game, but you cannot download new scripts*.

*This isn’t technically right; you could in theory download source files or libraries as text files, then compile and link to them. You absolutely should not do that, but technically you can.