Documentation
¶
Overview ¶
Package tact reads files out of a local World of Warcraft CASC install: .build.info picks the build, then root → encoding → .idx → data.NNN → BLTE resolves a file data id to its bytes. There is no CDN fallback.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildNumber ¶
BuildNumber extracts the trailing build number from a 4-part version string.
func LoadConfig ¶
LoadConfig reads a build/CDN config from the local install's Data/config/<xx>/<yy>/<hash> layout. Values are space-separated (typically `ckey [ekey]`). All keys are kept, including the ~318 unused `vfs-*` TVFS lines — they parse fine and are simply never consulted.
Types ¶
type AvailableBuild ¶
AvailableBuild is one .build.info product entry, reduced to the fields this local-only reader consumes.
func ParseBuildInfo ¶
func ParseBuildInfo(path string) ([]AvailableBuild, error)
ParseBuildInfo reads <BaseDir>/.build.info (typed pipe format: the header line names columns as "Name!TYPE:len") and returns all product entries.
func SelectBuild ¶
func SelectBuild(entries []AvailableBuild, product string) (AvailableBuild, error)
SelectBuild returns the first entry for the given product.
type Build ¶
type Build struct {
Entry AvailableBuild
BuildNumber uint32
// contains filtered or unexported fields
}
func (*Build) OpenFileByCKey ¶
OpenFileByCKey resolves a content key through encoding and opens the first encoding key locally.
type Listfile ¶
Listfile manages the community listfile.csv with download-if-stale semantics: HEAD + Last-Modified vs local mtime; a failed freshness check triggers a re-download, and a failed download falls back to the existing file when one exists.