e.g. some objects will try to locate a relative file in any of the search-paths you specified, whereas other's will only try to to find it relative to "their" path (whatever that is [*])
...
[*] i've forgotten but... it's either relative to the path Pd was started in, or relative to the path the main patch lives in, or
And this leads to a subtle gotchya that still catches me out;
The latter path (relative to where the patch lives) only makes sense after the patch has been saved. You can bang your head against a wall looking for errors in patch that _should_ work, and then notice that the canvas name is still "Untitled.pd"
IIRC the console report "file or directory not found" is unhelpful, because it does not distinguish the lack of a relative base path from an actual error in the file system or name. Something like;
Current working directory not set
would be really helpful if that can be trapped earlier.
I grumbled about this a long time ago, and still think it's a worthy cause to debate and establish a coherent "paths policy" within Pd (naming and defaults _as_well_as_ search order (which has been aired before))
cheers, Andy