Skip to content

Updated to work with texture and cosmetic editor tools#5

Open
heisthecat31 wants to merge 8 commits intoEchoTools:mainfrom
heisthecat31:main
Open

Updated to work with texture and cosmetic editor tools#5
heisthecat31 wants to merge 8 commits intoEchoTools:mainfrom
heisthecat31:main

Conversation

@heisthecat31
Copy link

No description provided.

added extra format options and improved detection or something i dont know
there was too much so ill list what i remember;

updated texconv to add extra format and better detection,

added --export command in evrtools to extract just textures or tints

added better repacking from my own version of evrfiletools
# Changelog

## New Feature: Quick Repack (`--quick`)

### Purpose
The `--quick` flag (Quick Repack) is designed to drastically reduce the time required to apply mods to Echo VR. Instead of rebuilding the entire package set (which can take several minutes and requires significant disk space), Quick Repack modifies the game files in-place by appending only the changed data.

### How it Works

1.  **Manifest Backup & Restoration**:
    *   On the first run, the tool creates a backup of the original manifest (`.bak`).
    *   On subsequent runs, it **always loads the manifest from the backup**. This ensures that every repack operation starts from the clean, original game state. This prevents the game packages from growing indefinitely or creating an endless chain of new package files (e.g., `_3`, `_4`, `_5`...) when applying mods multiple times.

2.  **Smart Package Management**:
    *   The tool identifies the "safe" base packages (e.g., `_0`, `_1`, `_2`) that contain the original game data.
    *   It targets the next available package index (e.g., `_3`) for writing modified files.
    *   If a previous mod package exists (e.g., `_3`), the tool effectively overwrites/updates it by resetting the manifest state to the backup before appending new data.

3.  **In-Place Modification**:
    *   Modified files are compressed and appended to the end of the active package file.
    *   The manifest is updated to point to these new locations for the modified files, while keeping references to original files unchanged.
    *   This avoids the need to read, decompress, and re-write the gigabytes of unmodified game data.

4.  **Safety Mechanisms**:
    *   **Truncation**: If the manifest references package files that do not exist on disk (e.g., from a previous failed run or manual deletion), the tool automatically truncates the manifest to match the actual files present.
    *   **Size Checks**: The tool calculates offsets based on the actual file size on disk to ensure data integrity.

### Usage
```bash
evrtools -mode build -package <NAME> -data "<GAME_DATA_DIR>" -input "<MOD_DIR>" -output "dummy" -quick -force
@heisthecat31
Copy link
Author

trust me --quick is worth it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant