Agreed this is akin to
HTTP 200
{"error": "Not found"} HTTP 200
{"error": "Not found"}If your choice is between playing whack-a-mole with all parts of the system which might call out, or just issuing a 404 (after all, if there's no Internet, you're not going to find a web page on it), that's a reasonable way to solve the problem.
How is a 404 equivalent to not throwing an error? 404 would be like throwing the error and then not handling the 404.
And the equivalent of hanging and crashing in the xbox example would be hanging and crashing.