Jump to content


Insomniator's Content

There have been 122 items by Insomniator (Search limited from 17-June 23)


By content type

See this member's


Sort by                Order  

#612498 So the Infinity Animation update..

Posted by Insomniator on 15 May 2022 - 02:54 PM in Infinity Animations

So will it be possible to add BRIGHTEST override to EXTANIM? bBrightest is basically extra blending; by "brightening" some pixels it makes the animation slightly translucent. Again, useful for creatures like ghosts and elementals that should be a little see-through. I have no idea what bBrightestDesired does, so let's just skip it, because it doesn't seem to affect bBrightest effect.

Yes, new parameters easily to add
FALL_SND
LIGHT_SOURCE
INFRAVISION_DETECT (engine limited to 13xx, 7xxx(BG1 Monsters), 73xx, 77xx, 7Fxx, Exxx)
BRIGHTEST
 
i will upload test version after initial testing




#612502 So the Infinity Animation update..

Posted by Insomniator on 16 May 2022 - 03:54 AM in Infinity Animations

Hi skellytz
 
Check test version, engine limitations:
1)  bBrightest used:

0xxx(AnimationTypeEffect)
13xx(AnimationTypeMonsterMultiNew)
73xx(AnimationTypeMonster - 73xx, 77xx, 7Fxx)

 
2) bDetectedByInfravision used:

13xx
5xxx/6xxx (BG1/BG2 Playable Human)
7xxx (BG1 Monsters)
73xx(AnimationTypeMonster - 73xx, 77xx, 7Fxx)
Exxx

 
3) bLightSource used:

13xx

7F3B MSOL
7F3C MASL
7310 MFIE
7311 MFIS
7312 MFIE
7313 MFIS
7314 MFIE

many effects:
0Bxx
0C0xx
....

https://anonfiles.co...x_resref_v2_zip




#612516 So the Infinity Animation update..

Posted by Insomniator on 18 May 2022 - 05:12 AM in Infinity Animations

Hi skellytz

12xx (dragons) RESREF override still doesn't work. Did it work for you in your tests, Insomniator?

12xx(MonsterMulti) animation code forget to save AnimID to proper field, e.g. animid for dragons was random, i fixed it.

Some of 12xx functions may change behaviour because now they get proper animid:
GetCastHeight()     return 144 for 12xx, return 35 for else
GetCastingOffset()  fill offsets for 12xx, skip for else
GetSndReady()       additional check for 0x10xx/0x11xx/0x13xx animid , return "WAL_77" for 0x10xx, return EMPTY for else
GetWalkingSound()   return WAL_* depending on animid

may be more 12xx functs affected...
 
https://anonfiles.co...x_resref_v3_zip




#612517 So the Infinity Animation update..

Posted by Insomniator on 18 May 2022 - 05:25 AM in Infinity Animations

IA engine code for non-WQ/WP character animations, which need new custom BAMs for objects/equipment, is more complicated:

 

Example for BG2 non-WQ character animation:

Override resref for 0x6600 (BG2 non-WQ character paletted) with s@az

New anim avatar BAMs: s@az + armor level + sequence (eg s@az1g1.bam)

New anim avatar paperdoll: s@az + armor level + inv (eg s@az1inv.bam)

New anim object/equipment BAMs: [IA engine code strips the 1st char] @az + object id + sequence (eg @azs1g1.bam)

New anim object/equipment paperdoll: [IA engine code strips the 1st char and then replaces the 2nd of remaining chars with p] @pz + object id + inv (eg @pzs1inv.bam)

 

So, all we need is the resref override for character animation ranges, so that IA engine code can use the new prefix in filename generation. Modders will then be instructed how to name their files properly. This will open up a lot of new animation slots.


We can come up with new scheme without shifting/swapping/patching modder's reserved name, e.g. all non-WQ anims always will start with s@az. Problem is @pzs1inv.bam, it already has 8 chars, but we can reduce suffix inv to in :)

 

Of couse this willl happy only for aniimation with custom resref in extanim.2da

