Jump to content

Script keeps coming back?


WoofieTheWoof

Recommended Posts

Posted

Hi all, so i've been following along with a follower tutorial on youtube and didn't realize until today that my dialogue scripts are compiled incorrectly. I have 2 followers i've been working on. One is for the tutorial video (so i can follow along) and the other is to learn more about creation kit in between videos. the dialogue scripts are written correctly but they show up as 05 (my old follower) instead of 07 (my current). I have tried deleting the scripts in creation kit, as well as the pex and psc script files. but it keeps popping back up after i hit compile again. I'm completely lost at what to do at this point. Any help would be appreciated. Thanks! 

20200917_175451[1].jpg

Posted
4 minutes ago, WoofieTheWoof said:

Hi all, so i've been following along with a follower tutorial on youtube and didn't realize until today that my dialogue scripts are compiled incorrectly. I have 2 followers i've been working on. One is for the tutorial video (so i can follow along) and the other is to learn more about creation kit in between videos. the dialogue scripts are written correctly but they show up as 05 (my old follower) instead of 07 (my current). I have tried deleting the scripts in creation kit, as well as the pex and psc script files. but it keeps popping back up after i hit compile again. I'm completely lost at what to do at this point. Any help would be appreciated. Thanks! 

 

The name is auto-generated whenever there is something in the script fragment window.  It will be that unless you explicitly name it as something else.

 

I find getting the last scraps of that stuff out often takes using TESEdit.

Posted
17 minutes ago, Seijin8 said:

The name is auto-generated whenever there is something in the script fragment window.  It will be that unless you explicitly name it as something else.

 

I find getting the last scraps of that stuff out often takes using TESEdit.

I'm not very familiar with TESEdit, how would i go about removing the rest of it? (i want to keep the followers, just wanting to fix the dialogue scripts so they don't share the same things). Before i deleted all that stuff it was displaying my new follower name in the papyrus fragment. I was only able to have one follower working at a time as they were sharing things somehow. 

Posted
25 minutes ago, WoofieTheWoof said:

I'm not very familiar with TESEdit, how would i go about removing the rest of it?

Load your mod with this dialogue branch in it.

Search for "xx00FB0A" with the xx being wherever your mod lands in the load.

There will be a section called "VMAD" near the top.  Delete that section.

 

TESEdit has no real "undo" options, so make a backup.

Posted
21 minutes ago, Seijin8 said:

Load your mod with this dialogue branch in it.

Search for "xx00FB0A" with the xx being wherever your mod lands in the load.

There will be a section called "VMAD" near the top.  Delete that section.

 

TESEdit has no real "undo" options, so make a backup.

