-
Notifications
You must be signed in to change notification settings - Fork 31
Description
Game crashes with
ERROR: Invalid call. Nonexistent function 'get_packet_script' in base 'Godot.MultiplayerPeerExtension'.
at: void Godot.NativeInterop.ExceptionUtils.DebugCheckCallError(Godot.NativeInterop.godot_string_name, nint, Godot.NativeInterop.godot_variant**, int, Godot.NativeInterop.godot_variant_call_error) (/root/godot/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/ExceptionUtils.cs:147)
ERROR: Error getting packet! 2
at: (modules/multiplayer/scene_multiplayer.cpp:92)
ERROR: Invalid call. Nonexistent function 'get_packet_script' in base 'Godot.MultiplayerPeerExtension'.
at: void Godot.NativeInterop.ExceptionUtils.DebugCheckCallError(Godot.NativeInterop.godot_string_name, nint, Godot.NativeInterop.godot_variant**, int, Godot.NativeInterop.godot_variant_call_error) (/root/godot/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/ExceptionUtils.cs:147)
ERROR: Error getting packet! 2
at: (modules/multiplayer/scene_multiplayer.cpp:92)
ERROR: FATAL: Condition "!exists" is true.
at: godot::HashMap<unsigned __int64,class godot::Ref<class SteamConnection>,struct godot::HashMapHasherDefault,struct godot::HashMapComparatorDefault<unsigned __int64>,class godot::DefaultTypedAllocator<struct godot::HashMapElement<unsigned __int64,class godot::Ref<class SteamConnection> > > >::operator [] (godot-cpp\include\godot_cpp/templates/hash_map.hpp:502)
but only after creating a host and having a user join twice.
I am using the C# wrapper (modified slightly to match the latest 0.1.1 create_host and create_client functions)
I am on Windows.
I use GodotSteam to create the lobby and when I receive the OnLobbyCreate event I create and set the peer. I have no issues doing that and the engine does not complain.
Steam does show that I am in a lobby that is joinable.
When connecting with the client nothing happens. Steam properly registers that the client is joining and is calling the code that calls create_client.
if I have the client then close the game and re-join the lobby the engine then crashes with the above error.
At no point is any of the peer or server connection/disconnection signals on MultiplayerApi ever called. in gd or C#.