Libraries and tools for working with EverQuest game data
use libeq::pfs::PfsReader;use libeq::wld;fnmain(){// Extract .wld data from an .s3d filelet file = std::fs::File::open("gfaydark.s3d").unwrap();letmut archive = PfsReader::open(file).unwrap();let data = archive.get("gfaydark.wld").unwrap().unwrap();// Load .wld filelet wld = wld::load(&data).unwrap();let materials = wld.materials().collect::<Vec<_>>();let meshes = wld.meshes().collect::<Vec<_>>();let models = wld.models().collect::<Vec<_>>();let objects = wld.objects().collect::<Vec<_>>();}s3d is a CLI tool for listing, extracting, creating, and verifying EverQuest PFS archives. Built on libeq_pfs.
| Platform | Arch | Download |
|---|---|---|
| 🐧 Linux | x86_64 | s3d |
| 🍎 macOS | aarch64 | s3d |
| 🪟 Windows | x86_64 | s3d |
| Other | All releases |
# List files in an archive
s3d list gfaydark.s3d
# Extract all files
s3d extract gfaydark.s3d -o gfaydark/
# Create an archive from a directory
s3d create gfaydark-new.s3d gfaydark/This workspace also includes the wld-cli tool for viewing and extracting fragments from .wld files. Built on libeq_wld.
| Platform | Arch | Download |
|---|---|---|
| 🐧 Linux | x86_64 | wld-cli |
| 🍎 macOS | aarch64 | wld-cli |
| 🪟 Windows | x86_64 | wld-cli |
| Other | All releases |
# To view fragments
cargo run -p wld-cli -- explore gfaydark.wld
# Extract to raw fragment data files:
cargo run -p wld-cli -- extract gfaydark.wld destination/
# Extract and create to/from RON:
cargo run -p wld-cli -- extract --format ron gfaydark.wld gfaydark.ron
cargo run -p wld-cli -- create --format ron gfaydark.ron gfaydark.wld
# Extract and create to/from JSON:
cargo run -p wld-cli -- extract --format json gfaydark.wld gfaydark.json
cargo run -p wld-cli -- create --format json gfaydark.json gfaydark.wld