Can anyone fix the aluigi script for SoM ? Thank you
Examples:
Code: Select all
https://dl.dropboxusercontent.com/u/38234344/discdata1.rar
Code: Select all
https://dl.dropboxusercontent.com/u/38234344/discdata1.rar
michalss wrote:Hi all,
Can anyone fix the aluigi script for SoM ? Thank you
Examples:Code: Select all
https://dl.dropboxusercontent.com/u/38234344/discdata1.rar
Code: Select all
usage: middleEarthArchiveUnpacker.exe <platform> <archive.arch05>
example: middleEarthArchiveUnpacker.exe PS3 layer01.arch05
example: middleEarthArchiveUnpacker.exe XBOX360 layer01.arch05
Echelo wrote:Here is my unpacker so far. Only PS3 and Xbox360 support for now. It uses quickbms to handle the XMem chunks, so quickbms needs to be in the same folder as this exe.
This will unpack the .arch05 files to a folder named after them, and unpack any .embb inside them to _d/_b. (was trying to keep unpacked paths short)
The files in the _d folders are the decompressed files from the .arch05, the files in the _b folders are the files from the .embb.
Usage:Code: Select all
usage: middleEarthArchiveUnpacker.exe <platform> <archive.arch05>
example: middleEarthArchiveUnpacker.exe PS3 layer01.arch05
example: middleEarthArchiveUnpacker.exe XBOX360 layer01.arch05
Hello, my friend, thank you for sharingaluigi wrote:Script updated to version 0.2.2, thanks.
aluigi wrote:Script updated to version 0.2.2, thanks.
Code: Select all
https://dl.dropboxusercontent.com/u/38234344/embb.rar
Code: Select all
https://dl.dropboxusercontent.com/u/38234344/SoM_X360.rar
Code: Select all
//--------------------------------------
//--- 010 Editor v3.1.1 Binary Template
//
// File:
// Author: michalss
// Revision:
// Purpose:
//--------------------------------------
local byte kompr;
local uint checker,trueer;
BigEndian();
do {
struct compfilestart {
uint packed;
trueer=FTell()+packed;
if (trueer < FileSize()) {
checker = ReadUShort(trueer);
} else {
checker=0;
}
if (checker==22616) {
byte *SPAM*[packed+2];
} else {
byte data[packed];
}
} record;
} while(FTell()!= FileSize());
aluigi wrote:Well done michalss, indeed it's a chunked compression with 4 bytes alignment.
The alignment is probably per-file but, considering that all the stored files are aligned, I opted for a per-archive alignment which is exactly the same in this case.
Script 0.3
http://aluigi.org/papers/bms/others/sha ... mordor.bms
I removed also the creation of 0 bytes files.
Code: Select all
if(var2 && ((u_int)var1 % (u_int)var2)) {
var1 += (var2 - ((u_int)var1 % (u_int)var2));
}
Code: Select all
usage: middleEarthArchiveTool.exe <mode> <archive.arch05> <platform>
example: middleEarthArchiveTool.exe unpack layer01.arch05 PS3
example: middleEarthArchiveTool.exe unpack layer01.arch05 XBOX360
example: middleEarthArchiveTool.exe repack layer01.arch05 PS3
example: middleEarthArchiveTool.exe repack layer01.arch05 XBOX360
Echelo wrote:Here is my full unpacker and repacker. Have fun!Code: Select all
usage: middleEarthArchiveTool.exe <mode> <archive.arch05> <platform>
example: middleEarthArchiveTool.exe unpack layer01.arch05 PS3
example: middleEarthArchiveTool.exe unpack layer01.arch05 XBOX360
example: middleEarthArchiveTool.exe repack layer01.arch05 PS3
example: middleEarthArchiveTool.exe repack layer01.arch05 XBOX360
This newer version will unpack all of the .arch05 files to a directory named after them.
Their internal .embb files will be unpacked to a "all_layers_unpacked_bundles" directory that is created when the first .embb is unpacked.
On repack, any files modded in the "all_layers_unpacked_bundles" are included in the repacked .embb before its packaged into the .arch05.
At this time, it will repack XBOX360 .arch05 one to one if no files were modified. I've also tested with a single texture mod and the game still loads the repacked .arch05.
For ps3, I think edge zlib 1.2.3.0 or just zlib1.dll version 1.2.3 is needed to make the repacked .arch05 one to one if no files were modded. Atm, I'm getting slightly better compression then the game. Will tinker with the zlib flavor later..
I can add PC support as well but I don't have a PC .arch05 to look at, I assume I can re-use my ps3 code and just change deflate to standard zlib with a few changes to endianness.
Remember to delete the install data and install it again with your repacked .arch05 files.
michalss wrote:
Thx mate gonna test it Soon All i need to repack correctly layer01 there is text and fonts ... Can i repack with with bigger size of text then original?