hvordan man tilføjer registreringsdatabasenøgler til blackbox repacker


Svar 1:
  • Første skridt til at gøre et spil mindre, er som alle andre her siger "" ripping ".. (fjernelse af filer, der ikke er nødvendige for at spille spillet), de fleste rippers fjerner alle de multisprogede supportfiler undtagen engelsk og efterlader undertekster, da de er små, så når som helst et spil kommer med sig, siger engelsk lyd eller tysk eller italiensk eller hvad som helst .. det betyder, at filbiblioteket bliver nødt til at have flere versioner af en fil, når en karakter / klip scene / fmv spiller, hvis filen på engelsk er 10 MB, så vil forskellige sprogversioner tilføje en efterfølgende 10 MB for hvert sprog, og det kan kun være for et tegn, der siger "Greetings player!" forestil dig en 5 minutters fmv-cut-scene i 1080p med 320bit lyd (eller bedre) filerne kan hoppe op til flere GB bare for en introfilm .. så fjernelse af alt undtagen engelsk lyd / video er det første skridt.
  • Dernæst koder de igen: Som jeg sagde før forestil dig en 5-minutters 1080p eller højere fmv-cutscene med lyd, lad os kalde dette den originale 100% -kodning ved at genkode videoen / lyden til en lavere bithastighed, sig 80%, og spar med det samme 20% af filstørrelse ... kvalitet er næppe mærkbar, (nogle rippere sænkes endda ... 50%, men de fleste går fra ægte hd (1080) til HD (720) eller i disse dage fra 4k til 2k eller 1080 ... dig ' får vi spillet gratis, så hvem klager virkelig? Så videokoder kan spare meget plads på cutscene tunge spil, men hvad med i spil / i motorspil? som GTA V? Nå, jeg ved ikke, hvordan det lykkedes dem at pakke sådan Hvis din computer pumper din lyd gennem en tredjeparts stereo- eller forstærker + højttalere, lyder 128-320 kbit mp3 fint ... i det mindste til et spil .. så igen sparer du mere plads fra lyden.

Pakke manipulation:

hvis du nogensinde har kigget igennem dine spilinstallationsfiler, har du uden tvivl set pak-filer eller bin eller stort set store multi GB-filer, der er mærket "lyde" eller "tale", så pakker game devs deres filer .. i stedet for at have en mappe med hundreder af mp3'er til talefiler, de pakker dem alle sammen i en enkelt fil ... når du fjerner sprogfiler, skal lydrivere pakke disse filer ud for at få adgang til de enkelte filer, manipulere dem og derefter pakke dem tilbage i den enkelte fil dette er, så de kan fjerne de filer, der kan fjernes, genkode dem, der skal krympes for at spare plads, eller udskifte med tomme filer, der har samme navn, men ingen data, så de fungerer som pladsholdere i biblioteket .

Og det vigtigste ... Højere kompressionsværktøjer. vi ved alle, hvad zip / rar / 7z osv. er, de er metoder til at komprimere filer til arkiver, der er mindre end de ukomprimerede versioner, fra begyndelsen af ​​komprimering har der været forbedringer og metoder, der gør et bedre job, men på bekostning af nogle andre ressource.

Lang historie kort, i disse dage er kompressionsværktøjer så gode, at meget lidt skal fjernes fra det originale spil ..

og de ripper endda hele multiplayer-tilstanden .. hvilket i dag er det eneste, som game devs endda gider at bruge tid på ... væk er single player fps-spil med kampagner, der kører 10-20 timer +. Devs bruger bare single player / offline player som en tilføjelse til hovedbegivenheden "multiplayer", fordi vi kan se det i øjnene, piratkopiering kan stadig ikke pålideligt knække multiplayer-tilstande, du skal stadig betale for at spille .. servergodkendelse, officielle spilsystemer som steam / oprindelse, der kontrollerer / håndterer legitimiteten af ​​dit spil og forbinder andre til online spil ...


Svar 2:

En god måde at forklare dette på er med en analogi.

Forestil dig, at i stedet for at have korte ord, der repræsenterer komplekse definitioner, måtte vi alle bruge de komplekse definitioner. Kompression tager komplekse ideer og komprimerer dem til mindre ord.

Lad os som et eksempel gøre noget komprimering i det virkelige liv.

Sig, at jeg har en sætning at sende til en ven:

"Jeg har et stort behov for, at alle mennesker begynder at udøve ikke-omstridte handel og forretningstransaktioner på den store klippe, som vi i øjeblikket lever på."

Det er en ret ordrig sætning, der repræsenterer ideen om, at jeg ønsker verdensfred, men min ven kan kun forstå disse ord og ikke de mere komplekse, vi bruger oftere. Helt alene kan vi ikke gøre denne sætning meget kortere uden kendskab til flere ord ud over dem, der er givet. Vi kan generere en kortere sætning, hvis vi opretter en ordbog med korte ord, der repræsenterer de længere sætninger!

Ordbog: Bobble: Jeg har et stort behov Briller: Alle mennesker Frithy: Praksis med ikke-omstridt handel Hobot: Forretningstransaktioner Jorden: Den store sten, som vi i øjeblikket lever på

Ny sætning [ved hjælp af ordbogen] "Boble, at beskyttelsesbrillerne begynder at være frithy og hobot på jorden."

Sætningen er bestemt kortere! Når en ven vil have mening i sætningen, kan han simpelthen erstatte ordene i ordbogen, der vises i sætningen, med deres tilsvarende definition, og ingen information går tabt i erstatningen!

Desværre gør dette faktisk ikke dataene til at sende mindre, bare den eneste sætning. Dette skyldes, at vi skal sende ordbogen I TILFØJELSE til den nye sætning. Dette eliminerer fordelen ved den nye sætning og ØGER faktisk størrelsen på de samlede data, der transmitteres.

Så du undrer dig måske over, hvad meningen med analogien er; trods alt øgede vi bare størrelsen på dataene og komprimerede dem ikke.

Nå, denne ordbog-substitutionsmetode fungerer ikke for mønsterfri datastrenge. Sig i stedet, jeg har noget som dette at sende til min ven:

"den store klippe, som vi i øjeblikket lever på. den store klippe, som vi i øjeblikket lever på. den store klippe, som vi i øjeblikket lever på. den store klippe, som vi i øjeblikket lever på. Fjorten. den store klippe, som vi i øjeblikket er levende på. den store klippe, som vi i øjeblikket lever på. den store klippe, som vi i øjeblikket lever på. den store klippe, som vi i øjeblikket lever på. Lilla. "

Denne sætning har den samme sætning gentaget otte gange: noget, som ordbogsubstitution kan hjælpe os med!

Ordbog: E: "den store klippe, som vi i øjeblikket lever på."

Ny sætning [ved hjælp af ordbogen] "EEEEFourteen. EEEEPurple"

Det er en utrolig størrelsesforskel, selv når du inkluderer ordbogen!

Dette svarer til, hvordan komprimering fungerer på computere: komprimeringsprogrammet ser på dataene for ofte gentagne emner, opretter en post i en ordbog for det og erstatter derefter hver forekomst af det gentagne objekt med ordet i ordbogen, der svarer til mønsteret. Dette er essensen af ​​tabsfri kompression. Der er nogle andre typer kompression, der er specialiseret til andre opgaver, men denne er den generiske datakomprimering.

Forskellen mellem den måde, hvorpå visse applikationer komprimerer filer, er udelukkende en implementeringsdetalje. De konkurrerer ved at prøve at finde den hurtigste eller mest effektive måde at finde mønstre på og oprette ordbogsposter. Nogle programmer siger, at det er deres måde, mens et andet siger, at det er en anden måde. Den, der er bedst til brug, bestemmes ofte af hvilken type fil du komprimerer.


Svar 3:

En af de enkleste komprimeringsmetoder er

Kørelængdekodning

(RLE).

Lad os sige, at du har et billede med en almindelig blå baggrund. For hver række af pixels i stedet for at gemme "blå, blå, blå, ... blå osv." 1000 gange, kunne du blot gemme "1000, blå" og ville spare masser af plads. Ved afkodning af billedet læser algoritmen det bare og siger: "Åh, det har brug for blå tusind gange. Intet problem."

For rækker med andre farver kan det se ud som: "36, blå, 73, rød, 42, magenta, 5, grøn, 86, grå ..." Dette er stadig bedre end at gemme hver enkelt pixelværdi. Så ved at gøre dette reducerer du antallet af byte, der er nødvendige for at gemme informationen til billedet. Selvfølgelig opbevares farver med tal, ikke ord, men du får ideen.

Dette er et eksempel på tabsfri komprimering. Dette skyldes, at du kan udtrække det nøjagtige billede i afkodningsprocessen. Det vil sige, du mister slet ingen oplysninger. Dette gælder ikke kun for billeder, men kan bruges til at komprimere enhver fil).

