Back when we used MMF to create games, we were able to make a folder with the game’s exe which would hold all the sfx and music in game. When you ran the game, it would load every sound it needed from this folder, and if you changed the file, the game would update and run the new audio file.
For example, we build the game and have it pull sound A (imagine sound A is a gunshot) from a folder whenever the character hits a key, but I want to be able to change sound A from a gunshot to an explosion, keep the file’s name, and have the build still work with the new sound, without the need to build a new .exe.
Is it possible to do this with Unity? Thanks in advance!
You can read files from computer in standalone. WebPlayer does not allow to read local files for safety reasons. Android/iOS will have restrictions to access local files as well.
Maybe you should think of a more flexible solution. On install, have the program connect to a server and download some of the assets you need to modify. Store them in Application.persistentDataPath and reach for that location when needed.
On start of each session, request the server and check if anything new, if so, download, erase old and place new one with same name.
EDIT: Based on comment, the designer needs to be able to run build and while doing so, change the assets. This is possible but obviously has some limitations.
Using WWW class it is allowed to load local files.
You could run that in the Start of a scene so that when the designer goes out of scene, changes the audio and comes back it will load the new one. It also works with meshes or textures (mesh requires a bit more work).
You could also develop a designer script that runs the loading on press of a magic key so that he does not have to get in and out of scene.