spillerrec / VirtualAA2

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Import PackUpdater updates

spillerrec opened this issue · comments

An importer for official updates using the PackUpdater.exe is very much needed. Compared to FileCopy.exe this is not trivial to do manually, as it uses filenames like up00_00.pp instead of the real filenames of the PP files it affects.

I'm not sure how to do this, as the filenames are stored in the EXE. It would be easy to extract the filenames, but I don't think there is an reliable way to identify which string belongs to what file.

An advanced way to support this would to enable writes to the virtualized PP archives and create a mod package by keeping track of the diffs. But this is too complicated to consider for now...

Anyway, this is the section we are interested in:
strings2.exe PackUpdater.exe | grep "\.pp\|Software"

Software\illusion\AA2Edit\
%s/data/jg2e02_00_00.pp
%s/data/jg2e02_00_04.pp
%s/data/up01_00.pp
%s/data/up01_01.pp
Software\illusion\AA2Play\
%s/data/jg2p00_00_00.pp
%s/data/jg2el02_02_00.pp
%s/data/jg2p05_s01_00.pp
%s/data/jg2p09_04_00.pp
%s/data/jg2p09_06_00.pp
%s/data/jg2p09_07_00.pp
%s/data/jg2p09_08_00.pp
%s/data/jg2p09_11_00.pp
%s/data/jg2p00_00_01.pp
%s/data/jg2p00_00_02.pp
%s/data/jg2p05_a21_01.pp
%s/data/up00_00.pp
%s/data/up00_01.pp
%s/data/up00_02.pp
%s/data/up00_03.pp
%s/data/up00_04.pp
%s/data/up00_05.pp
%s/data/up00_06.pp
%s/data/up00_07.pp
%s/data/up02_00.pp
%s/data/up03_00.pp
%s/data/up03_01.pp
%s/data/up00_08.pp

strings2.exe: http://split-code.com/strings2.html
grep: http://gnuwin32.sourceforge.net/packages/grep.htm

So tried just to match up the filenames based on its order. Guess what, problems. Notice how the above contains more upXX_XX.pp files than the jp2p_XX_XX_XX.pp files. Furthermore, at least one of the upXX_XX.pp files does not even exist...