paulpach / ummorpg_mysql

Mysql driver for uMMORPG
MIT License
40 stars 18 forks source link

KeyNotFoundException: The given key was not present in the dictionary. #11

Closed Underdigital closed 6 years ago

Underdigital commented 6 years ago

When u use the script, in linux Headless mode you keep getting this error? Client is stuck at Handshaking, with sqllite it works fine?

Is there any solution to this? Ussing 1.137 Mysql is connected

Mono path[0] = 'C:/Users/Jordy/Desktop/server/MMORPG_Data/Managed' Mono config path = 'C:/Users/Jordy/Desktop/server/Mono/etc' PlayerConnection initialized from C:/Users/Jordy/Desktop/server/MMORPG_Data (debug = 0) PlayerConnection initialized network socket : 0.0.0.0 55057 Multi-casting "[IP] 192.168.0.114 [Port] 55057 [Flags] 3 [Guid] 3482055687 [EditorId] 2553047377 [Version] 1048832 [Id] WindowsPlayer(DESKTOP-QMOLVR4) [Debug] 1 [PackageName] WindowsPlayer" to [225.0.0.222:54997]... Waiting for connection from host on [0.0.0.0:55057]... PlayerConnection accepted from [192.168.0.114] handle:0x3f8 Started listening to [0.0.0.0:55057] Using monoOptions --debugger-agent=transport=dt_socket,embedding=1,defer=y,address=0.0.0.0:56687 PlayerConnection already initialized - listening to [0.0.0.0:55057] Initialize engine version: 2018.2.8f1 (ae1180820377) GfxDevice: creating device client; threaded=1 Direct3D: Version: Direct3D 11.0 [level 11.0] Renderer: NVIDIA Quadro K620 (ID=0x13bb) Vendor:
VRAM: 2007 MB Driver: 24.21.13.9907 Begin MonoManager ReloadAssembly

  • Completed reload, in 0.489 seconds Initializing input.

XInput1_3.dll not found. Trying XInput9_1_0.dll instead...

