I tried it in all 3 modes and with one player. The same error triggers every time.
My current fix is to block simulated proxies from attempting. They do not get controllers, so it would fail anyway.
Also, I moved it to the Controller class… where it should be.
Long term you will be better suited to flow control actions anyway. My character class does this by defining the Proxy Type on begin play then executing specific functions based on the defined proxy.
Just as a heads up. On Listen Server the “Host client” is the Server. Keep that in mind as you code client abilities and actions. That player will be running dual roles.