bcmpinc / StardewHack

A bunch of Stardew Valley mods that heavily rely on IL code modification.
GNU Lesser General Public License v3.0
23 stars 15 forks source link

[Wear more rings] should give an error when connecting with someone who does not have the mod installed. #15

Closed Maxworld4 closed 5 years ago

Maxworld4 commented 5 years ago

Stardew hack can't run in multiplayers, why ? Can you fix that ? my partner load eternely, and my terminal crash ...

Maxworld4 commented 5 years ago

I load this mod with wearmorerings

bcmpinc commented 5 years ago

Do both of you have the mod installed? If not, that's what causes the crashes. The mod does not yet check this properly. If you do both have that mod installed, can you upload your log file and that of your partner to https://log.smapi.io/ ?

Maxworld4 commented 5 years ago

yes we both have mods install.

Maxworld4 commented 5 years ago

[game] An error occured in the base update loop: System.IO.EndOfStreamException: Unable to read beyond the end of the stream. at System.IO.BinaryReader.ReadByte () <0x407ff0a0 + 0x0007b> in :0 at Netcode.NetVersion.Read (System.IO.BinaryReader reader) <0x40fb05a0 + 0x0002d> in :0 at Netcode.NetRefBase2[T,TSelf].ReadFull (System.IO.BinaryReader reader, NetVersion version) <0x40fb06d0 + 0x0002f> in <filename unknown>:0 at Netcode.NetFields.ReadFull (System.IO.BinaryReader reader, NetVersion version) <0x40fb6000 + 0x00064> in <filename unknown>:0 at Netcode.NetExtendableRef2[T,TSelf].ReadValueFull (Netcode.T value, System.IO.BinaryReader reader, NetVersion version) <0x40fb5f80 + 0x00044> in :0 at Netcode.NetRefBase2[T,TSelf].ReadFull (System.IO.BinaryReader reader, NetVersion version) <0x40fb06d0 + 0x0006b> in <filename unknown>:0 at Netcode.NetRoot1[T].ReadConnectionPacket (System.IO.BinaryReader reader) <0x40fb04e0 + 0x0008b> in :0 at StardewValley.Multiplayer.readFarmer (System.IO.BinaryReader reader) <0x40f7fe20 + 0x00047> in :0 at StardewModdingAPI.Framework.Networking.SGalaxyNetServer+<>c__DisplayClass3_1.b__1 () <0x40f7f860 + 0x0014c> in :0 at StardewModdingAPI.Framework.SMultiplayer.OnServerProcessingMessage (StardewValley.Network.IncomingMessage message, System.Action1 sendMessage, System.Action resume) <0x40f9e940 + 0x00ba0> in <filename unknown>:0 at StardewModdingAPI.Framework.Networking.SGalaxyNetServer.onReceiveMessage (Galaxy.Api.GalaxyID peer, System.IO.Stream messageStream) <0x40faefa0 + 0x0027f> in <filename unknown>:0 at StardewValley.SDKs.GalaxySocket.Receive (System.Action1 onConnection, System.Action2 onMessage, System.Action1 onDisconnect, System.Action`1 onError) <0x40d60f00 + 0x006fa> in :0 at StardewValley.SDKs.GalaxyNetServer.receiveMessages () <0x40d60b70 + 0x001d7> in :0 at StardewValley.Network.GameServer.receiveMessages () <0x40d601f0 + 0x00057> in :0 at StardewValley.Multiplayer.UpdateEarly () <0x40d50730 + 0x00037> in :0 at StardewModdingAPI.Framework.SMultiplayer.UpdateEarly () <0x40d506d0 + 0x0002b> in :0 at StardewValley.Game1._update (Microsoft.Xna.Framework.GameTime gameTime) <0x40ade320 + 0x003f9> in :0 at StardewValley.Game1.Update (Microsoft.Xna.Framework.GameTime gameTime) <0x40adc170 + 0x00017> in :0 at (wrapper dynamic-method) StardewModdingAPI.Framework.SGame:Update_Patch1 (object,Microsoft.Xna.Framework.GameTime)

Maxworld4 commented 5 years ago

and my partner can't find errorlog...

Maxworld4 commented 5 years ago

help ?

Maxworld4 commented 5 years ago

I think that understood something :

bcmpinc commented 5 years ago

You both need to have the WearMoreRings mod installed otherwise you indeed get an error during connection. I still need to implement something to refuse connection if someone has the mod installed but not others.