-
Content Count
9 -
Joined
-
Last visited
File Comments posted by Nereithr
-
-
As I mentioned in the description, the script doesn't update instantly when you are swapping weapons in the inventory due to limitations on where it can be injected. If you are equipping the blaster after equipping the sword, exit from the inventory, wait half a second to a second and it should update to have the proper +5 attack.
Here is a video demonstration. If blasters don't return to their normal stats after this delay, that means I messed up somewhere, but since the mod and the script itself is very simple all this does every time it runs is check for a main hand weapon against the following list of base melee items types, and if it returns false it constantly attempts to remove the attack bonus effect.
if (GetBaseItemType(oItem) == BASE_ITEM_SHORT_SWORD || GetBaseItemType(oItem) == BASE_ITEM_LONG_SWORD || GetBaseItemType(oItem) == BASE_ITEM_DOUBLE_BLADED_SWORD || GetBaseItemType(oItem) == BASE_ITEM_VIBRO_BLADE || GetBaseItemType(oItem) == BASE_ITEM_VIBRO_SWORD || GetBaseItemType(oItem) == BASE_ITEM_VIBRO_DOUBLE_BLADE || GetBaseItemType(oItem) == BASE_ITEM_QUARTER_STAFF || GetBaseItemType(oItem) == BASE_ITEM_GHAFFI_STICK || GetBaseItemType(oItem) == BASE_ITEM_FIST || GetBaseItemType(oItem) == BASE_ITEM_GAMMOREAN_BATTLEAXE)
-
1
-
Finesse: Melee Weapons and misc. fixes
in Mods
Posted · Edited by Nereithr
I am not using "your code" for anything. You are credited for the idea, but our mods work on different principles. Here is the code comparison. You are applying a timed effect and using a preventative boolean plus timing to avoid stacking and to let the effects expire when conditions are no longer met. Your "DelayCommand" part of the code fires to keep refreshing the timed effect. Your script is called in k_ai_master at the end of the file, i.e. every time k_ai_master is called by any loaded entity, which is to say, quite a lot.
I am applying a permanent effect with the otherwise unused Extraordinary subtype, with effect + subtype checks being used to avoid stacking additional effects as well as to explicitly remove the effect if conditions are no longer met. My script is called within OnHeartbeat as StatFixesHen() for the player and party members, with DelayCommand being used as an additional pseudo-heartbeat for faster updates. For all other entitites it is called as StatFixesDef() on a number of specific events, such as perception, dialogue end, end of combat round and attacked, meaning it should only fire for entities actively engaged/preparing to engage in non-scripted combat/perception and nobody else.
I quite literally cannot think of any way in which our code could be more different, unless someone in the modding community finds a way to grant extra attacks without using an ExtraAttacks effect. Since "your code" was never used, I did not message you and you are just credited for giving me an idea, which, to be entirely clear, is limited to your mod just happening to be one of the first ones I opened to see how you apply effects in this scripting language, before l learned that NWN modding wiki exists.
Not happening because, well, I did not include your mod. It is an entirely different mod that implements the same functionality in a very different way.
As an aside, this sort of behaviour is making me reconsider crediting you at all. You had the opportunity to check the code for months, yet instead you chose to automatically assume that I stole your code. And when you finally check the code you undermine the work of others by claiming "it is just a bit different but obviously I should get most of the credit for my BRILLIANT idea of adding repeating attacks to repeating blasters. NOBODY COULD HAVE THOUGHT OF THAT ".
Obviously I am not going to do that out of courtesy, but take this as an opportunity to reflect on stuff.