Closed Argent77 closed 6 years ago
Could you send me some of the files it's choking on? The rewrite of the function was supposed to make it universal across the IE file formats by polling the file's version field to determine read/write offsets.
The files are apparently the original files from BGEE, copied over to BG2EE and patched internally by the mod. The function calls are only found in macros.tph
(CLONE_EFFECT starting at line 891 and DELETE_EFFECT starting at line 862 ). I can't say if the mod applied additional patches internally. The rollback operation prevented me from backing up the files in question.
I've tested EET with both games (BGEE+SoD and BG2EE) at patch level 2.3.67.3 (clean state).
This is the complete EET log with many more warnings (all related to CLONE_EFFECT): SETUP-EET.DEBUG.zip
Some of the offsets are incorrectly defined in DELETE_EFFECT and CLONE_EFFECT. CRE V1.0 effects offset is 0x2c4 and count is 0x2c8. Offsets in some of the other CRE blocks don't look right either.
After fixing the CRE V1.0 offsets locally in both functions and making another EET test installation, it finished successfully. No warnings or errors.
Unless I missed something, this should be fixed in 906bc52859f0d50b290ef685010b67be37fcbf57.
Looks like there is more that needs fixing. EET installs successfully, but a number of patched resources are unreadable because of invalid item and item slot offset values. I have attached the resources in question from EET installations made with WeiDU 244 and latest WeiDU devel version.
Download: eet_diff_resources.zip
Edit: Only DELETE_EFFECT seems to have issues. You can reproduce with this test script:
// For reference
COPY_EXISTING ~abazigal.cre~ ~override~
// Working
PRINT ~Applying CLONE_EFFECT to ABAZIGAL.CRE => ABAZ_CE.CRE~
COPY_EXISTING ~abazigal.cre~ ~override/ABAZ_CE.CRE~
LPF CLONE_EFFECT
INT_VAR
check_globals = 1
verbose = 1
match_opcode = 233 // Modify proficiencies
match_parameter2 = 93 // match PROFICIENCYTWOHANDEDSWORD
parameter2 = 98 // add new effect with PROFICIENCYSPEAR
END
BUT_ONLY
// Not working!
PRINT ~Applying DELETE_EFFECT to ABAZIGAL.CRE => ABAZ_DE.CRE~
COPY_EXISTING ~abazigal.cre~ ~override/ABAZ_DE.CRE~
LPF DELETE_EFFECT
INT_VAR
check_globals = 1
verbose = 1
match_opcode = 233 // Modify proficiencies
match_parameter2 = 93 // match PROFICIENCYTWOHANDEDSWORD
END
BUT_ONLY
Thanks for the test case. Fixed in 1423892de3913ec374ef3e4468b752c878f4be12.
Thanks. New version produced identical results in EET as with WeiDU 244.
The commit https://github.com/WeiDUorg/weidu/commit/18c84e502f35c235fbff9af574a34e0ac459de0e by @CamDawg seems to prevent EET from installing successfully. It triggers numerous warnings and a fatal error (see logs below).
Warnings:
Error: