Skip to content

RealNeco000/PS2-Snowblind-Archive-Extractor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

PS2-Snowblind-Archive-Extractor ("Snowblind-Console")

Snowblind Archive Extractor

A Deep-Forensics Toolkit for the Snowblind Engine

The Snowblind Engine (Baldur's Gate: Dark Alliance 1 & 2, Champions of Norrath) has been a "modder's graveyard" for 20 years. Why? Because the archives are "monolithic"—thousands of files dumped into one giant .TEX or .LMP file with no names and no headers.

This tool changes that. It uses sector-alignment forensics to shatter these archives into readable pieces Phase 1: The "Grand Theft Auto" (Extracting the Game) Before you use this tool, you need the files,and a viewer (like TiledGGD)

Get the ISO: You need a legal copy of the game (PS2 or PC).

Extract the ISO: * On PS2: Use 7-Zip or ImgBurn to open the .ISO. Go to the DATA folder.

On PC: Just go to the game's installation folder.

Identify the Targets: * .TEX files = These are the "Texture Banks" (World, Characters, UI).

.LMP files = "Lump" files (Models, Levels, Scripts, and Audio).

Phase 2: Using the Console (The Workflow) Once you've unzipped the tool, follow this Path:

  1. Target & Slice Use the Browse button to pick a file (e.g., SWAMP.TEX). Click Sector Slicer.

What happens? The tool cuts the file into 128KB "Slices".

The Breakthrough: I found that the PS2 version of this engine loads textures into VRAM in exactly 128KB "pages". Slicing at this exact interval ensures the data isn't "cut in half," making it much easier to align in a viewer.

  1. Forensic Analysis Select a slice and click Check Slice.

Palette Check: If it says "VALID PALETTE", that slice contains a 1024-byte Color Look-Up Table (CLUT).

Pattern Recognition: In Snowblind archives, the palette is often stored in the slice immediately preceding the images it colors (e.g., slice_0000 is the palette for slice_0001 through slice_0010).

Phase 3: What i Discovered (The "Snowblind Secrets") This is the most important part of the documentation. Here is the "DNA" of the engine:

I. The 0x810 Padding Rule In almost every Snowblind texture, the real data does not start at the very beginning of the file.

Discovery: There is often a "header" or "null padding" that lasts for 2,064 bytes.

The Fix: In your viewer (like TiledGGD), set the Offset to 2064 (or 0x810 in hex). This "snaps" the pixels into their correct columns.

II. PS2 "Swizzling" (The Barcode Effect) If your texture looks like vertical bars or a messy barcode, it isn't broken—it's Swizzled.

Why? The PS2 shuffles pixel bits to make the GPU faster.

The Fix: Set TiledGGD to Tiled Mode. For Snowblind, the tiles are usually 16x16 or 32x16 blocks.

III. Audio Identification (VAG Files) Snowblind audio often has no extension.

Texture Hex: Looks like a solid "wall" of changing numbers (dense).

Audio Hex: Look for "Sparse" data with lots of repeating 00 or FF patterns. If you see the hex string 56 41 47 70, you've found a VAG (PS2 Audio) header!

About

Snowblind Archive Extractor An early-stage, community-focused extraction tool for PlayStation 2 Snowblind Engine games (Baldur’s Gate: Dark Alliance, Champions of Norrath). Designed to make asset exploration and modding accessible to everyone.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors