You’re right, my bad.
Gotta give credit where it’s due: It’s not ‘my’ script per se. This is from Steve B’s Blackguard series, which I’m still in the process of remastering. I’m hoping to release it soon, but this is pretty immersion-breaking. I’ve tested this same cutscene with the original, unedited mod, and the same bug still happens.
Anyway, the full script is below, and I’ve also provided screenshots.
The problem starts at this line:
GestaltTagSpeak(24.0, “NatureSpirit”, “Again I warn you: the dark side of nature shall never…”, ANIMATION_LOOPING_TALK_NORMAL, 3.0);
Which is her second line. That’s when she suddenly turns sideways. However, this also happens in every subsequent line of hers (as tested by adding a command to look directly at the PC after the second line). The first line works fine, possibly because she’s still moving when it starts.
Thanks in advance!
//::///////////////////////////////////////////////
//:: Run the nature warning 2
//:://////////////////////////////////////////////
// Gestalt cutscene scripts Lib
#include “lib_cutscene”
void main()
{
object oPC = GetEnteringObject();
if (GetIsPC(oPC) == FALSE) return;
object Loc1 = GetObjectByTag("WP_SpriteSpawn");
object Loc2 = GetObjectByTag("WP_Sprite_01");
object Loc3 = GetObjectByTag("WP_NatureSpirit_01");
object Loc4 = GetObjectByTag("WP_Sprite2_01");
effect ePouf = EffectVisualEffect(VFX_FNF_SUMMON_MONSTER_1);
effect eHoly1 = EffectVisualEffect(VFX_IMP_HOLY_AID);
effect eHoly2 = EffectVisualEffect(VFX_IMP_HEALING_X);
SetCameraMode(oPC, CAMERA_MODE_STIFF_CHASE_CAMERA);
GestaltStartCutscene(oPC, "Nature's Warning 2", TRUE, TRUE, TRUE, TRUE, FALSE);
GestaltCameraFade(0.0, oPC, FADE_IN, FADE_SPEED_MEDIUM, 2.0, 0);
DelayCommand(1.0, AssignCommand(oPC, SetCameraFacing(90.0, 6.0, 62.0, CAMERA_TRANSITION_TYPE_SNAP)));
// Step 1 - Sprite
GestaltCreate(5.0, Loc1, OBJECT_TYPE_CREATURE,"sprite");
// Step 2 - Pouf
DelayCommand(15.0, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, ePouf, GetLocation(Loc2)));
GestaltDestroy(15.0, oPC, "Sprite");
GestaltCreate(15.0, Loc2, OBJECT_TYPE_CREATURE,"nymph001","",FALSE,0,FALSE,"");
GestaltSpeak(13.0, oPC, "Oh, no. Not that winged bitch again...", ANIMATION_LOOPING_TALK_NORMAL, 3.0);
// Step 3 - Warning
GestaltTagSpeak(20.0, "NatureSpirit", "We meet once more, dark one.", ANIMATION_LOOPING_TALK_NORMAL, 3.0);
GestaltTagSpeak(24.0, "NatureSpirit", "Again I warn you: the dark side of nature shall never...", ANIMATION_LOOPING_TALK_NORMAL, 3.0);
GestaltTagSpeak(28.0, "NatureSpirit", "... rule over this land.", ANIMATION_LOOPING_TALK_NORMAL, 3.0);
GestaltTagSpeak(32.0, "NatureSpirit", "Return from whence you came.", ANIMATION_LOOPING_TALK_NORMAL, 3.0);
GestaltSpeak(36.0, oPC, "Arrgh!", ANIMATION_LOOPING_TALK_FORCEFUL, 2.0);
GestaltSpeak(39.0, oPC, "Shut...", ANIMATION_LOOPING_TALK_FORCEFUL, 2.0);
GestaltSpeak(42.0, oPC, "... UP!!", ANIMATION_LOOPING_TALK_FORCEFUL, 2.0);
GestaltSpeak(45.0, oPC, "Enough of your warnings, you fool sprite!", ANIMATION_LOOPING_TALK_FORCEFUL, 3.0);
GestaltSpeak(49.0, oPC, "Last time, they weren't enough to save your friends!", ANIMATION_LOOPING_TALK_FORCEFUL, 3.0);
GestaltSpeak(53.0, oPC, "And they won't be this time, either!", ANIMATION_LOOPING_TALK_FORCEFUL, 3.0);
GestaltSpeak(57.0, oPC, "NOW BEGONE!!", ANIMATION_LOOPING_TALK_FORCEFUL, 3.0);
GestaltTagSpeak(65.0, "NatureSpirit", "Fine.", ANIMATION_LOOPING_TALK_NORMAL, 3.0);
GestaltTagSpeak(69.0, "NatureSpirit", "O', Mielikki... your servants are in need of your aid.", ANIMATION_LOOPING_MEDITATE, 4.0);
GestaltTagSpeak(73.0, "NatureSpirit", "Help me protect your land from Talos's will!", ANIMATION_LOOPING_TALK_PLEADING, 3.0);
GestaltTagSpeak(77.0, "NatureSpirit", "Grant me your power!!", ANIMATION_FIREFORGET_VICTORY2, 3.0);
DelayCommand(78.5, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eHoly2, GetLocation(Loc3)));
DelayCommand(79.0, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eHoly1, GetLocation(Loc3)));
GestaltTagSpeak(85.0, "NatureSpirit", "[Infused with Mielikki's power, she levels a piercing glare at you] I'll be waiting, dark one.", ANIMATION_LOOPING_TALK_NORMAL, 2.0);
// Step 4 - Goes away
DelayCommand(92.0, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, ePouf, GetLocation(Loc3)));
GestaltDestroy(92.0, oPC, "NatureSpirit");
GestaltCreate(92.0, Loc3, OBJECT_TYPE_CREATURE,"sprite", "sprite2");
GestaltTagActionMove(92.1, "sprite2", Loc4);
DelayCommand(95.0, DestroyObject(GetObjectByTag("sprite2")));
GestaltCameraFade(94.9, oPC, FADE_OUT, FADE_SPEED_MEDIUM, 0.0);
GestaltStopCutscene(95.0, oPC, "", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE);
DelayCommand(95.0, FadeFromBlack(oPC));
// enleve le trigger
DelayCommand(96.1, DestroyObject(OBJECT_SELF));
}