Existing/Unlisted animations keep orig+IA filenaming logic




#612518 So the Infinity Animation update..

Posted by Insomniator on 18 May 2022 - 05:57 AM in Infinity Animations

Hi Graion Dilach

How does this open up new animation slots? If I read the IA docs right, it's not the filename but the hexa slot IDs which cause the bottleneck. I don't see how softcoding filenames - on which don't get me right, is always cool - helps on hexa ID allocation.

Currently no easy way to insert custom animation to dynamic slot id, but it is possible in weidu code
1) Parse Animate.ids/Aniwksnd.2da to look what last slot (ABCD) was assigned to target animation type+subtype
2) Insert new slot ABCD+1 to Animate.ids/Aniwksnd.2da
3) Add new line ABCD+1 with modders filename resref  to  EXTANIM.2da
4) Patch current mod's .CREs to have ABCD+1 animid
....
x) Parse Animate.ids/aniwksnd.2da for other animation type+subtype
x) Insert new slot WXYZ+1 to Animate.ids/Aniwksnd.2da
 
I think main problem is processing animation type+subtype (someone good coder has to write weidu code), there is IA's anims.list with all possible(?) slots, also engine often restrict us to use limited sub-ranges (for example limits 0x4xCx, so C can be for example only 0-4 for target sub-type)
 
if resref not used, filename still based on IA-algo (µaa/...) but helps to keep modders's naming when inserted with dynamic animid




#612521 So the Infinity Animation update..

Posted by Insomniator on 18 May 2022 - 01:22 PM in Infinity Animations

1) Now i understand how 0x5xxx paperdoll vanilla prefix generation works

BODY:
1) Prefix = PrefixPaperDoll + ArmorCode
2) Prefix[4] = ArmorSpecificSuffix

    Thief: ArmorCode=1 ArmorSpecificSuffix=T
    1) CEFB + 1 = CEFB1
    2) CEFB1 -> CEFT1
    CEFT1inv.bam

WEAPON:
1) Prefix = HeightCode + WeaponPrefix
2) Prefix[2] = P

    Thief with bow: HeightCode=WQM WeaponPrefix=BW
    1) WQM + BW = WQMBW
    2) WQMBW -> WPMBW
    WPMBWinv.bam

HELMET:
1) Prefix = HeightCode + HelmPrefix
2) Prefix[2] = P

    Warrior: HeightCode=WQS HelmPrefix=H0
    1) WQS + H0 = WQSH0
    2) WQSH0 -> WPSH0
    WPSH0inv.bam

   
SHIELD:
1) Prefix = HeightCode + ShieldPrefix
2) Prefix[2] = P

    Warrior: HeightCode=WQS ShieldPrefix=D2
    1) WQS + D2 = WQSD2
    2) WQSD2 -> WPSD2
    WPSD2inv.bam

 

To keep modder prefix untouched for BODY TobEx can change :

1) Prefix = PrefixPaperDoll + ArmorCode
2) Prefix[4] = ArmorSpecificSuffix

    Thief: ArmorCode=Z ArmorSpecificSuffix=T
    1) ABCD + Z = ABCDZ (5 chars)
    2) ABCDZ -> ABCTZ
    ABCTZinv.bam

 
To 4-char prefix:

1) Prefix = PrefixPaperDoll + ArmorSpecificSuffix + ArmorCode
2) inv. -> in.

    Modded Thief: ArmorCode=Z ArmorSpecificSuffix=T
    1) ABCD + T + Z = ABCDTZ (6 chars)
    2) ABCDTZin.bam

   
Or to 3-char prefix:

1) Prefix = PrefixPaperDoll[1-3] + ArmorSpecificSuffix + ArmorCode

    Modded Thief: ArmorCode=Z ArmorSpecificSuffix=T
    1) ABC + T + Z = ABCTZ (5 chars)
    ABCTZinv.bam

   
2) I found another place where 0x5xxx main prefix patched - EQUIPPING/UNEQUIPPING ARMOR
Prefix[4] = ArmorSuffix(armor before max) or ArmorSpecificSuffix(max available armor) 

