Multi Theft Auto

Before you begin: Back up your original assets before making any changes.

DEVELOPER TOOL / LOCAL PROCESSING

RenderWare asset inspector

Validate & repair DFF and TXD files in your browser. Nothing is uploaded.

Last updated:

VALIDATION GUIDE

What the validator checks

DFF

Model files

Chunk integrity
Headers, declared sizes, nesting, and chunk types must be internally consistent. Truncated, out-of-bounds, or malformed structures are reported.
Model structure
The model root and its supported child structures are checked for valid ordering and complete contents, including geometry, frames, materials, textures, and extensions.
Payload safety
Fields that are expected to be bounded or structured are checked against safe limits and their surrounding data. Suspicious or incomplete payloads are rejected rather than guessed.
Extra data
Data after the model root is reported as a warning because it falls outside the validated model data.

Repair scope: DFF repair applies only conservative, unambiguous structural fixes, preserves valid content, and refuses ambiguous or unsafe recovery. Trailing data may be removed from the repaired copy.

TXD

Texture dictionaries

Dictionary structure
The texture dictionary root, child boundaries, and supported chunk types must be valid and complete.
Texture payloads
Texture metadata is compared with the pixel data that follows it, including dimensions, format, mip levels, and declared sizes. Mismatches are reported as warnings.
Compatibility warnings
Platform identifiers and extra data outside the validated texture data are reported for review and left unchanged.

Repair scope: TXD repair attempts only deterministic structural fixes. Texture payload warnings are reported but not rewritten; structural failures that cannot be recovered remain unchanged and may need re-exporting with a compatible editor such as Magic.TXD.

+

Drop assets here

DFF and TXD files, one or many

PROCESSING

Repair settings

Validate only

Only deterministic structural repairs are written to a ZIP archive. Original files remain untouched.

Texture payload warnings are not rewritten; structural failures that cannot be recovered may need Magic.TXD to import and export again.

REPORT

Inspection results

RW

Your report will appear here.

COMMAND LINE ALTERNATIVE

Automate with Python

Run the standalone validator from a terminal.
Pass your resources folder to scan it recursively, including all subfolders.
Uses only the Python standard library. Works on Windows and Linux.

Download Python script

Use it from your MTA server folder

1

Download the Python script.

2

Place it in your MTA deathmatch folder, alongside resources:

deathmatch/
  validate_renderware.py
  resources/

Example Windows location:

C:\Program Files (x86)\MTA San Andreas 1.6\server\mods\deathmatch
3

Open PowerShell or a terminal in that deathmatch folder.

4

Recursively validate all .dff and .txd files in resources.

python ./validate_renderware.py ./resources

This reports each file's validation status.

5

Recursively attempt deterministic repairs for all .dff and .txd files in resources and its subfolders.

python ./validate_renderware.py ./resources --repair

This writes .repaired.dff or .repaired.txd files beside the originals by default and reports the status of each item (success or failure). Files with ambiguous structure are not written.
Original assets are not replaced unless you add --overwrite.

On Linux, use the equivalent deathmatch folder path and replace python with python3 if needed.

Warning: Repaired files use a .repaired.dff or .repaired.txd suffix by default. Add --overwrite only when you intend to replace the originals.

Repair scope: The --repair option attempts deterministic structural repairs for both DFF and TXD files. It does not guess or rewrite damaged texture payloads. Use Magic.TXD to import, fix & export valid TXD files.

For advanced investigation, add --verbose to see detailed findings, repair changes, and failure causes. Use validate_renderware.py --help for all available options.

NEED A HAND?

Get support on Discord

If you encounter an issue, visit the MTA Development Discord and ask for help.

Visit Discord