¿Qué es el formato de archivo VPK?
Un archivo .vpk, también conocido como archivo Valve Pak, es un archivo sin compresión utilizado para empaquetar recursos de juego para el motor Source de Valve. El .vpk puede contener un directorio maestro que almacena materiales, modelos, partículas, escenas de coreografía, sonidos y otros tipos de archivos. El formato .vpk es el sucesor del antiguo formato de contenido .GCF, reemplazándolo como el sistema de empaquetado estándar para títulos del motor Source como *Counter-Strike: Global Offensive*, *Team Fortress 2* y *Left 4 Dead 2*.
El archivo .vpk consta de un archivo de directorio maestro y uno o más archivos de archivo VPK numerados. El archivo de directorio (normalmente llamado pak01_dir.vpk) lleva una firma mágica de 4 bytes en little-endian (34 12 AA 55 en el desplazamiento 0) y un índice de cada recurso: su extensión, ruta, nombre de archivo, suma de comprobación CRC-32 por archivo y qué archivo numerado contiene sus datos. Los archivos numerados (pak01_000.vpk, pak01_001.vpk, …) contienen los bytes de los recursos en bruto y sin comprimir, sin cabecera propia; los archivos individuales suelen estar limitados a unos 200 MB. Los recursos como los archivos de material .VMT o las texturas .VTF también pueden almacenar un pequeño bloque de precarga de hasta 65.535 bytes incrustado en la propia entrada del directorio.
El archivo .vpk se crea utilizando la herramienta de línea de comandos vpk.exe incluida en el Source SDK, y el archivo puede almacenarse como parte de un paquete VPK que abarca varios archivos. Existen dos versiones del formato: la Versión 1 (cabecera más árbol de directorios) y la Versión 2, que añade sumas de comprobación MD5 y un bloque de firma RSA opcional para la verificación de la integridad a nivel de paquete. Herramientas de terceros como GCFScape y Crowbar permiten examinar, extraer y reempaquetar archivos .vpk en Windows.
Seguridad y protección
RIESGO: MEDIUMEl principal riesgo es autoinfligido: eliminar, renombrar o editar descuidadamente los archivos .vpk de un juego rompe o corrompe la instalación - nunca los elimine para «liberar espacio»; use Steam para desinstalar en su lugar. Los mods VPK descargados son una segunda preocupación: un VPK es solo un contenedor de recursos que no ejecuta código automáticamente, pero los paquetes de mods pueden incluir scripts o ejecutables, así que obtenga mods de sitios de buena reputación para ese juego y haga una copia de seguridad del .vpk original antes de reemplazarlo. Para el homebrew .vpk de PS Vita, instálelo solo de fuentes confiables - el homebrew se ejecuta con acceso al sistema.
Detalles del formato
en pocas palabras- Paquete VPK de PlayStation Vita - Un paquete de aplicación/juego homebrew basado en ZIP para la PS Vita, instalado con VitaShell - no relacionado con Valve.
- Exportaciones de Visual Paradigm / otras aplicaciones - Algunas aplicaciones no relacionadas han reutilizado .vpk para sus propios archivos de paquete; identifíquelos por el programa de origen.
Programas que abren archivos VPK
vpk x pak01_dir.vpk para extraer, o vpk <carpeta> para crear un VPK. Se incluye con el Source SDK / juegos en Steam. vpk x pak01_dir.vpk para extraer. Detalles técnicos
especificación profunda| Bytes mágicos | 34 12 AA 55 en el desplazamiento de byte 0 (0x55AA1234 en little-endian); presente solo en el archivo de directorio `_dir.vpk` - los archivos de datos numerados no llevan cabecera |
| Estructura del archivo | Dividido en un archivo de índice `*_dir.vpk` más archivos de datos numerados (`*_000.vpk`, `*_001.vpk`, …) que contienen los bytes de recursos concatenados en bruto |
| Compresión | Ninguna - los recursos se almacenan sin comprimir para una transmisión directa y de baja latencia por parte del motor Source |
| Codificación | Binario, orden de bytes little-endian en todo el archivo |
| Versiones del formato | Versión 1: magia de 4 bytes, versión uint32, tamaño del árbol, luego árbol de directorios. Versión 2 añade tamaño de la sección de datos, bloques MD5 por archivo, sección MD5 general y una sección de firma RSA |
| Integridad por archivo | Suma de comprobación CRC-32 por entrada de archivo en ambas versiones; la Versión 2 almacena adicionalmente hashes MD5 por bloque de archivo de datos y una firma RSA-2048 opcional que cubre el paquete completo |
| Diseño del árbol de directorios | Índice de tres niveles organizado por extensión de archivo → ruta → nombre de archivo; cada entrada de hoja almacena el número de archivo, desplazamiento de datos, longitud de datos, recuento de bytes de precarga y CRC-32 |
| Datos de precarga | Cada entrada de directorio puede incrustar hasta 65.535 bytes de contenido de archivo en línea, eliminando una búsqueda en el archivo para recursos muy pequeños |
| Tamaño del archivo de datos | Los archivos numerados individuales suelen estar limitados a ~200 MB cada uno; el conjunto VPK de un juego completo puede sumar muchos gigabytes |
| Tipos de recursos indexados | Texturas (`.vtf`), materiales (`.vmt`), modelos (`.mdl`), mapas (`.bsp`), sonidos, sistemas de partículas, escenas de coreografía (`.vcd`) y otros tipos de recursos del motor Source |
| Soporte de plataformas | Windows, macOS, Linux y Android (vía ports del motor Source) |
| Tipo MIME | application/octet-stream |
| Desarrollador | Valve Corporation (canal de contenido del motor Source) |
| Formato predecesor | Reemplazó a los antiguos formatos de empaquetado de contenido GCF y NCF utilizados en versiones anteriores de Steam/motor Source |
| Herramienta de creación oficial | `vpk.exe` (Windows Source SDK) o CLI `vpk` (Linux Source SDK); las herramientas de terceros incluyen GCFScape y Crowbar |
| Lanzado | 2010 (Source engine; replaced the older GCF content packaging) |
| Última versión | VPK directory format version 2 (adds per-file CRC and signature sections); v1 still in use |
| Especificación | developer.valvesoftware.com |
Conversiones de VPK
Preguntas y respuestas de la comunidad
preguntado por usuariosAún no hay preguntas; sea el primero en preguntar sobre los archivos VPK.
Preguntas frecuentes
¿Cómo abro un archivo VPK?
vpk x pak01_dir.vpk). Un .vpk de PS Vita es diferente: instálelo con VitaShell.¿Puedo eliminar archivos VPK para liberar espacio?
¿Por qué hay pak01_000.vpk, pak01_001.vpk y un pak01_dir.vpk?
¿Cómo extraigo modelos/texturas de un VPK para modding?
¿Es un VPK de Source lo mismo que un VPK de PS Vita?
¿Cómo creo mi propio VPK?
vpk <carpeta>) y este creará un pak##_dir.vpk más los archivos numerados. Siga la guía de modding específica del juego para el diseño de carpetas correcto.