Warrior unequip armor or equip leather: Prefix=CDMF ArmorSuffix=B ArmorSpecificSuffix=F
    1) CDMF -> CDMB
    
    Warrior with full plate: Prefix=CDMB ArmorSuffix=B ArmorSpecificSuffix=F
    1) CDMB -> CDMF
    
    Thief unequip armor: Prefix=CEFT ArmorSuffix=B ArmorSpecificSuffix=T
    1) CEFT -> CEFB
    
    Thief with leather: Prefix=CEFB ArmorSuffix=B ArmorSpecificSuffix=T
    1) CEFB -> CEFT

Is it "flipper" between Base(B) and class-specific(T-Thief,F-Fighter,...) animation ?




#612522 So the Infinity Animation update..

Posted by Insomniator on 18 May 2022 - 02:13 PM in Infinity Animations

Currently no easy way to insert custom animation to dynamic slot id, but it is possible in weidu code

We already have such code for BGEE, and we'll simply tweak it a bit to add classic IA anim ranges. No problem. Now that we can externalize all hardcoded animation prefixes and each offset = new animation, this also means saying goodbye to the good old IA Reference Picker.

I haven't seen this code, on BG2 we cannot set custom animation type to new added animation
May be better to keep tracking last used slot in separate .2da per each anim type/subtype ?

AnimType                                        Slot                                                                     Mask
MonsterQuadrant                        0x1001(or 4097 if hex not possible)                   1xxx
MonsterQuadrantExtendDir        0x1101                                                                11xx
MonsterMulti                               0x1210                                                               12x0 
MonsterMultiUseBitmap              0x1213                                                               12x3
...

or name types as IA's "LARGE  5 Lo  BGI MONSTER LONG 4 PART unpaletted", "NORMAL 3 Xo  BGI SIMPLE MONSTER paletted", ...
 
Mask is just for help, no need in real 2DA




#612526 So the Infinity Animation update..

Posted by Insomniator on 19 May 2022 - 11:48 AM in Infinity Animations

Hi All,

I added 60xx(BG2 Chars)/640x(BG2 Legacy Chars)/641x(BG1 Chars) experimental external animation prefix support to TobEx AL (tested a little on vanilla BG2 with and without IA )
1) 640x - works as other animations, no special care

2) 60xx - changed prefix calculation requires EXTANI60.2DA
Main Prefix      = 2DA_Prefix
Anim Prefix      = Main Prefix + ArmorLevel
Body Paperdoll Prefix = 2DA_PaperdollPrefix(or 2DA_Prefix) + ArmorLevel + "INV"

Support  standart WQ* and custom objects prefixes.


non-WQ* objects:
Weapon main hand Paperdoll Prefix = HeightCode + 'P' + WeaponPrefix + "IN"
Weapon off hand Paperdoll Prefix = HeightCodeShield/HeightCode + 'P' + WeaponPrefix + "O" + "I"
Shield Paperdoll Prefix = HeightCodeShield/HeightCode + 'P' + ShieldPrefix+ "IN"
Helmet Paperdoll Prefix = HeightCodeHelmet + 'P' + HelmetPrefix+ "IN"
 
HeightCode (3 chars)     - stored in EXTANI60.2DA per each animID
HeightCodeHelmet  (3 chars) ...
HeightCodeShield  (3 chars)  ...

Main Prefix never changed, e.g. when char with any class changes armor, ignores ArmorSuffix and ArmorSpecificSuffix
 
3) 641x  - changed prefix calculation, requires EXTANI64.2DA

same as 60xx, support  standart WP* and custom objects prefixes.

 


EXTANI60.2DA:
        armor_max_code  equip_helmet    split_bams  false_color height_code height_code_helmet  height_code_shield
0x6303  *               *               *           *           MTW         MTW                 MTS
0x6103  *               *               *           *           *           *                   *
0x6600  2               0               1           1           MTW         MTW                 MTS

