Jump to content

Alpha 4 miscellany


Recommended Posts

@103 = ~ You've made a fatal error in judgement!~ [sILVER19]
How did I ever make a mistake like that. It must have been a fatal error in judgment.

 

~0x0000 MAGESCHOOL_GENERALIST~
Generalist mages are 0x4000 (trueclass), no?

 

REPLACE_TEXTUALLY %"ISC_03A"% %"MISC_M03"%
We're actually copying a MISC_03A over now, so this should be updated (ISC -> MISC). Rejoice!

 

REPLACE_TEXTUALLY %ChangeAIScript("DEATHK",OVERRIDE)% %ChangeAIScript("DEATHKNI",OVERRIDE)%
DeathKni, the script, is from Durlag's Tower (i.e., this patch can be killed). To make things more confusing, DeathKni, the creature definition, *is* used in ToB. I also couldn't ever find where the SHAEL_ WAVs were used (outside of Die!, Pain!, Stun!, and DeathKni.bcs; all of which are left-over from TotSC).

 

APPLY_BCS_PATCH_OR_COPY
Something needs to be done to figure out what-all changes need to be made here (A_B_P_O_C_U_V_W_X_Y_Z *must* get the axe for 100% unreliability). I'll go on record now as saying that reducing the length of time between Jaheira's lovetalks is *not* a bug fix.

 

REPLACE_TEXTUALLY ~ApplySpell("kpglai01",WIZARD_TRUE_DISPEL_MAGIC)~ ~ApplySpell("kpglai01",FORCE_DISPEL_MAGIC)~
I still say this should be ActionOverride()d...

 

REPLACE_TEXTUALLY ~TriggerActivation("Tran1400",FALSE)~ ~TriggerActivation("Tran1400",FALSE)

ContainerEnable("CONTAINER2",0)

ActionOverride("shaava01",DestroySelf())~

Lest anyone think that disabling the container after killing the shade lord is my fault... it's not.

 

REPLACE_TEXTUALLY ~SetGlobal("EnteredArea1500","GLOBAL",1)~ ~SetGlobal("EnteredArea1500","GLOBAL",1)

AddXPObject(Player1,38500)

AddXPObject(Player2,38500)

AddXPObject(Player3,38500)

AddXPObject(Player4,38500)

AddXPObject(Player5,38500)

AddXPObject(Player6,38500)~

I never could find SaveGame() anywhere in this sequence; if so, this patch is probably a mite pointless.

 

REPLACE_TEXTUALLY ~Global("TerreceSpawn","GLOBAL",2)~ ~Global("TerreceSpawn","GLOBAL",2) InMyArea([PC])~
I'm thinking we should just use See([2]) here (with an option update to StartDialogueNoSet(LastSeenBy(Myself))). This is one of the first patches I ever did; InMyArea() is rarely used in this fashion in the default game.

 

WRITE_ASCII ("%actor_off%" + ("%actor_num%" * 0x110)) ~ketlbg01~ #32

  SET "toggle" = 1

END ELSE BEGIN

  WRITE_ASCII ("%actor_off%" + ("%actor_num%" * 0x110)) ~ketlbg02~ #32

We've got conflicting-version madness, here. The ARE patch uses the old-style KETLBGs, but the newer script uses the MGKETBGs (since this will only affect the mage stronghold quests, I decided to give them the right prefix to make the association clearer). One will need to be chosen. You'll also need to be adding Argrim.cre to the script name patch, I think.

 

~enddem01.cre~ ~override~

~enddem02.cre~ ~override~

The SoA finale movie was actually going to be an in-game cutscene, and these CREs were part of the action. No cutscene = no CREs = no point in patching these (from the demon animation update component).

 

WRITE_LONG 0x0250 0 // delete MAGESLY.BCS

WRITE_LONG 0x0254 0

I'd use WRITE_ASCII 0x0254 ~~ #8 here. It makes it easier for me to see that this is clearing a script reference.

 

~ar1010.are~ ~override~
As far as I can tell, this script doesn't exist (from ARE script patch).

 

~ar0401.are~ ~override~
Ask testers to concentrate on the Jan/Lissa plot because of this patch (just to make sure it works OK). I don't want to do it myself...

 

// fixes enchantment, weight, icons, and prof of short bow +1
The ability icon for almost every bow in the game is wrong, too.

 

// darts of stunning, wounding missing enchantment level
I don't think that these should be enchanted (no magical missile of any type is enchanted, except where explicity stated).

 

COPY_EXISTING ~misc4q.itm~ ~override~
By default, this item is usable by monks and thieves, so it can't be a bastard sword, right? I'd suggest just plain-old long sword.

 

