how to add followerAlias properties to DialogueFollowerScrip

Post » Tue Jun 19, 2012 11:24 am

does anyone know how to add more followerAlias properties in the script DialogueFollowerScript as stated below:





The max number of followers should be able to be increased without major difficulty: to do so, change the aaaMaxFollowers global to the appropriate value, duplicate the follower quest aliases in DialogueFollower, add more ReferenceAlias properties to DialogueFollowerScript and change the conditional branches in it as appropriate. (from foobar92's Multiple Followers mod)




thanks in advance to those with helpful information
User avatar
T. tacks Rims
 
Posts: 3447
Joined: Wed Oct 10, 2007 10:35 am

Post » Tue Jun 19, 2012 11:19 am

open up the DialogueFolower quest

click over to the script tab

highlight the DialogueFolowerScript

press the Properties button to the right

press Add Property


select ReferenceAlias in the dropdown and name it soemthing you want

then highlight your new referenceAlias

press edit value

assign your property to the appropriate alias
User avatar
Jamie Lee
 
Posts: 3415
Joined: Sun Jun 17, 2007 9:15 am

Post » Tue Jun 19, 2012 8:48 pm

open up the DialogueFolower quest

click over to the script tab

highlight the DialogueFolowerScript

press the Properties button to the right

press Add Property


select ReferenceAlias in the dropdown and name it soemthing you want

then highlight your new referenceAlias

press edit value

assign your property to the appropriate alias

I tried but this error pops up:


Starting 1 compile threads for 1 files...
Compiling "DialogueFollowerScript"...
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(142,42): no viable alternative at input 'alias'
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(142,59): required (...)+ loop did not match anything at input 'Auto'
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(142,15): Unknown user flag alias
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(142,15): Unknown user flag Follower11
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(142,65): mismatched input '\\r\\n' expecting STATE
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(144,24): script property followerAlias11 already defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(144,24): script variable ::followerAlias11_var already defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(144,24): script property followerAlias11 already has a get function defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(144,24): script property followerAlias11 already has a set function defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(146,42): no viable alternative at input 'alias'
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(146,58): required (...)+ loop did not match anything at input 'Auto'
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(146,15): Unknown user flag alias
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(146,15): Unknown user flag follwer11
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(146,24): script property followerAlias11 already defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(146,24): script variable ::followerAlias11_var already defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(146,24): script property followerAlias11 already has a get function defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(146,24): script property followerAlias11 already has a set function defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(146,64): missing STATE at 'Conditional'
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(148,15): mismatched input 'Property' expecting FUNCTION
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\DialogueFollowerScript.psc(0,0): error while attempting to read script DialogueFollowerScript: Object reference not set to an instance of an object.
No output generated for DialogueFollowerScript, compilation failed.
User avatar
lisa nuttall
 
Posts: 3277
Joined: Tue Jun 20, 2006 1:33 pm

Post » Tue Jun 19, 2012 2:03 pm

these compiler errors usually happen if you try to compile code before declaring the properties.

always declare the properties first. save it by closing the window hitting ok. then reopen the window and edit source


you also have multiples of the same properties being declared.


i hope you made a backup of the original script because compiling is not undo-able.

otherwise you have to go into the source and edit it manually



right click on the script and select edit source


copy and paste everything here into this thread using the CODE brackets
User avatar
louise tagg
 
Posts: 3394
Joined: Sun Aug 06, 2006 8:32 am

Post » Tue Jun 19, 2012 10:36 pm

i went edit source and saved the 'DialogueFollowerScript' (i used the original script by foobar92) but these errors showed up:


Starting 1 compile threads for 1 files...
Compiling "DialogueFollowerScript"...
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(142,42): no viable alternative at input 'alias'
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(142,59): required (...)+ loop did not match anything at input 'Auto'
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(142,15): Unknown user flag alias
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(142,15): Unknown user flag Follower11
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(142,65): mismatched input '\\r\\n' expecting STATE
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(144,24): script property followerAlias11 already defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(144,24): script variable ::followerAlias11_var already defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(144,24): script property followerAlias11 already has a get function defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(144,24): script property followerAlias11 already has a set function defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(146,42): no viable alternative at input 'alias'
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(146,58): required (...)+ loop did not match anything at input 'Auto'
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(146,15): Unknown user flag alias
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(146,15): Unknown user flag follwer11
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(146,24): script property followerAlias11 already defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(146,24): script variable ::followerAlias11_var already defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(146,24): script property followerAlias11 already has a get function defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(146,24): script property followerAlias11 already has a set function defined
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(146,64): missing STATE at 'Conditional'
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(148,15): mismatched input 'Property' expecting FUNCTION
C:\Program Files (x86)\The Elder Scrolls V Skyrim\Data\Scripts\Source\temp\DialogueFollowerScript.psc(0,0): error while attempting to read script DialogueFollowerScript: Object reference not set to an instance of an object.
No output generated for DialogueFollowerScript, compilation failed.

Batch compile of 1 files finished. 0 succeeded, 1 failed.
Failed on DialogueFollowerScript




sorry if i svck, I'm new to this modding thing
User avatar
Jonathan Montero
 
Posts: 3487
Joined: Tue Aug 14, 2007 3:22 am

Post » Tue Jun 19, 2012 12:33 pm

like i said, post the code in brackets. not the errors

it wont compile because you tried to compile it before declaring properties, and you have duplicate properties..


post the entire code here and i will help you clean it up
User avatar
Danny Blight
 
Posts: 3400
Joined: Wed Jun 27, 2007 11:30 am

Post » Tue Jun 19, 2012 12:48 pm

ScriptName DialogueFollowerScript extends Quest ConditionalGlobalVariable Property pPlayerFollowerCount AutoGlobalVariable Property pPlayerAnimalCount AutoReferenceAlias Property pFollowerAlias AutoReferenceAlias property pAnimalAlias AutoFaction Property pDismissedFollower AutoFaction Property pCurrentHireling AutoMessage Property  FollowerDismissMessage AutoMessage Property AnimalDismissMessage AutoMessage Property  FollowerDismissMessageWedding AutoMessage Property  FollowerDismissMessageCompanions AutoMessage Property  FollowerDismissMessageCompanionsMale AutoMessage Property  FollowerDismissMessageCompanionsFemale AutoMessage Property  FollowerDismissMessageWait AutoSetHirelingRehire Property HirelingRehireScript Auto;Property to tell follower to say dismissal lineInt Property iFollowerDismiss Auto ConditionalFunction SetFollower(ObjectReference FollowerRef)actor FollowerActor = FollowerRef as ActorFollowerActor.RemoveFromFaction(pDismissedFollower)If FollowerActor.GetRelationshipRank(Game.GetPlayer()) < 3 && FollowerActor.GetRelationshipRank(Game.GetPlayer()) >= 0  FollowerActor.SetRelationshipRank(Game.GetPlayer(), 3)EndIfFollowerActor.SetPlayerTeammate();FollowerActor.SetAV("Morality", 0)pFollowerAlias.ForceRefTo(FollowerActor)pPlayerFollowerCount.SetValue(1)EndFunctionFunction SetAnimal(ObjectReference AnimalRef)actor AnimalActor= AnimalRef as Actor;don't allow lockpickingAnimalActor.SetAV("Lockpicking", 0)AnimalActor.SetRelationshipRank(Game.GetPlayer(), 3)AnimalActor.SetPlayerTeammate(abCanDoFavor = false)pAnimalAlias.ForceRefTo(AnimalActor);AnimalActor.AllowPCDialogue(True)pPlayerAnimalCount.SetValue(1)EndFunctionFunction FollowerWait()actor FollowerActor = pFollowerAlias.GetActorRef() as ActorFollowerActor.SetAv("WaitingForPlayer", 1);SetObjectiveDisplayed(10, abforce = true);follower will wait 3 dayspFollowerAlias.RegisterForUpdateGameTime(72)EndFunctionFunction AnimalWait()actor AnimalActor = pAnimalAlias.GetActorRef() as ActorAnimalActor.SetAv("WaitingForPlayer", 1);SetObjectiveDisplayed(20, abforce = true);follower will wait 3 dayspAnimalAlias.RegisterForUpdateGameTime(72)EndFunctionFunction FollowerFollow()actor FollowerActor = pFollowerAlias.GetActorRef() as ActorFollowerActor.SetAv("WaitingForPlayer", 0)SetObjectiveDisplayed(10, abdisplayed = false)EndFunctionFunction AnimalFollow()actor AnimalActor = pAnimalAlias.GetActorRef() as ActorAnimalActor.SetAv("WaitingForPlayer", 0)SetObjectiveDisplayed(20, abdisplayed = false)EndFunctionFunction DismissFollower(Int iMessage = 0, Int iSayLine = 1)If pFollowerAlias && pFollowerAlias.GetActorRef().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   ;failsafe   FollowerDismissMessage.Show()  EndIf  actor DismissedFollowerActor = pFollowerAlias.GetActorRef() as Actor  DismissedFollowerActor.StopCombatAlarm()  DismissedFollowerActor.AddToFaction(pDismissedFollower)  DismissedFollowerActor.SetPlayerTeammate(false)  DismissedFollowerActor.RemoveFromFaction(pCurrentHireling)  DismissedFollowerActor.SetAV("WaitingForPlayer", 0)    ;hireling rehire function  HirelingRehireScript.DismissHireling(DismissedFollowerActor.GetActorBase())  If iSayLine == 1   iFollowerDismiss = 1   DismissedFollowerActor.EvaluatePackage()   ;Wait for follower to say line   Utility.Wait(2)  EndIf  pFollowerAlias.Clear()  iFollowerDismiss = 0  ;don't set count to 0 if Companions have replaced follower  If iMessage == 2   ;do nothing  Else   pPlayerFollowerCount.SetValue(0)  EndIfEndIfEndFunctionFunction DismissAnimal()If pAnimalAlias && pAnimalAlias.GetActorRef().IsDead() == False  actor DismissedAnimalActor = pAnimalAlias.GetActorRef() as Actor  DismissedAnimalActor.SetActorValue("Variable04", 0)  ;DismissedAnimalActor.AllowPCDialogue(False)  pPlayerAnimalCount.SetValue(0)  pAnimalAlias.Clear()  AnimalDismissMessage.Show()EndIfEndFunctionReferenceAlias Property followerAlias11 = alias Follower11 Auto ReferenceAlias Property followerAlias11  Auto ReferenceAlias Property followerAlias11 = alias follwer11 Auto  ConditionalReferenceAlias Property NewProperty  Auto  ConditionalReferenceAlias Property followerAlias12 = alias Follower12 Auto  ConditionalReferenceAlias Property FollowerAlias11  Auto  Conditional{bool Function ForceRefIfEmpty}Int Property FollowerAlias11  Auto  Conditional{bool Function ForceRefIfEmpty(ObjectReference akNewRef)}Int Property followerAlias10000 = 40 Auto  ConditionalReferenceAlias Property NewProperty  Auto  ConditionalReferenceAlias[] Property NewProperty  Auto  ConditionalReferenceAlias Property followerAlias11 = alias Follower11 on quest DialogueFollower (000750BA) Auto  ConditionalReferenceAlias Property followerAlias11 = alias Follower11 on quest DialogueFollower (000750BA) Auto  ConditionalInt Property NewProperty  Auto ReferenceAlias Property Follower11  Auto ReferenceAlias Property Follower100000 = 40 Auto  Conditional

I think this is it for DialogueFollowerScript (as seen in edit source window)
User avatar
Unstoppable Judge
 
Posts: 3337
Joined: Sat Jul 29, 2006 11:22 pm

Post » Tue Jun 19, 2012 3:43 pm

assuming you didn't alter any of the actual script itself,


delete everything after EndFunction at the bottom.

all of those 17 properties you added. delete them then save.


after it compiles ok, close the window, close everything except the CK


reopen the Dialguefollower quest

click on the script tab and add your properties FIRST. the same way i mentioned above. make sure you are naming the properties something different each time. dont spam the add property button or else you will end up with more duplicates again


after you add the properties. save by clicking ok, then close everything again.


reopen the dialog quest and go to script and edit whatever it is you need to edit (i'm not even sure what you're trying to do)
User avatar
Miguel
 
Posts: 3364
Joined: Sat Jul 14, 2007 9:32 am

Post » Tue Jun 19, 2012 2:27 pm

It works!!! thank you bro!!! and i'm increasing the follower cap as stated in foobar92's mod under the misc notes
User avatar
Katharine Newton
 
Posts: 3318
Joined: Tue Jun 13, 2006 12:33 pm


Return to V - Skyrim