armor_max_code      (IESDP description)
equip_helmet        (IESDP description)
split_bams          (IESDP description, vanilla BG2 Chars have 1)
false_color         (IESDP description, IA BG2 paletted/unpaletted ?, vanilla BG2 Chars have 1)
height_code         (IESDP description, weapon 3-char prefix)
height_code_helmet  (IESDP description, helmet 3-char prefix)
height_code_shield  (IESDP description, shield 3-char prefix)

special values:
*               - skip field
height_code*    - if equal WQS/WQL/WQM/WQN
                  1) set object prefix (usefull for IA BG2 random slots)
                  2) skip new paperdoll prefix calculation (+"P"+)
                  

EXTANI64.2DA:
        armor_max_code  equip_helmet    false_color height_code height_code_helmet  shadow
0x6446  *               *               *           BGT         BGH                 B1SH
0x6426  *               *               *           BGF         BGE                 B1SH
0x6b00  2               0               1           WPS         WPT                 B1SH

armor_max_code      (IESDP description)
equip_helmet        (IESDP description)
false_color         (IESDP description, IA BG1 paletted/unpaletted ?)
height_code         (IESDP description, weapon/shield 3-char prefix)
height_code_helmet  (IESDP description, helmet 3-char prefix)
shadow              (IESDP description)

special values:
*               - skip field
height_code*    - if equal WPS/WPL/WPM
                  1) set object prefix (usefull for IA BG1 random slots)
                  2) skip new paperdoll prefix calculation (+"P"+)

 


Examples

Spoiler




#612528 So the Infinity Animation update..

Posted by Insomniator on 20 May 2022 - 11:33 AM in Infinity Animations

Hi skellytz

The above list doesn't include BG1 WP slots added by IA for restoring the original BG1 character animations. (L is simply the IA internal symbol for BG1, not large or low)
 
0x6410 L_CLERIC_MALE_HUMAN
0x6411 L_CLERIC_FEMALE_HUMAN
0x6412 L_CLERIC_MALE_ELF

If IA allows to add custom BG2/BG1 char animation, how animid is increased for example for new BG1 CLERIC_MALE_HUMAN? Just first available slot after 0x6447 ?
I run IA AnimPicker, selected palletted BG1 Char, it answer with 0x6B00
 
I ask because i made few fixes for BG1 Mage animation because original BG2 Mage animid = 6200-6215, class mask = x2xx, IA added BG1 mages to 6430-6435, class mask = x4xx
Due mismatch class mask, some parts (Andrea C. discovered 2 places) of vanilla BG2 engine still check mask to detect Mage, then fail to default (often to Figher)




#612535 So the Infinity Animation update..

Posted by Insomniator on 21 May 2022 - 07:39 AM in Infinity Animations

Hi skellytz

 

i updated post #177 http://www.shsforums...e-7#entry612526

What do you think ?




#612536 So the Infinity Animation update..

Posted by Insomniator on 21 May 2022 - 07:50 AM in Infinity Animations

The mage detection code:
- could be kept isolated for the vanilla BG2 character animations, where it maybe makes sense (0x6000 - 0x6315 + 0x6500, 0x6510)
- should be fixed for the reserved BG1 original animations, as you've already done, Insomniator (0x6410 - 0x6447)
- should be disabled for everything else in the character type range, because these are unrelated individual custom animations that should always use their own BAM set levels 1-4, no matter if it's armor or robe item the creature is wearing (0x6600 - 0x6fff)

I think better to ignore AnimID and check Creature's class if creature context available

But polymorph may mess up....




#612538 So the Infinity Animation update..

Posted by Insomniator on 21 May 2022 - 08:14 AM in Infinity Animations


i updated post #177 http://www.shsforums...e-7#entry612526
What do you think ?

Wow. Alright then, please upload a test version and I'll go through everything while I still have time today.

https://anonfiles.co...x_resref_v4_zip
extanim.2da columns reshuffled, be careful

 

I think better to ignore AnimID and check Creature's class if creature context available

