NTE PatcherSDK
A high-performance, concurrent NTE game asset downloading and patching SDK implemented in Rust.
Features
- Extreme Performance: Leverages aggressive memory mapping (
memmap2) for zero-copy file hashing (MD5) and concurrent direct-to-disk writing. - Efficient Concurrency: Managed asynchronous downloads using
tokioandreqwest, supporting both sequential and block-based parallel downloads. - Robust Storage Architecture: Cleanly decoupled Storage and Network layers for reliable asset management and symlinking.
- Type-Safe Configuration: Centralized
PatcherConfigfor easy management of concurrency limits, retry policies, and timeouts. - Domain-Driven Error Handling: Structured error reporting using
thiserror, with intelligent retry logic for transient network or I/O failures.
Usage
Add this to your Cargo.toml:
[]
= 0.2
Quick Start
use PatcherConfig;
use DownloadManager;
use ResTask;
use PathBuf;
async
Architecture
The SDK is split into several core modules:
manager: High-level API for coordinating download batches.download: Handles HTTP streaming, range requests, and retry logic.cas: Content Addressable Storage (Bucket) management and filesystem symlinking.verify: High-speed zero-copy MD5 checksum verification.crypto: AES-CBC decryption for resource list files.
License
This project is licensed under the MIT License.