Quote:
A database isn't made to store files - it is made to store data. If you want to fill blob fields with tons of data like XML, images, etc.. you are really missing the point of a database imo.
Well, files contain data, right?
I got my inspiration somewhat from Blizzard. Their games that I have seen (eg. Diablo, World of Warcraft) store heaps of small files (graphics, sounds, and other things like landscapes) into .MPQ files. I am presuming that the MPQ files are a sort-of database. There are programs called MPQ-extractors that will pull out the individual .wav and other files that are stored in them.
I am guessing that internally the MPQ files are organized like a mini file-system, where the program can quickly access an individual item (eg. a sound) so it can be pulled out and played. These files are not pre-extracted, and thus the footprint for the gamer's file system is fairly low (ie. instead of tens of thousands of small files, they have a handful of MPQ files). Of course, they take up much the same amount of disk space.
Quote:
I don't want to have a 'compile' step after writing stuff, or need to edit stuff in a database.
I am inclined to agree with this. Whilst developing a plugin, it would be a pain to have to re-insert the XML every time you change a line of code. However the graphics and sounds are likely to be fairly static.
You could also conceivably have a few files, like this:
- The core plugin as a .XML file
- The graphics and sound effects in a database
- Localized data (ie. help messages, prompts) translated into various languages. You would install the database relevant to your language.
- User custom configurations (eg. position of windows, plugin options) in another database. The player could reset to default by simply deleting it.
|