Der er også tabsfri komprimering, hvor information kan smides væk og stadig være acceptabel. Tænk på et billede af skyer. Opdel billedet i små 8x8 blokke, og du vil opdage, at nogle af dem kan tilnærmes med en gradient og kan gemmes simpelthen som to farver og en retning. Det virkelige billede kan ikke rekonstrueres nøjagtigt, men resultatet er acceptabelt for det menneskelige øje, så reduktion af datastørrelse er det værd.

Musik kan også komprimeres med tabsfri kompression og stadig være acceptabel for øret. Men andre typer data har ikke råd til at miste en enkelt bit information. Et computerprogram skal konstrueres nøjagtigt, ellers kører programmet mærkelige kommandoer og resulterer i et systemnedbrud.

Kompression er vigtig, fordi den ikke kun optager mindre plads i hukommelsen og på disken, men det er også meget hurtigere at overføre på tværs af kommunikationskanaler. Jo mere billeder, lyde og andre data komprimeres, jo hurtigere indlæses en webside.


Svar 4:

Der er ikke algoritmen bag komprimering af filer. I stedet bruger kompressionsalgoritmer en samling heuristikker, der vides at fungere godt i praksis. For eksempel:

  • Huffman-kodning ser på frekvenser af tegn / korte strenge og komprimerer input ved at tildele kortere koder til hyppigere objekter.
  • Kørsel i løbet af længden ser på ting, der gentages mange gange i træk og koder det som "gentag xy gange"
  • Lempel – Ziv – Welch og lignende komprimeringsalgoritmer bygger en ordbog over strenge, de allerede har set i input, og derefter genbruger de dem, når nogle strenge gentages. Den komprimerede fil indeholder instruktioner som "se 120 tegn tilbage og kopier 5 tegn derfra".
  • Burrows – Wheeler-transformation er en "magisk" reversibel strengtransformation, der bruges i bzip2. Den transformerede streng kan normalt komprimeres bedre, fordi ting, der dukkede op i en lignende sammenhæng, før transformationen er fortløbende bagefter. (Hvis det ikke gav mening, er du velkommen til at acceptere, at det gør magi.)
  • Nogle komprimeringsalgoritmer bruger "metaheuristik" :) For eksempel, når vi komprimerer et Portable Network Graphics (PNG) -billede, går vi først gennem billedet pixel for pixel og forsøger at forudsige dets værdi ud fra de tidligere sete pixels. Derefter komprimerer vi fejlene i vores forudsigelser i stedet for at komprimere de faktiske pixels (dvs. hvor meget var forudsigelsen slået fra). Jo bedre vores forudsigelser er, jo tættere vil fejlene være på alle nuller, jo lettere er det at komprimere dem.
  • Endnu andre komprimeringsalgoritmer er tabsfri: ved at komprimere filen mister vi information. Mere præcist har vi normalt en afvejning mellem størrelsen på den komprimerede fil og kvaliteten af ​​resultatet. For eksempel forsøger vi i lydformater som MP3-format grundlæggende at tilnærme den oprindelige bølgefunktion ved hjælp af en samling enkle periodiske funktioner (f.eks. Sinus). Jo flere af dem vi bruger, jo mere præcist kan vi tilnærme originalen, men jo mere diskplads har vi brug for. Der er lignende kompromiser ved komprimering af billeder (f.eks. JPEG) og video (f.eks. MPEG-4 og mange andre i de senere år).

