Actions

Old Engine/JAGGRAB Protocol: Difference between revisions

From RuneWiki

Line 1: Line 1:
==Basics==
==Basics==
JAGGRAB runs on port 43595.
JAGGRAB runs on port 43595. It is used as a fallback when a resource over HTTP is not available. It downloads the necessary BZip2 archives to bootstrap the client. They are then stored in main_file_cache.idx0.


This protocol is essentially HTTP/0.9, see: https://www.w3.org/Protocols/HTTP/AsImplemented.html. The main difference is the client closes the connection, not the server. If you close the connection from the server the client will trigger an exception.
This protocol is essentially HTTP/0.9, see: https://www.w3.org/Protocols/HTTP/AsImplemented.html. The main difference is the client closes the connection, not the server. If you close the connection from the server the client will raise an end of stream exception.
 
JAGGRAB was used as a fallback when a resource over HTTP was not available (due to a connection timeout or 404). It downloads the necessary BZip2 archives to bootstrap the client. They are stored in main_file_cache.idx0.


The remaining model, animation, midi, and map data is loaded [[On Demand Protocol|on demand in a separate protocol]].
The remaining model, animation, midi, and map data is loaded [[On Demand Protocol|on demand in a separate protocol]].

Revision as of 00:36, 6 September 2021

Basics

JAGGRAB runs on port 43595. It is used as a fallback when a resource over HTTP is not available. It downloads the necessary BZip2 archives to bootstrap the client. They are then stored in main_file_cache.idx0.

This protocol is essentially HTTP/0.9, see: https://www.w3.org/Protocols/HTTP/AsImplemented.html. The main difference is the client closes the connection, not the server. If you close the connection from the server the client will raise an end of stream exception.

The remaining model, animation, midi, and map data is loaded on demand in a separate protocol.

URIs

"crc" + rand() + "-" + clientVersion

"title" + crcs[1]

"config" + crcs[2]

"interface" + crcs[3]

"media" + crcs[4]

"versionlist" + crcs[5]

"textures" + crcs[6]

"wordenc" + crcs[7]

"sounds" + crcs[8]