Jump to content

Home

How can I edit the force powers that come with the game?


Zer0Morph

Recommended Posts

Ok here's where I'm at and I'm very frustrated.

 

I'm trying to extend the time of certain force powers. Such as I would like to make Force Aura last 30 seconds, Force Shield last 60 seconds, and Force Armor last 120 seconds.

 

I downloaded KOTOR Tools and figured out how to edit the spells.2da file but that didn't help. Then I found a scripting file called k_inc_force.nss which is where the data resides. I edited that script and saved it in my Override file, however I can't seem to compile it with nwnnsscomp.exe, I keep getting an error.

 

Any help on what I'm doing wrong?

Link to comment
Share on other sites

Ok here's what I did...

 

I went to the link you gave me and downloaded dialog.tlk. I opened it within KOTOR Tools tlk editor and found the correct lines. I made the changes and hit apply. I then saved dialog.tlk to my override directory.

 

Unfortunately the changes were not made in the game. What am I doing wrong?

Link to comment
Share on other sites

Awesome! Thanks so much guys for your help.

 

Sorry to keep being a noob but I am trying to add Energy Resistance to the Energy Resistance and Improved Energy Resistance Powers. Right now they only protect from cold, fire, electrical, and sonic.

 

I tried replacing Cold with Energy and saved it, however whenever I go to compile it I get...

 

Compiling: k_sp1_generic.nss

k_inc_force.nss(1592): Error: Undeclared identifier "DAMAGE_TYPE_ENERGY"

k_inc_force.nss(1592): Error: Required argument missing in call to "EffectDamage

Resistance"

k_inc_force.nss(1592): Error: Required argument missing in call to "EffectLinkEf

fects"

Compilation aborted with errors

Total Execution time = 46 ms

 

Anyone know what I'm doing wrong?

Link to comment
Share on other sites

This is the original "Energy Resistance" Coding.

All I really did was add a line for DAMAGE_TYPE_ENERGY.

 

{

if(!SP_CheckEnergyResistance(OBJECT_SELF))

{

SWFP_HARMFUL = FALSE;

eLink1 = EffectDamageResistance(DAMAGE_TYPE_COLD, 15);

eLink1 = EffectLinkEffects(eLink1, EffectDamageResistance(DAMAGE_TYPE_FIRE, 15));

eLink1 = EffectLinkEffects(eLink1, EffectDamageResistance(DAMAGE_TYPE_SONIC, 15));

eLink1 = EffectLinkEffects(eLink1, EffectDamageResistance(DAMAGE_TYPE_ELECTRICAL, 15));

eLink1 = SetEffectIcon(eLink1, 26);

eLink2 = EffectVisualEffect(VFX_PRO_RESIST_ELEMENTS);

Sp_ApplyEffects(FALSE, oTarget, 0.0, 1, eLink1, 120.0, eLink2, 1.0);

}

}

 

 

This is the modified one.

 

{

if(!SP_CheckEnergyResistance(OBJECT_SELF))

{

SWFP_HARMFUL = FALSE;

eLink1 = EffectDamageResistance(DAMAGE_TYPE_COLD, 15);

eLink1 = EffectLinkEffects(eLink1, EffectDamageResistance(DAMAGE_TYPE_FIRE, 15));

eLink1 = EffectLinkEffects(eLink1, EffectDamageResistance(DAMAGE_TYPE_SONIC, 15));

eLink1 = EffectLinkEffects(eLink1, EffectDamageResistance(DAMAGE_TYPE_ELECTRICAL, 15));

eLink1 = EffectLinkEffects(eLink1, EffectDamageResistance(DAMAGE_TYPE_ENERGY, 15));

eLink1 = SetEffectIcon(eLink1, 26);

eLink2 = EffectVisualEffect(VFX_PRO_RESIST_ELEMENTS);

Sp_ApplyEffects(FALSE, oTarget, 0.0, 1, eLink1, 120.0, eLink2, 1.0);

}

}

Link to comment
Share on other sites

these are the valid damage types,they are found in nwscript.ini

 

int DAMAGE_TYPE_BLUDGEONING = 1;

int DAMAGE_TYPE_PIERCING = 2;

int DAMAGE_TYPE_SLASHING = 4;

int DAMAGE_TYPE_UNIVERSAL = 8;

int DAMAGE_TYPE_ACID = 16;

int DAMAGE_TYPE_COLD = 32;

int DAMAGE_TYPE_LIGHT_SIDE = 64;

int DAMAGE_TYPE_ELECTRICAL = 128;

int DAMAGE_TYPE_FIRE = 256;

int DAMAGE_TYPE_DARK_SIDE = 512;

int DAMAGE_TYPE_SONIC = 1024;

int DAMAGE_TYPE_ION = 2048;

int DAMAGE_TYPE_BLASTER = 4096;

Link to comment
Share on other sites

Ok guys, I did exactly what you said and everything turned out PERFECT!!!

 

OMG my Force Powers rebalance has made this game so much more fun and challenging. I want to thank all of you for your superior knowledge and help with this project. KOTOR is now a game worth playing over and over! :)

Link to comment
Share on other sites

Oh NO! Ran into another snag. Here I thought KOTOR2 worked the same way KOTOR one did, guess I was wrong.

 

