====================================================================================LAS CRÓNICAS DE OODLEFORGEUna historia de leyenda de compresión=================================================================================En el antiguo año 2026, en un reino donde los discos duros gemían bajo el pesode enormes archivos de juegos y los dragones Oodle gobernaban las tierras comprimidas, un solitarioaventurero se embarcó en una épica aventura misión...───────────────────────────────────── ────────────────────────────────────────────LA LEYENDA COMIENZA─────────────────────────────────────── ──────────────────────────────────────────No eres simplemente un programador.Eres **El Forjador de Oodle**, un héroe audaz que se enfrentó al abismo de los precompresores de código cerradoy declaró: «Forjaré algo más grande».Con tan solo **30 días de antigüedad** al ser descubierto, y ahora, apenas dos lunas después, este poderosoartefacto nació de noches en vela, refactorización frenética y el fuego sagrado de laoptimización.Lo que comenzó como una simple idea —«¿Y si pudiéramos reconstruir a la perfección los archivos de juego comprimidos con Oodle?»— se convirtió en una trilogía legendaria:ESCANEAR → CODIFICAR → RECONSTRUIRTres rituales sagrados. Un ciclo inquebrantable.──────────────────────────────────────────────────────────────────────────────EL VIAJE DEL HÉROE──────────────────────────────────────── ──────────────────────────────────────Capítulo I — El Despertar-------------------------Descubriste los antiguos pergaminos OodleLZ (oo2core.dll/so) y aprendiste susmagias prohibidas. Con astucia y valentía, domesticaste los punteros de función salvajesy los trajiste a tu reino.Capítulo II — La Gran Búsqueda del Escaneo-------------------------------------Construiste el **BlockScanner**, una bestia mítica con ojos de memchr y garras debúsqueda binaria. Busca las runas sagradas 0x8C y 0xCC a través de terabytes deoscuridad, descifrando velos AES cuando es necesario y revelando bloques Oodle ocultosque herramientas inferiores jamás podrían ver.Capítulo III — La Forja de Coincidencias Exactas-------------------------------------------Aquí reside la verdadera leyenda.Mientras que los precompresores inferiores solo adivinan y aproximan, tú creaste algo**divino**: una reconstrucción byte a byte.El ritual de codificación no solo comprime, sino que **prueba** cada posible método y nivel de Oodlehasta encontrar la coincidencia EXACTA que usó el juego original.Si el aliento del dragón (datos comprimidos) coincide perfectamente después de la recompresión,se marca como una "Coincidencia Exacta" y se almacena con honor.Esto no es compresión.Esto es **resurrección**.Capítulo IV — El Ritual de Reconstrucción--------------------------------------Cuando llega el momento de la restauración, el héroe recurre a RunReconstruct.Se rellenan los huecos. Los bloques exactos renacen mediante la recompresión de Oodle.Los bloques cifradosse ocultan y se descifran con cuidado. El archivo original resurge, byte a byte,como si la compresión nunca hubiera ocurrido.Capítulo V — La Guerra contra la Lentitud------------------------------------Invocaste a la **Bestia de la Memoria**: un búfer circular en memoria de 64 MB protegido por unhilo de trabajo dedicado al disco físico.Mientras los hilos principales del codificador procesan datos a la velocidad de la RAM (~50 GB/s), la bestiaenvía silenciosamente enormes bloques de 64 MB al disco mecánico en segundo plano.Redujiste más de 4000 operaciones de escritura por gigabyte a tan solo 16.Dominaste el ThreadPool para manejar más de 32 hilos paralelos sin caos.Incluso le enseñaste al código a usar hermosas barras de progreso con runas ETA.─────────────────────────────────────────────────────────────────────────────LAS TRES ÓRDENES SAGRADAS─────────────────────────────────────────────────────────────────────────────**ESCANEAR** — El Oráculo«¡Muéstrame los secretos que contiene!»Detecta métodos (Kraken, Leviatán, Sirena, Selkie) y niveles de compresiónen cualquier porcentaje del archivo. Revela la verdadera naturaleza del dragón.**CODIFICAR** — La Forja«¡Convierte este caos en orden perfecto!»Crea un nuevo archivo que conserva las coincidencias exactas de Oodle siempre que sea posible.Cuanto más cerca del 100% de coincidencias, más legendaria será tu victoria.**RECONSTRUIR** — La Resurrección«¡Vuelve a mí, ser original!»Reconstruye el archivo original desde el archivo encantado.Fidelidad perfecta. Sin pérdida de datos.Reconstruir ───────────────────────────────────────────────────────────────────────ARTEFACTOS DEL PODER───────────────────────────────────────────────────────────────────────• Compatibilidad con cifrado AES (tanto cifrado como descifrado de bloques)• E/S asíncrona con doble búfer (anillo de 64 MB) para un máximo rendimiento del disco• Canalizaciones multihilo con contrapresión• Búferes reutilizables para evitar la sobrecarga de memoria• Interfaz de usuario en tiempo real de gran belleza, digna de las canciones de los bardos───────────────────────────────────────── ────────────────────────────────────────LEGADO Y RIVALIDAD────────────────────────────────────── ───────────────────────────────────────────Durante 20 años, **Precomp Classic** (lanzado en 2006) reinó como el sabio rey de la precompresión.En tan solo **dos meses**, el Oodleforger ha alcanzado un nivel similar (8.7/10).
===================================================================================OodleForge: El Cazador de KrakensHerramienta avanzada de archivo OodleLZ | Multimétodo | Compatibilidad con AES==================================================================================Prólogo: La leyenda del cazador del Kraken-----------------------------------------En la antigua era de la Primera Compresión, cuando el mundo aún era joveny los grandes Archivos yacían ocultos bajo montañas de datos brutos, una terriblebestia vagaba por los reinos digitales: el poderoso Kraken de Oodle.Sus tentáculos de bloques comprimidos se extendían por cada mazmorra, cada tesoro de dragóny cada reino olvidado. Los héroes caían ante su implacable compresión.Solo los archivistas más valientes se atrevían a desafiarlo.Las leyendas cuentan la historia de un vagabundo solitario que forjó un poderoso artefacto: el Motor de Oodle.Armado con las runas del Kraken, Leviatán, Sirena y Selkie, y protegidopor el antiguo escudo de AES-256, este héroe se hizo conocido como...**EL CAZADOR DE KRAKENS**Esta herramienta es tu herencia. Úsala con sabiduría, aventurero. Que tus espadasatraviesen incluso las mazmorras más densas, y que tus dragones sean para siempreliberados.¿Qué es Oddleforger?--------------Oddleforger es una herramienta especializada de alto rendimiento diseñada para detectar, extraer,recomprimir y reconstruir archivos que contienen bloques comprimidos con OodleLZ(Kraken, Leviatán, Sirena, Selkie).Fue creada para ingenieros inversos, modders de juegos y archivistas que necesitantrabajar con datos de juegos modernos que utilizan compresión Oodle + cifrado AES-256 opcional.Ya sea que estés descomprimiendo un archivo de juego enorme, analizando formatos desconocidos o reconstruyendo archivos modificados, Oddleforger te ayuda.Características--------* Escaneo y detección ultrarrápidos de bloques Oodle* Compatibilidad con 4 compresores Oodle: Kraken(, Leviathan(9), Mermaid(11), Selkie(12)* Detección automática de nivel (-auto)* Modo de fuerza bruta (-force)* Compatibilidad total con cifrado/descifrado AES-256-CBC* E/S asíncrona de doble búfer (anillo de 64 MB) para un máximo rendimiento del disco* Arquitectura de canalización multihilo* Interfaz de usuario con progreso detallado y registro detallado* Modo de escaneo para un análisis rápido del formato* Reconstrucción perfecta de ida y vuelta=== Arquitectura técnica ===1. **FastStreamWriter (asíncrono de doble búfer)**- Búfer de anillo en memoria de 64 MB- Hilo de trabajo dedicado en segundo plano para el disco físico- Paralelización real: los hilos principales escriben en la RAM mientras el disco vacía la memoria en segundo plano- Intercambio de búfer de asignación cero para evitar la sobrecarga del montón- Reduce las operaciones de escritura en el disco duro De más de 4K a solo ~16-17 por GB2. **Ventana deslizante + Lectura controlada**- Ventana de 64-128 MiB para acceso aleatorio rápido durante el escaneo- El descifrado AES-CBC se realiza de forma transparente dentro de la ventana cuando es necesario- Alineación a límites de 16 bytes para AES3. **Pipeline de procesamiento de bloques**- Grupo de subprocesos (predeterminado: núcleos-1, limitado a - Las tareas se ponen en cola para la verificación de la compresión- El vaciado del pipeline evita el consumo excesivo de memoria--------------------------------------------------------------------------------CÓMO USARLO--------------------------------------------------------------------------------Sintaxis básica:Oddleforger <operación> <archivo_entrada> [archivo_salida] [opciones]Operaciones:e Codificar (Escanear + Comprimir en un archivo .oodle)r Reconstruir (Reconstruir el archivo original a partir del archivo .oodle)scan Modo de análisis (Escaneo rápido para detectar) Métodos/niveles)--------------------------------------------------------------------------------REFERENCIA COMPLETA DE OPCIONES--------------------------------------------------------------------------------Rendimiento:-j <num> Número de subprocesos (predeterminado: núcleos de CPU - 1, máximo Configuración de compresión:-m <methods> Compresor(es) a utilizar. Admite varios: kraken+leviathanOpciones: kraken/8, leviathan/9, mermaid/11, selkie/12-level <n> Nivel(es) de compresión. Admite múltiples niveles: 4+6+8-auto Detecta automáticamente el nivel óptimo a partir de los primeros bloques (recomendado)-force Fuerza bruta en los niveles 3-8 (lento pero exhaustivo)Cifrado:-k <hex> Clave AES-256 (64 caracteres hexadecimales)Ejemplo: -k 00112233445566778899aabbccddeeff...--key <hex> Igual que -kOtros:-v Modo detallado: muestra todas las coincidencias en tiempo real-scan <porcentaje> Solo se usa con la operación "scan" (0.1 - 100.0)--------------------------------------------------------------------------------EJEMPLOS--------------------------------------------------------------------------------1. Codificación básica (recomendado):Oddleforger e game_data.bin game_data.oodle -m kraken -auto2. Métodos múltiples + niveles específicos:Oddleforger e assets.pack assets.oodle -m kraken+leviathan -level 5+73. Con cifrado AES:Oddleforger e secure.bin secure.oodle -k 2b7e151628aed2a6abf7158809cf4f3c...4. Análisis rápido:Oddleforger scan bigfile.dat -scan 2.55. Reconstrucción:Oddleforger r archive.oodle restored.bin6. Máximo rendimiento:Oddleforger e input.bin output.oodle -j 12 -auto-----------
OodleForge v33.2 ChangelogBuild Date: June 18, 2026Focus: Threading Stability, Cryptographic Integrity, and Resource Efficiency.Critical Fixes (Backend)FastStreamWriter Thread-Safety:Implemented file_io_mtx to strictly serialize physical disk I/O, preventing file handle contention during multi-threaded heavy writes.Added pending_disk_bytes tracker to synchronize the UI/offset state with the background flushing thread, resolving data desyncs on mega-files (50GB+).AES Cryptographic Correction:IV Initialization: Swapped malloc for calloc in AES_Context_Create. This ensures the Initialization Vector (IV) is always zero-initialized, preventing random-memory garbage from corrupting the first block of encrypted streams.Key Length: Updated aes.h to force AES256 mode, ensuring full 32-byte key handling for modern secure archives.Scanner Cache (Performance Optimization):Added a "double-check" lock pattern in scan.cpp's TryMatchBlock. This prevents the "Thundering Herd" problem where multiple worker threads simultaneously brute-force the same unknown Oodle block type.Portability & BuildPOSIX Compatibility: Sanitized LoadOodle() to remove Windows-specific .dll fallback logic on Linux/Unix systems, allowing clean liboo2core.so loading.Memory Management: Replaced GCC-specific packing attributes with standard #pragma pack for cross-compiler compatibility.UI & MonitoringState Tracking: Fixed seekp implementation to ensure the background thread fully flushes before the file pointer moves, preventing data corruption during reconstruction.UI Accuracy: Real-time throughput and ETA calculations are now keyed to the pending_disk_bytes count, providing a more precise progress readout for large-scale operations.Implementation OverviewThe following visual map illustrates the new thread-safe flow for data processing:v33.1 (June 2026) - The Memory BeastIn-Memory Output Buffer (64 MB) + Dedicated Physical Disk Worker ThreadBackground flush with true parallelization (lock.unlock() before disk write)Reduces HDD write operations from 4K+ to only ~16-17Main encode threads stay at full speedByte-perfect tellp() for responsive UIRemoved obsolete HDD/SSD pacing logicv33.0 (June 2026) - Multi-Method EditionAdded full support for Kraken, Leviathan, Mermaid, SelkieAdded -auto, -force, and multi-level optionsMajor memory optimizations and improved pacingEnhanced UI with ETA and real-time statsExcellent compatibility under Wine (Linux)v32.x (May 2026)Initial AES supportBasic encode/reconstruct functionalityHDD pacing system introducedv1.x (Early 2026)Basic Kraken-only scanner and reconstructor
OodleForge v33.3 ChangelogBuild Date: June 20, 2026Focus: Engine-Specific Compatibility, Expanded Method Support & Scanner Robustness.Major Features & Improvements• Added full Hydra (13) support - Included in ALL_METHODS, magic byte detection, method parser, and compression pipeline - All five Oodle magic bytes now supported (0x8C, 0xCC, 0x4C, 0x2C, 0x6C)• Engine-Specific Options (Critical for exact reconstruction) -EXPERIMENTAL DUE HARDWARE LIMITATIONS- - `-tradeoff <n>` : Sets spaceSpeedTradeoffBytes (essential for Frostbite games) - `-quantumcrc` : Enables sendQuantumCRCs (required for The Crew 2 and similar titles)• Scanner Enhancements - Upgraded BlockScanner to check all 5 magic bytes - Improved recovery logic after failed block detection - Better cache handling in TryMatchBlock with shared_mutex protection - Enhanced statistics output (method & level distribution)• Compression Pipeline Fixes - CompressAndVerify now properly passes OodleLZ_CompressOptions* - Fixed option propagation in RunScan, RunEncode, and reconstruction paths• CLI & Usability - Updated help text with new options and examples - scan command now properly integrated with new parameters - Version string bumped to v33.3