I really like the crash error in GameMaker, where if your code has an error while running the executable, it will throw an error message with the error. Players can then copy paste this error and send it over to the devs.

Correct me if I'm wrong but it seems like Godot doesn't do that. The error log goes into the user's AppData > Roaming, which isn't very user friendly. When my exported game crashes, the game simply freezes. This happens a lot when renaming files and moving the around. When this happens, users will only see a freeze and will not know whether there is an error with the game or with their computer. It also just makes it harder to fix errors since the reports of those errors would be low.

I wish that, at the very least, the error is thrown onto the screen. It saves so much hassle for the developer and the user and makes it easy to navigate the error and fix it.

Is there something that I'm missing or is this not possible in Godot? Thanks in advance!

    Awfy it sounds like you are not handling errors in code like you should.
    Errors are raised using the special keywords like raise (assert in gdscript) but this is not meant for a final version.
    Errors that could popup in a final version are usually known to the developer, like an error opening a file or a reference not set, or division by zero.
    For these you must always put a condition before executing the code. Then, you can else and raise a warning. This is usually a simple print, or error log. But in godot you can also create a popup warning window (check the node).

    if myref:
         #code
    else:
         print("error myref not set")

      Jesusemora the print() function will print strings to standard out. OP is asking for a popup message right at the time of error. Print statement will only print to "console" and user wont see it unless you run console next to the game and when it crashes, if youre lucky for game not close, you go look at console.

      One way that i havent tested is to maybe write some sort of error handler, that will open up a window and show the user the error. You could write a simple app that you package alongside the game for that and whenever there is a blocking error that occurs in main game, you launch the app, specify error parameters in the launch args and it will display the error to client.

      This could be usefull if the error is a blocking one or immediately crashes the game. I ahve experienced few of these myself, and debugging these is hard because you dont know where in the code it crashed.

      Look at
      For executing external application
      https://docs.godotengine.org/en/stable/classes/class_os.html#class-os-method-execute
      For reading cmd arguments
      https://docs.godotengine.org/en/stable/classes/class_os.html#class-os-method-get-cmdline-args