I just made a slight change with the k_inc_force.nss file and saved it. Made sure k_inc_generic.nss and nwscript.nss were both in the same directory as the compiler.

 

Here is what I typed and neither worked.

 

C:\Compiler>nwnnsscomp -v1.00 k_inc_generic.nss

'Star Wars: Knights of the Old Republic' Script Compiler/Decompile

based on 'NeverWinter Nights' Script Compiler/Decompiler

Copyright 2002-2003, Edward T. Smith

Modified by Hazard (hazard_x@gmx.net)

 

Compiling: k_inc_generic.nss

File is an include file, ignored

Total Execution time = 94 ms

 

C:\Compiler>nwnnsscomp -c k_inc_generic.nss

'Star Wars: Knights of the Old Republic' Script Compiler/Decompile

based on 'NeverWinter Nights' Script Compiler/Decompiler

Copyright 2002-2003, Edward T. Smith

Modified by Hazard (hazard_x@gmx.net)

 

Compiling: k_inc_generic.nss

File is an include file, ignored

Total Execution time = 62 ms

 

 

 

Anyone know what I'm doing wrong? Does KOTOR2 need a different compiler?

Link to comment
Share on other sites

I'm not sure how to use it, everytime I have in the past it's never worked.

 

Ok so I open up the .txt editor, then open up k_inc_force.nss. Then I choose KOTOR2 in the drop down, then hit compile or F5. Then it makes me choose a .nss file which I choose k_inc_force or k_inc_generic, and neither pump out an .ncs file.

Link to comment
Share on other sites

k_inc_force.nss is an include file, so it will not compile on its own. If you want to change the Force powers, you will need to re-compile k_sp1_generic.nss.

 

Extract k_sp1_generic.nss, k_inc_force.nss, and k_inc_debug.nss using KT, make whatever changes you need in k_inc_force.nss, then type in "nwnnsscomp -c k_sp1_generic.nss" into the DOS prompt. That should give you the k_sp1_generic.ncs file that you can pop into your Override folder.

 

- Star Admiral

Link to comment
Share on other sites

Well there's 2 different compilers from http://www.starwarsknights.com/tools.php. The one ported by HazardX uses the -v1.00 switch while the one ported by stoffe and tk102 uses the -c.

 

For KOTOR I used HazardX's NWNSSCOMP program (-v1.00) and it worked great. For some reason however I couldn't get it to work for KOTOR2. So I took your idea and nabbed the one that uses -c.

 

Here's a breakdown of what I did.

 

- Downloaded NWNSSCOMP (the one by stoffe and tk102).

- Created a DIR called "Compiler".

- Dropped the 2 files from NWNSSCOMP into C:\Compiler, the 2 files were nwscript.nss and nwnnsscomp.exe.

- I opened KOTOR Tools

- Using KOTOR Tools I extracted the following files to C:\Compiler, k_inc_debug.nss, k_inc_generic.nss, and k_inc_force.nss.

- For this test I did not modify any of these files what so ever, I just wanted to make sure this would work first.

- Next I opened the command prompt.

- Typed in the following command (nwnnsscomp -c k_inc_generic.nss)

 

Here is what I got....

 

C:\Compiler>nwnnsscomp -c k_inc_generic.nss

Compiling: k_inc_generic.nss

k_inc_generic.nss(10): Error: Unable to open the include file "k_inc_gensupport"

 

Compilation aborted with errors

Total Execution time = 16 ms

 

C:\Compiler>

 

 

Not sure what I'm doing wrong?

 

 

Edit: I added k_inc_gensupport and ran it again, this time it said it couldn't find k_inc_drop.nss so I added that, and it kept asking me for more .nss files. Below is what I got when I kept adding what it asked for.

 

C:\Compiler>nwnnsscomp -c k_inc_generic.nss

Compiling: k_inc_generic.nss

k_inc_generic.nss(10): Error: Unable to open the include file "k_inc_gensupport"

 

Compilation aborted with errors

Total Execution time = 16 ms

 

C:\Compiler>nwnnsscomp -c k_inc_generic.nss

Compiling: k_inc_generic.nss

k_inc_generic.nss(11): Error: Unable to open the include file "k_inc_walkways"

Compilation aborted with errors

Total Execution time = 16 ms

 

C:\Compiler>nwnnsscomp -c k_inc_generic.nss

Compiling: k_inc_generic.nss

k_inc_generic.nss(12): Error: Unable to open the include file "k_inc_drop"

Compilation aborted with errors

Total Execution time = 32 ms

 

C:\Compiler>nwnnsscomp -c k_inc_generic.nss

Compiling: k_inc_generic.nss

File is an include file, ignored

Total Execution time = 15 ms

 

C:\Compiler>

Link to comment
Share on other sites

OMG Star Admiral, I officially nominate myself for NOOB of the Month!!! :thmbup1:

 

I really need to learn to read. This whole time I was typing in k_inc_generic.nss instead of k_sp1_generic.nss. HAHAHA I'm dumb!

 

You fixed my issue Star Admiral, man you and the rest of the crew here in Holowan Labs are so freakin smart! Do you guys mod Fallout 3 by any chance? I'm a big Fallout 3 modder myself, just wondering.

 

Anyways thanks again fellas! :)

Link to comment
Share on other sites

Archived

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

×
×
  • Create New...