Documentation
¶
Index ¶
- Variables
- func DetectGameDir() (string, error)
- func ExtractorConfigHelpMessage(template ConfigTemplate) string
- func NewConsolePrinter(colorOutput bool, stdout io.Writer, stderr io.Writer) *printer
- func ParseHashes(str string) []string
- func VerifyGameDir(path string) error
- type App
- func (a *App) ExtractFile(ctx context.Context, id stingray.FileID, outDir string, extrCfg Config, ...) ([]string, error)
- func (a *App) LookupHash(hash stingray.Hash) string
- func (a *App) MatchingFiles(includeGlob string, excludeGlob string, includeTriadIDs []stingray.Hash, ...) (map[stingray.FileID]*stingray.File, error)
- type Config
- type ConfigTemplate
- type ConfigTemplateExtractor
- type ConfigTemplateOption
- type ConfigValueType
- type Printer
Constants ¶
This section is empty.
Variables ¶
View Source
var ConfigFormat = ConfigTemplate{ Extractors: map[string]ConfigTemplateExtractor{ "wwise_stream": { Category: "loose_audio", Options: map[string]ConfigTemplateOption{ "format": { Type: ConfigValueEnum, Enum: []string{"ogg", "wav", "aac", "mp3", "wem", "source"}, }, }, DefaultDisabled: true, }, "wwise_bank": { Category: "audio", Options: map[string]ConfigTemplateOption{ "format": { Type: ConfigValueEnum, Enum: []string{"ogg", "wav", "aac", "mp3", "bnk", "source"}, }, }, }, "bik": { Category: "video", Options: map[string]ConfigTemplateOption{ "format": { Type: ConfigValueEnum, Enum: []string{"mp4", "bik", "source"}, }, }, }, "material": { Category: "shader", Options: map[string]ConfigTemplateOption{ "format": { Type: ConfigValueEnum, Enum: []string{"glb", "blend", "source"}, }, "single_glb": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "image_jpeg": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "jpeg_quality": { Type: ConfigValueIntRange, IntRangeMin: 1, IntRangeMax: 100, }, "png_compression": { Type: ConfigValueEnum, Enum: []string{"default", "none", "fast", "best"}, }, "all_textures": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "accurate_only": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, }, }, "texture": { Category: "image", Options: map[string]ConfigTemplateOption{ "format": { Type: ConfigValueEnum, Enum: []string{"png", "dds", "source"}, }, }, }, "unit": { Category: "model", Options: map[string]ConfigTemplateOption{ "format": { Type: ConfigValueEnum, Enum: []string{"glb", "blend", "source"}, }, "include_lods": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "join_components": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "bounding_boxes": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "single_glb": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "no_bones": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "image_jpeg": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "jpeg_quality": { Type: ConfigValueIntRange, IntRangeMin: 1, IntRangeMax: 100, }, "png_compression": { Type: ConfigValueEnum, Enum: []string{"default", "none", "fast", "best"}, }, "all_textures": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, }, }, "geometry_group": { Category: "model", Options: map[string]ConfigTemplateOption{ "format": { Type: ConfigValueEnum, Enum: []string{"glb", "blend", "source"}, }, "include_lods": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "join_components": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "bounding_boxes": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "no_bones": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "image_jpeg": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, "jpeg_quality": { Type: ConfigValueIntRange, IntRangeMin: 1, IntRangeMax: 100, }, "png_compression": { Type: ConfigValueEnum, Enum: []string{"default", "none", "fast", "best"}, }, "all_textures": { Type: ConfigValueEnum, Enum: []string{"false", "true"}, }, }, }, "strings": { Category: "text", Options: map[string]ConfigTemplateOption{ "format": { Type: ConfigValueEnum, Enum: []string{"json", "source"}, }, }, }, "package": { Category: "text", Options: map[string]ConfigTemplateOption{ "format": { Type: ConfigValueEnum, Enum: []string{"json", "source"}, }, }, }, "raw": { Category: "", Options: map[string]ConfigTemplateOption{ "format": { Type: ConfigValueEnum, Enum: []string{"source", "main", "stream", "gpu", "combined"}, }, }, DefaultDisabled: true, }, }, Fallback: "raw", }
Functions ¶
func DetectGameDir ¶ added in v0.3.1
Returns error if steam path couldn't be found.
func ExtractorConfigHelpMessage ¶
func ExtractorConfigHelpMessage(template ConfigTemplate) string
func NewConsolePrinter ¶ added in v0.5.17
func ParseHashes ¶ added in v0.3.1
func VerifyGameDir ¶ added in v0.3.1
Types ¶
type App ¶
type App struct {
Hashes map[stingray.Hash]string
ThinHashes map[stingray.ThinHash]string
// Passed triad ID (-t option).
TriadIDs []stingray.Hash
ArmorSets map[stingray.Hash]dlbin.ArmorSet
DataDir *stingray.DataDir
}
func OpenGameDir ¶ added in v0.3.1
func OpenGameDir(ctx context.Context, gameDir string, hashes []string, thinhashes []string, triadIDs []stingray.Hash, armorStrings stingray.Hash, onProgress func(curr, total int)) (*App, error)
Open game dir and read metadata.
func (*App) ExtractFile ¶
func (a *App) ExtractFile(ctx context.Context, id stingray.FileID, outDir string, extrCfg Config, runner *exec.Runner, gltfDoc *gltf.Document, printer Printer) ([]string, error)
Returns path to extracted file/directory.
func (*App) LookupHash ¶ added in v0.4.2
Prints hash if human-readable name is unknown.
type Config ¶ added in v0.5.0
func ParseExtractorConfig ¶
func ParseExtractorConfig(template ConfigTemplate, cfgStr string) (Config, error)
type ConfigTemplate ¶
type ConfigTemplate struct {
Extractors map[string]ConfigTemplateExtractor
Fallback string
}
type ConfigTemplateExtractor ¶
type ConfigTemplateExtractor struct {
Category string
Options map[string]ConfigTemplateOption
DefaultDisabled bool
}
type ConfigTemplateOption ¶
type ConfigTemplateOption struct {
Type ConfigValueType
Enum []string
IntRangeMin int
IntRangeMax int
}
type ConfigValueType ¶ added in v0.3.2
type ConfigValueType int
const ( ConfigValueEnum ConfigValueType = iota ConfigValueIntRange )
Click to show internal directories.
Click to hide internal directories.