Hva er VPK-filformatet?
En .vpk-fil, også kjent som en Valve Pak-fil, er et ukomprimert arkiv som brukes til å pakke spillressurser for Valves Source-motor. En .vpk kan inneholde en hovedkatalog som lagrer materialer, modeller, partikler, koreografiscener, lyder og andre filtyper. .vpk-formatet er en etterfølger til det eldre .GCF-innholdsformatet, og erstattet det som standard pakkesystem for Source-motor-titler som *Counter-Strike: Global Offensive*, *Team Fortress 2* og *Left 4 Dead 2*.
.vpk-filen består av en hovedkatalogfil og én eller flere nummererte VPK-arkivfiler. Katalogfilen (vanligvis navngitt pak01_dir.vpk) har en 4-byte little-endian «magic signature» (34 12 AA 55 ved offset 0) og en indeks over hver ressurs - dens filtype, bane, filnavn, CRC-32-sjekksum per fil, og hvilket nummerert arkiv som inneholder dataene. De nummererte arkivene (pak01_000.vpk, pak01_001.vpk, …) inneholder rå, ukomprimerte ressurs-bytes uten eget hode (header); individuelle arkiver er vanligvis begrenset til nær 200 MB. Ressurser som .VMT-materialfiler eller .VTF-teksturer kan også lagre en liten «preload»-blokk på opptil 65 535 bytes direkte i selve katalogoppføringen.
.vpk-filen opprettes ved hjelp av kommandolinjeverktøyet vpk.exe som er inkludert i Source SDK, og filen kan lagres som en del av en VPK-pakke som strekker seg over flere arkiver. Det finnes to formatversjoner: Versjon 1 (header pluss katalogtre) og Versjon 2, som legger til MD5-sjekksummer og en valgfri RSA-signaturblokk for integritetsverifisering på pakkenivå. Tredjepartsverktøy som GCFScape og Crowbar tillater surfing, utpakking og pakking av .vpk-arkiver på Windows.
Sikkerhet og trygghet
RISIKO: MEDIUMHovedrisikoen er selvforskyldt: sletting, endring av navn eller uforsiktig redigering av et spills .vpk-filer ødelegger eller korrumperer installasjonen - fjern dem aldri for å «frigjøre plass»; bruk Steam for å avinstallere i stedet. Nedlastede VPK-moder er en annen bekymring: en VPK er bare en ressursbeholder som ikke kjører kode automatisk, men mod-pakker kan leveres sammen med skript eller kjørbare filer, så hent moder fra anerkjente nettsteder og ta sikkerhetskopi av den originale .vpk-filen før du erstatter den. For PS Vita .vpk homebrew, installer kun fra pålitelige kilder - homebrew kjører med systemtilgang.
Formatdetaljer
i et nøtteskall- PlayStation Vita VPK-pakke - En ZIP-basert homebrew-app/spillpakke for PS Vita, installert med VitaShell - urelatert til Valve.
- Visual Paradigm / andre app-eksporter - Noen få urelaterte applikasjoner har gjenbrukt .vpk for sine egne pakkefiler; identifiseres ved programmet de stammer fra.
Programmer som åpner VPK-filer
vpk x pak01_dir.vpk for å pakke ut, eller vpk <mappe> for å opprette en VPK. Følger med Source SDK / spill på Steam. vpk x pak01_dir.vpk for å pakke ut. Tekniske detaljer
dyp spesifikasjon| Magic bytes | 34 12 AA 55 ved byte-offset 0 (little-endian 0x55AA1234); finnes kun i katalogfilen `_dir.vpk` - nummererte dataarkiver har ingen header |
| Arkivstruktur | Delt inn i én `*_dir.vpk` indeksfil pluss nummererte dataarkiver (`*_000.vpk`, `*_001.vpk`, …) som inneholder rå, sammenslåtte ressurs-bytes |
| Komprimering | Ingen - ressurser lagres ukomprimert for direkte strømming med lav forsinkelse i Source-motoren |
| Koding | Binær, little-endian byte-rekkefølge gjennomgående |
| Formatversjoner | Versjon 1: 4-byte magic, versjon uint32, trestørrelse, deretter katalogtre. Versjon 2 legger til dataseksjonsstørrelse, MD5-blokker per arkiv, overordnet MD5-seksjon og en RSA-signaturseksjon |
| Integritet per fil | CRC-32-sjekksum per filoppføring i begge versjoner; Versjon 2 lagrer i tillegg MD5-hasher per dataarkivblokk og en valgfri RSA-2048-signatur som dekker hele pakken |
| Katalogtre-layout | Indeks i tre nivåer sortert etter filendelse → bane → filnavn; hver bladoppføring lagrer arkivnummer, data-offset, datalengde, preload-byteantall og CRC-32 |
| Preload-data | Hver katalogoppføring kan bygge inn opptil 65 535 bytes med filinnhold direkte, noe som eliminerer behovet for søk i arkivet for svært små ressurser |
| Størrelse på dataarkiv | Individuelle nummererte arkiver er vanligvis begrenset til ca. 200 MB hver; et komplett spills VPK-sett kan totalt utgjøre mange gigabyte |
| Indekserte ressurstyper | Teksturer (`.vtf`), materialer (`.vmt`), modeller (`.mdl`), kart (`.bsp`), lyder, partikkelsystemer, koreografiscener (`.vcd`) og andre ressurstyper for Source-motoren |
| Plattformstøtte | Windows, macOS, Linux og Android (via Source-motor-porter) |
| MIME-type | application/octet-stream |
| Utvikler | Valve Corporation (Source engine content pipeline) |
| Forgjengerformat | Erstattet de eldre GCF- og NCF-pakkearkivene som ble brukt i tidligere Steam/Source-motor-versjoner |
| Offisielt verktøy | `vpk.exe` (Windows Source SDK) eller `vpk` CLI (Linux Source SDK); tredjepartsverktøy inkluderer GCFScape og Crowbar |
| Utgitt | 2010 (Source engine; replaced the older GCF content packaging) |
| Siste versjon | VPK directory format version 2 (adds per-file CRC and signature sections); v1 still in use |
| Spesifikasjon | developer.valvesoftware.com |
VPK-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om VPK-filer.
Ofte stilte spørsmål
Hvordan åpner jeg en VPK-fil?
vpk x pak01_dir.vpk). En PS Vita .vpk er annerledes - installer den med VitaShell.Kan jeg slette VPK-filer for å frigjøre plass?
Hvorfor finnes det pak01_000.vpk, pak01_001.vpk og en pak01_dir.vpk?
Hvordan pakker jeg ut modeller/teksturer fra en VPK for modding?
Er en Source VPK det samme som en PS Vita VPK?
Hvordan lager jeg min egen VPK?
vpk <mappe>) og den bygger en pak##_dir.vpk pluss nummererte arkiver. Følg det spesifikke spillets mod-guide for riktig mappestruktur.