PDA

View Full Version : Scripted Force Crush


darkwarrior
08-13-2005, 09:46 PM
Is there a way to script a force crush ability? I've tried looking through some scripts I extracted from KOTOR2 but alas, I don't know anywhere in the game where a force crush was used in a cutscene and since I'm new to all this by...2 days, I guess I need to be lead to the answer :(

Help is appreciated.


EDIT: Also, can someone tell me the purpose of the OrientOnClick method?

stoffe
08-13-2005, 10:29 PM
Is there a way to script a force crush ability? I've tried looking through some scripts I extracted from KOTOR2 but alas, I don't know anywhere in the game where a force crush was used in a cutscene


You mean fake what appears to be a use of Force Crush without using the actual force power during a cutscene? If that's the case I think something like this should work:

void main() {
object oCrusher = GetFirstPC();
object oCrushee = GetObjectByTag("deadmeat");
AssignCommand(oCrusher, SetFacingPoint(GetPosition(oCrushee)));
AssignCommand(oCrushee, SetFacingPoint(GetPosition(oCrusher)));
AssignCommand(oCrusher, PlayAnimation(10459));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectCrush(), oCrushee, 2.0);
DelayCommand(2.0, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectForcePushed(), oCrushee));
}


That would, theoretically, make the player look like she Force Crushes the creature with the tag deadmeat. :)


EDIT: Also, can someone tell me the purpose of the OrientOnClick method?


It should allow you to toggle the behavior where NPCs automatically turn to face you when you initiate dialog with them.

darkwarrior
08-13-2005, 10:31 PM
It can be a real force crush, not really bothered, just all I know how to do is the force push which I took from the Kreia Vs Master scene except for some reason my Nihilus pulls them towards him ><

I'll give it a try. Thanks!

darkwarrior
08-14-2005, 02:33 PM
It worked, thanks loads stoffe.

darkwarrior
08-14-2005, 04:33 PM
Is there any way to extend the time he is held in the air?

Cameras are a pain but what I had in my head was Sion assaults, kills the minions around and electrifies the hell out of Sion (BTW, is there a site somewhere with the actual lists for animations?) and then holds him in the air for a while before throwing him away, preferably with a camera shot of him being held in the air because right now its a wide angle shot, not quite as impactful.

>< Then need to make a damn song play. Grrr.

stoffe
08-14-2005, 06:43 PM
Is there any way to extend the time he is held in the air?
(snip)
and then holds him in the air for a while before throwing him away, preferably with a camera shot of him being held in the air

Not with using the Crush effect, it's animation is timed to last about 2 seconds. You can however use the Push effect to make a creature hover in the air for as long as you wish. If you apply it with a duration longer than a second they will hang still in the air where they were pushed and not fall to the ground until the effect expires.

If you want your victim to hang in the air on the spot it might be a bit tricky using that method though, since the Push will send them flying for a few meters before they hang still in the air.

This example should send Atton flying away from the Handmaiden and make him hang in the air for 10 seconds before dropping him to the ground:

void main() {
object oPusher = GetObjectByTag("Handmaiden");
object oPushee = GetObjectByTag("Atton");
AssignCommand(oPusher, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectForcePushed(), oPushee, 10.0));
}

darkwarrior
08-14-2005, 08:07 PM
Yeah I got that from experimentation as well. It looked a bit silly since Sions arms and legs are in front of him from being pushed back. Would have been nice to just have a floating method then I can just bust on Sion with lots of electricity and drain life beams.