ValveSoftware / ValveSoftware/Proton
Let's Build a Zoo (1547890)
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 32.8k
- Forks
- 1.6k
- PR merge metrics
- PR metrics pending
Description
Compatibility Report
- Name of the game with compatibility issues: Let's Build a Zoo
- Steam AppID of the game: 1547890
System Information
- GPU: Nvidia RTX 3060 Ti
- Driver/LLVM version: nvidia 470.62.07
- Kernel version: 5.15
- Link to full system information report as Gist:
- Proton version: Experimental
I confirm:
- that I haven't found an existing compatibility report for this game.
- that I have checked whether there are updates for my system available.
Symptoms
RESOLVED: Game crashes just after opening logo animation
NEW: The above issue has a workaround to just skip the music when it nullrefs, (assuming it's a simple try...catch) but the root problem still exists. Currently the observable symptom is that there is no music when running with Proton.
Reproduction
Just start the game
Relevant bit seems to be:
[ERROR] FATAL UNHANDLED EXCEPTION: System.NullReferenceException: Object reference not set to an instance of an object
at SEngine.Content.MonogameEmbedLoad.LoadMP3SongFromEmbeddedResource (System.String FilePathFromContentFolder) [0x00075] in <d0589cb77133403999f2f2140f835d66>:0
at SEngine.Content.LoadSongForPlatform.LoadThisSong (Microsoft.Xna.Framework.Content.ContentManager contentManager, System.String FilePathFromContentFolder) [0x00000] in <d0589cb77133403999f2f2140f835d66>:0
at TinyZoo.Audio.MusicManager.LoadThisSong (TinyZoo.Audio.SongTitle songtitle) [0x000a3] in <8ec0f307dfe0413b826235f770724f40>:0
at TinyZoo.Audio.MusicManager.LoadMusic () [0x00042] in <8ec0f307dfe0413b826235f770724f40>:0
at TinyZoo.AssetContainer.LoadAssetsDuringSplash (Microsoft.Xna.Framework.Content.ContentManager contentmanager, SpringIAP.SpringIAPManager springIAPmanager, TinyZoo.Player player, System.Int32& Index, System.Boolean& IsDone) [0x00116] in <8ec0f307dfe0413b826235f770724f40>:0
at TinyZoo.SplashScreen.SplashManager.UpdateSplashManager (TinyZoo.Player[] players, Microsoft.Xna.Framework.Content.ContentManager contentmanager, System.Single DeltaTime) [0x0013c] in <8ec0f307dfe0413b826235f770724f40>:0
at TinyZoo.GameStateManager.UpdateGameStateManager (System.Single DeltaTime, TinyZoo.Player[]& players, Microsoft.Xna.Framework.Content.ContentManager Content, SpringIAP.SpringIAPManager springIAPmanager, Microsoft.Xna.Framework.GraphicsDeviceManager graphics, Microsoft.Xna.Framework.Graphics.GraphicsDevice _GraphicsDevice) [0x00172] in <8ec0f307dfe0413b826235f770724f40>:0
at TinyZoo.Game1.Update (Microsoft.Xna.Framework.GameTime gameTime) [0x001c6] in <8ec0f307dfe0413b826235f770724f40>:0
at Microsoft.Xna.Framework.Game.DoUpdate (Microsoft.Xna.Framework.GameTime gameTime) [0x00019] in <115d97b957eb41cabade1b29d1e7edf4>:0
at Microsoft.Xna.Framework.Game.Tick () [0x00127] in <115d97b957eb41cabade1b29d1e7edf4>:0
at MonoGame.Framework.WinFormsGameWindow.TickOnIdle (System.Object sender, System.EventArgs e) [0x00014] in <115d97b957eb41cabade1b29d1e7edf4>:0
at System.Windows.Forms.Application+ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FDoIdle (System.Int32 grfidlef) [0x0001a] in <2736a4f873604bfea9e5f3a0d64b37d6>:0
at System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop (System.IntPtr dwComponentID, System.Int32 reason, System.Int32 pvLoopData) [0x00243] in <2736a4f873604bfea9e5f3a0d64b37d6>:0
at System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner (System.Int32 reason, System.Windows.Forms.ApplicationContext context) [0x00282] in <2736a4f873604bfea9e5f3a0d64b37d6>:0
at System.Windows.Forms.Application+ThreadContext.RunMessageLoop (System.Int32 reason, System.Windows.Forms.ApplicationContext context) [0x0001a] in <2736a4f873604bfea9e5f3a0d64b37d6>:0
at (wrapper remoting-invoke-with-check) System.Windows.Forms.Application+ThreadContext.RunMessageLoop(int,System.Windows.Forms.ApplicationContext)
at System.Windows.Forms.Application.Run (System.Windows.Forms.Form mainForm) [0x0000d] in <2736a4f873604bfea9e5f3a0d64b37d6>:0
at MonoGame.Framework.WinFormsGameWindow.RunLoop () [0x00011] in <115d97b957eb41cabade1b29d1e7edf4>:0
at MonoGame.Framework.WinFormsGamePlatform.RunLoop () [0x00000] in <115d97b957eb41cabade1b29d1e7edf4>:0
at Microsoft.Xna.Framework.Game.Run (Microsoft.Xna.Framework.GameRunBehavior runBehavior) [0x0008b] in <115d97b957eb41cabade1b29d1e7edf4>:0
at Microsoft.Xna.Framework.Game.Run () [0x0000c] in <115d97b957eb41cabade1b29d1e7edf4>:0
at TinyZoo.Program.Main (System.String[] args) [0x00015] in <8ec0f307dfe0413b826235f770724f40>:0 (1)
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the missing-music behavior with Proton Experimental and inspect steam-1547890.log, especially the SEngine.Content.MonogameEmbedLoad.LoadMP3SongFromEmbeddedResource stack entry. Done means the game launches and music loads under Proton without the reported NullReferenceException.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- linux
- Domain
- game-dev, operating-systems
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100