Old Wiki:EVE File Formats

From EVEmu Wiki
Jump to navigation Jump to search

Contents

EVE File Formats

.STUFF Files

The .stuff files in the EVE directory are basically a little uncompressed virtual filesystem. Almost every file located in the .stuff files is either a .blue file, a .wav file, a .ogg file, or a .tri file.

This file format is rather trivial. All integers are little endian. It starts with a four byte file count. Is then followed by a header for each file containing four bytes of file length, then four bytes of file path length, and then the file path string which is the specified number of bytes long. After you are past all of the headers, the data starts. The first block of data corresponds to the first file header, and is the number of bytes specified in the header long.

Tools to extract stuff files:

-- TriExporter - 417KiB

-- EVE Stuff Extractor - 138KiB

.TRI Files

These files are located in the .stuff files as documented above. The .tri files are basically 3d models, other people have figured out what the .tri files are, so somebody should update this with more info from them. There are tools out there to work with these files.

.BLUE Files

These files represent different types of resources, models, scenes, sounds, materials, effects etc... they are paired with values and a "listdata" of the values names, combining .tri, .ogg, .fxo and caracteristics of the resource type, an interresting value to obtain from this files is the BoundingSphereRadius? from models blues, to optimize updates of the space.

.CCP Files

These are standard zip files. They contain all of the python files found in \lib in versions prior to the Dragon client. All of these files are now in .pyj format.

.CODE File

The compiled.code file is in the Python Pickling format Protocol version 2. All of the specifics are available in the Python documentation, as well as in the source files for the pickling module (specifically pickle.py and pickletools.py), which are included in all Python installs. The compiled.code file appears to encode a python dictionary that maps filename keys with file data values. These files are both compiled python code, as well as some image and stylesheet files for the in-game web browser. In versions beyond the Blood client, these files are in .pyj format.

.PYJ Files

These are simply .pyo files that have been "Jumbled" with CCP's custom version of memfrob() that XOR's all bytes by 42. The contents of these .pyo files has been recovered, but because they are compiled the original source code can not be determined. They can be decompyled to reveal some of the details about their operation.