DavidW Posted March 1, 2011 Author Share Posted March 1, 2011 You have a mistyped acronym tag in the readme:acronym title="Sword Coast Stratagems for Baldur's Gate II">SCS II fairly safely Thanks Link to comment
Raj Posted March 1, 2011 Share Posted March 1, 2011 Corrected a minor compatibility issue where SR was preventing certain drow high priestesses from summoning BalorsWe now attempt to allow for aTweaks fiends Do you mind enlighten me about how SR, SCS2, and ATweaks deal with fiends when installed one on top of the other now please? Instal order: SR -> SCS2 ( more staying power, istant casting ) -> ATweaks ( 2nd component, attempts to affects mod added fiends as well ). My guess is that ATweaks fiends are meet through the game, with some exceptions ( the ones exluded by their readme like Demogorgon and the Chromatic Demon- who else? - ) that use SCS2 improved stats and scripts; players summon AT scripted fiends as well ( so they need to protect themselves with PfE ), SCS2 mages and priests summon AT fiends ( without Blood War fights if mixed alligned enemies, judging from one of your replies on their forum afaik ) but are unaffected by the ProEvil rule. SR fiends aren't used anymore by the player, might even comment them out. All fiends cast spells istantly. More staying power is redundant because fiends use AT stats. Improved Drows keep the demons listed in the SCS2 spoiler section. The uber lesser Demon Lord is going to mop up the hopeless Improved defenders of Uth Natha Find the errors Edit: About Spell Shield, is it going to absorb one antimagic ray before collapse now? Link to comment
Raj Posted March 1, 2011 Share Posted March 1, 2011 ASSERTION FAILED! Return Address: 0x636d63 File: CRuleTables.cpp Line: 5655 Expression: FALSE Message: <null> G3 Fixpack + ToBEX core + only the initialise component of SCS2 v16 for testing purposes: game crashes after couple seconds. Edit: reverting from ToBEx beta20 to ToBEx beta19 'fixes' the bug, looks like a compatibility issue with the latest beta only. Link to comment
DavidW Posted March 1, 2011 Author Share Posted March 1, 2011 Corrected a minor compatibility issue where SR was preventing certain drow high priestesses from summoning BalorsWe now attempt to allow for aTweaks fiends Do you mind enlighten me about how SR, SCS2, and ATweaks deal with fiends when installed one on top of the other now please? Instal order: SR -> SCS2 ( more staying power, istant casting ) -> ATweaks ( 2nd component, attempts to affects mod added fiends as well ). My guess is that ATweaks fiends are meet through the game, with some exceptions ( the ones exluded by their readme like Demogorgon and the Chromatic Demon- who else? - ) that use SCS2 improved stats and scripts; players summon AT scripted fiends as well ( so they need to protect themselves with PfE ), SCS2 mages and priests summon AT fiends ( without Blood War fights if mixed alligned enemies, judging from one of your replies on their forum afaik ) but are unaffected by the ProEvil rule. SR fiends aren't used anymore by the player, might even comment them out. All fiends cast spells istantly. More staying power is redundant because fiends use AT stats. Improved Drows keep the demons listed in the SCS2 spoiler section. The uber lesser Demon Lord is going to mop up the hopeless Improved defenders of Uth Natha I think that's basically right. (TBH I've slightly lost track myself). Edit: About Spell Shield, is it going to absorb one antimagic ray before collapse now? Yep. Link to comment
DavidW Posted March 1, 2011 Author Share Posted March 1, 2011 ASSERTION FAILED! Return Address: 0x636d63 File: CRuleTables.cpp Line: 5655 Expression: FALSE Message: <null> G3 Fixpack + ToBEX core + only the initialise component of SCS2 v16 for testing purposes: game crashes after couple seconds. Edit: reverting from ToBEx beta20 to ToBEx beta19 'fixes' the bug, looks like a compatibility issue with the latest beta only. Cool. (I'm shipping 19, aren't I?) Link to comment
Raj Posted March 1, 2011 Share Posted March 1, 2011 I can't install: smarter golems ERROR: Failure("hamm09.itm: read out of bounds") does it have anything to do with IR changing crom faeyr so that it no longer istakills golems? reduced reputation gain rate ( all 4 options tested ) [GPMERC.BCS.BCS] LEXER ERROR at line 1 column 0-1 Near Text: IF invalid keyword [iF] [GPMERC.BCS.BCS] ERROR at line 1 column 0-1 Near Text: IF Parsing.Parse_error ERROR: parsing [GPMERC.BCS.BCS]: Parsing.Parse_error ERROR: [GPMERC.BCS] -> [override/GPMERC.BCS] Patching Failed (COPY) (Parsing.Parse_error) Stopping installation because of error. Stopping installation because of error. ERROR Installing [Reputation increases at about 1/2 the normal rate], rolling back to previous state Link to comment
the bigg Posted March 1, 2011 Share Posted March 1, 2011 Ah, ensuring your mod installs correctly with broken resources from some better left untold prehistorical mod. That's my favoritest part EVAR of modding. Link to comment
Raj Posted March 1, 2011 Share Posted March 1, 2011 Ah, ensuring your mod installs correctly with broken resources from some better left untold prehistorical mod. That's my favoritest part EVAR of modding. Do you mind share your thoughts? So far I installed in order: Fixpack, ToBEx, IR, SR, Banterpack, RR, G3Tweaks, 1PP Paperdolls, SCS2; of these I guess the only prehistorical one is banterpacks. Link to comment
the bigg Posted March 1, 2011 Share Posted March 1, 2011 Generally speaking it's prehistorical mods that corrupt files and pose compatibility problems; in this case I can't imagine which of those mods might break your files. Did you install the hotfix for SR and IR? Link to comment
Raj Posted March 1, 2011 Share Posted March 1, 2011 I did. I also heavily modified both of them but I did not remember touching that .bcs. Can you reproduce the error on a clean install? Edit: after checking the scs2 modified mages .cre I notice every mage of lvl 18+ has 1+ HLA memorized, do they actually cast them? I installed the ''only selected mages get HLA'' + ''Make HLA Innates'' components and I'm a bit worried about Nevaziah dropping a Fallen Planetar on my lvl 9-10 guys :S Link to comment
Ardanis Posted March 2, 2011 Share Posted March 2, 2011 GET_OFFSET_ARRAY ab_array 0x64 4 0x68 2 0 0 0x28 PHP_EACH ab_array AS int => ab_off BEGIN ... GET_OFFSET_ARRAY2 eff_array ab_off ITM_V10_HEAD_EFFECTS PHP_EACH eff_array AS int =>eff_off BEGIN You need to CLEAR_ARRAY each one, otherwise you may read a file with 5 headers (array is 5 elements long), and if the next one has only 2 - instead of two iterations PHP_EACH will perform 5, first two belonging to the actual file, and the rest - to previous. Corrupting the file with high probability. CLEAR_ARRAY ab_array GET_OFFSET_ARRAY ab_array 0x64 4 0x68 2 0 0 0x28 PHP_EACH ab_array AS int => ab_off BEGIN ... CLEAR_ARRAY eff_array GET_OFFSET_ARRAY2 eff_array ab_off ITM_V10_HEAD_EFFECTS PHP_EACH eff_array AS int =>eff_off BEGIN Link to comment
Ardanis Posted March 2, 2011 Share Posted March 2, 2011 scsii/beholder/beholder.tph, the 'Beholders are immune to (most of) their own eyestalks' patch near the beginning - SPRINT ~new_effect_resource~ ~spin961~ // paralyze again LAUNCH_PATCH_MACRO ~add_global_effect~ You probably meant 'spin960' here. The Spell Shield routine: 1) Using WeiDU's new ADD_SECTYPE command (it's more reliable) 2) Fixing an old oversight on my part, and reading for SS's real duration Also Edit: About Spell Shield, is it going to absorb one antimagic ray before collapse now?It wasn't in my list (totally forgot about them back then, my bad), so I've added 'spin992' and 'spin550'. Unless you patch them somewhere else (couldn't find if you do), then they should be omitted. DEFINE_ACTION_MACRO ~ardanis_spell_shield~ BEGIN // adding new sectype ADD_SECTYPE SpellShield @14200 COPY_EXISTING ~spwi519.spl~ ~override~ WRITE_BYTE 0x27 SpellShield CLEAR_ARRAY ab_array GET_OFFSET_ARRAY ab_array 0x64 4 0x68 2 0 0 0x28 PHP_EACH ab_array AS int => ab_off BEGIN CLEAR_ARRAY eff_array GET_OFFSET_ARRAY2 eff_array ab_off ITM_V10_HEAD_EFFECTS PHP_EACH eff_array AS int2 => eff_off BEGIN PATCH_IF SHORT_AT eff_off = 226 BEGIN SET $spellshieldheader("%int%")=LONG_AT(eff_off+0xe) END END END LPF DELETE_SPELL_EFFECT INT_VAR opcode_to_delete = 226 END // patching antimagic ACTION_FOR_EACH spell IN ~spwi321~ // spell thrust ~spwi419~ // secret word ~spwi513~ // breach ~spwi608~ // pierce magic ~spwi704~ // ruby ray of reversal ~spwi705~ // khelben warding whip ~spwi805~ // pierce shield ~spwi903~ // spellstrike // beholder innates ~spin992~ // beholder antimagic ray ~spin550~ // hive mother antimagic ray BEGIN COPY_EXISTING ~spwi519.spl~ ~override~ // spell shield PHP_EACH spellshieldheader AS ind => res BEGIN LAUNCH_PATCH_FUNCTION ADD_SPELL_EFFECT INT_VAR header=ind+1 opcode=206 target=1 duration=res power=5 STR_VAR resource = EVALUATE_BUFFER ~%spell%b~ END END ACTION_IF FILE_EXISTS_IN_GAME ~%spell%d.spl~ THEN BEGIN // check if I've modified the spell already to make it penetrate Inv. OUTER_SPRINT ~spellcore~ ~%spell%d~ END ELSE BEGIN OUTER_SPRINT ~spellcore~ ~%spell%~ END COPY_EXISTING ~%spellcore%.spl~ ~override/%spell%b.spl~ WRITE_ASCII 0x8 ~~ (8) // clearing out the name READ_LONG 0x64 ab_off READ_SHORT 0x68 ab_num FOR (i=0;i<ab_num;i+=1) BEGIN WRITE_SHORT (ab_off+i*0x28+0x0c) 1 // target = creature WRITE_SHORT (ab_off+i*0x28+0x26) 1 // projectile = none END COPY_EXISTING ~%spellcore%.spl~ ~override~ // modifying the original READ_LONG 0x34 level READ_LONG 0x64 ab_off READ_SHORT 0x68 ab_num READ_LONG 0x6a ef_off READ_SHORT 0x70 cast_num // global effects aka casting features total_eff=cast_num FOR (i=0;i<ab_num;i+=1) BEGIN READ_SHORT (ab_off+i*0x28+0x1e) ef_num // effect number total_eff+=ef_num END DELETE_BYTES ef_off (total_eff*0x30) DELETE_BYTES ab_off ((ab_num - 1)*0x28) WRITE_SHORT 0x68 1 WRITE_LONG 0x6a (ef_off - (ab_num - 1)*0x28) WRITE_SHORT 0x70 0 WRITE_SHORT (ab_off+0x1e) 2 WRITE_SHORT (ab_off+0x20) 0 WRITE_SHORT (ab_off+0x10) 1 // level required offset=(ef_off - (ab_num - 1)*0x28) INSERT_BYTES offset 0x60 WRITE_SHORT (offset+0x00) 146 // opcode = cast spell on creature WRITE_BYTE (offset+0x02) 2 // target = pre-target WRITE_BYTE (offset+0x03) level // power level = spell level WRITE_LONG (offset+0x04) 0 // parameter 1 = caster's level WRITE_LONG (offset+0x08) 1 // parameter 2 = instant WRITE_BYTE (offset+0x0c) 1 // timing mode = permanent WRITE_BYTE (offset+0x12) 100 // probability 1 = 100% WRITE_BYTE (offset+0x13) 0 // probability 2 = 0% WRITE_ASCIIE (offset+0x14) ~%spell%b~ (8) READ_ASCII offset ~clone~ (0x30) WRITE_ASCIIE (offset+0x30) ~%clone%~ WRITE_ASCIIE (offset+0x44) ~%spell%c~ COPY_EXISTING ~%spellcore%.spl~ ~override/%spell%c.spl~ WRITE_ASCII 0x8 ~~ (8) // clearing out the name READ_LONG 0x64 ab_off READ_LONG 0x6a ef_off WRITE_SHORT (ab_off+0x1e) 1 WRITE_SHORT (ab_off+0x26) 1 DELETE_BYTES (ef_off+0x30) 0x30 WRITE_SHORT ef_off 230 // opcode = remove one sectype WRITE_LONG (ef_off+0x4) 9 // max level = 9 WRITE_LONG (ef_off+0x8) SpellShield WRITE_ASCII (ef_off+0x14) ~~ (8) END END Link to comment
Wisp Posted March 2, 2011 Share Posted March 2, 2011 You need to CLEAR_ARRAY each one Both GET_OFFSET_ARRAYs automatically clear their arrays these days. Link to comment
DavidW Posted March 2, 2011 Author Share Posted March 2, 2011 I did. I also heavily modified both of them but I did not remember touching that .bcs. Can you reproduce the error on a clean install? You mean, does the component fail on a pure SCS-plus-fixpack install? If so, no. (I do do install tests before releasing, believe it or not.) Edit: after checking the scs2 modified mages .cre I notice every mage of lvl 18+ has 1+ HLA memorized, do they actually cast them? I installed the ''only selected mages get HLA'' + ''Make HLA Innates'' components and I'm a bit worried about Nevaziah dropping a Fallen Planetar on my lvl 9-10 guys :S Hmm. That does sound like an error - will check. (I don't think that particular permutation got much detailed testing.) Link to comment
DavidW Posted March 2, 2011 Author Share Posted March 2, 2011 Damn. Raj is right, if "HLAs as innate" is installed then all high-level enemies get HLAs, irrespective of what options you choose. I'll fix this at the weekend (I need to do a translation update and Linux release anyway.) Inter alia, you can fix it by editing scsii/mage/mage.tph in a text editor. At line 2425, replace PATCH_IF ~hla_innate~>0 BEGIN [code] with [code] PATCH_IF (~hla_innate~>0 AND VARIABLE_IS_SET $hla(EVALUATE_BUFFER ~%CREfilename%~)) BEGIN Sorry about that. (There's always something...) Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.