A solution to preloading game data for you gamers?
Posted: Tue Nov 13, 2012 3:24 pm
Hi peoples,
I've been thinking on the problem that a lot of you have been having with game data not being preloaded in to cache. I think I might have a solution for you but it will take a while for the file to be read. I've done a quick test and it appears that the data has been loaded in to cache but I'm not a gamer (not on the PC anyway) so I'll need someone test this for me. Keep in mind this is a bit of a hack, so if your game files far exceed your cache then the benefits maybe negligible
1) Identify the game data files. Usually they end in a .dat but they can be just about anything the developer wants.. I'd focus on sounds, textures, game binaries & 3d models. Usually they are large, but sometimes it could be a whole directory of small files. (in that case use a wild card, findstr a c:\game\data\*.*)
2) Open the Command line (CMD) and run the findstr command on the file. This will read & search through the enitre file and it should load the file in to the cache.
3) create a bat script that loads the data and then launches the game.
Here is an example of what the command should look like.
Findstr (search term, what you use doesn't matter) (Filename)
Findstr a 3dmodels.bin
Let's say you have 4 files, totaling 5GB, if you have a 5GB RAM cache you should be able to load all the files in to the cache.
textures.bin - 1.5GB
3dModels.bin - 1GB
sounds.bin - 2GB
game.exe - .500MB
--- What the bat file should look like. ----
findstr a "c:\program files\Kick ass game\textures.bin"
findstr a "c:\program files\Kick ass game\3dModels.bin"
findstr a "c:\program files\Kick ass game\sounds.bin"
findstr a "c:\program files\Kick ass game\game.exe"
"c:\program files\Kick ass game\game.exe"
---------------------------------
Keep in mind that reading from the HDD is always going to be slow so it might take a while for this data to be read off of the drives.
Data size / drive speed = time to load in seconds
5000MB / 150MBs = 33 seconds (this would be an ideal, since data is RARELY read at max speed I'd expect it to be about 2-3 minutes or more).
I've been thinking on the problem that a lot of you have been having with game data not being preloaded in to cache. I think I might have a solution for you but it will take a while for the file to be read. I've done a quick test and it appears that the data has been loaded in to cache but I'm not a gamer (not on the PC anyway) so I'll need someone test this for me. Keep in mind this is a bit of a hack, so if your game files far exceed your cache then the benefits maybe negligible
1) Identify the game data files. Usually they end in a .dat but they can be just about anything the developer wants.. I'd focus on sounds, textures, game binaries & 3d models. Usually they are large, but sometimes it could be a whole directory of small files. (in that case use a wild card, findstr a c:\game\data\*.*)
2) Open the Command line (CMD) and run the findstr command on the file. This will read & search through the enitre file and it should load the file in to the cache.
3) create a bat script that loads the data and then launches the game.
Here is an example of what the command should look like.
Findstr (search term, what you use doesn't matter) (Filename)
Findstr a 3dmodels.bin
Let's say you have 4 files, totaling 5GB, if you have a 5GB RAM cache you should be able to load all the files in to the cache.
textures.bin - 1.5GB
3dModels.bin - 1GB
sounds.bin - 2GB
game.exe - .500MB
--- What the bat file should look like. ----
findstr a "c:\program files\Kick ass game\textures.bin"
findstr a "c:\program files\Kick ass game\3dModels.bin"
findstr a "c:\program files\Kick ass game\sounds.bin"
findstr a "c:\program files\Kick ass game\game.exe"
"c:\program files\Kick ass game\game.exe"
---------------------------------
Keep in mind that reading from the HDD is always going to be slow so it might take a while for this data to be read off of the drives.
Data size / drive speed = time to load in seconds
5000MB / 150MBs = 33 seconds (this would be an ideal, since data is RARELY read at max speed I'd expect it to be about 2-3 minutes or more).