Robbie922004 Posted February 22, 2017 Share Posted February 22, 2017 Hey everyone. Been looking into a mod that lets you spar with your followers. Currently in proof-of-concept phase, except I've hit a roadblock. My script only works before you've recruited a follower. Once you've recruited them once, it doesn't work, even if they're dismissed. Right now I'm testing with Jenassa specifically rather than using the Follower Alias just to make sure my scripts are working. Function Duel() HirelingJenassa.GetActorReference().EvaluatePackage() HirelingJenassa.GetActorReference().AddToFaction(DuelFaction) HirlingJenassa.GetActorRef().StartCombat(Game.GetPlayer()) EndFunction ^It works... but only before they've been a follower. Once I've recruited them, even if I dismiss them, it doesn't work. I've also tried dismissing them via script before firing it, and it still doesn't work. It DOES work with random NPCs who are NOT followers. Event OnEnterBleedout() HirelingJanassa.GetActorRef().StopCombat() HirelingJanassa.GetActorReference().RemoveFromFaction(DuelFaction) HirelingJanassa.GetActorReference().ResetHealthAndLimbs() HirelingJanassa.GetActorReference().EvaluatePackage() EndEvent ^Stop script. I picked up this method from Sparring Mod (which has open permissions) and rewrote it. I'm not certain EvaluatePackage() is necessary but it was in so I left it in just to test. I've also tried adding RemoveFromFaction() functions for the current follower faction, and that doesn't work ether. What can I do to fix this? Could it be a relationship thing? A faction thing? Are followers hard-coded to not become hostile to the player unless attacked? Link to comment Share on other sites More sharing options...
IronDusk33 Posted February 22, 2017 Share Posted February 22, 2017 I have very little knowledge of factions and AI stuff, but you could try using a fury spell. Link to comment Share on other sites More sharing options...
Masterofnet Posted February 22, 2017 Share Posted February 22, 2017 (edited) It is likely you need to set the relationship rank of the ex-follower with the player lower. Also you may not need to create your own faction, there may be other existing factions that will work or you may not need a faction at all. https://www.creationkit.com/index.php?title=SetRelationshipRank_-_Actor Also unless your follower is essential when you are dueling them it is very likely OnEnterBleedout() will not fire. As a mater of fact I have never been able to get it to fire unless the Actor is Essential or Protected (and not fighting the player) Function Duel() Actor PlayerRef = Game.GetPlayer() Actor Hireling = HirelingJenassa.GetReference() As Actor Hireling.EvaluatePackage() Hireling.SetRelationshipRank(PlayerRef, -1) Hireling.StartCombat(PlayerRef) EndFunction Event OnEnterBleedout() Actor Hireling = HirelingJenassa.GetReference() As Actor Hireling.SetRelationshipRank(Game.GetPlayer(), 1) Hireling.StopCombat() Hireling.ResetHealthAndLimbs() Hireling.EvaluatePackage() EndEvent Edited February 22, 2017 by Masterofnet Link to comment Share on other sites More sharing options...
Robbie922004 Posted February 22, 2017 Author Share Posted February 22, 2017 It is likely you need to set the relationship rank of the ex-follower with the player lower. Also you may not need to create your own faction, there may be other existing factions that will work or you may not need a faction at all. https://www.creationkit.com/index.php?title=SetRelationshipRank_-_Actor https://www.creationkit.com/index.php?title=StartCombat_-_ActorSparring mod uses the companions training faction (when you need to duel Vilkas) so that's currently what I have the property assigned to, and it works. I'll try the relationship, but StarCombat() and putting them in a hostile faction to the player, to my knowledge, is supposed to be enough on its own, which is why I'm stumped. Link to comment Share on other sites More sharing options...
Recommended Posts