This line? (sorry just want to make sure i'm doing this correctly) Also if i delete this will i need to remake the dialogue quest? Also Also how do i make a backup?

20200917_195010[1].jpg

Posted
26 minutes ago, WoofieTheWoof said:

This line? (sorry just want to make sure i'm doing this correctly) Also if i delete this will i need to remake the dialogue quest? Also Also how do i make a backup?

 

If that is the name of the script you are trying to eliminate, then yes (but it doesn't seem to be).

 

Else, you want to look farther down the record for where the fragments are found.

Posted
2 minutes ago, Seijin8 said:

If that is the name of the script you are trying to eliminate, then yes (but it doesn't seem to be).

 

Else, you want to look farther down the record for where the fragments are found.

it says unknown 2 if that means anything? 

20200917_202145[1].jpg

Posted
16 minutes ago, WoofieTheWoof said:

it says unknown 2 if that means anything? 

 

Your "screenshots" are driving me nuts.

 

If I'm going to provide useful information, I need to see the rest of the screen.  What kind of record is this?  I thought we were dealing with dialogues, but this looks like a quest record.

Posted
5 minutes ago, Seijin8 said:

Your "screenshots" are driving me nuts.

 

If I'm going to provide useful information, I need to see the rest of the screen.  What kind of record is this?  I thought we were dealing with dialogues, but this looks like a quest record.

I've been following the lucien tutorial on youtube. All the dialogue is setup as a quest I'm not sure what to provide outside of screenshots as i am unfamiliar with TESEdit. If there's a specific section that would be more helpful simply let me know ?

 

 

Edit: this is the video: 

 

The section i'm having issues with is labeled as "recruit dialogue". I've tried asking the creator of the video, but he has no idea what could be causing it nor how to fix it. 

Posted
8 minutes ago, WoofieTheWoof said:

-- snipped shit that had nothing to do with my request

 

11 minutes ago, Seijin8 said:

If I'm going to provide useful information, I need to see the rest of the screen.

 

I don't need a video.  I need to see a screen of what you are working on.  Not a fish-eye view of a part of it.

Posted
5 minutes ago, WoofieTheWoof said:

 

good screenshot

Okay, so I thought we were clearing a stuck fragment from a dialogue.  This is a quest.  Yes, the dialogue is attached to the quest, but it is in the "Dialogue Topic" section that we should find the issue script.

 

EDIT: Put 0500FB0A in the upper left "FormID" box and it should take you right to it. 

Posted
2 minutes ago, WoofieTheWoof said:

 

Okay, there is no actual script attached.  This is likely just the CK being a pain in the ass (which is why I mainly use TESEdit).  Shouldn't be an issue regarding the script showing up, just don't compile the fragment (if the CK still shows one), and you should be fine.

 

If you need a script attached to it, just use the CK and make sure to start by renaming/regenerating the fragment.  If the old one shows up again, you can use TESEdit to make sure it is just a CK artefact and not something actually interfering.

Posted
7 minutes ago, Seijin8 said:

Okay, there is no actual script attached.  This is likely just the CK being a pain in the ass (which is why I mainly use TESEdit).  Shouldn't be an issue regarding the script showing up, just don't compile the fragment (if the CK still shows one), and you should be fine.

 

If you need a script attached to it, just use the CK and make sure to start by renaming/regenerating the fragment.  If the old one shows up again, you can use TESEdit to make sure it is just a CK artefact and not something actually interfering.

Is compiling important? In the tutorial he compiles it so i just want to make sure it won't break anything. It's supposed to be for adding the follower to the "follower" stuff.  also without me even hitting compile it seems to have done the same thing again. 

Screenshot (6).png

Posted
14 minutes ago, WoofieTheWoof said:

 

By the way, if all you want is for the person to be recruitable as a follower, you can literally drag and drop the script from one follow dialogue into this one.  Click both dialogues (ctrl-click) and drag one to the other.  People who work only in the CK have arrived at the notion that every script fragment has to be unique.  They don't.  That's just how the CK does it, but it works fine to have them all be the same.

Posted
4 minutes ago, WoofieTheWoof said:

Is compiling important? In the tutorial he compiles it so i just want to make sure it won't break anything. It's supposed to be for adding the follower to the "follower" stuff.  also without me even hitting compile it seems to have done the same thing again. 

 

It won't work without either compiling or drag-and-dropping.  This seems to be set up as having its own follower framework?  In that case drag-and-drop in TESEdit won't work unless you have an already working example.

 

For now, stick with compiling, but keep in mind that scripting through that CK interface is a pain in the ass at the best of times.  You would have to compile it, then edit source and set up properties if there are any needed.  Can you post the full fragment here?  It is getting cut off in the fragment window.

Posted
1 minute ago, Seijin8 said:

It won't work without either compiling or drag-and-dropping.  This seems to be set up as having its own follower framework?  In that case drag-and-drop in TESEdit won't work unless you have an already working example.

 

For now, stick with compiling, but keep in mind that scripting through that CK interface is a pain in the ass at the best of times.  You would have to compile it, then edit source and set up properties if there are any needed.  Can you post the full fragment here?  It is getting cut off in the fragment window,

(GetOwningQuest() as OC07MerrinController).SetFollower(akSpeaker)

Posted
3 minutes ago, WoofieTheWoof said:

(GetOwningQuest() as OC07MerrinController).SetFollower(akSpeaker)

Okay... does the quest have its own script?  Something for "SetFollower(akSpeaker)" to hook into?  If so, please post that, too.

 

It would be on the last tab of the quest page.

Posted
1 minute ago, Seijin8 said:

Okay... does the quest have its own script?  Something for "SetFollower(akSpeaker)" to hook into?  If so, please post that, too.

 

It would be on the last tab of the quest page.

Scriptname OC07MerrinController extends Quest

 

Actor Property PlayerREF Auto

ReferenceAlias Property FollowerAlias Auto

Faction Property DismissedFollowerFaction Auto

Faction Property CurrentHireling Auto

Message Property  FollowerDismissMessage Auto

Message Property  FollowerDismissMessageWedding Auto

Message Property  FollowerDismissMessageCompanions Auto


 
Message Property  FollowerDismissMessageCompanionsMale Auto


 
Message Property  FollowerDismissMessageCompanionsFemale Auto

Message Property  FollowerDismissMessageWait Auto

SetHirelingRehire Property HirelingRehireScript Auto

GlobalVariable Property FollowerRecruited Auto

Int Property iFollowerDismiss Auto Conditional

 

Function SetFollower(ObjectReference FollowerRef)

     actor FollowerActor = FollowerRef as Actor

     FollowerActor.RemoveFromFaction(DismissedFollowerFaction)

     If FollowerActor.GetRelationshipRank(PlayerREF) ❤️ && FollowerActor.GetRelationshipRank(PlayerREF) >= 0

          FollowerActor.SetRelationshipRank(PlayerREF, 3)

     EndIf

     FollowerActor.SetPlayerTeammate()

     FollowerAlias.ForceRefTo(FollowerActor)

     FollowerActor.EvaluatePackage()

     FollowerRecruited.SetValue(1)

EndFunction

 

Function FollowerWait()

     actor FollowerActor = FollowerAlias.GetActorRef() as Actor

     FollowerActor.SetActorValue("WaitingForPlayer", 1)

     SetObjectiveDisplayed(10, abforce = true)

EndFunction

 

Function FollowerFollow()

     actor FollowerActor = FollowerAlias.GetActorRef() as Actor

     FollowerActor.SetActorValue("WaitingForPlayer", 0)

     SetObjectiveDisplayed(10, abdisplayed = false)

     FollowerActor.EvaluatePackage()

EndFunction

 

Function DismissFollower(Int iMessage = 0, Int iSayLine = 1)

     If FollowerAlias && FollowerAlias.GetActorReference().IsDead() == False

          If iMessage == 0

               FollowerDismissMessage.Show()

          ElseIf iMessage == 1

               FollowerDismissMessageWedding.Show()

          ElseIf iMessage == 2

               FollowerDismissMessageCompanions.Show()

          ElseIf iMessage == 3

               FollowerDismissMessageCompanionsMale.Show()

          ElseIf iMessage == 4

               FollowerDismissMessageCompanionsFemale.Show()

          ElseIf iMessage == 5

               FollowerDismissMessageWait.Show()

          Else

              FollowerDismissMessage.Show()

          EndIf

          actor DismissedFollowerActor = FollowerAlias.GetActorRef() as Actor

          DismissedFollowerActor.StopCombatAlarm()

          DismissedFollowerActor.AddToFaction(DismissedFollowerFaction)

          DismissedFollowerActor.SetPlayerTeammate(false)

          DismissedFollowerActor.RemoveFromFaction(CurrentHireling)

          DismissedFollowerActor.SetActorValue("WaitingForPlayer", 0)

          FollowerRecruited.SetValue(0)

          HirelingRehireScript.DismissHireling(DismissedFollowerActor.GetActorBase())

          If iSayLine == 1

               iFollowerDismiss = 1

              DismissedFollowerActor.EvaluatePackage()

             Utility.Wait(2)

          EndIf

             FollowerAlias.Clear()

             iFollowerDismiss = 0

     EndIf

EndFunction

Posted
4 minutes ago, WoofieTheWoof said:

Scriptname OC07MerrinController extends Quest

 

-- snip --

Okay, yeah compiling the quest script and fragment on the dialogue should do the trick.

 

Though you will need fragments for Follow/Wait, Dismiss, etc as well.

Archived

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

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...