Thanks for the response!
In your documentation, it says that steam_net_packet_send returns whether the packet was sent successfully or not. So could I just convert your packet_send_all script into a loop that sends the packet until it returns true (or until it fails X number of times)?
I also noticed in your documentation that steam_net_packet_type_unreliable parameter says it "will not be resent automatically". Does that imply that the other three types are already re-sending automatically until they return true?
I am calling steam_net_update in a step event which doesn't have any exits or breaks, so it's definitely getting called. The only way I'm detecting timeouts is through your chat system (I'm still very new at networking stuff).