Endelig bemærk, at vi ikke kan gøre det bedre end dette. Præcis (tabsfri) komprimering vil altid se sådan ud: Det vil altid være en samling af hacks, der fungerer anstændigt, fordi vores oprindelige måde at lagre information på var på en forudsigelig måde overflødig. Selvom vi kan definere

optimal måde at komprimere en fil på

(dvs. dens

Kolmogorov-kompleksitet

), kan vi også bevise, at sådan komprimering ikke kan beregnes algoritmisk.


Svar 5:

De fleste komprimeringsprogrammer bruger en variation af

LZ adaptiv ordbogsbaseret algoritme

for at formindske filer. "LZ" henviser til

Lempel og Ziv

, algoritmens skabere, og "ordbog" henviser til metoden til

katalogisering

stykker data. På de fleste sprog i verden vises visse bogstaver og ord ofte sammen i det samme mønster. På grund af denne høje redundans,

tekstfiler

komprimere meget godt. En reduktion på 50 procent eller mere er typisk for en tekstfil i god størrelse. Mest

programmeringssprog

er også meget overflødige, fordi de bruger en relativt lille samling af kommandoer, som ofte går sammen i et sæt mønster. Filer, der indeholder en masse unikke oplysninger, såsom grafik eller

MP3-filer

, kan ikke komprimeres meget med dette system, fordi de ikke gentager mange mønstre (mere om dette i næste afsnit). Hvis en fil har mange gentagne mønstre, øges reduktionshastigheden typisk med filstørrelsen. Desuden kan der forekomme mere gennemgribende mønstre i det længere arbejde, så vi kan skabe en mere effektiv ordbog.

