Jump to content


Miloch's Content

There have been 29 items by Miloch (Search limited from 29-March 23)


By content type

See this member's


Sort by                Order  

#609193 Help Needed - let's finally nail Ghoul potion bug!

Posted by Miloch on 07 May 2020 - 04:27 AM in Fishing for Trouble

One of the Russian gamer, AGKanevchev send me fixes for Ghoul potion bug

Heya. Russian and "AG" as in "Ardanis/GeN1e"? Well, I suppose not, but that was his modder prefix anyway.

 

I know nothing about this alleged "ghoul potion." Okay, fine. I invented it at Yovaneth's request. And it was actually working on vanilla BG2... perhaps even BGT, but long before we anticipated EE etc. We had some glitches (I particularly remember some portrait-related stuff), but I thought we ironed them out.

 

But I don't have immediate access to the EE games anymore (sad but true... they don't translate from one machine to another when you swap hard drives). So I could look at the effects, but what I seem to recall (my memory's kinda hazy on what Yovaneth wanted) was this:

 

Upon certain circumstances (like a time limit I think), the ghoul-turned character is supposed to explode, or something similarly nasty. And I said something like, "only a mutant half-orc would think of something like that." Okay, I didn't say that, but I swear it was an intended effect (of his, not mine), however brutal it might seem. I won't swear it was bug-free, particularly when bringing EE into play (as I said, not something we anticipated at the time).

 

Anyway, regarding "what might be the reason why on classic BG2 using yspotn02 doesn't restore the original character portrait?" This at least should be working as intended. If someone could come up with steps for reproduction (things to do in the game or console that would reproduce the error), that could help. It's been a long time since I last looked at this (even by orcish standards).




#609194 *tap* *tap* Is this thing on?

Posted by Miloch on 07 May 2020 - 05:44 AM in Fading Promises

I'm not sure if I even heard of this mod, except that its author has good creds, but in the interest of historical mod research, I chanced across what appeared to be its website...

shs2020a.jpg

And then I thought maybe this is a larger thing. Is there truly no updating on the SHS website itself? I mean, like, none within a decade or more? :o




#609278 1pp ~ high quality music for SoA/ToB || Tutu/ToSC || IWD || PS:T

Posted by Miloch on 17 May 2020 - 03:40 AM in 1PP

Erephine likely used wav2wavc.exe, which you have packaged nowadays in a nice set of tools (PS GUI) compliments of Sam.




#609327 BGT/BWP - Can't Load Beregost at Night, Get CTD

Posted by Miloch on 22 May 2020 - 03:23 AM in BG Graphics Overhaul

Ideally, the patch should go in both Sirine's Call and Graphics Overhaul (detecting whether the other is installed for maximum install-order compatibility).
 
The code Lollorian posted looks decidedly orcish (i.e. I believe I added the door for berelinde way back in the Bodacious Era or something), so maybe it just wasn't patching properly for the proper WEDs. I'm not sure if Sirine's Call patches or overwrites, but the same concept would apply (determining the door vertices and patching them accordingly).

 

COPY_EXISTING ~ar6700.wed~ override
              ~ar6700n.wed~ override
  sz = SOURCE_SIZE
  PATCH_IF sz > 0x48 BEGIN
    READ_LONG 0x8 ovr_count //Read initial offsets
    READ_LONG 0xc door_count
    READ_LONG 0x10 ovr_offset
    READ_LONG 0x14 sec_hdr
    READ_LONG 0x18 door_offset
    READ_LONG 0x1c dtc_indices
    READ_LONG sec_hdr poly_count
    READ_LONG (sec_hdr + 4) poly_offset
    READ_LONG (sec_hdr + 8 ) vert_offset
    READ_LONG (sec_hdr + 0xc) wall_offset
    READ_LONG (sec_hdr + 0x10) poly_table
    new_door_offset = door_offset + door_count * 0x1a
    new_vert_index = ((SOURCE_SIZE - vert_offset) / 4)

    INSERT_BYTES sz 0x20 //Insert 8 new vertex pairs
    WRITE_SHORT sz 2370 //Open door
    WRITE_SHORT (sz + 2) 1563
    WRITE_SHORT (sz + 4) 2325
    WRITE_SHORT (sz + 6) 1563
    WRITE_SHORT (sz + 8 ) 2325
    WRITE_SHORT (sz + 0xa) 1478
    WRITE_SHORT (sz + 0xc) 2370
    WRITE_SHORT (sz + 0xe) 1478
    WRITE_SHORT (sz + 0x10) 2370 //Closed door
    WRITE_SHORT (sz + 0x12) 1562
    WRITE_SHORT (sz + 0x14) 2330
    WRITE_SHORT (sz + 0x16) 1620
    WRITE_SHORT (sz + 0x18) 2330
    WRITE_SHORT (sz + 0x1a) 1536
    WRITE_SHORT (sz + 0x1c) 2370
    WRITE_SHORT (sz + 0x1e) 1478

    INSERT_BYTES poly_table 0x24 //Insert 2 new polygons
    WRITE_LONG poly_table new_vert_index //Starting vertex index
    WRITE_LONG (poly_table + 4) 4 //Vertex count
    WRITE_BYTE (poly_table + 8 ) 0x80 //Open door
    WRITE_BYTE (poly_table + 9) 0xff //Unknown
    WRITE_SHORT (poly_table + 0xa) 2325 //Boundary minimum X coordinate
    WRITE_SHORT (poly_table + 0xc) 2370 //Boundary maximum X coordinate
    WRITE_SHORT (poly_table + 0xe) 1478 //Boundary minimum Y coordinate
    WRITE_SHORT (poly_table + 0x10) 1563 //Boundary maximum Y coordinate
    WRITE_LONG (poly_table + 0x12) (new_vert_index + 4) //Starting vertex index
    WRITE_LONG (poly_table + 0x16) 4 //Vertex count
    WRITE_BYTE (poly_table + 0x1a) 0x80 //Closed door
    WRITE_BYTE (poly_table + 0x1b) 0xff //Unknown
    WRITE_SHORT (poly_table + 0x1c) 2330 //Boundary minimum X coordinate
    WRITE_SHORT (poly_table + 0x1e) 2370 //Boundary maximum X coordinate
    WRITE_SHORT (poly_table + 0x20) 1478 //Boundary minimum Y coordinate
    WRITE_SHORT (poly_table + 0x22) 1620 //Boundary maximum Y coordinate

    FOR (i = 0; i < door_count; i += 1) BEGIN //Update door polygon offsets
      WRITE_LONG (i * 0x1a + door_offset + 0x12) (THIS + 0x1a) //Open polygons offset
      WRITE_LONG (i * 0x1a + door_offset + 0x16) (THIS + 0x1a) //Closed polygons offset
      PATCH_IF (i = (door_count - 1)) BEGIN
        READ_SHORT (i * 0x1a + door_offset + 0xa) tile_index
        READ_SHORT (i * 0x1a + door_offset + 0xc) tile_count
      END
    END

    INSERT_BYTES new_door_offset 0x1a //Insert new door
    WRITE_ASCII new_door_offset ~DOOR3337~ //Name
    WRITE_SHORT (new_door_offset + 8 ) 1 //Closed
    WRITE_SHORT (new_door_offset + 0xa) (tile_index + tile_count) //Tile cell index
    WRITE_SHORT (new_door_offset + 0xe) 1 //Open polygons count
    WRITE_SHORT (new_door_offset + 0x10) 1 //Closed polygons count
    WRITE_LONG (new_door_offset + 0x12) (poly_table + 0x1a) //Open polygons offset
    WRITE_LONG (new_door_offset + 0x16) (poly_table + 0x1a + 0x12) //Closed polygons offset

    //Update offsets for new objects
    FOR (j = 0; j < ovr_count; j += 1) BEGIN //Update overlays
      WRITE_LONG (j * 0x18 + ovr_offset + 0x10) (THIS + 0x1a) //Tilemap offset
      WRITE_LONG (j * 0x18 + ovr_offset + 0x14) (THIS + 0x1a) //Tile index lookup offset
    END
    door_count += 1
    WRITE_LONG 0xc door_count
    WRITE_LONG 0x1c (dtc_indices + 0x1a)
    WRITE_LONG (sec_hdr + 4) (poly_offset + 0x1a)
    WRITE_LONG (sec_hdr + 8 ) (vert_offset + 0x1a + 0x24)
    WRITE_LONG (sec_hdr + 0xc) (wall_offset + 0x1a)
    WRITE_LONG (sec_hdr + 0x10) (poly_table + 0x1a + 0x24)
  END
BUT_ONLY

(Wtf happened to SPOILER tags? Well, it's not much code.)




#609343 BGT/BWP - Can't Load Beregost at Night, Get CTD

Posted by Miloch on 24 May 2020 - 01:34 PM in BG Graphics Overhaul

Awesome, thank you! This would be what I'd need to put into Sirine's Call, instead of overwriting the wed?

I'm guessing so, but I'd have to look at the code to be sure (feel free to attach some or point me toward it if you want me to look at it; I don't have the recent mod offhand). The only tricky part is defining the door vertices, but those should be easy enough to pick out via DLTCEP or NI if they already exist. For Gavin, I had to draw new doors (open and closed) from scratch, but I suppose that could be easier in one sense (especially since I cheated by hiding it behind an existing wall IIRC, heh).




#609504 Ferthgil Trollslayer problem

Posted by Miloch on 21 June 2020 - 06:08 PM in DSotSC (BGT/EET)

I have not heard of this, but can you post the contents of your WeiDU.log file for starters.




#609505 How to add travel point to existing area

Posted by Miloch on 21 June 2020 - 06:12 PM in IE Help

You are correct in that fj_are_structure will not do everything you want. You may need to use it in conjunction with sc#addWmpAre and/or ADD_WORLDMAP_LINKS. It's been a while since I've worked with these, so I can't provide more concrete help, but the WeiDU doc has examples.

 



#609506 NearInfinity

Posted by Miloch on 21 June 2020 - 06:14 PM in IE Modding Tools

Nice work.




#609507 Haiass

Posted by Miloch on 21 June 2020 - 06:24 PM in Miscellaneous Released Mods

I'll probably just start experimenting myself, but if anyone does have a solution please let me know. I'll post back here if I figure anything out, the problem is that the mod was written in spanish, so the variables are things like "HAIASSPUERTOBALDUR" "HAIASSMESONAMIGO" "HAIASSMIEDO" "HAIASSHUYE" "HAIASSDESDEBG" so I'm not really sure what I'm messing with mostly as I don't speak a lick of Spanish and google translate only works if there's a full word, not abbreviations & short hand. The only ones I can figure out are Puerto Baldur/Baldur's Gate is for him standing there when you issue a "meet me somewhere" command, and Friendly Arm Inn/Meson Amigo is similarly for him to wait there. But I have like 10 variables to mess with so I'll get to cracking and let you know if I found any way to reset his follow script once it breaks in the manner I've described. 

I don't know how much help the English equivalents will be, but they are:

"HAIASSPUERTOBALDUR" = HaiassBaldursGate

"HAIASSMESONAMIGO" = HaiassFriendlyArm

"HAIASSMIEDO" = HaiassFear

"HAIASSHUYE" = HaiassFlees

"HAIASSDESDEBG" = HaiassFromBG

 

There is persistent bug with Haiass and area west of Nashkel mines and south of Nashkel, Fire leaf forest. He will never spawn in this area however in an ambush when you exit it he will turn up just fine. This bug is persistent in 2.3 and new 2.4 version. I don't know is there some connection with Albert and Ruffie. Game is easy Tutu. 

You might want to post your WeiDU.log. I think DSotSC and perhaps other mods mess with that area. Part of the problem with the Haiass version I last worked with (ages ago) was that it wasn't very forward-looking regarding mod compatibility. I'm guessing other folks have since updated that though.

 



#609549 Haiass

Posted by Miloch on 27 June 2020 - 08:47 PM in Miscellaneous Released Mods

Well, here it is, I guess it can't hurt although I don't hold my hopes high as it seems nobody maintains this mod for a while now:

 

Last mod was added recently, after report of this bug ( started new game, of course ). I hope to hear soon from you Miloch, before your usual 2-3 months break from visiting this place.

Holy carp, that's a lot of mods... like, every one imaginable (even Xvart Caverns :o)? I guess it's high time someone updated the decade-old Tutu mod list (note: "someone" != "me"). In fact, the only one offhand you don't seem to have installed is the main DSotSC component, though you have the subcomponents. So I guess that rules out my guess.

 

I would have to defer this to jastey since she seems to have made the latest updates in the post above. I haven't looked at this mod for ages and doubt I would even recognize the code anymore. And if any of it was my code, I definitely wouldn't recognize it in all its orcish ugliness.




#609550 How to add travel point to existing area

Posted by Miloch on 27 June 2020 - 08:54 PM in IE Help

Do I really need to patch Nashkel Mines' BMP file or I can do this programmatically? 

Yes to both: you can patch a search bitmap programmatically (via WeiDU), but there aren't any handy macros. Basically, you want to diff the two files, the original and your change with the new exit, using WinDiff or another such utility. That gives you the differences you can patch, which really shouldn't amount to a whole lot of code. Here is an example of that from the Aurora's Shoes code. The first block patches the area (.are) file itself to add a travel area, an entrance, and an animation for a new interior subarea. The second block patches the search bitmap so that the party can approach the entrance that was otherwise in impassable terrain. The relevant code amounts to only 10 lines.

COPY_EXISTING ~%nnsh%.are~ override //North Nashkel Road entrance
  PATCH_IF SOURCE_SIZE > 0x28f BEGIN
    LPF fj_add_are_structure
      INT_VAR
      fj_type         = 2    //travel
      fj_box_left     = 3602
      fj_box_top      = 627
      fj_box_right    = 3674
      fj_box_bottom   = 721
      fj_cursor_index = 30   //door
      fj_vertex_0     = 3602 + (703 << 16)
      fj_vertex_1     = 3674 + (721 << 16)
      fj_vertex_2     = 3674 + (643 << 16)
      fj_vertex_3     = 3616 + (627 << 16)
      STR_VAR
      fj_structure_type   = region
      fj_name             = Door4301
      fj_destination_area = ag4301
      fj_destination_name = Exit4300
    END
    LPF fj_add_are_structure
      INT_VAR
      fj_loc_x       = 3690
      fj_loc_y       = 764
      fj_orientation = 1   //SSW
      STR_VAR
      fj_structure_type = entrance
      fj_name           = Exit4301
      RET
      some_unknown_offset = fj_return_offset
    END
    WRITE_SHORT some_unknown_offset + 0x28 64
    LPF fj_add_are_structure
      INT_VAR
      fj_loc_x       = 3609
      fj_loc_y       = 674
      fj_flags       = 0b00000000000000000001000110000101
      //visible, not illuminated, invisible in dark, covered by actors, shown in combat
      STR_VAR
      fj_structure_type = animation
      fj_name           = Cave1
      fj_bam_resref     = ag4300c1
    END
  END
BUT_ONLY

COPY_EXISTING ~%nnsh%sr.bmp~ ~override~ //Search map
  PATCH_IF SOURCE_SIZE > 0xa5e8 BEGIN
    WRITE_BYTE  0xa2c7 0x1f
    WRITE_SHORT 0xa367 0x1111
    WRITE_BYTE  0xa369 0x18
    WRITE_SHORT 0xa407 0x1111
    WRITE_BYTE  0xa409 0x18
    WRITE_SHORT 0xa4a7 0x1111
    WRITE_BYTE  0xa4a9 0x18
    WRITE_SHORT 0xa547 0x1111
    WRITE_BYTE  0xa549 0x18
    WRITE_SHORT 0xa5e7 0x1181
  END
BUT_ONLY



#609551 Ferthgil Trollslayer problem

Posted by Miloch on 27 June 2020 - 08:59 PM in DSotSC (BGT/EET)

As requested here is the entries from the log file...

Wait a second... isn't Ferthgil a DSotSC NPC? I don't see that in your log; did you uninstall it or something?




#609569 How to add travel point to existing area

Posted by Miloch on 29 June 2020 - 05:55 PM in IE Help

Speaking of dementia and preventing extra work, I forgot WeiDU has (and has had like forever) an inbuilt command-line option to generate a searchmap patch, which is almost certainly what I used for the Aurora code above. The only difference is I added a SOURCE_SIZE check (not strictly necessary) and concatenated adjacent WRITE_BYTEs into WRITE_SHORTs for the sake of brevity.

 

So basically, you put the original searchmap and your version (edited with DLTCEP or NI) in the same folder with WeiDU and type something like this from the command line:

weidu.exe --cmp-from orig.bmp --cmp-to new.bmp --out patch.tpa

And it generates a patch to turn the one file into the other. Although I haven't looked at it, weigo's function seems a bit redundant given the relative ease of this. Maybe it does something beyond this, but 2da files seem unnecessary if all you want to do is alter a searchmap.




#609570 Haiass

Posted by Miloch on 29 June 2020 - 06:06 PM in Miscellaneous Released Mods

About " Xvart Caverns", I can tell you that playing it on BG 2 engine is very different experience from playing on vanilla  BG:TOS ( and much easier it seems ).

I can imagine that with all of those mods, it'd be similar to BWP, and I may need to scale it accordingly, as some of the Aurora optional components aimed at doing for the whole game in general. I'll have to think of some way of doing that for the specific mod itself (e.g., make xvarts beefier if it detects stuff like reaver kit and Blackrazor +20 installed, though that would mean it would have to go near the end of the install, at least such an optional scaling component). Anyway, this is derailing the Haiass thread by a country mile, so if you have other comments, we have a (somewhat defunct) subforum for XC here or you can PM me other observations or suggestions (I get notifications here usually but not on G3 for some reason).




#609938 BG2 calendar dates and CalanderDay agreement

Posted by Miloch on 31 August 2020 - 08:36 PM in IE Modding Discussion

Glad to see you're still working on this. Not sure what you're looking for exactly, but you might try this: http://archive.wizar...d/frx/20050525x

 



#610359 Random treasure

Posted by Miloch on 10 December 2020 - 02:47 PM in Aurora's Shoes

Hi,

 

This is odd, since that component by itself does nothing with random treasure tables, but it might be something in the main component or something else. For starters, can you post your SETUP_AURORA.DEBUG file contents and also WeiDU.log from your game installation folder. If they're huge (most likely), just attach them or enclose them in SPOILER tags (if those still work here).




#610360 Big World Mod List

Posted by Miloch on 10 December 2020 - 03:05 PM in Resource Request Forum

Offhand, I'm guessing Item Revisions. Heh, I have no clue, but I'm fairly sure it's not Thrown Hammers.

 

You could also just install everything BiG by default and do a --change-log on the .itm file, which would narrow down the list of suspects considerably. Then just uninstall the offending mod (usually not as much of an issue as it used to be when END_BIFF was the norm).




#610361 So the Infinity Animation update..

Posted by Miloch on 10 December 2020 - 03:10 PM in Infinity Animations

Question @Gwendolyne, so is there anything I can do to help at this ?

Well, you could start by tracking down Gwendolyne and getting the update he promised ages ago. (And then do the same for Miloch from ages before that.)

 

Not that I'll be readying anything soon, but I'm guessing you have a non-Western European system you can test on?




#610367 So the Infinity Animation update..

Posted by Miloch on 13 December 2020 - 02:22 AM in Infinity Animations

Well, let me tell you how the BiG World Setup exploded over it and ...

So tell then... (*cue "he's going to tell" from Monty Python and the Holy Grail* "Not like that! Not like that!")




#610368 Random treasure

Posted by Miloch on 13 December 2020 - 02:28 AM in Aurora's Shoes

Okay, so let me get this straight... this bug happens with the "Change creature gold carried" component installed but not without it? Also, I stand corrected (by my own coding); this component does change the random treasure tables (namely for random amounts of gold creatures might carry). Therefore, can you please attach the rndtreas.2da file from your game's override folder so we can take a look at it.

 

Offhand, it sounds like the game is trying to spawn a nonexistent item (not just a * that the game should interpret correctly), but I dunno; it really seems we would've caught that after all of these years. I vaguely recall something similar cropping up under Nvidia glitches but can't find any reference to that now. But you might as well note your video hardware too.




#610373 Random treasure

Posted by Miloch on 14 December 2020 - 08:10 AM in Aurora's Shoes

If you go to More Reply Options at the bottom when replying to a post, you should be able to Upload and Attach files.

 

If you can reproduce the bug on a character (by looting the offending non-item) and then export and attach the character (.chr) file, that might also help.

 

Edit: Oh, and also include your WeiDU.log and SETUP_AURORA.DEBUG since you seem to have issues with a different component than TotoR does.




#610378 Random treasure

Posted by Miloch on 16 December 2020 - 07:54 AM in Aurora's Shoes

Yeah, I saw that. Apparently, that's a new finding since we made the mod; I doubt we'd've used the * otherwise. Other mods seem to use it (apparently SCS or another DavidW mod judging from Truman's rndtreas table). But I am guessing this *might* work for creatures but not random gold in chests. Either way, having invalid items in the game doesn't seem right.

 

So yeah, I have put in a minimum check of 1 and maximum of 256 (also per the IESDP) for random table-generated gold here. Uninstall the component, download the attached ag_cres.tpa file (below) into your aurora/lib folder (overwriting or renaming the existing file), and reinstall it. Let me know if there are other issues.

 

Changelog (of sorts) for ag_cres.tpa 2020-12-19:

- Added minimum and maximum random table gold checks

- Changed hardcoded creature list to regexp

- Replaced * values with 1 gold to prevent invalid items from appearing




#610382 Random treasure

Posted by Miloch on 17 December 2020 - 04:41 AM in Aurora's Shoes

I believe that i was wrong about the randomizer in the Auroa mod. I admit that it was a guess on my part. TotoR went a few more steps then i ever thought of.

Well, we confirmed this Aurora component was at least part of the problem. If you (uninstall the component and then) install it after other mods that might affect random treasure, it should fix those as well (at least as far as rndtreas.2da). I recommend installing it after at least Stratagems (since your log shows SCS appears to add * entries to rndtreas.2da). It looks like you have a nonstandard mod order, or is that the latest BiG World suggested order? Another thing that might be useful is to run a --change-log on rndtreas.2da to see which mods in your install are affecting it.




#610391 Random treasure

Posted by Miloch on 18 December 2020 - 03:23 AM in Aurora's Shoes

I see that the component from Stratagems is one that i have problems with. The mod VCV20 puts a file into the override that is corrupted somehow. That file also screws up the TBTweaks component, 'Mages drop spellbooks'. The offending file is SLMAGE1.cre. What i have always done is after i install the VCV20 mod, i take my backup copy of that file, which i have altered to make it work, and copied it into the override folder. The TBTweak mod and the Stratagem mods both load without problems.

I am not sure any of that is related to this random treasure issue, so I have split the intervening posts to this topic. Frankly, you have unrelated issues with a bunch of other mods, but with respect to random treasure, only Aurora and SCS affect rndtreas.2da in your install as your first change-log showed. So therefore, my advice still stands: uninstall the old Aurora component, copy the revised ag_cres.tpa above to aurora/lib, and reinstall the component (ideally after SCS).




#610392 BWP 18.2 issues (Improved Coronet, Revised Battles, etc.)

Posted by Miloch on 18 December 2020 - 03:56 AM in Mega Mod Help

I see that the component from Stratagems is one that i have problems with. The mod VCV20 puts a file into the override that is corrupted somehow. That file also screws up the TBTweaks component, 'Mages drop spellbooks'. The offending file is SLMAGE1.cre. What i have always done is after i install the VCV20 mod, i take my backup copy of that file, which i have altered to make it work, and copied it into the override folder. The TBTweak mod and the Stratagem mods both load without problems.

I split your problems from this post because you raised potential issues with other mods that don't seem to be related to the random treasure issue at all. Vlad's Improved Coronet does indeed copy/overwrite slmage1.cre (and a bunch of other files) causing not-so-"harmless" inconsistencies (see attached):

slmage01.gif

 

Revised Battles then later globally patches all .cre files with an outdated copy of Nythrun's creature validity check/reordering macro/function, apparently causing further issues.

slmage02.gif

 

These functions are now built into and updated in WeiDU (the installer for all mods). It seems Revised Battle's goal may have been to correct creatures after the fact (at the end of its installer), but it makes more sense to correct them before doing any patching to avoid corruption and inconsistencies. Indeed, I thought BiG World Project did this long ago but perhaps not anymore. Thus, I suggest omitting that code from the RevisedBattles.tp2 file (comment it out by adding /* at line 5070 before "//The following code blatantly hijacked from Nythrun" and */ at the end of the file ~line 5385).

 

Revised (fka Improved) Battles hasn't received an update in a while, but its last support topic was here.

 

Jan's Alchemy has received a relatively recent update, so if you notice issues with it, you might want to report those here.

 

Proposed addition to Setup-VCv21.tp2 @ line 14117 (after COPY ~NeJE\bdash\coppercr\copy~ ~override~):

  PATCH_IF (~%SOURCE_EXT%~ STRING_EQUAL_CASE ~CRE~ = 1) BEGIN
    LAUNCH_PATCH_FUNCTION FJ_CRE_VALIDITY END
  END

This is a band-aid at best; the optimal solution is to patch the existing .cre files and compile scripts (.baf files) instead of overwriting/copying .bcs files, but no one likely has the time and expertise to do that. As a test, I copied the slmage1.cre from Improved Coronet and did a LAUNCH_PATCH_FUNCTION FJ_CRE_VALIDITY on it and then patched it (arbitrarily modified the creature gold field), and the resulting .cre appeared to be fine. Doing this at the time of any initial COPYs avoids such errors as the attached that occur with your subsequent SLMAGE1.cre files from your change-log.