

- #Runescape private cache download update
- #Runescape private cache download code
- #Runescape private cache download download
#Runescape private cache download code
Thanks light232 for some sample code using the FileChannel class.
#Runescape private cache download update
Update November 25th, 2010: Updated it to work with the latest clients (629+) and replaced CacheIndex with FileStore. Update November 26th, 2010: Fixed a bug that was introduced during testing that caused the program to stop after a timeout instead of reconnecting. I've replaced the Whirlpool class and rewritten the ReferenceTable class also. Update December 4th, 2010: Uploaded the files again, since they were removed for some reason. Update December 6th, 2010: Made a small update to the ReferenceTable class to eliminate the use of null Entry objects. Also, a change was made in CacheDownloader to allow for the downloading of the contents of index 35 when it's finally used. Update December 22nd, 2010: Made a small change to the ReferenceTable class that fixed an issue I created when rewriting it. Update August 31st, 2011: Updated the ReferenceTable class to mirror the functionality in the newest client. Please let me know if this happens so that I can address this issue. If this isn't the case, it will fail to identify the correct client version. Currently, the tool assumes that the minor version number will always be 1. Update November 15th, 2011: Updated the protocol to be consistent with the current client. Update January 7th, 2012: Modified the protocol to be consistent with the newest clients. Update February 17th, 2012: Added support for a larger range of files. Update October 25th, 2012: Updated the protocol. Update November 28th, 2012: Updated the protocol and fixed a logic error. Update June 8th, 2013: Updated the protocol and increased the maximum file size. Update June 25th, 2013: Updated the protocol. Update August 22nd, 2013: Added support for the new sound server and added temporary fix for index 14 bug. Update January 1st, 2014: Increased maximum file size. Update July 1st, 2014: Updated the protocol. Update July 29th, 2014: Increased the maximum file size and fixed a bug preventing the program from exiting when finished. Update July 31st, 2014: Changed the lobby server used for downloading music files. Update August 16th, 2014: Updated the reference table structure. Update February 21st, 2015: Updated the lobby and world constants. Update March 1st, 2015: Fixed a bug with request priorities. Update July 20th, 2015: Updated the protocol. Update July 27th, 2015: Added support for the new compression type. Update September 16th, 2015: Split the data for index 40 (streaming music) to its own data file to avoid issues with large files. Update January 18th, 2016: Updated the protocol. Update February 21st, 2016: Updated the protocol. Update February 23rd, 2016: Fixed a progress display bug in the previous release. Release thread for this tool here.Update March 2nd, 2016: Fixed an issue with file reading/writing that could cause an exception. If not, it's requested, stored to the cache and then processed. If it's a match, the resulting file is processed. CRC & Version are checked against the loaded CRC/Version files (Which stores the latest always). CRC and Version are calculated for the loaded file OnDemand unpacks the version and crc files from ^ If you look into how it works, you'll see the following process: JAGGRAB actually serves the CRC/Version files used by the OnDemand system. Unsigned byte blockData In action, example Smaller blocks (at the end of a file) are permitted. The maximum size of a block is 500 bytes. There can be multiple requests per session. The client first authenticates as an ondemand client by using the opcode '15' (as opposed to the game, which uses the type '14'). The client knows which files to update from the CRC file downloaded using the JAGGRAB protocol. The 'Ondemand' protocol is used to stream updates to the cache. NOTE: The crc is postfixed with the client revision This is to help avoid caches when these files are fetched over HTTP. NOTE: the client will usually postfix these with random numbers, so when checking for the file only the start of the string should be examined: not the whole one. There are a number of files which map to files in the cache. Once the response is sent, the connection is closed. The response is simply the raw file data. In (perhaps all) new engine clients, the client prefixes the JAGGRAB request line with a single byte (value 17). Therefore, it is very similar to a HTTP/0.9 GET request. Request formatĪ request is simply the text JAGGRAB, a space, the path to the file and a newline character. This generally happens in unsigned mode and helps users who are behind firewalls. It is a text-based protocol, similar to HTTP/0.9, and the client will fall back to HTTP if JAGGRAB is unavailable.
#Runescape private cache download download
The JAGGRAB protocol is used to 'grab' cache files from the file server and download them.
