How can I dynamically load assets from a dedicated and moddable folder at runtime?

Kerbal Space Program (a Unity game) loads all its textures and models from a folder in the same directory as the executable at runtime. I would like my game to do this to make it easier for my artist to test out her work. How would I go about doing this?

You would pick a dedicated directory, such as ‘mods’ and read all files in it. Usually you’ll need to define a metadata file format to also read to define what each file actually applies to. (Kerbal does this with their custom ‘parts’ file format). Once you read those metadata files, read in the actual files they specify using functions such as Texture2D.LoadImage(). Then you have to apply all the textures and audio files and everything else to new prefab definitions created from code.

In short, Kerbal put a lot of time into developing their system. It’s not a trivial addition or natively supported by Unity.