Ska HEX modifiera en komprimerad fil, behöver hjälp.
Jag behöver eran hjälp sweclockers användare.
Jag ska förklara så att ni fattar vad jag försöker göra.
Jag har en MIX-fil. MIX fil är som RAR/ZIP, man kan komprimera massa filer i den. Man kan använda ett program som heter XCC Mixer för att öppna och extrahera filer från MIX filen.
Men man kan "låsa" MIX filen, genom att ändra byte 04 och 05 i något program som HEX Workshop(till vad som helst). XCC Mixer kommer att misslyckas att läsa MIX filen, men spelet läser den utan problem.
Jag vill låsa upp filen, alltså jag måste manuellt räkna hur många filer det är, skriva in de i byte 04 och 05.
Vad dessa två bytes representerar:
Byte 04 and 05, big-endian number containing the number of files
Så här gör man:
Oh, now I remember. The header IDs are always sorted from lowest to highest. I think it was signed though, from 80000000 (int32.min) to FFFFFFFF (-1), and then from 00000000 (zero) to 7FFFFFFF (int32.max).
The files list starts right after the mixfile size, so at byte 0x0A, and each file in the header is a block of 12 bytes, of which the first 4 are the big-endian filename ID. So basically you can just keep reading the blocks of 12 bytes, and going up until you find a value that doesn't match the ID sorting anymore, and then simply count how many you foun
Problemet är att jag inte förstår vad den här killen menar. Jag kan väldigt lite om HEX-relaterade saker.
Kan någon förklara hur jag ska göra?
----------
Här är ett exempel på en olåst mix fil som innehåller 5 filer(byte 04 och 05 är 0500, sen gör man om den till 0005 innan man conventerar till decimal, och då blir det 5):
http://www.mediafire.com/?6b89dbc8cpiooi8