1) When you shift to a form that has different STR, DEX, or CON values than your base form, these values are adjusted up or down by adding appropriate item properties to the creature weapons or hide. This is done by calling the PRC SetCompositeBonus function, which ultimately calls either
AddItemProperty(DURATION_TYPE_PERMANENT, ItemPropertyAbilityBonus(...), ...)
or
AddItemProperty(DURATION_TYPE_PERMANENT, ItemPropertyDecreaseAbility(...), ...);
The problem here is that, although I believe I've verified that the 2nd function is being called with the correct parameters when an ability needs to be adjusted downward, the item property to decrease the ability is never added (I've verified this by forcing the creature weapons to be unequipped and looking at their proerties). Any ideas why? I'm almost certain this was working not long ago.
2) The PRC code that determines what weapons should be equippable takes into account the size of the creature. Thus, if I'm in the form of a large enough creature, I can wield a greatsword in one hand and a shield in another, but cannnot use a dagger; on the other hand, if I'm smaller, I can use a dagger but a greatsword requires two hands. The problem is that this code apparently only runs when I load a saved game. So if I save a game with a large shape, reload it, and shift into a small shape, I can be, for instance, a rat wielding a greatsword and a tower shield. I haven't even looked for this yet, thinking I would ask first: is there any way for me to re-run this code whenever the Shifter changes form?