Denne effektivitet afhænger også af det specifikke

algoritme

bruges af komprimeringsprogrammet. Nogle programmer er særligt velegnede til at opfange mønstre i visse typer filer og kan derfor komprimere dem mere kortfattet. Andre har ordbøger inden for ordbøger, som måske komprimerer effektivt til større filer, men ikke til mindre. Mens alle komprimeringsprogrammer af denne slags arbejder med den samme grundidee, er der faktisk en hel del variation i udførelsesmåden. Programmører forsøger altid at opbygge et bedre system.


Svar 6:

For filer, hvor tabsfri komprimering er påkrævet, er den almindelige teknik noget som Lempel-Ziv-Welch (LZW) -algoritmen, der ser efter gentagne sekvenser af tegn i filen og erstatter dem med en meget kortere sekvens af bits. Samtidig konstrueres en ordbog over, hvilket kort bitmønster der svarer til hvilken længere sekvens. Denne proces gentager sig gennem filen og opbygger adaptivt det mest optimerede sæt forkortede sekvenser, som den kan, således at processen kan vendes for at rekonstruere de originale data i dens nøjagtige form. Graden af ​​kompression er direkte relateret til hvor mange gentagne sekvenser, der kan opdages, og hvor lange de er. Visse typer filer egner sig derfor bedre til tabsfri komprimering end andre.

For filer, hvor tabsfri komprimering er tilladt, såsom fotos, musik og video, anvendes forskellige algoritmer, der tager modeller af menneskelig opfattelse i betragtning, således at de rekonstruerede data ikke er en matematisk nøjagtig kopi af originalen. Imidlertid er tabet af nogle af de originale data med en god algoritme en rimelig version af originalen, således at den resulterende rekonstruktion stadig anses for acceptabel af brugeren. Dette skyldes, at algoritmen kun arbejder for at fjerne data, der bidrager til mindre synlige aspekter af dataene (for eksempel er mere støjsvage frekvensbånd i lyden perceptuelt maskeret af højere og mere fremtrædende). I sådanne algoritmer kan kvaliteten af ​​rekonstruktion normalt forbedres ved at handle med højere kvalitet til en lavere grad af datatab (og dermed lavere komprimeringseffektivitet). Imidlertid er "accept" et iboende subjektivt mål, og nogle mennesker finder, at resultaterne af tabsfri algoritmer er anstødelige ved en bestemt maksimal tilladt størrelse / bithastighed for den resulterende fil, hvor andre måske bemærker ringe eller ingen forskel ved de samme indstillinger.


