Jump to content

Home

Help from TSL force power scipters


Keiko

Recommended Posts

  • Replies 53
  • Created
  • Last Reply
Originally posted by DarthSmallz

:emodanc: W00T! :emodanc: Tried it, it is awesome! I want Foce Crush TO BE a insta kill force power, it's supposed to crush them, right? That's what I would like! Awesome mod!

 

Hehe, okay. Glad you like it. :)

 

I've uploaded another mod with some changes. The other links still work, and still provide the same modifications. This new one just has two additions:

 

Force Crush will kill the target outright, assuming the target fails its saving throw. If the target saves, they will take half damage.

 

Force Scream, Improved Force Scream, and Master Force Scream have all had their damage increased by 66%.

 

You can get it here

Link to comment
Share on other sites

  • 3 weeks later...

Maybe some one will find it useful.

 

case FORCE_POWER_FORCE_CRUSH:
{

// WILL CRUSH MULTIPLE TARGETS IN THE AREA
SWFP_HARMFUL = TRUE;
SWFP_PRIVATE_SAVE_TYPE = SAVING_THROW_FORT;

int nDice = GetHitDice(OBJECT_SELF);
SWFP_DAMAGE = Sp_CalcDamage( oTarget, nDice, 10 );
SWFP_DAMAGE_TYPE = DAMAGE_TYPE_ACID;

effect eCrush = EffectCrush();
effect eDamage = EffectDamage(SWFP_DAMAGE, SWFP_DAMAGE_TYPE);
effect eDamageReduced = EffectDamage(SWFP_DAMAGE / 2, SWFP_DAMAGE_TYPE);
effect eDrop = EffectForcePushed();
int nResist, nSaves;

oTarget = GetFirstObjectInShape(SHAPE_SPHERE, 12.0, GetLocation(OBJECT_SELF), FALSE, OBJECT_TYPE_CREATURE );
while (GetIsObjectValid(oTarget))
{
	if (GetRacialType(oTarget) != RACIAL_TYPE_DROID && GetIsEnemy(oTarget))
	{
		nResist = Sp_BlockingChecks(oTarget, eCrush, eDamage, eInvalid);
		SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, GetSpellId(), SWFP_HARMFUL));
		if(nResist == 0)
       		{
			nSaves = Sp_MySavingThrows(oTarget);
			if(nSaves == 0)
			{
				ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eCrush, oTarget, 2.0);
				DelayCommand( 1.64, ApplyEffectToObject(DURATION_TYPE_INSTANT, eDamage, oTarget) );
				DelayCommand( 2.0, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDrop, oTarget) );
			} else {
				// Half damage.
				ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eCrush, oTarget, 2.0);
				DelayCommand( 1.64, ApplyEffectToObject(DURATION_TYPE_INSTANT, eDamageReduced, oTarget) );
				DelayCommand( 2.0, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDrop, oTarget) );
			}
		}
	}
	oTarget = GetNextObjectInShape(SHAPE_SPHERE, 12.0, GetLocation(OBJECT_SELF), FALSE, OBJECT_TYPE_CREATURE );
}
           //if(nResist > 0)
           //{
           //    ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectForceFizzle(), OBJECT_SELF);
           //}
}
break;

Link to comment
Share on other sites

The damage is unchanged from default Force Crush damage. I don't know what CluelessDude did.

 

This is the line that defines damage:

 

SWFP_DAMAGE = Sp_CalcDamage( oTarget, nDice, 10 );

 

Sp_CalcDamage is somewhat complex function that computes the damage basing it on various factors like force potency, player's level and some random number, etc. This function can be found in the beginning of k_inc_force

 

If you want to keep it easy and change damage, just provide different number. ie:

 

SWFP_DAMAGE = 500;

 

This will make force crush deliver 500 damage regardless the level, and 250 if target makes the save.

Link to comment
Share on other sites

Originally posted by Uchiha Itachi

nDice, 10

 

Does this mean a dice of 10?

Cuz if it does maybe I could change to a bigger number?

 

nDice is number of dice (currently equals your character's level)

10 is number of sides per dice. (can only be 2,3,4,6,8,10,12,20,100)

 

so, in current setup, if your character is level 20, then the base damage is 20d10 which means between 20 and 200.

Link to comment
Share on other sites

Originally posted by DarthSmallz

So does that mean that you swich the damage to 1,000,000?

 

And why would you want that?

No creature has that many hitpoints, so that will simply kill everyone.

 

If you want make the force kill the target, there is better way. Simply apply EffectDeath() after EffectForcePushed() or link them together.

Link to comment
Share on other sites

Originally posted by Uchiha Itachi

So I can change the 10 to a 100 and it would be calculated like:

my char is level 20 so it would be like this: 200 to 2000?

 

it will be 20 to 2000

 

coz you still have 20 dice

Link to comment
Share on other sites

Archived

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


×
×
  • Create New...