2012-08-27 22:17:30 -04:00
[[Category Cache]]
== Introduction ==
2012-08-28 21:50:07 -04:00
The 'Ondemand' protocol is used to stream updates to the cache. The client knows which files to update from the CRC file downloaded using the [[JAGGRAB Protocol|JAGGRAB protocol]].
2012-08-27 22:17:30 -04:00
== Request packet ==
The client first authenticates as an ondemand client by using the opcode '15' (as opposed to the game, which uses the type '14').
The format of the request is:
unsigned byte cacheId;
unsigned short fileId;
unsigned byte priority;
There can be multiple requests per session.
== Response packet ==
The response is sent in blocks. The maximum size of a block is 500 bytes. Smaller blocks (at the end of a file) are permitted.
Each block has the format:
unsigned byte cacheId;
unsigned short fileId;
unsigned short fileSize;
unsigned byte blockNumber;
unsigned byte[] blockData;