I wouldn't use resource for this. It sounds like it belongs to a specific scene/level. So I would just write a class that extends node, and has all the variables exported. Drop it into the level, and set the objective with an exported node reference. Otherwise, yeah you would have to use either a node name, or node path. Both of which are prone to mistakes, and breaking from changes. Maybe groups? Would avoid some possible mistakes.
I can do that. Is it best practice to use Nodes for things that don't end up using position, \_ready, \_draw, or things like that? I guess I just assumed that would be wasteful.