Svar 7:

Jeg kan besvare dette spørgsmål godt :) Jeg har lavet repacks selv ... så jeg kan forklare noget for dig.

Repack-hold på internettet har deres eget specielle sæt værktøjer til at komprimere filer i et bestemt spil. De bruger forskellige algoritmer til at komprimere og reducere filstørrelserne. Der er masser af små værktøjer til forskellige spilmotorer. Der er nogle fora på internettet, hvor du kan finde sådanne værktøjer.

Disse værktøjer er designet i henhold til de streams, der findes i et bestemt spil i en bestemt spilmotor.

Jeg vil diskutere en af ​​de almindelige metoder, de bruger, jeg kalder det "Precompression". Det involverer påvisning af strømme og dekomprimering af dem og derefter komprimering igen ved hjælp af en stærkere algoritme.

Som standard er spilfiler i de fleste spil allerede komprimeret i deres maksimale omfang ved hjælp af zlib- eller DEFLATE-metoden. Så værktøjer som WinRAR eller WinZIP kan simpelthen ikke bruges til at komprimere de allerede komprimerede filer. Så de dekomprimerer disse zlib-streams (den ukomprimerede output er tydeligvis større), så bruges en stærkere komprimeringsmetode som LZMA på disse ukomprimerede streams for at mindske filstørrelsen betydeligt. Så der opnås bedre kompressionsforhold.

Kort sagt bruger vi LZMA i stedet for zlib eller DEFLATE.

Og de koder videoerne igen til 50% bitrate for at reducere filstørrelsen og holde kvaliteten identisk. Det samme gøres for lydfilerne.

FYI nogle af disse værktøjer, der bruges af dem, er PRECOMP, SREP & FreeArc

Tak.


Svar 8:

De er meget kloge mennesker. "Scenes", der almindeligvis kaldes Piratgrupper for eksempel Blackbox, Kaos Krew, RG Mechanix osv. Bruger forskellige måder til at komprimere spil uden meget tab af kvalitet.

De midler, der bruges til at komprimere, ligner den komprimeringsmetode, der bruges af ZIP, 7Zip eller WinRAR. Det er ved at identificere gentagne koder og erstatte den med unikke adresse-id'er. Men scenerne stopper ikke der.

En typisk frigivelse ledsages af en NFO-fil. Den har en udvidelse af .nfo og kan åbnes i Notesblok. I den NFO-fil er beskrivelsen af, hvordan det lykkedes dem at komprimere spillet.

De mest anvendte teknikker til komprimering er: 1. Fjern teksturpakker med for lav og / eller for høj opløsning. Teksturer, som vi ser, mens vi spiller, er generelt lavet til hver opløsning separat. Fjernelse af dem med højere opløsning sparer dem meget plads.

2. Tabt video / lydkomprimering. Reduktion af bithastighed for lyd, som kun kan identificeres, hvis du har avanceret lydsystem eller er en lydfil. Reducerer opløsning af cut-scener. En reduktion af opløsningen forbedrer ydeevnen drastisk og optager mindre plads, da systemet skal beregne mindre antal pixels.

3. Fjernelse af andre sprog end engelsk. Dette fjerner ikke kun undertekstfiler og menu-UI-strenge, men også store lydfiler. Husk de tidspunkter, hvor spil-cd'er kom med mulighed for at læse lydfilerne fra selve cd'en under installationen. Audio bruges til at udgøre det meste af installationsområdet.

Kommenter, hvis jeg har gået glip af noget, er jeg sikker på, at jeg har gjort det. ANSVARSFRASKRIVELSE: Hvis du kan lide spillet, skal du købe det og støtte udviklerne.


Svar 9:

De bruger forskellige kompressionsteknikker.

Jeg giver dig et eksempel på en simpel teknik. Det kaldes huffman maksimal varians teknik.

Her læser du først filen og finder derefter sandsynligheden for, at hvert symbol forekommer i filen..og skriver det i faldende rækkefølge. Så det symbol, der mest forekommer i filen, vil være øverst. [Her, symbol A]

