ID:272974
 
My problem may be similar to Kiyo's. But mine is likely worse. Ok. This problem does not occur with the executable file saved on my computer. But, obviously, in order for others to download my game, I had to create a .zip file containing a "Copy" of the executable [as well as the resource] file. Well, this so called "Copy" includes NONE of the sounds [apparently], because I cannot hear any of them when I play my game through the Download link (on my game's homepage). However, to reiterate, I CAN hear ALL of the sounds when I run my game using the executable file saved on my computer. Of course, no one else can run this file (again, pointing out the obvious). So why does the zip produce this error? Could this have anything to do with the way the executable file is compressed within the zipped folder? The zipped executable is less than half the size of the original. I find this to be most odd. Is it also possible that I did not package my files correctly (since this is where the zip is created)?
The resource files are not stored in the "executable" .dmb file (which I'd call the binary, because there is an actual, different process for making a .exe file from your game) but rather in the .rsc file. Additionally, the .zip file is SUPPOSED to be smaller than the files you put into it, because it's a compressed format.

As for your problem, it's likely that files are not being included in your .rsc file. If you have Clean Compile selected when you are packaging your files, everything that is not explicitly included in your code is not packaged into the .rsc file. Files that are explicitly included are anything that is written in single quotes, like so:

mob
icon = 'mob.dmi'


If the file is written in double quotes, then it is not explicitly included, and rather is fetched at runtime:

mob/verb/playmusic()
usr << sound("music.midi")


Files specified as such are not included into your .rsc file until they are fetched while the game is running, and if you Clean Compile the new .rsc file never gets them. The solution is to simply change the double quotes to single quotes.
In response to Garthor (#1)
I'm going to try this... And THANK YOU SOOOOO MUCH!!! For some reason, the most evil problems have the simplest solutions. =)
In response to Lethal Dragon (#2)
Umm... With the single quotes, I can't figure out how to use variables.

// This statement works fine, but it is not wrapped in single quotes:

world << sound( "[s].mid" )

// When I apply single quotes, the [] brackets do not store variables. I require the function to store variables within single quotes. How can this be done?

world << sound( '[s].mid' ) // This does not work.
In response to Lethal Dragon (#3)
Since single-quote strings must be constant, in this case you will need to include the files manually in the zip file. Toss all those files into a folder in your project's directory, call it sounds. You may also need to change "[s].mid" to "sounds/[s].mid". Then, when packaging your files, under additional files you'd need to add "sounds/" to include the sounds folder.
In response to Garthor (#4)
You are unbelievable!!!

You have solved my problem (which I had been tinkering around with for what seemed like eons)! You know, it's people like you that should be paid for posting. =)

Thanks again!