Aller au contenu

Photo

Community patch spells


  • Veuillez vous connecter pour répondre
4 réponses à ce sujet

#1
Valgav

Valgav
  • Members
  • 64 messages

I'm trying to edit spells and add +2 dcd for illusion if PC has some feat. Where should I edit that, should I use 70_inc_spells.nns or change it in all illusion spells or add some another file and create function to check that?

 

In other words where I can find complete list of variables functions etc. for builders? 



#2
Shadooow

Shadooow
  • Members
  • 4 471 messages

list of variables for builders for 1.70/1.71

 

Also read this article, there is example how to do exactly what you need. Short answer, it can be easily done in spellhook script or even 70_spellhook script (which is internal spellhook which is externalized in 1.71).


  • Kato - et WhiteTiger aiment ceci

#3
Valgav

Valgav
  • Members
  • 64 messages

What about 1.72 beta 7 it contains some interesting things? It's not recommended to use until release of full version?

 

Also what about nwnx_patch it seems to overwirte some functions from nwnx_cool and nwnx_funcs like ubab or weapon feats. Should I use it is it compatible with other plugins?

 

I can't find 70_spellhook in resources for builders only 70_inc_spells. Do I miss something?



#4
Kato -

Kato -
  • Members
  • 392 messages

@Valgav: Take a look at the Community Patch Discussion thread on these forums, you'll find all the answers and more

 

 

 

Kato



#5
Shadooow

Shadooow
  • Members
  • 4 471 messages

What about 1.72 beta 7 it contains some interesting things? It's not recommended to use until release of full version?

 

Also what about nwnx_patch it seems to overwirte some functions from nwnx_cool and nwnx_funcs like ubab or weapon feats. Should I use it is it compatible with other plugins?

 

I can't find 70_spellhook in resources for builders only 70_inc_spells. Do I miss something?

Its relatively safe. I tested everything I could and made sure there are no crashes. If a crash or other bug appears I am providing a fix/new version immediately. As for features, there is lots of them and they would deserve a better description but thats currently not in my abilities. The only description is in the patch notes coming with the 1.72beta ( NWNv172.txt file ).

 

Compatibility with other plugins is unknown, but most hooks can be disable in nwnplayer.ini adding this section and changing values to 1:

 

[Community Patch]
DisableSetLocalStringHook=0
DisableLoadModuleFinishHook=0
DisableWeaponHooks=0
DisableGetTotalACSkillModHook=0
DisableGetUseMonkAbilitiesHook=0
DisableGetCriticalHitRollHook=0
DisableResolveAttackHook=0
DisableAddEquipItemActionsHook=0
DisableSummonAnimalCompanionHook=0
DisableSummonFamiliarHook=0
DisableSummonAssociateHook=0
DisableGetAssociateIdHook=0
DisableUseItemHook=0
DisableEffectImmunityHook=0
DisableResolveDamageShieldsHook=0
DisableGetRelativeWeaponSizeHook=0
DisableHolyAvengerHook=0
DisableToggleModeHook=0
DisableResolveAmmunitionHook=0
DisableSetActivityHook=0
DisableResolveSpecialAttackDamageBonusHook=0
DisableGetMinEquipLevelHook=0
DisableClearAllPartyInvalidActionsHook=0
DisableFireTrapHook=0
DisableFavoredEnemyHook=0
DisableSpellSlotsInPolymorphHook=0

 

so if you want to use weapon hooks in nwnx_cool you disable it here and viceversa

 

Its not in the 1.71 builders resources package, you must open it in toolset editor from "standard resources".

 

BTW, just note why its not possible to modify this via 70_inc_spells - in this include you could easily modify the DC to add +2 with a feat you want, BUT you would have to recompile all spellscripts which is what the method with spellhook avoids. Also, you do not need 70_spellhook script, thats internal spellhook, you can do this there but so you can do this in "custom spellhook". In my article there is a link to the article explaining custom spellhook. Internal spellhook is actually a piece of code that was in function X2PreSpellCastCode (x2_inc_spellhook) which in my patch actually looks like ExecuteScript 70_spellhook and return GetLocalInt (returnvalue);