Not a bad idea if you're really willing to inject this kind of an override.
Or add MAGE (0/1) to EXTANI60/64.

Good idea, "anim_class=W/C/F/T"




#612541 So the Infinity Animation update..

Posted by Insomniator on 21 May 2022 - 02:28 PM in Infinity Animations

false_color         (IESDP description, IA BG2 paletted/unpaletted ?, vanilla BG2 Chars have 1)


false_color         (IESDP description, IA BG1 paletted/unpaletted ?)

Yeah, these are basically paletted (false_color = 1) and unpaletted (false_color = 0). Will it be possible to add false_color to EXTANIM for other animations? That way we won't be restricted to specific subranges for paletted/unpaletted anims anymore.

OK

 

In BG2EE each anim type has this field, In classic BG2  Icewind, Ankheg and some other don't




#612542 So the Infinity Animation update..

Posted by Insomniator on 21 May 2022 - 02:47 PM in Infinity Animations

 "anim_class=W/C/F/T"

Ok, so for reference what exactly would be the difference in armor/robe appearance code for each?

Currently only W has meaning - fake mage class animation check in few BG1 functions, staticIA BG1 mages already has harcoded check for anim range 6430-6435
 
EDIT: It allows 2W/3W/4W equipped robe appereance for mages as original engine does for BG2 mages with AnimID mask x2xx. For non-mage classes any 2W/3W/4W robe converted to 1W robe appereance




#612543 So the Infinity Animation update..

Posted by Insomniator on 21 May 2022 - 02:49 PM in Infinity Animations

skellytz,

v4 update has bug with IA BG1 chars if resref_paperdoll specified and not equal resref

 

this is fix

https://anonfiles.co...x_resref_v5_zip

also class column added




#612545 So the Infinity Animation update..

Posted by Insomniator on 22 May 2022 - 09:43 AM in Infinity Animations

Hi skellytz


I added 60xx(BG2 Chars)/640x(BG2 Legacy Chars)/641x(BG1 Chars) experimental external animation prefix support to TobEx AL (tested a little on vanilla BG2 with and without IA )

I've tested all character subranges with v5. Everything works well except for anim_class and height_code_shield.

Thanks for test and bugreports !
 

anim_class
When set to W, robe levels show up properly, but now they play leather/chain/plate amor movement sounds (ARM_xxx.wav)

i will check
 

height_code_shield
Example:
height_code = s@b
height_code_shield = s@c
 
Shield object paperdoll shows up properly s@cpd2in.bam
Shield object animation should be s@cd2g1.bam but incorrectly expects s@bd2g1.bam

This is original behavior of EquipShield(), it take HeightCode for shield object animations, but take HeightCodeShieldPaperDoll for inventory BAM. Even Bioware's name of this variable tell about special purpose.
 
Only 7 AnimIDs has different shield object and shield inventory codes, WQH used only for shield and only for 7 AnimIDs:
6303 CIMB  THIEF_MALE_HALFLING HeightCode= WQS  HeightCodeHelmet= WQS HeightCodeShieldPaperDoll = WQH
6304 CDMB THIEF_MALE_DWARF
6103 CIMB FIGHTER_MALE_HALFLING
...
Seems for Halfling/Dwarf shield paperdolls they introduced(or reused BG1) separate 4 WQH BAMs: WPHD1INV.BAM WPHD2INV.BAM WPHD3INV.BAM WPHD4INV.BAM.
 
EquipHelmet() take proper HeightCodeHelmet as base for objects and inventory, no differences

 

I can bypass this logic and use height_code_shield for object and inventory if code specified in 2DA




#612547 So the Infinity Animation update..

Posted by Insomniator on 22 May 2022 - 11:09 AM in Infinity Animations

Hi Salk

The current status is such that if the player equip the off hand weapon first and then the main hand weapon later, the avatar will attack using the main hand weapon while equipping the main hand weapon first and the off hand weapon later, the avatar animation will be bare handed attack. Correct?

 