// ring of gaxx displays wrong icon and needs to prevent poison and nausea icons
If you find some free time, you might want to consider adding the bleeding icon, too (for that single instance that you'll ever encounter it in the game, of course).

 

// anti-magic should destroy magically created items
Actually, this effects all dispel abilities in the game (that were copied from the original Dispel Magic spell), making me even more unsure as to whether my patch here accomplishes anything at all.

 

WRITE_ASCII ("%fx_off%" + 0x14 + (0x30 * ("%abil_fx_idx%" + "%index2%"))) ~sparmor2~ #8 // corrects resref
// breaks resref

 

COPY_EXISTING ~25SPELL2.STO~ ~OVERRIDE~
This file isn't ever used in-game, so I wouldn't bother patching it.

 

ACTION_IF ("%WEIDU_ARCH%" STRING_COMPARE_CASE "x86" = 0) THEN BEGIN
You're not supposed to do this until we can get some confirmation that this crashes the Mac OS X version. For all you know, I could have been lying...

 

modder pack
You may want to add the APPENDages for Animate.ids and AniSnd.ids from my latest fixpack. There are a bunch of omissions; filling in the relevant IDs makes it a lot easier (for me, at least) to add/edit/browse the animations (everything I add works in the default game, although not all of the animation slots have corresponding animations in the default ToB resources).
Link to comment

OK. All these are addressed; comments follow.

 

@103 = ~ You've made a fatal error in judgement!~ [sILVER19]
How did I ever make a mistake like that. It must have been a fatal error in judgment.

O...kay.

 

APPLY_BCS_PATCH_OR_COPY
Something needs to be done to figure out what-all changes need to be made here (A_B_P_O_C_U_V_W_X_Y_Z *must* get the axe for 100% unreliability). I'll go on record now as saying that reducing the length of time between Jaheira's lovetalks is *not* a bug fix.

Yes, bugging Wes is on my list.

 

REPLACE_TEXTUALLY ~SetGlobal("EnteredArea1500","GLOBAL",1)~ ~SetGlobal("EnteredArea1500","GLOBAL",1)

AddXPObject(Player1,38500)

AddXPObject(Player2,38500)

AddXPObject(Player3,38500)

AddXPObject(Player4,38500)

AddXPObject(Player5,38500)

AddXPObject(Player6,38500)~

I never could find SaveGame() anywhere in this sequence; if so, this patch is probably a mite pointless.

The problem here was that leaving a party-required area was forcing an auto-save, not that one was explicitly forced.

 

COPY_EXISTING ~misc4q.itm~ ~override~
By default, this item is usable by monks and thieves, so it can't be a bastard sword, right? I'd suggest just plain-old long sword.

More Bioware consistency. I chose bastard sword based on its 2d4 melee damage. We should either change the damage or usabilities to be more consistent either way. Granted, it'll only be useful for about 20 seconds either way...

 

WRITE_ASCII ("%fx_off%" + 0x14 + (0x30 * ("%abil_fx_idx%" + "%index2%"))) ~sparmor2~ #8 // corrects resref
// breaks resref

Ah, yes, I miss creating the new VVC. Is your creation of SPARMOR2 a bugfix and should we include it, or another Optional but cool?

Link to comment
Yes, bugging Wes is on my list.
Wes didn't write it, so I don't think he'll really do anything to it.

 

The problem here was that leaving a party-required area was forcing an auto-save, not that one was explicitly forced.
If it's done via script (from the bug report, that would have to be the case), there shouldn't be any auto-save unless SaveGame(0) is used (as far as I could see, it isn't).

 

Ah, yes, I miss creating the new VVC. Is your creation of SPARMOR2 a bugfix and should we include it, or another Optional but cool?
Optional, but very un-cool. I had to shift the damn helmet up into the stratosphere just to get it to look like it's over the object. It's so stupid-looking that I decided to give it to the lame Level 1 Armor spell, and recently, to the Shield Amulet (speaking of the amulet, make sure that this is protecting against Magic Missile -- I think that's the original reason I was patching it). I'd say don't include it at all; if you do, take credit for it (this way, they'll all be laughing at you ;) ).
Link to comment

OK, cheers. This is corrected and included in alpha 5. Additional code for fixing bow icons:

 

// fixes swapped icons
COPY_EXISTING ~bow01.itm~ ~override~
             ~bow03.itm~ ~override~
 WRITE_EVALUATED_ASCII 0x3a ~i%SOURCE_RES%~ #8
 BUT_ONLY_IF_IT_CHANGES

// fixes incorrect BAMs for several bows
COPY_EXISTING ~bow01.itm~    ~override~
             ~bow03.itm~    ~override~
             ~bow06.itm~    ~override~
             ~bow09.itm~    ~override~
             ~bow11.itm~    ~override~
             ~bow12.itm~    ~override~
             ~bow14.itm~    ~override~
             ~bow15.itm~    ~override~
             ~bow16.itm~    ~override~
             ~bow17.itm~    ~override~
             ~bow18.itm~    ~override~
             ~bow22.itm~    ~override~
             ~bow23.itm~    ~override~
             ~gorwom2.itm~  ~override~
             ~npbow.itm~    ~override~
 PATCH_IF (SOURCE_SIZE > 0x71) THEN BEGIN // protects against invalid files
   READ_ASCII 0x3a "bam"
   READ_LONG  0x64 "abil_off"
   READ_SHORT 0x68 "abil_num"
   WHILE ("%abil_num%" > 0) BEGIN
     SET "abil_num" = ("%abil_num%" - 1)
     READ_BYTE ("%abil_off%" + (0x38 * "%abil_num%")) "abil_type"
     PATCH_IF (("%abil_type%" = 2) OR ("%abil_type%" = 4)) BEGIN
       WRITE_EVALUATED_ASCII ("%abil_off%" + 0x04 + (0x38 * "%abil_num%")) ~%bam%~ #8
     END
   END
 END
 BUT_ONLY_IF_IT_CHANGES

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...