blushiemagic / MagicStorage

A tModLoader mod for Terraria
MIT License
176 stars 101 forks source link

Cannot open Storage #124

Closed FreshDoktor closed 3 years ago

FreshDoktor commented 3 years ago

If using tModLoader v0.12.1.4 Alpha 7f68ec7a and installed Magic Storage v0.5.02. If i try to right click on a storage heart in the client.log this Exception appears:

[13:53:18] [Main Thread/WARN] [tML]: Silently Caught Exception: System.Collections.Generic.KeyNotFoundException: The given key '{4106, 459}' was not present in the dictionary. at System.Collections.Generic.Dictionary'2.get_Item(TKey key) at MagicStorage.Components.StorageUnit.RightClick(Int32 i, Int32 j) in MagicStorage\Components\StorageUnit.cs:line 77 at Terraria.ModLoader.TileLoader.RightClick(Int32 i, Int32 j) in tModLoader\Terraria\ModLoader\TileLoader.cs:line 731 at Terraria.Player.TileInteractionsUse(Int32 myX, Int32 myY) in tModLoader\Terraria\Player.cs:line 23209 at Terraria.Player.TileInteractionsCheck(Int32 myX, Int32 myY) in tModLoader\Terraria\Player.cs:line 22238 at Terraria.Player.LookForTileInteractions() in tModLoader\Terraria\Player.cs:line 22161 at Terraria.Player.Update(Int32 i) in tModLoader\Terraria\Player.cs:line 19671 at Terraria.Main.DoUpdateInWorld(Stopwatch sw) in tModLoader\Terraria\Main.cs:line 13279 at Terraria.Main.DoUpdate(GameTime& gameTime) in tModLoader\Terraria\Main.cs:line 12935 at Terraria.Main.Update(GameTime gameTime) in tModLoader\Terraria\Main.cs:line 12496 at Microsoft.Xna.Framework.Game.Tick() in D:\a\tModLoader\tModLoader\FNA\src\Game.cs:line 548 at Microsoft.Xna.Framework.Game.RunLoop() in D:\a\tModLoader\tModLoader\FNA\src\Game.cs:line 874 at Microsoft.Xna.Framework.Game.Run() in D:\a\tModLoader\tModLoader\FNA\src\Game.cs:line 420 at Terraria.Program.LaunchGame_(Boolean isServer) in tModLoader\Terraria\Program.cs:line 205 at Terraria.Program.LaunchGame(String[] args, Boolean monoArgs) in tModLoader\Terraria\Program.cs:line 171 at MonoLaunch.Main(String[] args) in tModLoader\Terraria\MonoLaunch.cs:line 52

Also if i place an access on the heart it says there is no heart connect to the access in the chat.

FreshDoktor commented 3 years ago

Maybe this is also an info u should have:

` [13:50:55] [8/WARN] [tML]: Silently Caught Exception: System.Net.Sockets.SocketException: The system detected an invalid pointer address in attempting to use a pointer argument in a call. at System.Net.Sockets.Socket.UpdateStatusAfterSocketErrorAndThrowException(SocketError error, String callerName) at System.Net.Sockets.Socket.SendTo(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags, EndPoint remoteEP) at System.Net.Sockets.Socket.SendTo(Byte[] buffer, EndPoint remoteEP) at UwUPnP.Gateway.TryNew(IPAddress ip, Gateway& gateway) in tModLoader\Terraria\UwUPnP\Gateway.cs:line 69 at UwUPnP.UPnP.StartListener(IPAddress ip) in tModLoader\Terraria\UwUPnP\UPnP.cs:line 73 at UwUPnP.UPnP.<>c__DisplayClass15_0.b1() in tModLoader\Terraria\UwUPnP\UPnP.cs:line 65 at System.Threading.Tasks.Task.InnerInvoke() at System.Threading.Tasks.Task.<>c.<.cctor>b277_0(Object obj) at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread) at System.Threading.Tasks.Task.ExecuteEntryUnsafe(Thread threadPoolThread) at System.Threading.Tasks.Task.ExecuteFromThreadPool(Thread threadPoolThread) at System.Threading.ThreadPoolWorkQueue.Dispatch() at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

[13:52:08] [TCP Listen Thread/INFO] [Terraria]: 46.xx.xx.xx:59884 is connecting... [13:52:11] [Main Thread/INFO] [Terraria]: FreshDoktor has joined. [13:53:15] [Main Thread/WARN] [tML]: Silently Caught Exception: System.NullReferenceException: Object reference not set to an instance of an object. at Terraria.TileObject.CanPlace(Int32 x, Int32 y, Int32 type, Int32 style, Int32 dir, TileObject& objectData, Boolean onlyCheck, Boolean checkStay) in tModLoader\Terraria\TileObject.cs:line 617 at Terraria.WorldGen.PlaceObject(Int32 x, Int32 y, Int32 type, Boolean mute, Int32 style, Int32 alternate, Int32 random, Int32 direction) in tModLoader\Terraria\WorldGen.cs:line 31916 at DMD(MessageBuffer this, Int32 start, Int32 length, Int32& messageType) at Hook?33095992(MessageBuffer , Int32 , Int32 , Int32& ) at Terraria.NetMessage.CheckBytes(Int32 bufferIndex) at Terraria.Netplay.UpdateServerInMainThread() at Terraria.Netplay.UpdateInMainThread() at Terraria.Main.DoUpdate(GameTime& gameTime) at Terraria.Main.Update(GameTime gameTime) at Terraria.Main.DedServPostModLoad(Boolean& reloadMods) at Terraria.Main.DedServ() at Terraria.Program.LaunchGame(Boolean isServer) at Terraria.Program.LaunchGame(String[] args, Boolean monoArgs) at MonoLaunch.Main(String[] args) `

FreshDoktor commented 3 years ago

I also cant upgrade storages, visually the storage is upgraded but the upgrade item is not consumed. If i relog the storge is not updated propely

absoluteAquarian commented 3 years ago

Storage Hearts are broken in the 1.4 alpha. Thanks for reporting this!

FreshDoktor commented 3 years ago

Can you predict how long it will take to fix this problem?

absoluteAquarian commented 3 years ago

To my knowledge, they've already been fixed. Some other things need to be done before v0.5.0.3 can be published though

FreshDoktor commented 3 years ago

Nice to hear!