FakeFishGames / Barotrauma

A 2D online multiplayer game taking place in a submarine travelling through the icy depths of Jupiter's moon Europa.
http://www.barotraumagame.com/
1.77k stars 409 forks source link

Crash (Collection was modified; enumeration operation may not execute.) #9143

Closed Krzeszny closed 2 years ago

Krzeszny commented 2 years ago

Disclaimers

What happened?

Game crashed when a round changed.

Reproduction steps

No response

Bug prevalence

Just once

Version

0.17.15.0

-

No response

Which operating system did you encounter this bug on?

Windows

Relevant error messages and crash reports

Barotrauma Client crash report (generated on 5/14/2022 6:53:22 PM)

Barotrauma seems to have crashed. Sorry for the inconvenience! 

68551EB45E8543A54B251CE423F8C0E1

Game version 0.17.15.0 (ReleaseWindows, branch master, revision a9d605bff)
Graphics mode: 1920x1080 (Fullscreen)
VSync ON
Language: English
Selected content packages: Vanilla, [AH] Lockpick, Abyssal armory - Reinforcements, Abyssal Warsuit, Backpacks, EK | Armory, EK | Dockyard, EK | Gunnery, EK | Utility, Heroin- Drug&Alcohol Modification (Drugmod), Improved Husks, Meaningful CPR, Neurotrauma, New Wrecks For Barotrauma (With sellable wrecks), Neurotrauma Cybernetics, NT Surgery Plus, Shipwrecks Extended, T.I.T.A.N. power suit V2, Thalassophobia Patched, Warden job, Warm-Fix Medical Tweaks, Wreck Corpses, Wreck Locator 沉船定位器
Level seed: MoyturaUusi-Turcu
Loaded submarine: USG Pathfinder v2 (4C7D2AFE46564E46FC43EC7A7C4CE759)
Selected screen: Barotrauma.RoundSummaryScreen
SteamManager initialized
Client (Round hadn't been started)

System info:
    Operating system: Microsoft Windows NT 10.0.19043.0 64 bit
    GPU name: NVIDIA GeForce GTX 970
    Display mode: {Width:1920 Height:1080 Format:Color AspectRatio:1.7777778}
    GPU status: Normal

Exception: Collection was modified; enumeration operation may not execute. (System.InvalidOperationException)
Target site: Void ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
Stack trace: 
   at System.Collections.Generic.List`1.Enumerator.MoveNextRare()
   at Barotrauma.Item.Remove()
   at Barotrauma.Item.RemoveByPrefab(ItemPrefab prefab)
   at Barotrauma.ItemPrefab.Dispose()
   at Barotrauma.PrefabSelector`1.RemoveInternal(T prefab)
   at Barotrauma.PrefabSelector`1.RemoveByFileInternal(ContentFile file, Action`1 callback)
   at Barotrauma.PrefabSelector`1.RemoveByFile(ContentFile file, Action`1 callback)
   at Barotrauma.PrefabCollection`1.RemoveByFile(ContentFile file)
   at Barotrauma.GenericPrefabFile`1.UnloadFile()
   at Barotrauma.ContentPackage.<>c.<UnloadPackage>b__36_0(ContentFile f)
   at Barotrauma.Extensions.IEnumerableExtensions.ForEach[T](IEnumerable`1 source, Action`1 action)
   at Barotrauma.ContentPackage.UnloadPackage()
   at Barotrauma.ContentPackageManager.EnabledPackages.<>c.<SetRegularEnumerable>b__15_2(RegularPackage r)
   at Barotrauma.Extensions.IEnumerableExtensions.ForEach[T](IEnumerable`1 source, Action`1 action)
   at Barotrauma.ContentPackageManager.EnabledPackages.SetRegularEnumerable(IReadOnlyList`1 inNewRegular)+MoveNext()
   at Barotrauma.Extensions.IEnumerableExtensions.Consume[T](IEnumerable`1 enumerable)
   at Barotrauma.ContentPackageManager.EnabledPackages.SetRegular(IReadOnlyList`1 newRegular)
   at Barotrauma.ContentPackageManager.EnabledPackages.Restore()
   at Barotrauma.Networking.GameClient.OnDisconnect(Boolean disableReconnect)
   at Barotrauma.Networking.LidgrenClientPeer.Close(String msg, Boolean disableReconnect)
   at Barotrauma.Networking.GameClient.Disconnect()
   at Barotrauma.Networking.GameClient.Update(Single deltaTime)
   at Barotrauma.GameMain.Update(GameTime gameTime)
   at Microsoft.Xna.Framework.Game.DoUpdate(GameTime gameTime) in E:\Barotrauma-development\Libraries\MonoGame.Framework\Src\MonoGame.Framework\Game.cs:line 656
   at Microsoft.Xna.Framework.Game.Tick() in E:\Barotrauma-development\Libraries\MonoGame.Framework\Src\MonoGame.Framework\Game.cs:line 504
   at Microsoft.Xna.Framework.SdlGamePlatform.RunLoop() in E:\Barotrauma-development\Libraries\MonoGame.Framework\Src\MonoGame.Framework\SDL\SDLGamePlatform.cs:line 94
   at Microsoft.Xna.Framework.Game.Run(GameRunBehavior runBehavior) in E:\Barotrauma-development\Libraries\MonoGame.Framework\Src\MonoGame.Framework\Game.cs:line 398
   at Microsoft.Xna.Framework.Game.Run() in E:\Barotrauma-development\Libraries\MonoGame.Framework\Src\MonoGame.Framework\Game.cs:line 368
   at Barotrauma.Program.Main(String[] args)

Last debug messages:
[5/14/2022 6:53:22 PM] Stopping Lua...
[5/14/2022 6:53:22 PM] Error while reading a message from server. {Collection was modified; enumeration operation may not execute.}
   at System.Collections.Generic.List`1.Enumerator.MoveNextRare()
   at Barotrauma.MultiPlayerCampaign.ClientRead(IReadMessage msg)
   at Barotrauma.Networking.GameClient.ReadLobbyUpdate(IReadMessage inc)
   at Barotrauma.Networking.GameClient.ReadDataMessage(IReadMessage inc)
   at Barotrauma.Networking.LidgrenClientPeer.Update(Single deltaTime)
   at Barotrauma.Networking.GameClient.Update(Single deltaTime)
[5/14/2022 6:53:21 PM] Generating an outpost for the end of the level... (Location: Uusi-Turcu Outpost, level type: LocationConnection)
Regalis11 commented 2 years ago

No known steps to repro, closing