I don't suppose you have one of these 'working examples' for perusal? I have time to do this today, and only today, and only got the time at the last minute. Sorry for rushing, but that's my life at present.
Sure, here's the vanilla script block for announce.bcs:
IF
Global("DestroyAnnouncer","AR0406",1)
THEN
RESPONSE #100
CreateCreature("WOLFWI01",[2924.1372],12)
CreateCreature("DSBODY01",[2638.1588],<img src='http://www.shsforums.net/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='8)' />
CreateCreature("DSTHIEF",[2735.1598],12)
CreateCreature("DSBODY01",[2831.1361],<img src='http://www.shsforums.net/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='8)' />
DestroySelf()
END
BP wants it to look like this:
IF
Global("DestroyAnnouncer","AR0406",1)
DifficultyGT(EASIEST)
THEN
RESPONSE #100
CreateCreature("WOLFWI01",[2850.1300],4)
CreateCreature("WOLFWI01",[2850.1350],4)
CreateCreature("WOLFWI01",[2924.1372],4)
CreateCreature("DSBODY01",[2638.1588],<img src='http://www.shsforums.net/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='8)' />
CreateCreature("DSTHIEF",[2735.1598],12)
CreateCreature("DSBODY01",[2831.1361],<img src='http://www.shsforums.net/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='8)' />
CreateCreature("OGRE01",[2625.1125],4)
CreateCreature("OGRE01",[2700.1150],4)
CreateCreature("OGRE01",[2775.1125],4)
CreateCreature("OGRMAG01",[2800.1200],4)
DestroySelf()
END
Here's the previous code, that may or may not work with REPLACE_BCS_BLOCK depending on whether other mods have changed that block:
COPY_EXISTING ~ANNOUNCE.BCS~ ~override~
REPLACE_TEXTUALLY ~BPv179/SNIP/oANNOUNC.bcs~ ~BPv179/SNIP/nANNOUNC.bcs~
BUT_ONLY_IF_IT_CHANGES
Here's the code to get it to work properly with REPLACE_TEXTUALLY:
COPY_EXISTING ~announce.bcs~ ~override~
DECOMPILE_BCS_TO_BAF
REPLACE_TEXTUALLY CASE_INSENSITIVE EXACT_MATCH ~Global("DestroyAnnouncer","AR0406",1)~
~Global("DestroyAnnouncer","AR0406",1) DifficultyGT(EASIEST)~
REPLACE_TEXTUALLY CASE_INSENSITIVE EXACT_MATCH ~CreateCreature("WOLFWI01",[2924.1372],12)~
~CreateCreature("WOLFWI01",[2850.1300],4) CreateCreature("WOLFWI01",[2850.1350],4) CreateCreature("WOLFWI01",[2924.1372],4)~
REPLACE_TEXTUALLY CASE_INSENSITIVE EXACT_MATCH ~CreateCreature("DSBODY01",[2831.1361],<img src='http://www.shsforums.net/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='8)' />~
~CreateCreature("DSBODY01",[2831.1361],<img src='http://www.shsforums.net/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='8)' /> CreateCreature("OGRE01",[2625.1125],4) CreateCreature("OGRE01",[2700.1150],4) CreateCreature("OGRE01",[2775.1125],4) CreateCreature("OGRMAG01",[2800.1200],4)~
COMPILE_BAF_TO_BCS
BUT_ONLY_IF_IT_CHANGES
Basically, the main difference is you're replacing individual lines rather than entire blocks, so it's more "surgical" of a patch. A side effect is you can now dump all the o*.bcs/n*.bcs blocks in the mod folders, since they're now handled by the tp2.
If you want to take a stab at this, can you let me know where you get to? 'Cause if you don't get through the all, I can probably get through the rest once I'm done with patching the remaining items and spells.