CacheReaderΒΆ

Suite of tools to read the cache files of a popular MMORPG.

Include this file to get all of it. Reading anything starts with TCacheReader.Create, which fills the global CacheReader; from there TCacheIndex.Cache unpacks an index and the definition types decode what comes out of it. TMapChunkLoader renders maps and TItemSprite renders inventory icons, and TItemLoader and TNPCLoader build the item and NPC databases.

Range checks are off by default, since the decoders are hot loops over trusted data. Define ENABLE_CACHEREADER_RANGE_CHECKS before including this to turn them back on while developing.

Example:

{$I WaspLib/utils/cache-reader/cache.simba}

begin
  CacheReader := TCacheReader.Create();
  CacheReader.Indices[ECacheIndex.CONFIGS].Cache();
end.