Quail is a command line EverQuest archive manager.
You can use it to extract content from EQG, S3D, and other pfs-based files.
You can also use it with WCEmu to modify content.
For a more user-friendly approach, I suggest quail-addon.
You can find the latest download of quail in releases
Quail currently in an early preview status. While many functionality goals have even reached, they are buggy and not supporting every use case.
Quail has a number of commands that are displayed when the program is ran on it's own with no arguments:
Available Commands:
completion Generate the autocompletion script for the specified shell
compress Compress an eqg/s3d/pfs/pak folder named _file.ext/ to a pfs archive
convert Take one file, convert to another
extract Extract an pfs (eqg/s3d/pak/pfs) archive to a _file.ext/ folder
extract-mod ExtractMod an pfs archive to a _file.ext/ folder
help Help about any command
hybrid Hybrid merge geometry with existing bone data
inspect Inspect an EverQuest asset
Pfs represents packaged files, you can think of them as zip compressed archives but has a special format
Extension | Notes |
---|---|
eqg | EverQuest Game Asset Pfs Archive |
s3d | EverQuest Game Asset Pfs Archive (Legacy) |
pak | EverQuest Game Asset Pfs Archive (Legacy) |
pfs | EverQuest Game Asset Pfs Archive (Legacy) |
Model meshes represents geometry data, and some times metadata
Extension | Notes |
---|---|
dat | zone model for version 4 zones |
mds | npc, object and item model information |
mod | npc, object and item model information |
ter | zone model data for version 1 to 3, similar to mod/mds just without bone data |
wld | megapack of model metadata and model information for s3d legacy pfs archives |
Model Metadata gives additional information about a mesh
Extension | Notes |
---|---|
ani | Animation data, frame by frame based on bone locations |
edd | Emitter definition data, aligns with prt to give details about how particles and emitters work |
lay | Layered texture data (Used for texture swaps/variations in a single model) |
lit | Light baking data, has same count as vertices |
lod | Level of Detail related information, usually refs to additional meshes to render based on distance |
prt | Particle Rendering Transformations, |
pts | Particle Transformation Statements, |
tog | Toggle data |
zon | Zone placement data, gives information about the zone terrain and object placements. Version 3 and below this is a binary file, Version 4+ it is raw text in a 3DsMax format |
eco | Ecology metadata, used for randomizing and blending maps in Version 4 Zones |
rfd | Radial Flora Data, grass, rocks,and other placable greenery metadata |
Name | Notes |
---|---|
floraexclusion.dat | Flora exclusion areas, Versin 4 zones use this to create ignores on RFD files |
prj | 3DS Max Project files, this is used by internal team for opening a pfs mesh, doesn't appear to have any use for EverQuest. |
dbg.txt | Debug log, shows the last export attempt internally, doesn't appear to have any use for EverQuest. |
- Import Support
- Bugs EQG with V4 and zone files
- Bugs S3D (not supported currently)
- Export Support
- UV Fix bad alignment
- Bone/Animations
- Image Sequence support (animated textures)
- MOD support
- S3D/WLD support
- V4 Zone support
At the root of the repo, you'll see a file called .env_default
. Copy it to the file .env
, and edit the EQ_PATH variable inside to point to your EQ directory. NOTE that this EQ directory will get folders made like _gequip.s3d/, or _test_data/, so you may want to consider pointing to a unused EQ path if you don't like the clutter of folders on top.
- Frozen Crusader Ornament, item id 81466, is it13926
gltf writer for wld fragments in lantern