runescape-cache-tools icon indicating copy to clipboard operation
runescape-cache-tools copied to clipboard

Handling cache on Mac

Open twrightsman opened this issue 8 years ago • 5 comments

I'm exploring the cache on Mac OSX, located in ~/Jagex/Runescape, and I believe the file format has changed. They have switched over to sqlite3 databases, is this the NXT format you refer to?

I found OGG files in "js5-14.jcache" and "js5-40.jcache"

twrightsman avatar Jul 25 '16 17:07 twrightsman

https://gist.github.com/twrightsman/7fa275bc738747282f4611e657be814a

$ python3 find_ogg_in_RS_cache.py 
Searching js5-40.jcache...
Found OGG file in js5-40.jcache in key 37292 at address 568
...
Found OGG file in js5-40.jcache in key 42043 at address 0
Searching js5-14.jcache...
Found OGG file in js5-14.jcache in key 307 at address 20
...
Found OGG file in js5-14.jcache in key 46091 at address 20

twrightsman avatar Jul 25 '16 17:07 twrightsman

Yeah, they've changed around the format. However, the files they actually store are the same as the old cache (even the new models are in there). I started working on the NXT format (the older commits here: https://github.com/villermen/RuneScapeCacheTools/commits/feature/proper-cache-implementation), but I decided I'd rather get the old format working properly first. My full cache download tool (RSCD) doesn't download in the newer format anyway, so it's shelved for now. When I get everything working properly again I'll focus on NXT, and the small differences in the format.

villermen avatar Jul 25 '16 17:07 villermen

The NXT format does store the raw files way more easy to obtain though (no compression, split up into different rows).

villermen avatar Jul 25 '16 17:07 villermen

Would you mind if I made a python-based no-gui library to try and replicate what you're doing here (I know at least your license permits it)? Mostly so that I can work with the cache on *NIX and only target the NXT cache format.

twrightsman avatar Jul 28 '16 03:07 twrightsman

Yeah, go ahead. Be sure to use the code in the branch I'm working on as your reference, as that code is working as it should =). The base working of the NXT cache should be pretty much the same, but there seem to be some subtle changes here and there that made me want to implement the RuneTek5 cache before starting on it. If you could annotate your findings in your code, and send me it or your repository when you get started that might help me out too even =)

villermen avatar Jul 28 '16 05:07 villermen