Solved [HELP] Multiplayer crashes by entering the cellar of the 5th Player

Meffistopheles

Greenhorn
Hi,

we are playing a multiplayer farm. We are 5 Players, so we had to alter the save file from the beginning to get a fifth house. So far we could play without major problems.

Now every Player has his house upgraded so it has a cellar. The first four cellars are working without Problems (besides some glitching). But the last cellar is bugged. If anyone enters this cellar the game crashes for this player (yea if the host enters, the game of all shuts down).

I checked the save-file. The data of the cellar looks similar to the other ones, except that it has the Number "-1" (others 2, 3 and 4). So I changed that to 5, but that doesn't helped.

Is there any way to get this cellar working?

Greetings,

Meffistopheles
 

Meffistopheles

Greenhorn
Like I wrote, we altered the save file to add a House. With every house you can connect a new Farmer. but Thats not the Point of the Problem ;)

--------How-to-more-Multiplayer-Guide------------
 

kohlrak

Farmhand
Like I wrote, we altered the save file to add a House. With every house you can connect a new Farmer. but Thats not the Point of the Problem ;)

--------How-to-more-Multiplayer-Guide------------
That very well is the point of the problem, possibly. How much space is reserved for these basements and other buildings? We're talking about something out of design, and the crash happens during one of the border cases for an out of design thing, so it's very likely tied to the part where you're going out of design. Might not be, but then you gotta find out how it would manifest itself when you're not going out of design (having 5 players). There might be only so much space reserved for farm building and such, or even just for the basements, before it starts over-writing other sections of RAM that are reserved for other things. Also, without trying it myself, i don't know how much RAM this takes. IIRC, Unity only allows up to 2GB of RAM (for compatibility with 32bit platforms, many of which are still on the market and are targets for Unity), and if you're crossing that boundary, this could easily turn into a "pointer exception" or, as windows likes to call it, "Access Exception Violation 0xc000000007" or something like that (i'm going off of memory), or "Segfault" on unix systems. Unity might even have an internal system for this. What do the OS crash logs say, and what do the stardew valley crash logs say (the latter should be near your saves)?
 

Meffistopheles

Greenhorn
Can't see any reference to RAM-Overflow or something simular.

Yes, I'm your opinion too, that the Problem is caused by the fifth player adaption. I just wanted to know, if there is any way to fix the cellar?

anyway, the logs
Stardew-Valley-Log:
Message: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
InnerException:
Stack Trace: bei StardewValley.Game1.onFadeToBlackComplete() in C:\GitlabRunner\builds\Gq5qA5P4\0\ConcernedApe\stardewvalley\Farmer\Farmer\Game1.cs:Zeile 5666.
bei StardewValley.BellsAndWhistles.ScreenFade.UpdateFade(GameTime time) in C:\GitlabRunner\builds\Gq5qA5P4\0\ConcernedApe\stardewvalley\Farmer\Farmer\BellsAndWhistles\ScreenFade.cs:Zeile 38.
bei StardewValley.Game1.UpdateOther(GameTime time) in C:\GitlabRunner\builds\Gq5qA5P4\0\ConcernedApe\stardewvalley\Farmer\Farmer\Game1.cs:Zeile 5843.
bei StardewValley.Game1._update(GameTime gameTime) in C:\GitlabRunner\builds\Gq5qA5P4\0\ConcernedApe\stardewvalley\Farmer\Farmer\Game1.cs:Zeile 3608.
bei StardewValley.Game1.Update(GameTime gameTime) in C:\GitlabRunner\builds\Gq5qA5P4\0\ConcernedApe\stardewvalley\Farmer\Farmer\Game1.cs:Zeile 2913.
bei Microsoft.Xna.Framework.Game.Tick()
bei Microsoft.Xna.Framework.Game.HostIdle(Object sender, EventArgs e)
bei Microsoft.Xna.Framework.GameHost.OnIdle()
bei Microsoft.Xna.Framework.WindowsGameHost.RunOneFrame()
bei Microsoft.Xna.Framework.WindowsGameHost.ApplicationIdle(Object sender, EventArgs e)
bei System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FDoIdle(Int32 grfidlef)
bei System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
bei System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.Run(Form mainForm)
bei Microsoft.Xna.Framework.WindowsGameHost.Run()
bei Microsoft.Xna.Framework.Game.RunGame(Boolean useBlockingRun)
bei StardewValley.Program.Main(String[] args) in C:\GitlabRunner\builds\Gq5qA5P4\0\ConcernedApe\stardewvalley\Farmer\Farmer\Program.cs:Zeile 152.


Windows-Log (german):
1-Information:

Fehlerbucket 1553688818822579335, Typ 5
Ereignisname: CLR20r3
Antwort: Nicht verfügbar
CAB-Datei-ID: 0

Problemsignatur:
P1: Stardew Valley.exe
P2: 1.3.7346.34283
P3: 5e42fa69
P4: Stardew Valley
P5: 1.3.7346.34283
P6: 5e42fa69
P7: 1bb
P8: 2f0
P9: System.NullReferenceException
P10:

Angefügte Dateien:
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERDC54.tmp.dmp
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERDE0B.tmp.WERInternalMetadata.xml
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERDE2B.tmp.xml
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERDE29.tmp.csv
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERDE3A.tmp.txt

Diese Dateien befinden sich möglicherweise hier:
\\?\C:\ProgramData\Microsoft\Windows\WER\ReportArchive\AppCrash_Stardew Valley.e_a572b2a5f87286d8efe8ecda7d86ca676e89a2_77cae30c_acaeb8f2-4fbf-460d-8c68-316eefdc7b20

Analysesymbol:
Es wird erneut nach einer Lösung gesucht: 0
Berichts-ID: 5e295ead-9d7c-4640-91fb-18af873f45da
Berichtstatus: 268435456
Bucket mit Hash: c8bbe08c43e8eb89158fcfbfb96a8487
CAB-Datei-Guid: 0


2-Error:

Anwendung: Stardew Valley.exe
Frameworkversion: v4.0.30319
Beschreibung: Der Prozess wurde aufgrund einer unbehandelten Ausnahme beendet.
Ausnahmeinformationen: System.NullReferenceException
bei StardewValley.Game1.onFadeToBlackComplete()
bei StardewValley.BellsAndWhistles.ScreenFade.UpdateFade(Microsoft.Xna.Framework.GameTime)
bei StardewValley.Game1.UpdateOther(Microsoft.Xna.Framework.GameTime)
bei StardewValley.Game1._update(Microsoft.Xna.Framework.GameTime)
bei StardewValley.Game1.Update(Microsoft.Xna.Framework.GameTime)
bei Microsoft.Xna.Framework.Game.Tick()
bei Microsoft.Xna.Framework.Game.HostIdle(System.Object, System.EventArgs)
bei Microsoft.Xna.Framework.GameHost.OnIdle()
bei Microsoft.Xna.Framework.WindowsGameHost.RunOneFrame()
bei Microsoft.Xna.Framework.WindowsGameHost.ApplicationIdle(System.Object, System.EventArgs)
bei System.Windows.Forms.Application+ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FDoIdle(Int32)
bei System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr, Int32, Int32)
bei System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner(Int32, System.Windows.Forms.ApplicationContext)
bei System.Windows.Forms.Application+ThreadContext.RunMessageLoop(Int32, System.Windows.Forms.ApplicationContext)
bei System.Windows.Forms.Application.Run(System.Windows.Forms.Form)
bei Microsoft.Xna.Framework.WindowsGameHost.Run()
bei Microsoft.Xna.Framework.Game.RunGame(Boolean)
bei StardewValley.Program.Main(System.String[])


