ShawnDriscoll Posted October 6, 2014 Share Posted October 6, 2014 (edited) Dialogue overhaul does this.I'll look into it. Last I checked, FCO didn't change dialogue menus. Just idle chit-chat. I don't have a "dialogue overhaul" other than guards and followers. Edited October 6, 2014 by ShawnDriscoll Link to comment Share on other sites More sharing options...
Valkasha Posted October 6, 2014 Share Posted October 6, 2014 Hmm I may have been wrong, but I do recall a mod like that one doing this for me.. Might have been something that got fixed later. Link to comment Share on other sites More sharing options...
Tajjara Posted October 8, 2014 Share Posted October 8, 2014 Maybe it's Braith just trying to get a more caring family. She's lying! Link to comment Share on other sites More sharing options...
foamyesque Posted October 16, 2014 Share Posted October 16, 2014 the game is using separate system to check for the "orphanable/adoptable" status for children... so it could happen, that even if her parents are alive, she still could be (due to bug) adopted or transferred to orphanage... I could explain how exactly this system works and even add few ways how to fix it only by using some console commands, but only if you'll be interested, it's quite complicated.. :wink:) I hope you haven't vanished because I've just hit the same issue. :( Link to comment Share on other sites More sharing options...
foamyesque Posted October 16, 2014 Share Posted October 16, 2014 (edited) Okay, some followup notes: 1. I can get Braith's normal dialogue back by removing her from BYOHRelationshipAdoptableFaction.2. She's registered under the alias Orphan01 for the quest BYOHRelationshipAdoptableOrphanage.3. Forcibly removing the reference via SetConsoleScopeQuest BYOHRelationshipAdoptableOrphanage EmptyRefAlias Orphan01 will bring her back to Whiterun and appears to restore at least some of her normal routine; she'll wander around the Whiterun market and go to sleep in the family house.4. However this is a temporary fix; she will be re-added (reliably triggered by waiting 1h) to BYOHRelationshipAdoptableFaction and after that (reliably triggered by waiting for an extended period) be re-registered under the alias Orphan01.5. Reseting the quest BYOHRelationshipAdoptableOrphanage clears all the aliases and disables the quest. However, the alias Orphan1 still gets refilled, though none of the original orphanage aliases (Hroar, etc) are.6. So far I have not found a way to make the various Braith interactions (with Lars and her parents) restart. sqv tells me the quests for them are disabled and stopped, even after using startquest on them.7. Likewise, sqv tells me that startquest will not reactivate BYOHRelationshipAdoptableOrphanage. Right now I'm kind of stuck. I need to find out a. why the alias keeps being refilled, b. why the faction keeps getting added, and c. why those quests will not start. Edited October 16, 2014 by foamyesque Link to comment Share on other sites More sharing options...
ShawnDriscoll Posted October 16, 2014 Share Posted October 16, 2014 Her father was killed yesterday by bandits that invaded Whiterun. Now just her mother needs to die. Then she will be in proper context. Link to comment Share on other sites More sharing options...
foamyesque Posted October 17, 2014 Share Posted October 17, 2014 Her father was killed yesterday by bandits that invaded Whiterun. Now just her mother needs to die. Then she will be in proper context. I respect post-hoc solutions, but I'd really rather try to actually fix the root issue.:p (Among other things, Braith isn't the only one this has happened to in my game and murdering dozens of parents is not something I want to do :( ) Link to comment Share on other sites More sharing options...
cubedj21 Posted October 19, 2014 Share Posted October 19, 2014 (edited) Okay, some followup notes: 1. I can get Braith's normal dialogue back by removing her from BYOHRelationshipAdoptableFaction.2. She's registered under the alias Orphan01 for the quest BYOHRelationshipAdoptableOrphanage.3. Forcibly removing the reference via SetConsoleScopeQuest BYOHRelationshipAdoptableOrphanage EmptyRefAlias Orphan01 will bring her back to Whiterun and appears to restore at least some of her normal routine; she'll wander around the Whiterun market and go to sleep in the family house.4. However this is a temporary fix; she will be re-added (reliably triggered by waiting 1h) to BYOHRelationshipAdoptableFaction and after that (reliably triggered by waiting for an extended period) be re-registered under the alias Orphan01.5. Reseting the quest BYOHRelationshipAdoptableOrphanage clears all the aliases and disables the quest. However, the alias Orphan1 still gets refilled, though none of the original orphanage aliases (Hroar, etc) are.6. So far I have not found a way to make the various Braith interactions (with Lars and her parents) restart. sqv tells me the quests for them are disabled and stopped, even after using startquest on them.7. Likewise, sqv tells me that startquest will not reactivate BYOHRelationshipAdoptableOrphanage. Right now I'm kind of stuck. I need to find out a. why the alias keeps being refilled, b. why the faction keeps getting added, and c. why those quests will not start. first of all.. try to use these console commands (with Braith selected) to check if at least one the responsible NPCs for the child is stil alive: "GetLinkedRef LinkCustom01" (= father) "GetLinkedRef LinkCustom02" (= mother) "GetLinkedRef LinkCustom03" (= guardian01) "GetLinkedRef LinkCustom04" (= guardian02) => it returns the refID of linked NPC responsible for the child or "none" for children not included in the list of orphanable children below* *Orphanable children (by default): Braith (0001A66B) Britte (0001A6AC) ClintonLylvieve (00019A2D) Dorthe (00013484) Eirid (0001C18F) Erith (000199B4) Frodnar (0001348B) Gralnach (00019E10) Hrefna (0001B08F) Knud (000198DB) MinetteVinius (000198A4) Sissel (0001A6AE) Skuli (000199D0) Svari (0001A636) Aeta (00004291) Dragonborn => to check whether the NPC is dead use command "prid refID" and then "getdead" ( returns 1 if the object reference is dead) => if is at least one of these linked NPCs still alive (but not resurected with console command!) and the child is in orphanage or the adoption dialogue is available, then it is most likely bug... ... unfortunately is impossible get the child back from orphanage only by using console commands... to fix this problem I was forced to slightly edit two scripts and create a scripted spell that removes the child from the orphanage (optionally is possible to set the child as completely "unorphanable" with console command "AddFac 05004290 51"). I could create a small mod including these few fixes and upload it here on Nexus... I just need some time to make it work as standalone mod, because now it exists only as a part of my "WIP" mod files... ... in the meantime you can check those changed scripts: BYOHRelationshipAdoptableScript.psc - added lines are marked as greenScriptname BYOHRelationshipAdoptableScript extends Quest Conditional{Quest Script for BYOHRelationshipAdoptable.} ;This script is responsible for:; - Managing all of the dialogue, behaviors, events, and subquests related to adopting children.; - Handing off newly-adopted children to RelationshipAdoption, which takes them from there.; - Tracking and validating which houses and children's bedrooms the player owns (in conjunction with the HousePurchase quest). ;----------------------------------------------------------------------------------------------------;PROPERTIES & VARIABLES;-------------------------------------;Track whether the player owns a house their spouse could live in.;For the BYOH houses, this represents both owning the house and having some basic furniture built for it.bool property BYOHAdoption_PlayerOwnsAnyHouse = False auto conditionalbool property BYOHAdoption_PlayerOwns_BYOHFalkreath = False auto conditionalbool property BYOHAdoption_PlayerOwns_BYOHHjaalmarch = False auto conditionalbool property BYOHAdoption_PlayerOwns_BYOHPale = False auto conditional ;Track which houses have children's bedrooms.bool property BYOHAdoption_HasChildBedroom_Any = False auto conditionalbool property BYOHAdoption_HasChildBedroom_Multiple = False auto conditionalbool property BYOHAdoption_HasChildBedroom_Solitude = False auto conditionalbool property BYOHAdoption_HasChildBedroom_Windhelm = False auto conditionalbool property BYOHAdoption_HasChildBedroom_Markarth = False auto conditionalbool property BYOHAdoption_HasChildBedroom_Riften = False auto conditionalbool property BYOHAdoption_HasChildBedroom_Whiterun = False auto conditionalbool property BYOHAdoption_HasChildBedroom_BYOHFalkreath = False auto conditionalbool property BYOHAdoption_HasChildBedroom_BYOHHjaalmarch = False auto conditionalbool property BYOHAdoption_HasChildBedroom_BYOHPale = False auto conditional ;Enable markers for the children's bedrooms.ObjectReference property BYOHAdoption_ChildBedroomMarker_Solitude autoObjectReference property BYOHAdoption_ChildBedroomMarker_Windhelm autoObjectReference property BYOHAdoption_ChildBedroomMarker_Markarth autoObjectReference property BYOHAdoption_ChildBedroomMarker_Riften autoObjectReference property BYOHAdoption_ChildBedroomMarker_Whiterun auto ;The DLC01 House quests.Quest property BYOHHouseFalkreath AutoQuest property BYOHHouseHjaalmarch AutoQuest property BYOHHousePale Auto ;Main Courier QuestQuest property CourierQuest Auto ;Orphanage Courier event and related variables.Quest property DB02 AutoQuest property WICourier AutoBook property BYOHAdoptionConstanceLetter Autobool orphanageCourierHasTriggered ;Steward's Courier event and related variables.Keyword property BYOHAdoptionStewardCourierEvent AutoQuest property BYOHRelationshipAdoptableStewardCourier AutoLocation property SolitudeLocation AutoLocation property WindhelmLocation AutoLocation property MarkarthLocation AutoLocation property RiftenLocation AutoLocation property WhiterunLocation Auto ;Orphanable Children and related variables.Faction property BYOHRelationshipAdoptableFaction AutoFaction property BYOHRelationshipAdoptionFaction AutoQuest property BYOHRelationshipAdoptableUrchins AutoKeyword property LinkCustom01 Auto ;Link to the child's father, if any.Keyword property LinkCustom02 Auto ;Link to the child's mother, if any.Keyword property LinkCustom03 Auto ;Link to the child's guardian, if any.Keyword property LinkCustom04 Auto ;Link to the child's guardian, if any. ;Orphanage Adoption quest and related variables.ObjectReference property ConstanceMichelRef AutoQuest property BYOHRelationshipAdoptableOrphanage Auto ;Other QuestsQuest property HousePurchase AutoQuest property RelationshipMarriageFIN AutoQuest property WIKill05 Auto ;DLC Initialization Objects - Objects that need to be pushed into base-game objects and formlists.;Note that objects that need to be pushed to or from BYOH lists are handled on BYOHHouseBuildingScript;to avoid duplicating cross-DLC functionality any more than necessary.Weapon property BYOHWoodenSword AutoMiscObject property BYOHChildrensDoll AutoMiscObject property ClothesChild01Female AutoMiscObject property ClothesChild01Male AutoMiscObject property ClothesChild02Female AutoMiscObject property ClothesChild02Male AutoMiscObject property ClothesChild03Female AutoMiscObject property ClothesChild03Male AutoMiscObject property ClothesChild04Female AutoMiscObject property ClothesChild04Male AutoMiscObject property ClothesChild05Female AutoMiscObject property ClothesChild05Male AutoLeveledItem property BYOHRelationshipAdoptionLItemChildrensClothes01 AutoLeveledItem property BYOHRelationshipAdoptionLItemChildrensClothes02 AutoLeveledItem property BYOHRelationshipAdoptionLItemChildrensClothes03 AutoLeveledItem property BYOHRelationshipAdoptionLItemChildrensClothes04 AutoLeveledItem property BYOHRelationshipAdoptionLItemChildrensClothes05 Auto LeveledItem property LItemClothesAll AutoLeveledItem property LItemMiscVendorMiscItems75 Auto ;----------------------------------------------------------------------------------------------------;ADOPTION STARTUP SCRIPT;----------------------- ;This function should run when the DLC first starts, or at game start, to fixup the system for Adoption.Function BYOHAdoptionStartup() ;Update LeveledItem and Formlists from the base game. UpdateBaseGameLists() ;Update enable markers in player houses. (HousePurchase as BYOHRelationshipAdoptionHousePurchase).BYOHRelationshipAdoptionHousePurchaseSTARTUP() ;Update this script's records of which houses and bedrooms have been purchased. Self.UpdateHouseStatus() ;Trigger the Steward's Courier event if applicable. Self.TriggerStewardCourierEvent() ;Start the update loop, which: ; - Checks all of the Orphanable children to see if they've been orphaned. ; - Triggers the Orphanage Courier event if applicable. Self.OnUpdateGameTime() ;Begin tracking the spouse's location. if (RelationshipMarriageFIN.IsRunning()) (RelationshipMarriageFIN as RelationshipMarriageSpouseHouseScript).UpdateSpouseHouseInt() EndIfEndFunction ;Update LeveledItem and Formlist lists from the base game to contain Adoption-related content.Function UpdateBaseGameLists() ;Khajiit Caravans: Sell all toys, chance of clothes. Added to their chests in the ESM, since we can't update containers via script. ;Radiant Raiment: Sell all children's clothes. Add the clothes to LItemClothesAll, since Raiment is the only user of this list. LItemClothesAll.AddForm(ClothesChild01Female, 1, 1) LItemClothesAll.AddForm(ClothesChild01Male, 1, 1) LItemClothesAll.AddForm(ClothesChild02Female, 1, 1) LItemClothesAll.AddForm(ClothesChild02Male, 1, 1) LItemClothesAll.AddForm(ClothesChild03Female, 1, 1) LItemClothesAll.AddForm(ClothesChild03Male, 1, 1) LItemClothesAll.AddForm(ClothesChild04Female, 1, 1) LItemClothesAll.AddForm(ClothesChild04Male, 1, 1) LItemClothesAll.AddForm(ClothesChild05Female, 1, 1) LItemClothesAll.AddForm(ClothesChild05Male, 1, 1) ;Misc Merchants/Loot: Add wooden sword, doll, clothes sublists to LItemMiscVendorMiscItems75 to ensure a chance of them at other merchants. LItemMiscVendorMiscItems75.AddForm(BYOHWoodenSword, 1, 1) LItemMiscVendorMiscItems75.AddForm(BYOHChildrensDoll, 1, 1) LItemMiscVendorMiscItems75.AddForm(BYOHWoodenSword, 1, 1) LItemMiscVendorMiscItems75.AddForm(BYOHChildrensDoll, 1, 1) LItemMiscVendorMiscItems75.AddForm(BYOHRelationshipAdoptionLItemChildrensClothes01, 1, 1) LItemMiscVendorMiscItems75.AddForm(BYOHRelationshipAdoptionLItemChildrensClothes02, 1, 1) LItemMiscVendorMiscItems75.AddForm(BYOHRelationshipAdoptionLItemChildrensClothes03, 1, 1) LItemMiscVendorMiscItems75.AddForm(BYOHRelationshipAdoptionLItemChildrensClothes04, 1, 1) LItemMiscVendorMiscItems75.AddForm(BYOHRelationshipAdoptionLItemChildrensClothes05, 1, 1)EndFunction ;----------------------------------------------------------------------------------------------------;HOUSE PURCHASE TRACKING;----------------------- ;Update house tracking variables whenver something significant happens to a player house.Function UpdateHouseStatus() ;Do we know the player owns a house at all? If not, check. if (!BYOHAdoption_PlayerOwnsAnyHouse) if (((HousePurchase as HousePurchaseScript).SolitudeHouseVar >= 1) \ || ((HousePurchase as HousePurchaseScript).WindhelmHouseVar >= 1) \ || ((HousePurchase as HousePurchaseScript).MarkarthHouseVar >= 1) \ || ((HousePurchase as HousePurchaseScript).RiftenHouseVar >= 1) \ || ((HousePurchase as HousePurchaseScript).WhiterunHouseVar >= 1) \ || ((BYOHHouseFalkreath as BYOHHouseScript).bAllowSpouse) \ || ((BYOHHouseHjaalmarch as BYOHHouseScript).bAllowSpouse) \ || ((BYOHHousePale as BYOHHouseScript).bAllowSpouse)) BYOHAdoption_PlayerOwnsAnyHouse = True EndIf EndIf ;For the BYOH Houses, has the player built the basic house and a bed for their spouse? ;The name is a bit misleading, since bAllowSpouse can be false (because you haven't built a bed) while bAllowChildren is true. if ((BYOHHouseFalkreath as BYOHHouseScript).bAllowSpouse) BYOHAdoption_PlayerOwns_BYOHFalkreath = True EndIf if ((BYOHHouseHjaalmarch as BYOHHouseScript).bAllowSpouse) BYOHAdoption_PlayerOwns_BYOHHjaalmarch = True EndIf if ((BYOHHousePale as BYOHHouseScript).bAllowSpouse) BYOHAdoption_PlayerOwns_BYOHPale = True EndIf ;Next, check to see if the player owns any children's bedrooms. int childBedroomCount = 0 ;Standard houses. if (!BYOHAdoption_ChildBedroomMarker_Solitude.IsDisabled()) childBedroomCount = childBedroomCount + 1 BYOHAdoption_HasChildBedroom_Solitude = True Else BYOHAdoption_HasChildBedroom_Solitude = False EndIf if (!BYOHAdoption_ChildBedroomMarker_Windhelm.IsDisabled()) childBedroomCount = childBedroomCount + 1 BYOHAdoption_HasChildBedroom_Windhelm = True Else BYOHAdoption_HasChildBedroom_Windhelm = False EndIf if (!BYOHAdoption_ChildBedroomMarker_Markarth.IsDisabled()) childBedroomCount = childBedroomCount + 1 BYOHAdoption_HasChildBedroom_Markarth = True Else BYOHAdoption_HasChildBedroom_Markarth = False EndIf if (!BYOHAdoption_ChildBedroomMarker_Riften.IsDisabled()) childBedroomCount = childBedroomCount + 1 BYOHAdoption_HasChildBedroom_Riften = True Else BYOHAdoption_HasChildBedroom_Riften = False EndIf if (!BYOHAdoption_ChildBedroomMarker_Whiterun.IsDisabled()) childBedroomCount = childBedroomCount + 1 BYOHAdoption_HasChildBedroom_Whiterun = True Else BYOHAdoption_HasChildBedroom_Whiterun = False EndIf ;BYOH Houses if ((BYOHHouseFalkreath as BYOHHouseScript).bAllowChildren) childBedroomCount = childBedroomCount + 1 BYOHAdoption_HasChildBedroom_BYOHFalkreath = True Else BYOHAdoption_HasChildBedroom_BYOHFalkreath = False EndIf if ((BYOHHouseHjaalmarch as BYOHHouseScript).bAllowChildren) childBedroomCount = childBedroomCount + 1 BYOHAdoption_HasChildBedroom_BYOHHjaalmarch = True Else BYOHAdoption_HasChildBedroom_BYOHHjaalmarch = False EndIf if ((BYOHHousePale as BYOHHouseScript).bAllowChildren) childBedroomCount = childBedroomCount + 1 BYOHAdoption_HasChildBedroom_BYOHPale = True Else BYOHAdoption_HasChildBedroom_BYOHPale = False EndIf ;Then update the 'Any' and 'Multiple' variables. if (childBedroomCount == 0) BYOHAdoption_HasChildBedroom_Any = False BYOHAdoption_HasChildBedroom_Multiple = False ElseIf (childBedroomCount == 1) BYOHAdoption_HasChildBedroom_Any = True BYOHAdoption_HasChildBedroom_Multiple = False Else BYOHAdoption_HasChildBedroom_Any = True BYOHAdoption_HasChildBedroom_Multiple = True EndIfEndFunction ;When a move is triggered, confirm that the player's family can actually be moved to that location. If not, select the best alternative.;Used to handle edge cases, such as choosing a destination with Constance, then selling the child's bedroom there, THEN going through with the adoption.int Function ValidateMoveDestination(int destination, int secondary) int tertiary = 0 if (BYOHAdoption_HasChildBedroom_Solitude) if (destination == 1) return destination ElseIf (tertiary == 0) tertiary = 1 EndIf EndIf if (BYOHAdoption_HasChildBedroom_Windhelm) if (destination == 2) return destination ElseIf (tertiary == 0) tertiary = 2 EndIf EndIf if (BYOHAdoption_HasChildBedroom_Markarth) if (destination == 3) return destination ElseIf (tertiary == 0) tertiary = 3 EndIf EndIf if (BYOHAdoption_HasChildBedroom_Riften) if (destination == 4) return destination ElseIf (tertiary == 0) tertiary = 4 EndIf EndIf if (BYOHAdoption_HasChildBedroom_Whiterun) if (destination == 5) return destination ElseIf (tertiary == 0) tertiary = 5 EndIf EndIf if (BYOHAdoption_HasChildBedroom_BYOHFalkreath) if (destination == 6) return destination ElseIf (tertiary == 0) tertiary = 6 EndIf EndIf if (BYOHAdoption_HasChildBedroom_BYOHHjaalmarch) if (destination == 7) return destination ElseIf (tertiary == 0) tertiary = 7 EndIf EndIf if (BYOHAdoption_HasChildBedroom_BYOHPale) if (destination == :cool: return destination ElseIf (tertiary == 0) tertiary = 8 EndIf EndIf if (secondary > 0) return secondary EndIf return tertiaryEndFunction ;----------------------------------------------------------------------------------------------------;COURIER EVENTS;-------------- ;Handle Steward's Courier Event.;Occurs only on DLC Start, to notify the player of Child Bedroom availability.Function TriggerStewardCourierEvent() if (BYOHAdoption_PlayerOwnsAnyHouse) Location homeCityLoc if ((HousePurchase as HousePurchaseScript).WhiterunHouseVar >= 1) homeCityLoc = WhiterunLocation ElseIf ((HousePurchase as HousePurchaseScript).SolitudeHouseVar >= 1) homeCityLoc = SolitudeLocation ElseIf ((HousePurchase as HousePurchaseScript).WindhelmHouseVar >= 1) homeCityLoc = WindhelmLocation ElseIf ((HousePurchase as HousePurchaseScript).MarkarthHouseVar >= 1) homeCityLoc = MarkarthLocation Else ;Riften homeCityLoc = RiftenLocation EndIf ;Trigger the event. ;Debug.Trace("Starting the Steward's Courier for: " + homeCityLoc) BYOHAdoptionStewardCourierEvent.SendStoryEvent(homeCityLoc) EndIf EndFunction ;Handle Orphanage Courier Event.;Occurs once the player has escaped from the shack in DB02, or at DLC start if that has already happened.Function TriggerOrphanageCourierEvent() ;Debug.Trace("Orphanage Courier Update.") if (DB02.GetStage() >= 40 && !(ConstanceMichelRef as Actor).IsDead()) orphanageCourierHasTriggered = True (WICourier as WICourierScript).AddItemToContainer(BYOHAdoptionConstanceLetter) EndIfEndFunction ;Manage the 'Adopt Children from the Orphanage' Misc Objective.; [1] Show the Orphanage Objective when the player reads the courier's letter.; [2] Complete it when the player completes Constance's questionnaire.; [3] Hide it quietly when Constance dies or when the player adopts two children from other sources.Function ShowOrphanageObjective(int objState) ;Debug.Trace("ShowOrphanageObjective: " + objState + ", " + IsObjectiveDisplayed(10)) if (objState == 1) ;Try to display the objective. if (!GetStageDone(255) && !(ConstanceMichelRef as Actor).IsDead() && BYOHRelationshipAdoptableOrphanage.GetStage() < 100) ;If we can still adopt kids, and Constance is alive, and the player hasn't completed her questionnaire, allow the objective. SetObjectiveDisplayed(10) EndIf ElseIf (objState == 2) if (IsObjectiveDisplayed(10)) ;Complete it when the player adopts a child. SetObjectiveCompleted(10) EndIf Else ;Otherwise, hide it quietly. SetObjectiveDisplayed(10, False, False) EndIfEndFunction ;----------------------------------------------------------------------------------------------------;ORPHANABLE CHILDREN EVENTS;-------------------------- ;Adoptable's update loop:; - Triggers the Orphanage Courier event if applicable.; - Checks all of the Orphanable children to see if they've been orphaned.Event OnUpdateGameTime() ;Debug.Trace("Adoptable Update Loop") if ((Self as Quest).GetStage() < 255) ;If the Orphanage Courier event hasn't triggered yet, test it again. if (!orphanageCourierHasTriggered) TriggerOrphanageCourierEvent() EndIf ;Check for orphaned children and update their status. UpdateOrphanablesStatus() ;Schedule a new update in 24h. ;Debug.Trace("Rescheduling Adoptable Update Loop") RegisterForSingleUpdateGameTime(1) EndIfEndEvent ;On DLC Start, and once every 24h, check to see whether each Orphanable Child has been orphaned.Function UpdateOrphanablesStatus() ;This function runs only if the player has not already adopted two children. Once they do, everything reverts to the base game behavior. if (Self.GetStage() == 0) Actor child ObjectReference father ObjectReference mother ObjectReference guardian01 ObjectReference guardian02 int i = 0 Debug.Trace("Updating Orphanables Status: ------------------------") While (i < ((Self as Quest) as BYOHRelationshipAdoptableAccessor).OrphanableChildren.Length) child = ((Self as Quest) as BYOHRelationshipAdoptableAccessor).OrphanableChildren if (child != None) ;Is the child an orphan? If they haven't been orphaned before, check to see if they're an orphan now. if (child.GetFactionRank(BYOHRelationshipAdoptableFaction) < 0) ;Debug.Trace("Updating Orphanables Status for " + child) ;Identify the NPCs responsible for the child. father = child.GetLinkedRef(LinkCustom01) mother = child.GetLinkedRef(LinkCustom02) guardian01 = child.GetLinkedRef(LinkCustom03) guardian02 = child.GetLinkedRef(LinkCustom04) ;Determine whether the child has been orphaned. if ((father == None || (father as Actor).IsDead() || (father as Actor).IsCommandedActor()) && \ (mother == None || (mother as Actor).IsDead() || (mother as Actor).IsCommandedActor()) && \ (guardian01 == None || (guardian01 as Actor).IsDead() || (guardian01 as Actor).IsCommandedActor()) && \ (guardian02 == None || (guardian02 as Actor).IsDead() || (guardian02 as Actor).IsCommandedActor())) ;If all of these tests pass, the child has been orphaned. Debug.Trace(child + " has been orphaned.") ;Push the child into the Adoptable faction and update its rank. This enables the orphan dialogue. if (!child.IsInFaction(BYOHRelationshipAdoptableFaction)) child.AddToFaction(BYOHRelationshipAdoptableFaction) EndIf child.SetFactionRank(BYOHRelationshipAdoptableFaction, 0) ;Reset RelationshipRank to avoid awkward "I Hate You" dialogue. child.SetRelationshipRank(Game.GetPlayer(), 0) ;Set Variable06 to identify which lines they should use. if (father == None && mother == None) child.SetAV("Variable06", 1) ElseIf (mother == None) child.SetAV("Variable06", 2) ElseIf (father == None) child.SetAV("Variable06", 3) Else child.SetAV("Variable06", 1) EndIf EndIf EndIf ;If the child is an orphan, try to transfer them to the Orphanage. if (child.GetFactionRank(BYOHRelationshipAdoptableFaction) >= 0 && child.GetFactionRank(BYOHRelationshipAdoptableFaction) < 50) Debug.Trace("Requesting transfer for " + child) RequestOrphanageTransfer(child) EndIf Else ;If the next item in the list is a 'None', bail out. i = ((Self as Quest) as BYOHRelationshipAdoptableAccessor).OrphanableChildren.Length Debug.Trace("-------------------") EndIf i = i + 1 EndWhile EndIfEndFunction ;Once the player adopts two children, disable further adoptions from any source.Function DisableNewAdoptions() ;This quest manages the Orphanable Children directly. ;Debug.Trace("Disable Orphanable Adoptions.") Actor child int i = 0 While (i < ((Self as Quest) as BYOHRelationshipAdoptableAccessor).OrphanableChildren.Length) child = ((Self as Quest) as BYOHRelationshipAdoptableAccessor).OrphanableChildren if (child != None) ;Debug.Trace("Disabling Adoption for " + child) if (!child.IsInFaction(BYOHRelationshipAdoptionFaction)) child.SetFactionRank(BYOHRelationshipAdoptableFaction, -1) EndIf Else ;Bail when we reach a 'None' object in the list. i = ((Self as Quest) as BYOHRelationshipAdoptableAccessor).OrphanableChildren.Length EndIf i = i + 1 EndWhile ;Orphanage Orphans delegated to a seperate quest. ;Debug.Trace("Disable Orphanage Adoptions.") if (BYOHRelationshipAdoptableOrphanage.IsRunning()) (BYOHRelationshipAdoptableOrphanage as BYOHRelationshipAdoptableOrphanageSc).DisableOrphanageAdoptions() EndIf ShowOrphanageObjective(3) ;Urchin Orphans delegated to a seperate quest. ;Debug.Trace("Disable Urchin Adoptions.") (BYOHRelationshipAdoptableUrchins as BYOHRelationshipAdoptableUrchinScript).DisableUrchinAdoption()EndFunction ;Orphaned children can request a 'transfer' to the Orphanage side of the system.;Transfers occur only after DB01 has been completed, either in response to that or when the children are tagged as Orphaned.;Transfer requests are 'approved' if the player is not in the same location, Constance is alive, and fewer than 7 children have been transfered.;Children transferred to the Orphanage fall under the jurisdiction of the Orphanage system and work like Orphanage Orphans as long as Constance is alive.Function RequestOrphanageTransfer(Actor child) ;If the Orphanage quest isn't running, we need to start it now. if (!BYOHRelationshipAdoptableOrphanage.IsRunning()) BYOHRelationshipAdoptableOrphanage.SetStage(0) EndIf if (Game.GetPlayer().GetCurrentLocation() != child.GetCurrentLocation() && \ (BYOHRelationshipAdoptableOrphanage as BYOHRelationshipAdoptableOrphanageSc).AcceptingTransfers(child)) Debug.Trace("Transferring " + child + " to the Orphanage.") ;Stop WIKill05 (Run Home & Mourn) if (WIKill05.IsRunning()) WIKill05.Stop() EndIf (BYOHRelationshipAdoptableOrphanage as BYOHRelationshipAdoptableOrphanageSc).TransferOrphan(child) Else Debug.Trace("Transfer of " + child + " was rejected.") EndIfEndFunction BYOHRelationshipAdoptableOrphanageSc.psc - added lines are marked as green Scriptname BYOHRelationshipAdoptableOrphanageSc extends Quest Conditional{Quest script for BYOHRelationshipAdoptableOrphanage, which manages adopting children from the Orphanage.} ;This script is responsible for:; - Handling the 'Orphanage Adoption' process, which is largely controlled via Constance's dialogue.; - Handling the 'Orphanage Fallback Adoption' process. After Constance's death and a brief delay, the children in the Orphanage manage their own adoption.; - Transferring newly-orphaned children to the Orphanage, with all that entails. ;----------------------------------------------------------------------------------------------------;Properties & Variables;----------------------ObjectReference property ConstanceMichelRef Auto ;Constance ObjectReference property FrancoisRef Auto ;Standard Orphanage ChildrenObjectReference property RunaRef AutoObjectReference property SamuelRef AutoObjectReference property HroarRef Auto ReferenceAlias property Orphan01 Auto ;Newly-orphaned children transferred to the OrphanageReferenceAlias property Orphan02 AutoReferenceAlias property Orphan03 AutoReferenceAlias property Orphan04 AutoReferenceAlias property Orphan05 AutoReferenceAlias property Orphan06 AutoReferenceAlias property Orphan07 Auto ObjectReference property HonorhallOrphanageExtraBeds_Enable Auto ;When we transfer new orphans to the Orphanage, swap out theseObjectReference property HonorhallOrphanageExtraBeds_Disable Auto ; sets of furniture and idle markers. Location property RiftenHonorhallOrphanageLocation Auto ;Orphanage's location.ObjectReference property BYOHOrphanageMarker Auto ;A marker to move transferred children to. Faction property BYOHRelationshipAdoptableFaction Auto ;Standard Adoptable faction.Faction property BYOHRelationshipAdoptionFaction Auto ;Standard Adoption faction.Faction property FavorJobsBeggarFaction Auto ;Beggar faction (which we need to strip from some newly-orphaned children). int property OrphanageFactionRank Auto ;The current faction rank most of the Orphanage children are in.int property OrphanageHouseLoc Auto ;The current house most of the Orphanage children will be directed to. Quest property BYOHRelationshipAdoptable Auto ;Main Adoptable quest.Quest property DB01 Auto ;Fix 19-10-2014Quest Property BYOHRelationshipAdoption Auto ;----------------------------------------------------------------------------------------------------;Initial Setup;------------- ;On quest start:; - If Constance is killed before the quest runs, enable Fallback Adoptions immediately.; - Force the furniture XMarkers to their default state for safety.Function QuestStarted() if ((ConstanceMichelRef as Actor).IsDead() && DB01.IsCompleted()) EnableOrphanedOrphanageAdoptions() EndIf HonorhallOrphanageExtraBeds_Enable.Disable() HonorhallOrphanageExtraBeds_Disable.Enable()EndFunction ;----------------------------------------------------------------------------------------------------;Orphanage Transfer System;------------------------- ;Are we accepting new orphans at this time? Lots of checks...; Is Constance Alive? Is the player in the Orphanage (which prevents us from warping kids in)? Is DB01 done? Do we have space available?bool Function AcceptingTransfers(Actor child) return (!(ConstanceMichelRef as Actor).IsDead()) && (Game.GetPlayer().GetCurrentLocation() != RiftenHonorhallOrphanageLocation) && \ (DB01.IsCompleted()) && (Orphan07.GetActorRef() == None) && (Orphan01.GetActorRef() != child) && \ (Orphan02.GetActorRef() != child) && (Orphan03.GetActorRef() != child) && (Orphan04.GetActorRef() != child) && \ (Orphan05.GetActorRef() != child) && (Orphan06.GetActorRef() != child) && (Orphan07.GetActorRef() != child)EndFunction ;Transfer an orphaned child into the Orphanage.Function TransferOrphan(Actor child) ;Push the orphan into one of the Orphanage aliases. if (Orphan01.GetActorRef() == None) Orphan01.ForceRefTo(child) ElseIf (Orphan02.GetActorRef() == None) Orphan02.ForceRefTo(child) ElseIf (Orphan03.GetActorRef() == None) Orphan03.ForceRefTo(child) ElseIf (Orphan04.GetActorRef() == None) Orphan04.ForceRefTo(child) ElseIf (Orphan05.GetActorRef() == None) Orphan05.ForceRefTo(child) ElseIf (Orphan06.GetActorRef() == None) Orphan06.ForceRefTo(child) Else Orphan07.ForceRefTo(child) EndIf ;Remove the child from the Beggar faction if necessary. ;Children begging in the Orphanage just sounded strange. child.RemoveFromFaction(FavorJobsBeggarFaction) ;Remove the child from their previous Crime Faction, if any. child.SetCrimeFaction(None) ;Move the orphan into the orphanage and EVP them. child.MoveTo(BYOHOrphanageMarker) child.EvaluatePackage() ;Set the child's faction rank to reflect the current situation in the Orphanage. If (OrphanageFactionRank == 10) ;Orphanage state is 'Allow Orphanage Adoptions', so set the corresponding rank. child.SetFactionRank(BYOHRelationshipAdoptableFaction, 12) ElseIf (OrphanageFactionRank == 11) ;Orphanage state is 'Allow Fallback Adoptions', so set the corresponding rank. child.SetFactionRank(BYOHRelationshipAdoptableFaction, 13) Else ;Orphanage state is 'Disable Adoptions', so set the corresponding rank. child.SetFactionRank(BYOHRelationshipAdoptableFaction, 14) EndIf ;Set the child's Variable07 to match that of the other children (this represents the location the player told Constance the child will live). child.SetAV("Variable07", OrphanageHouseLoc) ;Swap the furniture and idle marker states. HonorhallOrphanageExtraBeds_Enable.Enable() HonorhallOrphanageExtraBeds_Disable.Disable()EndFunction ;----------------------------------------------------------------------------------------------------;Orphanage Adoptions via Cosntance;--------------------------------- ;Standard Orphanage Adoption is enabled when the player completes Constance's questionnaire.Function EnableOrphanageAdoptions() ;Debug.Trace("Enabling Orphanage Orphan Adoption") ;Complete the 'Adopt from the Orphanage' objective, if it was running. (BYOHRelationshipAdoptable as BYOHRelationshipAdoptableScript).ShowOrphanageObjective(2) ;Update Faction Rank variable. OrphanageFactionRank = 10 ;Update Faction Ranks for the standard children. if (!(FrancoisRef as Actor).IsInFaction(BYOHRelationshipAdoptionFaction)) (FrancoisRef as Actor).SetFactionRank(BYOHRelationshipAdoptableFaction, 10) EndIf if (!(RunaRef as Actor).IsInFaction(BYOHRelationshipAdoptionFaction)) (RunaRef as Actor).SetFactionRank(BYOHRelationshipAdoptableFaction, 10) EndIf if (!(SamuelRef as Actor).IsInFaction(BYOHRelationshipAdoptionFaction)) (SamuelRef as Actor).SetFactionRank(BYOHRelationshipAdoptableFaction, 10) EndIf if (!(HroarRef as Actor).IsInFaction(BYOHRelationshipAdoptionFaction)) (HroarRef as Actor).SetFactionRank(BYOHRelationshipAdoptableFaction, 10) EndIf ;Update Faction Ranks for any additional orphans that are present. if (Orphan01.GetActorRef() != None && !Orphan01.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan01.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 12) EndIf if (Orphan02.GetActorRef() != None && !Orphan02.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan02.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 12) EndIf if (Orphan03.GetActorRef() != None && !Orphan03.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan03.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 12) EndIf if (Orphan04.GetActorRef() != None && !Orphan04.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan04.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 12) EndIf if (Orphan05.GetActorRef() != None && !Orphan05.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan05.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 12) EndIf if (Orphan06.GetActorRef() != None && !Orphan06.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan06.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 12) EndIf if (Orphan07.GetActorRef() != None && !Orphan07.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan07.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 12) EndIfEndFunction ;Standard Orphanage Orphan adoption is disabled once the player has adopted two children, or briefly after Constance is killed (see below).Function DisableOrphanageAdoptions() ;Debug.Trace("Disabling Orphanage Orphan Adoption") ;Update quest stage (used as a dialogue variable). Self.SetStage(255) ;Update Faction Rank variable. OrphanageFactionRank = -1 ;Update Faction Ranks for the standard children. if (!(FrancoisRef as Actor).IsInFaction(BYOHRelationshipAdoptionFaction)) (FrancoisRef as Actor).SetFactionRank(BYOHRelationshipAdoptableFaction, -1) EndIf if (!(RunaRef as Actor).IsInFaction(BYOHRelationshipAdoptionFaction)) (RunaRef as Actor).SetFactionRank(BYOHRelationshipAdoptableFaction, -1) EndIf if (!(SamuelRef as Actor).IsInFaction(BYOHRelationshipAdoptionFaction)) (SamuelRef as Actor).SetFactionRank(BYOHRelationshipAdoptableFaction, -1) EndIf if (!(HroarRef as Actor).IsInFaction(BYOHRelationshipAdoptionFaction)) (HroarRef as Actor).SetFactionRank(BYOHRelationshipAdoptableFaction, -1) EndIf ;Update Faction Ranks for any additional orphans. if (Orphan01.GetActorRef() != None && !Orphan01.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan01.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 14) EndIf if (Orphan02.GetActorRef() != None && !Orphan02.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan02.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 14) EndIf if (Orphan03.GetActorRef() != None && !Orphan03.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan03.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 14) EndIf if (Orphan04.GetActorRef() != None && !Orphan04.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan04.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 14) EndIf if (Orphan05.GetActorRef() != None && !Orphan05.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan05.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 14) EndIf if (Orphan06.GetActorRef() != None && !Orphan06.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan06.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 14) EndIf if (Orphan07.GetActorRef() != None && !Orphan07.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan07.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 14) EndIfEndFunction ;Given a house location, store it off onto the children in Variable07, where the Adoptable quest expects it per the usual dialogue.Function StoreHouseLocation(int loc) ;Update House Loc variable. OrphanageHouseLoc = loc ;Update House Locs for the standard children. if (!(FrancoisRef as Actor).IsInFaction(BYOHRelationshipAdoptionFaction)) (FrancoisRef as Actor).SetAV("Variable07", loc) EndIf if (!(RunaRef as Actor).IsInFaction(BYOHRelationshipAdoptionFaction)) (RunaRef as Actor).SetAV("Variable07", loc) EndIf if (!(SamuelRef as Actor).IsInFaction(BYOHRelationshipAdoptionFaction)) (SamuelRef as Actor).SetAV("Variable07", loc) EndIf if (!(HroarRef as Actor).IsInFaction(BYOHRelationshipAdoptionFaction)) (HroarRef as Actor).SetAV("Variable07", loc) EndIf ;Update House Locs for any additional orphans. if (Orphan01.GetActorRef() != None && !Orphan01.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan01.GetActorRef().SetAV("Variable07", loc) EndIf if (Orphan02.GetActorRef() != None && !Orphan02.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan02.GetActorRef().SetAV("Variable07", loc) EndIf if (Orphan03.GetActorRef() != None && !Orphan03.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan03.GetActorRef().SetAV("Variable07", loc) EndIf if (Orphan04.GetActorRef() != None && !Orphan04.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan04.GetActorRef().SetAV("Variable07", loc) EndIf if (Orphan05.GetActorRef() != None && !Orphan05.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan05.GetActorRef().SetAV("Variable07", loc) EndIf if (Orphan06.GetActorRef() != None && !Orphan06.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan06.GetActorRef().SetAV("Variable07", loc) EndIf if (Orphan07.GetActorRef() != None && !Orphan07.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan07.GetActorRef().SetAV("Variable07", loc) EndIfEndFunction ;Update the quest stage if the player adopts a child from the Orphanage.Function CheckAdoptOrphanageChild(ObjectReference child, int childNum) if (child == FrancoisRef || child == RunaRef || child == SamuelRef || child == HroarRef || \ child == Orphan01.GetActorRef() || child == Orphan02.GetActorRef() || \ child == Orphan03.GetActorRef() || child == Orphan04.GetActorRef() || \ child == Orphan05.GetActorRef() || child == Orphan06.GetActorRef() || \ child == Orphan07.GetActorRef()) if (childNum == 1) Self.SetStage(200) Else Self.SetStage(255) EndIf EndIfEndFunction ; Fix 19-10-2014 - custom function to remove transferred Orphan01-07 from Orphanage by using aimed spell (unorphanchild)Function UnOrphanChild(Actor child) if (child == Orphan01.GetActorRef()) Orphan01.Clear() ElseIf (child == Orphan02.GetActorRef()) Orphan02.Clear() ElseIf (child == Orphan03.GetActorRef()) Orphan03.Clear() ElseIf (child == Orphan04.GetActorRef()) Orphan04.Clear() ElseIf (child == Orphan05.GetActorRef()) Orphan05.Clear() ElseIf (child == Orphan06.GetActorRef()) Orphan06.Clear() ElseIf (child == Orphan07.GetActorRef()) Orphan07.Clear() EndIf child.RemoveFromFaction(BYOHRelationshipAdoptionFaction) if (child.IsInFaction(BYOHRelationshipAdoptionFaction)) child.SetFactionRank(BYOHRelationshipAdoptableFaction, 25) else child.SetFactionRank(BYOHRelationshipAdoptableFaction, 0) EndIf EndFunction ;----------------------------------------------------------------------------------------------------;Handling for Constance's Death;------------------------------ ;If Constance is killed, temporarily turn off any adoptions and wait 24h before we decide what to do.Function ConstanceKilled() ;Debug.Trace("Constance Killed") ;Disable adoptions here. DisableOrphanageAdoptions() ;Disable the 'Adopt from the Orphanage' objective. (BYOHRelationshipAdoptable as BYOHRelationshipAdoptableScript).ShowOrphanageObjective(2) ;Wait at least 24h before putting the kids up for adoption again. RegisterForSingleUpdateGameTime(24)EndFunction Event OnUpdateGameTime() ;Debug.Trace("Orphanage timer check. Can we enable adoptions?") if (BYOHRelationshipAdoptable.GetStage() == 0) ;Are we allowing any more adoptions? if (DB01.IsCompleted()) ;Is Grelod dead, too? ;Debug.Trace("Reenabling Orphanage Adoptions.") EnableOrphanedOrphanageAdoptions() Else ;Debug.Trace("DB01 not yet complete. Waiting 24h.") RegisterForSingleUpdateGameTime(24) EndIf EndIfEndEvent ;After Constance's death, get all of the Orphanage Orphans back into a state where they can be adopted.Function EnableOrphanedOrphanageAdoptions() ;Debug.Trace("Orphanage kids returned to the standard adoption system.") ;Update Faction Rank variable. OrphanageFactionRank = -1 ;Update Faction and Relationship Ranks for the standard children. if (!(FrancoisRef as Actor).IsInFaction(BYOHRelationshipAdoptableFaction)) (FrancoisRef as Actor).SetFactionRank(BYOHRelationshipAdoptableFaction, 11) (FrancoisRef as Actor).SetRelationshipRank(Game.GetPlayer(), 0) EndIf if (!(RunaRef as Actor).IsInFaction(BYOHRelationshipAdoptableFaction)) (RunaRef as Actor).SetFactionRank(BYOHRelationshipAdoptableFaction, 11) (RunaRef as Actor).SetRelationshipRank(Game.GetPlayer(), 0) EndIf if (!(SamuelRef as Actor).IsInFaction(BYOHRelationshipAdoptableFaction)) (SamuelRef as Actor).SetFactionRank(BYOHRelationshipAdoptableFaction, 11) (SamuelRef as Actor).SetRelationshipRank(Game.GetPlayer(), 0) EndIf if (!(HroarRef as Actor).IsInFaction(BYOHRelationshipAdoptableFaction)) (HroarRef as Actor).SetFactionRank(BYOHRelationshipAdoptableFaction, 11) (HroarRef as Actor).SetRelationshipRank(Game.GetPlayer(), 0) EndIf ;Update Faction and Relationship Ranks for any additional orphans. if (Orphan01.GetActorRef() != None && !Orphan01.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan01.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 13) Orphan01.GetActorRef().SetRelationshipRank(Game.GetPlayer(), 0) EndIf if (Orphan02.GetActorRef() != None && !Orphan02.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan02.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 13) Orphan02.GetActorRef().SetRelationshipRank(Game.GetPlayer(), 0) EndIf if (Orphan03.GetActorRef() != None && !Orphan03.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan03.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 13) Orphan03.GetActorRef().SetRelationshipRank(Game.GetPlayer(), 0) EndIf if (Orphan04.GetActorRef() != None && !Orphan04.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan04.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 13) Orphan04.GetActorRef().SetRelationshipRank(Game.GetPlayer(), 0) EndIf if (Orphan05.GetActorRef() != None && !Orphan05.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan05.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 13) Orphan05.GetActorRef().SetRelationshipRank(Game.GetPlayer(), 0) EndIf if (Orphan06.GetActorRef() != None && !Orphan06.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan06.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 13) Orphan06.GetActorRef().SetRelationshipRank(Game.GetPlayer(), 0) EndIf if (Orphan07.GetActorRef() != None && !Orphan07.GetActorRef().IsInFaction(BYOHRelationshipAdoptionFaction)) Orphan07.GetActorRef().SetFactionRank(BYOHRelationshipAdoptableFaction, 13) Orphan07.GetActorRef().SetRelationshipRank(Game.GetPlayer(), 0) EndIfEndFunction UnorphanChild.psc - New added script for spell (need to be finished in CK) Scriptname unorphanchild extends activemagiceffect Quest property BYOHRelationshipAdoptableOrphanage Auto Event OnEffectStart(actor Target, actor Caster) (BYOHRelationshipAdoptableOrphanage as BYOHRelationshipAdoptableOrphanageSc).UnOrphanChild(Target) Debug.Notification("Trying to unorphan the target...")EndEvent Edited October 19, 2014 by cubedj21 Link to comment Share on other sites More sharing options...
foamyesque Posted October 20, 2014 Share Posted October 20, 2014 Awesome, thanks. I'll try it out and see if it works. I know for a fact that their parents are still alive and I'm damn certain I've never needed to resurrect Saffir. :D Let you know how it goes! :) Link to comment Share on other sites More sharing options...
cubedj21 Posted October 22, 2014 Share Posted October 22, 2014 Awesome, thanks. I'll try it out and see if it works. I know for a fact that their parents are still alive and I'm damn certain I've never needed to resurrect Saffir. :D Let you know how it goes! :smile: Her parents can be still alive, but the linked references of responsible NPCs could be for some reason (civil war, vampire attacks etc.) broken or missing... so rather check them anyway... Let me know if you'll be able to fix that by yourself (edit those scripts and make that "unorphan" spell) or if I rather should prepare these fixes as a mod... ;)) Link to comment Share on other sites More sharing options...
Recommended Posts