Being very much aware that creating new animations for the BG1 sprites is a pipedream, I was wondering if it might at least be possible to always force the avatar to use the main hand weapon animation, ignoring what order the weapons were equipped

It is not full-featured fix, just bypass CTD to run with off hand weapon.

To enable forced main hand animation - i think it is possible, but i keep it disabled by default because it mess up player's visual experience




#612551 So the Infinity Animation update..

Posted by Insomniator on 23 May 2022 - 10:31 AM in Infinity Animations

Hi Salk, Andrea

 

Check improved off hand support for BG1 chars:

1) No more need old 5B9977 75->EB 5CCB00 74->EB 5B9A26 75->EB 5FFB5D 74->EB hacks, now no missed animation BAMs

 

2) Enabled Off hand weapon paperdoll on inventory screen, you need place proper-named files to override folder

WP[S/M/L] + WeaponCode + "O" + "IN.BAM"

Halfling with Axe: WPS + AX + O + IN.BAM = WPSAXOIN.BAM

 

BG2 has many WP*OIN.bam paperdolls, but i don't sure is it BG1 compatible paperdolls or not

 

3) Area animation forced to use main hand weapon, no matter order of equiping weapons

 

4) to enable tweak, add new line to TobExTweak.ini:

UI:Enable BG1 Animation Off Hand weapon=1

 

https://anonfiles.co...x_resref_v6_zip

(ignore *.2DA insode archive)




#612554 So the Infinity Animation update..

Posted by Insomniator on 23 May 2022 - 11:49 PM in Infinity Animations

I can't seem to download that file. It keeps sending me to some spammy hentai link.


https://ufile.io/qee1thur




#612556 So the Infinity Animation update..

Posted by Insomniator on 24 May 2022 - 06:02 AM in Infinity Animations

Hi Andrea, Skellytz, Sam

2) Enabled Off hand weapon paperdoll on inventory screen, you need place proper-named files to override folder

BG2 has many WP*OIN.bam paperdolls, but i don't sure is it BG1 compatible paperdolls or not

I'll help test this. Offhand paperdolls are correctly aligned for IA BG1 restored characters. There seems to be a problem with object colors, though.
 
Try this:
1. Equip main hand weapon sw1h04 - blade uses ITM color (opcode #7 set color)
2. Equip offhand weapon sw1h07 - blade uses CRE color (matches armor color 0x31)
3. Unequip offhand -> main hand blade loses ITM color
4. Equip offhand again -> main hand blade inherits CRE color

also v6 lost main hand animation when off-hand weapon was unequipped

 

v7, fixed: 1) inventory colors and 2) lost animation

i hope now un/equipping off-hand weapon do not touch main hand animation

https://ufile.io/lv7pua27

 

 

skellytz,

1) Since v6 false_color moved from extani60 and extani64 to global EXTANIM.2DA

it affects other animation types except 0xxx, 4xxx, Bxxx, Dxxx(tobex dosn't have hooks for this types yet) and all other types without this field like Exxx

2) I never hear armor sound from mages with robes, please check on v7 this bug on your installation




#612557 So the Infinity Animation update..

Posted by Insomniator on 24 May 2022 - 06:06 AM in Infinity Animations

Andrea,

In my game, it does prevent the CTD when dual-wielding without the need for the old hack to be installed, but the rest of the fixes does not appear to be working. I'm on BGT with 1PP as well, in case that's a factor?

If you don't see off-hand paperdolls, seems 1pp skips tobex injects, i didnt checked with 1pp yet

I need 1pp weidu log  to repeat your installation




#612560 So the Infinity Animation update..

Posted by Insomniator on 24 May 2022 - 07:06 PM in Infinity Animations

here's my WeiDU log.

 

Got a CTD earlier. Is it possible that this ToBEx DLL requires 2DA files from the latest versions you've made for skellytz that weren't in your latest official release?

new 2DAs requires only if Externalise Animation Config Override=1 in TobExCore.ini

off-hand fixes are independed

 

Unfortunately I installed ToBEx AL very early on in my stack, right after the original ToBEx. Restacking now would be a bit of a b!tch but I could put the files manually into the override folder.