Input initialized. Initialized touch support. WARNING: Shader Unsupported: 'Enviro/BumpedDiffuseOverlaySM2' - Pass 'FORWARD' has no vertex shader WARNING: Shader Unsupported: 'Enviro/BumpedDiffuseOverlaySM2' - Pass 'FORWARD' has no vertex shader WARNING: Shader Unsupported: 'Enviro/BumpedDiffuseOverlaySM2' - Pass 'PREPASS' has no vertex shader WARNING: Shader Unsupported: 'Enviro/BumpedDiffuseOverlaySM2' - Pass 'PREPASS' has no vertex shader WARNING: Shader Unsupported: 'Enviro/BumpedDiffuseOverlaySM2' - Pass 'DEFERRED' has no vertex shader WARNING: Shader Unsupported: 'Enviro/BumpedDiffuseOverlaySM2' - Pass 'Meta' has no vertex shader WARNING: Shader Unsupported: 'Enviro/BumpedDiffuseOverlaySM2' - All passes removed UnloadTime: 3.883933 ms Setting NavMesh Pathfinding Iterations Per Frame from 100 to 5000 UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object) UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[]) UnityEngine.Logger:Log(LogType, Object) UnityEngine.Debug:Log(Object) UnityEngine.MonoBehaviour:print(Object) NavMeshPathfindingIterationsPerFrame:Awake() (at C:\Users\Jordy\Documents\MMORPG\Assets\uMMORPG\Scripts\NavMeshPathfindingIterationsPerFrame.cs:21) (Filename: C:/Users/Jordy/Documents/MMORPG/Assets/uMMORPG/Scripts/NavMeshPathfindingIterationsPerFrame.cs Line: 21) uMMORPG works best with Unity 2017.4.7f1 LTS! Download: https://unity3d.com/unity/qa/lts-releases UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object) UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[]) UnityEngine.Logger:Log(LogType, Object) UnityEngine.Debug:LogWarning(Object) UnityVersionCheck:Awake() (at C:\Users\Jordy\Documents\MMORPG\Assets\uMMORPG\Scripts\UnityVersionCheck.cs:11) (Filename: C:/Users/Jordy/Documents/MMORPG/Assets/uMMORPG/Scripts/UnityVersionCheck.cs Line: 11) Thank you for using Mirror! https://forum.unity.com/threads/unet-hlapi-community-edition.425437/ UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object) UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[]) UnityEngine.Logger:Log(LogType, Object) UnityEngine.Debug:Log(Object) Mirror.NetworkManager:Awake() (Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 43) TelepathyTransport initialized! UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object) UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[]) UnityEngine.Logger:Log(LogType, Object) UnityEngine.Debug:Log(Object) Mirror.TelepathyTransport:.ctor() Mirror.TelepathyWebsocketsMultiplexTransport:.ctor() Mirror.Transport:.cctor() Mirror.NetworkServer:Update() Mirror.NetworkServer:Update() Mirror.NetworkIdentity:UNetStaticUpdate() Mirror.NetworkManager:LateUpdate() (Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 43) TelepathyTransport initialized! UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object) UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[]) UnityEngine.Logger:Log(LogType, Object) UnityEngine.Debug:Log(Object) Mirror.TelepathyTransport:.ctor() Mirror.TelepathyWebsocketsMultiplexTransport:ServerStart(String, Int32, Int32) Mirror.NetworkServer:InternalListen(String, Int32, Int32) Mirror.NetworkServer:Listen(Int32, Int32) Mirror.NetworkManager:StartServer() UILogin:m__4() (at C:\Users\Jordy\Documents\MMORPG\Assets\uMMORPG\Scripts\_UI\UILogin.cs:68) UnityEngine.Events.InvokableCall:Invoke() UnityEngine.Events.UnityEvent:Invoke() UnityEngine.UI.Button:Press() (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\UI\Core\Button.cs:36) UnityEngine.UI.Button:OnPointerClick(PointerEventData) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\UI\Core\Button.cs:45) UnityEngine.EventSystems.ExecuteEvents:Execute(IPointerClickHandler, BaseEventData) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\ExecuteEvents.cs:50) UnityEngine.EventSystems.ExecuteEvents:Execute(GameObject, BaseEventData, EventFunction`1) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\ExecuteEvents.cs:261) UnityEngine.EventSystems.StandaloneInputModule:ProcessMousePress(MouseButtonEventData) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\InputModules\StandaloneInputModule.cs:569) UnityEngine.EventSystems.StandaloneInputModule:ProcessMouseEvent(Int32) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\InputModules\StandaloneInputModule.cs:466) UnityEngine.EventSystems.StandaloneInputModule:ProcessMouseEvent() (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\InputModules\StandaloneInputModule.cs:446) UnityEngine.EventSystems.StandaloneInputModule:Process() (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\InputModules\StandaloneInputModule.cs:221) UnityEngine.EventSystems.EventSystem:Update() (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\EventSystem.cs:294) (Filename: C:/Users/Jordy/Documents/MMORPG/Assets/uMMORPG/Scripts/_UI/UILogin.cs Line: 68) Server: Start port=7777 max=1000 UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object) UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[]) UnityEngine.Logger:Log(LogType, Object) UnityEngine.Debug:Log(Object) Telepathy.Logger:Log(String) Telepathy.Server:Start(Int32, Int32) Mirror.TelepathyTransport:ServerStart(String, Int32, Int32) Mirror.TelepathyWebsocketsMultiplexTransport:ServerStart(String, Int32, Int32) Mirror.NetworkServer:InternalListen(String, Int32, Int32) Mirror.NetworkServer:Listen(Int32, Int32) Mirror.NetworkManager:StartServer() UILogin:m__4() (at C:\Users\Jordy\Documents\MMORPG\Assets\uMMORPG\Scripts\_UI\UILogin.cs:68) UnityEngine.Events.InvokableCall:Invoke() UnityEngine.Events.UnityEvent:Invoke() UnityEngine.UI.Button:Press() (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\UI\Core\Button.cs:36) UnityEngine.UI.Button:OnPointerClick(PointerEventData) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\UI\Core\Button.cs:45) UnityEngine.EventSystems.ExecuteEvents:Execute(IPointerClickHandler, BaseEventData) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\ExecuteEvents.cs:50) UnityEngine.EventSystems.ExecuteEvents:Execute(GameObject, BaseEventData, EventFunction`1) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\ExecuteEvents.cs:261) UnityEngine.EventSystems.StandaloneInputModule:ProcessMousePress(MouseButtonEventData) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\InputModules\StandaloneInputModule.cs:569) UnityEngine.EventSystems.StandaloneInputModule:ProcessMouseEvent(Int32) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\InputModules\StandaloneInputModule.cs:466) UnityEngine.EventSystems.StandaloneInputModule:ProcessMouseEvent() (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\InputModules\StandaloneInputModule.cs:446) UnityEngine.EventSystems.StandaloneInputModule:Process() (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\InputModules\StandaloneInputModule.cs:221) UnityEngine.EventSystems.EventSystem:Update() (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\EventSystem.cs:294) (Filename: C:/Users/Jordy/Documents/MMORPG/Assets/uMMORPG/Scripts/_UI/UILogin.cs Line: 68) server tick rate set to: 50 (1 / Edit->Project Settings->Time->Fixed Time Step) UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object) UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[]) UnityEngine.Logger:Log(LogType, Object) UnityEngine.Debug:Log(Object) UnityEngine.MonoBehaviour:print(Object) NetworkManagerMMO:OnStartServer() (at C:\Users\Jordy\Documents\MMORPG\Assets\uMMORPG\Scripts\NetworkManagerMMO.cs:156) Mirror.NetworkManager:StartServer() UILogin:m__4() (at C:\Users\Jordy\Documents\MMORPG\Assets\uMMORPG\Scripts\_UI\UILogin.cs:68) UnityEngine.Events.InvokableCall:Invoke() UnityEngine.Events.UnityEvent:Invoke() UnityEngine.UI.Button:Press() (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\UI\Core\Button.cs:36) UnityEngine.UI.Button:OnPointerClick(PointerEventData) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\UI\Core\Button.cs:45) UnityEngine.EventSystems.ExecuteEvents:Execute(IPointerClickHandler, BaseEventData) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\ExecuteEvents.cs:50) UnityEngine.EventSystems.ExecuteEvents:Execute(GameObject, BaseEventData, EventFunction`1) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\ExecuteEvents.cs:261) UnityEngine.EventSystems.StandaloneInputModule:ProcessMousePress(MouseButtonEventData) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\InputModules\StandaloneInputModule.cs:569) UnityEngine.EventSystems.StandaloneInputModule:ProcessMouseEvent(Int32) (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\InputModules\StandaloneInputModule.cs:466) UnityEngine.EventSystems.StandaloneInputModule:ProcessMouseEvent() (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\InputModules\StandaloneInputModule.cs:446) UnityEngine.EventSystems.StandaloneInputModule:Process() (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\InputModules\StandaloneInputModule.cs:221) UnityEngine.EventSystems.EventSystem:Update() (at C:\buildslave\unity\build\Extensions\guisystem\UnityEngine.UI\EventSystem\EventSystem.cs:294) (Filename: C:/Users/Jordy/Documents/MMORPG/Assets/uMMORPG/Scripts/NetworkManagerMMO.cs Line: 156) Server: listening port=7777 max=1000 UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object) UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[]) UnityEngine.Logger:Log(LogType, Object) UnityEngine.Debug:Log(Object) Telepathy.Logger:Log(String) Telepathy.Server:Listen(Int32, Int32) Telepathy.<>c__DisplayClass8_0:b__0() (Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 43) Initializing database UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object) UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[]) UnityEngine.Logger:Log(LogType, Object) UnityEngine.Debug:Log(Object) Database:.cctor() (at C:\Users\Jordy\Documents\MMORPG\Assets\uMMORPG\Scripts\Database.cs:254) NetworkManagerMMO:OnServerLogin(NetworkMessage) (at C:\Users\Jordy\Documents\MMORPG\Assets\uMMORPG\Scripts\NetworkManagerMMO.cs:312) NetworkManagerMMO:OnServerLogin(NetworkMessage) (at C:\Users\Jordy\Documents\MMORPG\Assets\uMMORPG\Scripts\NetworkManagerMMO.cs:267) Mirror.NetworkConnection:HandleBytes(Byte[]) Mirror.NetworkConnection:TransportReceive(Byte[]) Mirror.NetworkServer:OnData(NetworkConnection, Byte[]) Mirror.NetworkServer:HandleData(Int32, Byte[], Byte) Mirror.NetworkServer:InternalUpdate() Mirror.NetworkServer:Update() Mirror.NetworkIdentity:UNetStaticUpdate() Mirror.NetworkManager:LateUpdate() (Filename: C:/Users/Jordy/Documents/MMORPG/Assets/uMMORPG/Scripts/Database.cs Line: 254) KeyNotFoundException: The given key was not present in the dictionary. at System.Collections.Generic.Dictionary`2[System.Int32,System.String].get_Item (Int32 key) [0x000a2] in /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:150 at MySql.Data.MySqlClient.MySqlField.SetFieldEncoding () [0x00000] in :0 at MySql.Data.MySqlClient.MySqlField.set_CharacterSetIndex (Int32 value) [0x00000] in :0 at MySql.Data.MySqlClient.NativeDriver.GetColumnData (MySql.Data.MySqlClient.MySqlField field) [0x00000] in :0 at MySql.Data.MySqlClient.NativeDriver.GetColumnsData (MySql.Data.MySqlClient.MySqlField[] columns) [0x00000] in :0 at MySql.Data.MySqlClient.Driver.GetColumns (Int32 count) [0x00000] in :0 at MySql.Data.MySqlClient.ResultSet.LoadColumns (Int32 numCols) [0x00000] in :0 at MySql.Data.MySqlClient.ResultSet..ctor (MySql.Data.MySqlClient.Driver d, Int32 statementId, Int32 numCols) [0x00000] in :0 at MySql.Data.MySqlClient.Driver.NextResult (Int32 statementId, Boolean force) [0x00000] in :0 at MySql.Data.MySqlClient.MySqlDataReader.NextResult () [0x00000] in :0 at MySql.Data.MySqlClient.MySqlDataReader.Close () [0x00000] in :0 at MySql.Data.MySqlClient.MySqlCommand.ResetReader () [0x00000] in :0 at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader (CommandBehavior behavior) [0x00000] in :0 at MySql.Data.MySqlClient.MySqlCommand.ExecuteDbDataReader (CommandBehavior behavior) [0x00000] in :0 at System.Data.Common.DbCommand.ExecuteReader (CommandBehavior behavior) [0x00000] in :0 at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader (CommandBehavior behavior) [0x00000] in :0 at System.Data.Common.DbDataAdapter.Fill (System.Data.DataSet dataSet, Int32 startRecord, Int32 maxRecords, System.String srcTable, IDbCommand command, CommandBehavior behavior) [0x00000] in :0 at System.Data.Common.DbDataAdapter.Fill (System.Data.DataSet dataSet) [0x00000] in :0 at MySql.Data.MySqlClient.MySqlHelper.ExecuteDataset (MySql.Data.MySqlClient.MySqlConnection connection, System.String commandText, MySql.Data.MySqlClient.MySqlParameter[] commandParameters) [0x00000] in :0 at MySql.Data.MySqlClient.MySqlHelper.ExecuteDataset (System.String connectionString, System.String commandText, MySql.Data.MySqlClient.MySqlParameter[] commandParameters) [0x00000] in :0 at MySql.Data.MySqlClient.MySqlHelper.ExecuteDataRow (System.String connectionString, System.String commandText, MySql.Data.MySqlClient.MySqlParameter[] parms) [0x00000] in :0 at Database.ExecuteDataRowMySql (System.String sql, MySql.Data.MySqlClient.MySqlParameter[] args) [0x00008] in C:\Users\Jordy\Documents\MMORPG\Assets\uMMORPG\Scripts\Database.cs:293 at Database.IsValidAccount (System.String account, System.String password) [0x00031] in C:\Users\Jordy\Documents\MMORPG\Assets\uMMORPG\Scripts\Database.cs:374 at NetworkManagerMMO.OnServerLogin (Mirror.NetworkMessage netMsg) [0x0003c] in C:\Users\Jordy\Documents\MMORPG\Assets\uMMORPG\Scripts\NetworkManagerMMO.cs:267 at Mirror.NetworkConnection.HandleBytes (System.Byte[] buffer) [0x00000] in :0 at Mirror.NetworkConnection.TransportReceive (System.Byte[] bytes) [0x00000] in :0 at Mirror.NetworkServer.OnData (Mirror.NetworkConnection conn, System.Byte[] data) [0x00000] in :0 at Mirror.NetworkServer.HandleData (Int32 connectionId, System.Byte[] data, Byte error) [0x00000] in :0 at Mirror.NetworkServer.InternalUpdate () [0x00000] in :0 at Mirror.NetworkServer.Update () [0x00000] in :0 at Mirror.NetworkIdentity.UNetStaticUpdate () [0x00000] in :0 at Mirror.NetworkManager.LateUpdate () [0x00000] in :0 (Filename: /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs Line: 150)
paulpach commented 6 years ago

Thank you for reporting this issue. This happens when the character set is not correctly configured in the database.

Make sure to follow step 3 in the readme, that part is not optional.

If after you do step 3, you still get the same error, validate that the server took the setting: show variables; and check the value of character_set_server make sure it is utf8mb4

In some mysql distributions, there might be more than one my.cnf file, search for my.cnf everywhere in your system and see if one of them is overriding the character-set-server

https://dev.mysql.com/doc/refman/8.0/en/option-files.html

paulpach commented 6 years ago

I added instructions to the readme page, follow step 6, reopen if still an issue