3-Error:

Name der fehlerhaften Anwendung: Stardew Valley.exe, Version: 1.3.7346.34283, Zeitstempel: 0x5e42fa69
Name des fehlerhaften Moduls: unknown, Version: 0.0.0.0, Zeitstempel: 0x00000000
Ausnahmecode: 0xc0000005
Fehleroffset: 0x18395b66
ID des fehlerhaften Prozesses: 0xb10
Startzeit der fehlerhaften Anwendung: 0x01d61688dd1509a0
Pfad der fehlerhaften Anwendung: D:\Games\Steam\steamapps\common\Stardew Valley\Stardew Valley.exe
Pfad des fehlerhaften Moduls: unknown
Berichtskennung: 5e295ead-9d7c-4640-91fb-18af873f45da
Vollständiger Name des fehlerhaften Pakets:
Anwendungs-ID, die relativ zum fehlerhaften Paket ist
 

kohlrak

Farmhand
I don't know german, but google translate says that the object didn't refer to an instance, which means either ConcernedApe or the creators of Unity failed to check for null-pointer, which also indicated at in error 2 ("System.NullReferenceException"). Null pointers mean that memory wasn't declared. Either stardew pre-reserves this memory at run time, even if you don't use it, or it creates it on the fly and you ran out. Only way to know which is the case is to see how much RAM it's eating. Either way you look at it, though, it's a ram issue.

EDIT: ERROR 3 says "Ausnahmecode: 0xc0000005" and that's a hex-decimal code in windows that i'm *VERY* familiar with. It means you tried to access RAM that you did not have permission for (actually using a null pointer). I mentioned this one in my previous post.
 

ConcernedApe

Creator & Developer
Staff member
@kohlrak -- Stardew Valley doesn't use Unity, it's a custom engine in C#/XNA. This crash has nothing to do with memory usage, it's just the fact that the game was coded for 4 player max, and the cellars in particular weren't coded in a way that could scale beyond that

@Meffistopheles -- Unfortunately this is just a limitation of the experimental >4-player mode. This can possibly be fixed in the next update, but for now only the first 4 players can have a cellar.
 

Meffistopheles

Greenhorn
Hello @ConcernedApe
Thank you for your reply!

Well, now I know, that there is no easy way to make it work. Would love to see this being added in one of the next updates. But anyway. We really enjoy playing this game for hours! We are 5 people and somehow make it work. :D

Thanks @kohlrak for trying to figure this out with me.

Greetings
 

kohlrak

Farmhand
@kohlrak -- Stardew Valley doesn't use Unity, it's a custom engine in C#/XNA. This crash has nothing to do with memory usage, it's just the fact that the game was coded for 4 player max, and the cellars in particular weren't coded in a way that could scale beyond that

@Meffistopheles -- Unfortunately this is just a limitation of the experimental >4-player mode. This can possibly be fixed in the next update, but for now only the first 4 players can have a cellar.
Oh right, i tend to confuse unity and XNA, since Unity uses C# and probably XNA behind the scenes.
 
Top