Rooker75 Posted June 1, 2014 Share Posted June 1, 2014 Is there a way to issue the companion wheel's "back up" command in a script? I want to automate it during combat, but the best I've been able to come up with is "pushactoraway". That just ragdolls them. Link to comment Share on other sites More sharing options...
jazzisparis Posted June 2, 2014 Share Posted June 2, 2014 (edited) "Back Up", "Use Stimpak" and "Talk To" do not trigger any dialogue response (unlike the rest of the CW options), and appear to be hardcoded. This is something you can try: Create a new AI package and use the following settings: http://imageshack.com/a/img842/5784/s9uv.pnghttp://imageshack.com/a/img835/9062/ztr2.png As for the scripting side, you will have to give more details - is this intended for a specific companion, or is to apply on all current companions? If the former, then you can add the following code to the companion's script: begin GameMode if GetPlayerTeammate == 0 elseif Waiting elseif player.IsInCombat == 0 elseif GetIsCurrentPackage KeepAwayInCombat if GetDistance player > 512 RemoveScriptPackage endif elseif GetDistance player < 256 AddScriptPackage KeepAwayInCombat endif end Edited June 2, 2014 by jazzisparis Link to comment Share on other sites More sharing options...
Rooker75 Posted June 2, 2014 Author Share Posted June 2, 2014 I'm trying to get all currently-hired companions to move out of the friggin way during combat. I'm sick of looking down a scope and seeing a companion's back or Boone's rifle. I tried using a package like that once. Testing with Veronica, she'd run off, then run right back, then run off again. I swear I think they've all been hard-coded to place themselves between your gun barrel and whatever it's pointed at. I don't remember which options I ticked last time. I'll try what you have there and see if it works better. What I've got right now is an apparel item that runs a quest while it's equipped. The quest script checks every .5 secs to see if the player is in combat and ragdolls/pushes away any companion that comes within 150. It does the job, but it's a goofy way to do it. It also tossed Veronica right off a cliff one time, which was pretty funny, but not quite what I wanted. Link to comment Share on other sites More sharing options...
jazzisparis Posted June 2, 2014 Share Posted June 2, 2014 Flee Not Combat is the only way I can think of to make an actor move away from something, without specifying where to move to. If you want the script to run on all companions, I would suggest using a script attached to a quest. Tick Start Game Enabled, set the Processing Delay to 1.0. For the script, you can use the following code (requires NVSE): ref rActor begin GameMode if player.IsInCombat set rActor to GetFirstRef 200 1 0 while IsFormValid rActor if rActor.GetPlayerTeammate == 0 elseif rActor.GetIsCurrentPackage KeepAwayInCombat if rActor.GetDistance player > 512 rActor.RemoveScriptPackage endif elseif rActor.GetDistance player < 256 rActor.AddScriptPackage KeepAwayInCombat endif set rActor to TeddyBear01 set rActor to GetNextRef loop endif end Link to comment Share on other sites More sharing options...
Recommended Posts