Kombiner mindst to sandsynligheder, og lav et nyt midlertidigt symbol. [Her kombinerer D og E et symbol E '(ikke vist i figuren, Midlertidigt symbol er kun for din bekvemmelighed)]

Gør det, indtil der kun er to symboler.

Nu, sådan ser dit træ ud.

EN'

A B ''

B 'C' BCDE

Tildel ellers at siden af ​​grenen til 0 og højre side af kanalen til 1.

Nu,

Kodeord A = 0. Kodeord B = 100 Kodeord C = 101 Kodeord D = 110 Kodeord E = 111.

Hvis formod, at din fil var AAAABCDE. Her forekommer symbol A mest.

Før komprimering sender du 8 bits for hvert symbol. Så det bliver 64 bit.

Efter komprimering sender du 0 0 0 0 100 101 110 111. Det er kun 20 bit.

Der er andre teknikker, du kan bruge som LZ77, LZSS eller LZ78 tilgang.


Svar 10:

Antag at du vil pakke dit tøj i din taske. Ved første forsøg prøver du at fylde alt dit tøj i posen og se, at noget tøj er udeladt. Så kommer en af ​​dine venner hen og folder hvert tøj sammen, nu kommer mere tøj i posen. En tredje ven ser på din taske og siger, at han har en bedre måde at arrage tøj i din taske end den anden ven. Når du prøver det, kan du se, at der nu kommer mere tøj i tasken end før.

Datakomprimering svarer meget til ovenstående scenarie. Det handler om bedre foldning eller repræsentation af dine data, så flere data passer ind i et givet rum eller en given mængde data tager meget mindre plads end krævet.

Overvej en simpel algoritme som RLE eller Run Length Encoding. Lad os antage, at de oprindelige data er

AAAAABBBBBCCCCC

Nu fungerer RLE ved at erstatte en række tegn med tegnet og dets løbetid. Så nu når vi anvender dette, får vi

A5B5C5

Hvilket er meget mindre end den originale streng. Tilsvarende er der flere algoritmer som aritemetisk kodning, Lempel-Ziv osv., Der repræsenterer dataene på en bedre måde, hvilket reducerer størrelsen på de oprindelige data. Generelt bruger software som winzip en kombination af en eller flere sådanne algoritmer til at komprimere data


Svar 11:

Lad os tage begyndelsen af ​​Genesis som et eksempel. Her er de første fem sætninger:

I begyndelsen skabte Gud himlen og jorden. Og jorden var uden form og tom; og mørket var på dybet. Og Guds Ånd bevægede sig på vandet, og Gud sagde: Lad der være lys, og der blev lys. Og Gud så lyset, at det var godt, og Gud adskilt lyset fra mørket.

Hvordan kunne vi komprimere denne passage? Her er en idé; lad os tage de hyppigst forekommende ord og erstatte dem med deres frekvensrækkefølge. Så vi får disse udskiftninger eller indeks:

: 1 og: 2 Gud: 3 var: 4 lys: 5 af: 6 jord: 7 mørke: 8 på: 9.

med den resulterende passage:

I 1 begyndelse 2 skabte 1 himmel 2 1 7. 2 1 7 4 uden form, 2 ugyldig; 2 8 4 9 1 ansigt 6 1 dyb. 2 1 Ånd 6 3 flyttet 9 1 ansigt 6 1 vand.2 3 sagde, Lad der være 5 2 der 4 5. 2 3 så 1 5, at det 4 godt: 2 3 delt 1 5 fra 1 8.

Du kan se, at dette er betydeligt kortere. Føj til det ovenstående indeks, og bingo, du har komprimeret filen. Det tilføjede indeks gør det muligt at rekonstruere den originale passage.

Så for at komprimere finder vi lange gentagne stykker af den originale fil og erstatter derefter med korte erstatningsstrenge. Vi tilføjer indekset, så den originale tekst kan rekonstrueres.

Efterhånden som filer bliver større, bliver indekset relativt mindre, og gevinsterne ved udskiftninger bliver større. Algoritmer udarbejder detaljerne om deres bedste strenge at erstatte og deres optimale erstatninger.