replacing dll is enough


 




#612561 So the Infinity Animation update..

Posted by Insomniator on 26 May 2022 - 07:03 AM in Infinity Animations

Hi Andrea

Got a CTD earlier. Is it possible that this ToBEx DLL requires 2DA files from the latest versions you've made for skellytz that weren't in your latest official release?
 
Unfortunately I installed ToBEx AL very early on in my stack, right after the original ToBEx. Restacking now would be a bit of a b!tch but I could put the files manually into the override folder.

1) I found crash, 0x7xxx animation regression, probably it is same as your crash
2) i have no issues when 1pp installed, inventory screen and area animation work as expected
 
3) 0x7xxx animation fix
https://ufile.io/c0dgx360
 
4) If you still have some crash, attach crash dump bgmain_crash.zip
 
5) Also enable logging of missed resources, if you miss something about animation BAMs, you get crash, this is original engine behaviour:
1) baldur.ini
[Program Options]
Logging On=1 
2)TobExCore.ini:
[Debug]
Log File Mode=1
Log Missing Resources=1

 
Output messages will be stored in Baldur.log


p.s. Install TobEx AL/Improved GUI at end because it is frequently updated mod

Also new TobEx AL's "Remove doubled Improved Invisibility saving throws +4 bonuses" works as fix to bg2fixpack and must be installed after (i forget to point this in last TobEx documentation)




#612569 So the Infinity Animation update..

Posted by Insomniator on 01 June 2022 - 02:13 PM in Infinity Animations

Hi skellytz

fixed inventory colors and lost animation
i hope now un/equipping off-hand weapon do not touch main hand animation

(v8) Main hand colors don't change anymore, but the offhand weapon colors still use CRE values. So, there's always a mismatch, eg main hand sw1h07 -> ITM colors, offhand sw1h07 -> CRE colors. Look at vanilla BG2 offhand color checks; they don't have this issue.

Fixed

 

false_color moved from extani60 and extani64 to global EXTANIM.2DA
it affects other animation types except 0xxx, 4xxx, Bxxx, Dxxx(tobex dosn't have hooks for this types yet) and all other types without this field like Exxx

Now overriding false_color in EXTANIM doesn't seem to work at all.

i don't have issue on 64xx and 6xxx animation, when set false_color=0 i see "rainbow" on paperdoll and area animation

 

I never hear armor sound from mages with robes

Try 0x6600 (BG2 char) anim_class=W CLCK09, CLCK14, CLCK16. They will play ARM_02 (leather), ARM_03 (chain) and ARM_04 (plate).

Fixed for IA BG2 animID pool

 

I've done some more research into these sounds. Looks like ARM_01 sounds are never used in the original games, but they are supposed to be robe sounds. The game engine simply disables all armor sounds for vanilla mage anims. This could be another cool optional tweak to restore robe sounds.

It is possible but limited to Wizard.animation and any custom IA animID if W=1 specified n EXTANIM

 

If I'm not mistaken, for mage multiclass and bard, engine selects thief or figther animation, due limited animation context there is no information about source ITM data, only animID, current armor code and MAX armor code is available, no W or A code information. Engine always converts W2,W3,W4 codes to W1 and W2, so armor code 1 is marker for robe, but code 2 is marker for leather armor too, no difference between W2 Robe and A2 Leather Armor when nee to select armor sound EDIT: there is no conversion, level code is untouched




#612595 So the Infinity Animation update..

Posted by Insomniator on 03 June 2022 - 04:08 PM in Infinity Animations

Hi Skellytz

i don't have issue on 64xx and 6xxx animation, when set false_color=0 i see "rainbow" on paperdoll and area animation

I've just tried again. A test creature with 0x6110 anim:

 

v5 with false_color=0 still in EXTANI60 -> works (overrides to unpaletted)

 

v8 with false_color=0 now in EXTANIM -> doesn't work (keeps palette colors)

Better to attach your raw EXTANIM.2DA as is, maybe some kind of displaced column error