Welcome to the AFK Mods bug tracker. In order to report an issue, you need to have a VALIDATED account to post one. Once you have followed the link the registration email sent you, please select a project from the drop down menu below. Select “Open New Issue” and fill out the form with as many details as possible.

Please also consider sending your bug report to Bethesda if you are reporting on an issue with Skyrim Special Edition, Fallout 4, or Starfield. Doing so will help everyone on all platforms.

Issue Data
Status: New
Issue Type: Bug Report
Project: Unofficial Fallout 4 Patch
Component: Fallout 4: Vanilla
Category: Papyrus
Assigned To: Nobody
Platform: All
Severity: Low
Votes: 0
Watching: N/A
Opened By Equo on Sep 22, 2024 6:43 am

Issue #34375: Downed companions can get up on their own in Survival in a glitched state

 
In Survival, when your companion goes down in combat, there's a chance they'll get up when combat ends, which shouldn't happen. When they do so, they become unresponsive to "follow" commands, and if you walk too far away from the spot where they were originally downed, they'll leave your party as if you left them behind. Since they aren't considered to be downed by the engine, you can't stimpak them, so the only way to correct the issue is to down them yourself and then stimpak them. If I had to guess, there's some kind of bug in HC manager's script that makes the downed state detection unreliable. I also noticed that the "heal your companion" objective might fail to appear entirely.

Comments

3 comment(s)
Equo said:
 
Upon closer inspection, it looks like this might be caused by companions regenerating their health when they shouldn't be. Still not sure what exactly triggers this, but it looks like dismissing and recruiting them temporarily resolves the bug. I have to wonder if something is causing the downed mechanic to break down over time.

Equo said:
 
Did some poking around in HC's logs with trace enabled, and I found something rather strange. Here's a log fragment for Dogmeat's bleedout after he's dismissed and then recruited (bleedout works as expected):
Spoiler:
[09/23/2024 - 10:53:36PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: ReferenceAlias.OnEnterBleedout() akSender: [Hardcore:HC_HealCompanionObjectAliasScript <alias DogmeatCompanion on quest HC_Manager (0000080E)>]
[09/23/2024 - 10:53:36PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() ActorToHeal: [dogmeatactorscript < (0001D162)>]
[09/23/2024 - 10:53:36PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() playerCanStimpak: [Keyword <playerCanStimpak (000AD52A)>]
[09/23/2024 - 10:53:36PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() TRUE -- ActorToHeal: [dogmeatactorscript < (0001D162)>]
[09/23/2024 - 10:53:36PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: TryTutorial()   - Tutorial: CompanionDownedTutorial,       TimesDisplayed: 1
[09/23/2024 - 10:53:36PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]:   TryTutorial() - Tutorial: CompanionDownedTutorial,       TimesToDisplay: 1
[09/23/2024 - 10:53:36PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]:   TryTutorial() - Hide Tutorial: CompanionDownedTutorial, TimesDisplayed: 1, DaysUntilNextDisplay: 0.000000
[09/23/2024 - 10:53:36PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() ActorToHeal: [dogmeatactorscript < (0001D162)>]
[09/23/2024 - 10:53:36PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() playerCanStimpak: [Keyword <playerCanStimpak (000AD52A)>]
[09/23/2024 - 10:53:36PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() TRUE -- ActorToHeal: [dogmeatactorscript < (0001D162)>]
[09/23/2024 - 10:53:36PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() ActorToHeal: [dogmeatactorscript < (0001D162)>]
[09/23/2024 - 10:53:36PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() playerCanStimpak: [Keyword <playerCanStimpak (000AD52A)>]
[09/23/2024 - 10:53:36PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() TRUE -- ActorToHeal: [dogmeatactorscript < (0001D162)>]

... and here's the same fragment for when he hasn't been dismissed a single time (bleedout is completely broken):
Spoiler:
[09/23/2024 - 10:51:49PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: ReferenceAlias.OnEnterBleedout() akSender: [Hardcore:HC_HealCompanionObjectAliasScript <alias DogmeatCompanion on quest HC_Manager (0000080E)>]
[09/23/2024 - 10:51:49PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() ActorToHeal: [workshopnpcscript < (0001D162)>]
[09/23/2024 - 10:51:49PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() playerCanStimpak: [Keyword <playerCanStimpak (000AD52A)>]
[09/23/2024 - 10:51:49PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() TRUE -- ActorToHeal: [workshopnpcscript < (0001D162)>]
[09/23/2024 - 10:51:49PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: TryTutorial()   - Tutorial: CompanionDownedTutorial,       TimesDisplayed: 1
[09/23/2024 - 10:51:49PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]:   TryTutorial() - Tutorial: CompanionDownedTutorial,       TimesToDisplay: 1
[09/23/2024 - 10:51:49PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]:   TryTutorial() - Hide Tutorial: CompanionDownedTutorial, TimesDisplayed: 1, DaysUntilNextDisplay: 0.000000
[09/23/2024 - 10:51:49PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() ActorToHeal: [workshopnpcscript < (0001D162)>]
[09/23/2024 - 10:51:49PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() playerCanStimpak: [Keyword <playerCanStimpak (000AD52A)>]
[09/23/2024 - 10:51:49PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() TRUE -- ActorToHeal: [workshopnpcscript < (0001D162)>]
[09/23/2024 - 10:51:49PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() ActorToHeal: [workshopnpcscript < (0001D162)>]
[09/23/2024 - 10:51:49PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() playerCanStimpak: [Keyword <playerCanStimpak (000AD52A)>]
[09/23/2024 - 10:51:49PM] [hardcore:hc_managerscript <HC_Manager (0000080E)>]: PlayerCanHeal() TRUE -- ActorToHeal: [workshopnpcscript < (0001D162)>]

While this doesn't explain the "why", it might help explain the "how". For whatever reason, ActorToHeal can become completely messed up and pull up a generic workshop NPC actor script instead of the relevant one. I don't know the inner workings of the followers script, and I'm not super familiar with the HC manager, either, but I hope someone with more expertise might find this useful.

Arthmoor said:
 
It reporting ActorToHeal as either the workshopnpcscript or dogmeatactorscript doesn't really matter. He has both of those on his base NPC record all the time and that's just a manifestation of how Papyrus reports on things with scripts attached to them.

The log output looks identical to me other than the difference in which cast it reported. In both cases it ultimately returns TRUE, saying the player can heal him. Why it works differently just because you didn't dismiss him first is the issue. It's entirely possible this is going to be some kind of engine level nonsense with survival mode.

Showing Comments 1 - 3 of 3