SOLVED: but read if you want a cautionary tale...
I have a script with a reference set by @export var hitpoints_bar.
The correct node is selected in the inspector.
_ready(): runs and I do this:
if hitpoints_bar:
hitpoints_bar.modulate.a = 0.0 if $Hitpoints.value >= $Hitpoints.total_maximum_value else 1.0
That works just fine, except for the main instance that uses this setup. Other instances work fine.
However, any attempt to use that reference after that results in an error for attempting to call something on a null reference, and the debug shows the reference is gone...
Checking remote when running the game shows that the node still exists and that the reference to it still exists (in third image)...so I'm at a loss for what is breaking here. The only thing I'm doing here that's slightly different than any other time is this script is an extension of another script, because I have a set of component nodes that extend the base "Component" class I wrote for them with their own scripts to do things on my entities. However, they don't lose any other references this way... Just this one so far that I know of. Can it be extending that way that's causing this? It's references in the script extension, not the class being extended that are being (lost? misplaced?...but the remote inspector shows them existing just fine...). I have no clue what is happening at this point.