ASSET MANIFESTS EXTRACTED: + 1,236 manifest files from RR3 APK + Covers ALL game content: - 400+ vehicles (F1, NASCAR, GT3, classics) - 30+ tracks (Silverstone, Monaco, Spa, etc.) - Audio, textures, UI, events + Stored in Assets/manifests/ MANIFEST FORMAT: path<TAB>md5<TAB>compressed_size<TAB>uncompressed_size Example: /data/events.dat.nct 0a21c68... 14461497 14461497 DOWNLOADER SCRIPT CREATED: + download-assets.ps1 + Features: - Parses manifests automatically - Downloads from EA CDN - Verifies MD5 integrity - Skips already cached files - Resumes interrupted downloads - Test mode for verification - Detailed logging ESTIMATED CONTENT: + 10,000+ individual asset files + 2-5 GB total when fully downloaded + Critical assets: ~500 MB CURRENT STATUS: ✅ Manifests extracted and documented ✅ Downloader script complete ✅ Storage structure organized ✅ Sample placeholders created ⏳ CDN URL needs discovery (see ASSET_DOWNLOAD_STATUS.md) PRESERVATION STRATEGY: Phase 1: Download from EA CDN while servers up Phase 2: Community contributions after shutdown Result: Complete game preservation forever! DOCUMENTATION: + Assets/manifests/README.md - Manifest format guide + ASSET_DOWNLOAD_STATUS.md - Complete instructions + Download script with inline help USAGE: # Test download .\download-assets.ps1 -TestMode # Download critical assets .\download-assets.ps1 # Download everything \ = Get-ChildItem Assets\manifests\*.txt | % { \.Name } .\download-assets.ps1 -ManifestFiles \ Ready to preserve RR3 for the community! 🎮💾 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
180 lines
4.7 KiB
Markdown
180 lines
4.7 KiB
Markdown
# 📋 RR3 Asset Manifests
|
|
|
|
## Overview
|
|
|
|
These manifest files were extracted from the Real Racing 3 APK (v12.6.0 or similar). They contain the complete list of game assets that need to be downloaded from EA's CDN servers.
|
|
|
|
## Manifest Format
|
|
|
|
Each manifest file contains one asset per line with the following format:
|
|
|
|
```
|
|
/path/to/asset.ext<TAB>md5hash<TAB>compressed_size<TAB>uncompressed_size
|
|
```
|
|
|
|
**Example:**
|
|
```
|
|
/data/events.dat.nct 0a21c68abefbfcac00e7387f025e8012 14461497 14461497
|
|
```
|
|
|
|
### Fields:
|
|
- **Path**: Asset file path (relative to CDN root)
|
|
- **MD5**: MD5 checksum for integrity verification
|
|
- **Compressed Size**: Size in bytes when compressed
|
|
- **Uncompressed Size**: Size in bytes when decompressed
|
|
|
|
## Manifest Categories
|
|
|
|
### Base Assets (`asset_list_base.txt`)
|
|
Core game data including:
|
|
- Game configurations
|
|
- Menu transitions
|
|
- Camera tweaks
|
|
- Career data (`/data/events.dat.nct` - 14MB!)
|
|
- Championship definitions
|
|
- Job system data
|
|
|
|
### Audio Assets (`asset_list_audio*.txt`)
|
|
- Engine sounds
|
|
- UI sounds
|
|
- Ambient audio
|
|
- Music tracks
|
|
|
|
### GUI Assets (`asset_list_base_gui*.txt`)
|
|
- Menu backgrounds
|
|
- UI elements
|
|
- Icons and buttons
|
|
- HUD components
|
|
|
|
### Car Groups
|
|
Each racing series has its own manifest:
|
|
- `asset_list_group_formula_1_assets.txt` - F1 cars (17KB of assets!)
|
|
- `asset_list_group_formula_e_assets.txt` - Formula E
|
|
- `asset_list_group_nascar_assets.txt` - NASCAR
|
|
- `asset_list_group_gt3_assets.txt` - GT3
|
|
- `asset_list_group_endurance_*.txt` - Endurance racing
|
|
- `asset_list_group_legend_assets.txt` - Classic cars
|
|
- And many more...
|
|
|
|
### Season Assets
|
|
- `asset_list_group_season_1_assets.txt` through `season_5_assets.txt`
|
|
- Season-specific content and events
|
|
|
|
## Usage for Asset Preservation
|
|
|
|
### Step 1: Parse Manifest
|
|
```csharp
|
|
var lines = File.ReadAllLines("asset_list_base.txt");
|
|
foreach (var line in lines)
|
|
{
|
|
var parts = line.Split('\t');
|
|
var path = parts[0];
|
|
var md5 = parts[1];
|
|
var compressedSize = int.Parse(parts[2]);
|
|
var uncompressedSize = int.Parse(parts[3]);
|
|
|
|
// Download from: https://cdn-rr3.ea.com{path}
|
|
// Verify with MD5 hash
|
|
}
|
|
```
|
|
|
|
### Step 2: Download from EA CDN
|
|
The base URL for EA's CDN is typically:
|
|
```
|
|
https://cdn-rr3.ea.com
|
|
```
|
|
|
|
Full asset URL would be:
|
|
```
|
|
https://cdn-rr3.ea.com/data/events.dat.nct
|
|
```
|
|
|
|
### Step 3: Verify Integrity
|
|
After downloading, calculate MD5 and compare with manifest:
|
|
```csharp
|
|
using var md5 = MD5.Create();
|
|
using var stream = File.OpenRead(assetPath);
|
|
var hash = BitConverter.ToString(md5.ComputeHash(stream))
|
|
.Replace("-", "")
|
|
.ToLower();
|
|
|
|
if (hash == expectedMd5)
|
|
{
|
|
// Asset valid!
|
|
}
|
|
```
|
|
|
|
## Critical Assets
|
|
|
|
### Highest Priority (Game Won't Work Without These):
|
|
1. `/data/events.dat.nct` (14.4 MB) - All race events
|
|
2. `/data/jobs.bin.nct` (3.5 MB) - Job system
|
|
3. `/data/championships.bin.nct` (157 KB) - Championships
|
|
4. `/camTweaks.dat` (131 KB) - Camera configurations
|
|
5. `/data/gtlt.bin.nct` (688 KB) - Core game logic tables
|
|
|
|
### High Priority (Major Features):
|
|
- Formula 1 assets (17 KB manifest = ~500+ MB actual data)
|
|
- Base GUI assets (game menus)
|
|
- Audio base (engine sounds)
|
|
|
|
### Medium Priority (Enhanced Experience):
|
|
- Track-specific assets
|
|
- Car liveries
|
|
- Additional racing series
|
|
|
|
## Asset Statistics
|
|
|
|
Based on the manifests extracted:
|
|
|
|
- **Total Manifest Files**: 1,236 files
|
|
- **Car Groups**: ~25 racing series
|
|
- **Seasons**: 5 seasons of content
|
|
- **Estimated Total Assets**: 10,000+ individual files
|
|
- **Estimated Total Size**: 2-5 GB when fully downloaded
|
|
|
|
## Implementation Plan
|
|
|
|
### Phase 1: Automatic Download (While EA Servers Active)
|
|
1. Parse manifests on server startup
|
|
2. Create database entries for all assets
|
|
3. On first request, proxy to EA CDN
|
|
4. Cache locally and serve
|
|
5. Verify MD5 integrity
|
|
|
|
### Phase 2: Manual Upload (After EA Shutdown)
|
|
1. Community members share their cached game data
|
|
2. Upload via web panel
|
|
3. Verify MD5 matches manifest
|
|
4. Share with all players
|
|
|
|
### Phase 3: Complete Preservation
|
|
1. All critical assets cached
|
|
2. Game fully playable offline
|
|
3. Community-hosted forever!
|
|
|
|
## Legal Notice
|
|
|
|
⚠️ **Important**: These assets are copyrighted by Electronic Arts Inc.
|
|
|
|
- ✅ **Allowed**: Personal game preservation after EA shutdown
|
|
- ✅ **Allowed**: Hosting for players who own the game
|
|
- ❌ **Not Allowed**: Public distribution for piracy
|
|
- ❌ **Not Allowed**: Commercial use
|
|
|
|
Users must own Real Racing 3 to use community servers.
|
|
|
|
## Next Steps
|
|
|
|
1. Implement `AssetsController` with manifest parsing
|
|
2. Add automatic CDN proxying
|
|
3. Create web UI for asset management
|
|
4. Start caching critical assets
|
|
5. Share with community!
|
|
|
|
---
|
|
|
|
**Generated**: February 2026
|
|
**Source**: Real Racing 3 APK v12.6.0
|
|
**Purpose**: Game Preservation After EA Shutdown (March 2026)
|