• Welcome to Freedom Reborn Archive.
 

trigger_power and under/over powering

Started by seraglio, April 02, 2007, 02:41:29 PM

Previous topic - Next topic

seraglio

 :ff:I have a question about a cheesy attribute I am making. Hope I can explain this well.

I like empathy. One of the cool things about it is you can over and under power it. Underpowered you still take the bulk of damage, only a bit is transferred to attacker. Over powered you take very little damage, most is transferred. I thought I could make some great pacifist/martial artist using 3 permanent versions (under, over and regular powered). The codes super easy:

def initbiofeedback1(char,update=0):
    RegTimer('biofeedback1Check',1,0,char)

def biofeedback1Check(event):
    char=event.object
    Trigger_Power(char,char,'biofeedbacks','',4)
    RegTimer('biofeedback1Check',4,0,char)



Ripped straight from wraith works just fine. Except the charecter pausing for an animation. Is there any way to limit this? I tried making the animation field blank but no go, hero freezes up when the power is called.

So empathy is a detectable secondary state. I know I can just call setSecondaryState yada yada, but can I overpower it then? Or can I only over power a triggered power from powers.dat?

And how do I "underpower"? set a negative number for intensity level?

Epimethee

Nice reuse of Wraith. :)

IIRC, there's no way to change the intensity of a state with Object_SetSecondaryState(). Similarly to "Attack Bonus" (Rally) there could be an object attribute set by the system with the intensity, maybe?

There's no way I know of to have Trigger_Damage() work without interrupting the current action.
For setting the level (cf. the FF scripting doc), a value of -1 will do. Be aware that lower values might have weird effects.

Too bad there's no constant for empathy damage, you could have tried to change that just before Trigger_power() (and reset it just after).

Otherwise... it's a very long shot, but you could try to to use Object_SetSecondaryState() just before or just after. Maybe the duration or the intensity will be preserved?

seraglio

Thanks Epi. After some more testing I'm not sure the intensity level is carrying over at all. Set to 4 (wayy over powered), Im still getting hit for more than half. When I do this with regular empathy in game hardly anything carries over, maybe 1/4th with attacker taking 3/4ths damage. ANyho I'll just use the set secondary state and make one version. Thanks for the underpower info.

QuoteBe aware that lower values might have weird effects.

ooh now I have to try that. Weird effects are neat, theres usually a way to use them purposely!

stumpy

I don't know if intensities beyond 2 do anything in Trigger_Power(). Maybe, but I thought they were capped. I don't even know if you can use non-integer values...