- Aug 12, 2017
- 707
- 1,956
Rpgmaker reads and loads in its internal cache the files/folders in the following order:Ah that's so ### up. Those files are part of the some of the tile sets and stuff that I added to the game no idea those might be the cause of this issue. Not entirely sure I understand the exact issue completly though.
Lower/Uppercase should not matter on windows (on contrary to Linux) unless RPGmaker does check the upper/lower case.
This does seem to explain why this problem seems to occur more frequently on low end systems.
1) the RTP files directory/subdirectories (loads in cache)
2) the files from the game.exe directory/subdirectories (updates the cache)
3) the files from the archive internal directory/subdirectories (updates the cache)
In case of multiples with the same subdirectory & name.extention files, it uses the one loaded last.
And the above is repeated everytime it does not find a file already in the cache (if it was cleared previously).
Rpgmaker check's the letter case but does not care about it. So the file (2) "Window.png" will be updated/replaced in cache with (3)"window.png".
In heavy events, huge rgss3a archive and slow cpus the code can be executed before the (3) cache update occurs... the image loaded in cache from (2) doesn't have the pixels it expects and triggers the error. And because it happens in milliseconds it is extremely difficult to replicate.
Falcon on the other hand (both in windows and linux) will see two different files* (2)"Window.png" and (3)"window.png" and will always load in cache, the file named as it appears in the code... So will always use "Window.png". And the bug is replicated everytime.*
The larger the archive is the larger the number of files has, the more time is needed to parse its contents and find and load the correct file. And since "system" and "tiles" folder are parsed after the "pictures" folder, with each update you release, since you'll add more and more images, it will be triggered more and more frequently.
Slower cpus need more time to parse the contents of the archive and they are more affected by it.
*I took advantage of this to make the bigger UI mode. Instead of loading "Scripts.rvdata2" from the archive it loads "scripts.rvdata" from the "Data" folder.
Last edited: