Reproducable crash on biome change: IndexOutOfRangeException

Post Reply
User avatar
UpperKEES
Posts: 12
Joined: Sun Jan 19, 2014 4:40 pm

Reproducable crash on biome change: IndexOutOfRangeException

Post by UpperKEES » Sun Jan 19, 2014 5:26 pm

Hi folks!

I've been enjoying your game a lot; 225 hours played so far and unlocked everything. Good fun and I love the detail of the game! Time for my long awaited Free Play game to set the all time Reus record (125,000 prosperity on the large world is the goal, and yes, this is possible).

So I started this game and I've spent 54 hours on this single game so far (no joke!). However Reus keeps crashing into Windows ("Reus has stopped working") and each time it has the same cause: whenever I try to change the biome of certain patches, an IndexOutOfRangeException occurs ("De index ligt buiten de matrixgrenzen").

This has happened 119 times over the past 10 days now, so I think it's time for a post here. I've tried every single thing to avoid it and work around it, but to no avail. I tried to recreate the entire world by migrating every single resource, but that only results in the bug occurring at another spot. I finally decided to test the same final lay-out on a completely fresh world. Result: crash within 5 minutes of play, so all my work was for nothing.

The good thing however is that it seems a bug that's relatively easy to fix. I have attached the saved game of the fresh world that has nothing on it but some terraforming (not 1 nomad has settled yet). Use 'Raise Forest' at the exact spot where the Forest Giant stands to reproduce the crash.

Kind regards from a fellow dev from Utrecht

PS: I sure hope for an easy fix and I'm of course willing to beta-test it. Please don't tell me that I've wasted 54 hours on this single game and won't be able to set the all time highscore....

Here's the first lines of the errorReport.txt dump (attached this file as well; too long for the post). Let me know if you like the other 118 (similar ones) too. ;-)

Code: Select all

Version: 1.3.1.1
Thread: Main

System.IndexOutOfRangeException: De index ligt buiten de matrixgrenzen.
   bij Reus.View.SurfacePatchTriangulator.AddTriangle(Vector3 a, Vector3 b, Vector3 c)
   bij Reus.View.PatchTriangulator.AddLeftSidedPatch(SurfaceContourEdge edge, Vector2 endBottom, Vector2 startBottom)
Saved game below.
Attachments
Crash.rsf
Saved game to reproduce crash easily
(56.1 KiB) Downloaded 48 times
Last edited by UpperKEES on Mon Jan 20, 2014 6:11 pm, edited 6 times in total.

User avatar
UpperKEES
Posts: 12
Joined: Sun Jan 19, 2014 4:40 pm

Re: 119th crash: System.IndexOutOfRangeException

Post by UpperKEES » Sun Jan 19, 2014 5:32 pm

Seems I can't attach TXT files, so here's the full crash dump:

Code: Select all

Version: 1.3.1.1
Thread: Main

System.IndexOutOfRangeException: De index ligt buiten de matrixgrenzen.
   bij Reus.View.SurfacePatchTriangulator.AddTriangle(Vector3 a, Vector3 b, Vector3 c)
   bij Reus.View.PatchTriangulator.AddLeftSidedPatch(SurfaceContourEdge edge, Vector2 endBottom, Vector2 startBottom)
   bij Reus.View.SurfacePatchTriangulator.GeneratePatchTriangles(IPatchPalette palette, SurfaceContour contour, SurfaceContour connectingContour, Patch patch)
   bij Reus.View.Components.Surface.GenerateInteriorTriangles()
   bij Reus.View.Components.Surface.ValidateTriangleCaches()
   bij Reus.View.Components.CurvedSoilLayer.Render(ISceneCamera2D camera)
   bij SpaceTech.Graphics.RenderManager2D.Draw(Eye eye, Single aspectRatio)
   bij Reus.View.GameScreen.OnRender(RenderContext context)
   bij Reus.View.GameplayScreen.OnRender(RenderContext context)
   bij SpaceTech.UI.Controls.UIControl.Render(RenderContext context)
   bij SpaceTech.UI.Rendering.UIRenderer.RenderUIControl(UIRenderContext context)
   bij SpaceTech.UI.Rendering.UIRenderer.Render(UIControl control, RenderContext controlContext)
   bij SpaceTech.UI.Controls.UIScreen.OnRender(RenderContext context)
   bij SpaceTech.UI.Controls.UIControl.Render(RenderContext context)
   bij SpaceTech.UI.Controls.UIScreen.Draw(GameTime gameTime)
   bij Reus.View.ViewComponent.Draw(GameTime gameTime)
   bij Reus.GameplayComponent.Draw(GameTime gameTime)
   bij Microsoft.Xna.Framework.Game.Draw(GameTime gameTime)
   bij (Object , GameTime )
   bij 冷櫎띂ફ迷ಏ泈.灑尲㰈穪宗䷱↽傛(Object , GameTime 볤샑辋䴠簹連夯촵)
   bij ≬鑜瓜쓄憎쨢㣠㭄.Draw(GameTime gameTime)
   bij Microsoft.Xna.Framework.Game.DrawFrame()
   bij Microsoft.Xna.Framework.Game.Tick()
   bij Microsoft.Xna.Framework.Game.HostIdle(Object sender, EventArgs e)
   bij Microsoft.Xna.Framework.GameHost.OnIdle()
   bij Microsoft.Xna.Framework.WindowsGameHost.RunOneFrame()
   bij Microsoft.Xna.Framework.WindowsGameHost.ApplicationIdle(Object sender, EventArgs e)
   bij System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FDoIdle(Int32 grfidlef)
   bij System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
   bij System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
   bij System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
   bij System.Windows.Forms.Application.Run(Form mainForm)
   bij Microsoft.Xna.Framework.WindowsGameHost.Run()
   bij Microsoft.Xna.Framework.Game.RunGame(Boolean useBlockingRun)
   bij (Object )

[Chinese characters left out]

0x0000 Reus.View.dll->Reus.View.SurfacePatchTriangulator.AddTriangle
0x01b6 Reus.View.dll->Reus.View.PatchTriangulator.AddLeftSidedPatch
0x00e6 Reus.View.dll->Reus.View.SurfacePatchTriangulator.GeneratePatchTriangles
0x0061 Reus.View.dll->Reus.View.Components.Surface.GenerateInteriorTriangles
0x0014 Reus.View.dll->Reus.View.Components.Surface.ValidateTriangleCaches
0x0006 Reus.View.dll->Reus.View.Components.CurvedSoilLayer.Render
0x0286 SpaceTech2D.dll->SpaceTech.Graphics.RenderManager2D.Draw
0x00ca Reus.View.dll->Reus.View.GameScreen.OnRender
0x0088 Reus.View.dll->Reus.View.GameplayScreen.OnRender
0x003d SpaceTech.UI.dll->SpaceTech.UI.Controls.UIControl.Render
0x0033 SpaceTech.UI.dll->SpaceTech.UI.Rendering.UIRenderer.RenderUIControl
0x017b SpaceTech.UI.dll->SpaceTech.UI.Rendering.UIRenderer.Render
0x0000 SpaceTech.UI.dll->SpaceTech.UI.Controls.UIScreen.OnRender
0x003d SpaceTech.UI.dll->SpaceTech.UI.Controls.UIControl.Render
0x007d SpaceTech.UI.dll->SpaceTech.UI.Controls.UIScreen.Draw
0x001b Reus.View.dll->Reus.View.ViewComponent.Draw
0x0025 Reus.exe->Reus.GameplayComponent.Draw
0x004d Microsoft.Xna.Framework.Game.dll->Microsoft.Xna.Framework.Game.Draw

User avatar
UpperKEES
Posts: 12
Joined: Sun Jan 19, 2014 4:40 pm

Re: 119th crash: System.IndexOutOfRangeException

Post by UpperKEES » Mon Jan 20, 2014 4:27 pm

Additional info:

I forgot to mention that I bought the game on Steam 1 month ago and I use Windows Vista 32-bit, fully updated.

I play in 1920x1080 resolution and the crash happens in both FullScreen and Windowed mode (which is to be expected with an IndexOutOfRange exception).

I also believe this bug may be related to other recent biome changing bugs, like the infinite mountain, so I hope loading my saved game (see first post) into the debugger will help you out.

User avatar
Touriste
Posts: 626
Joined: Mon May 20, 2013 2:20 am
Location: France, Ile de France

Re: Reproducable crash on biome change: IndexOutOfRangeExcep

Post by Touriste » Mon Jan 20, 2014 5:49 pm

Thanks a lot for this full report !
I'll make sure to forward it :)

User avatar
UpperKEES
Posts: 12
Joined: Sun Jan 19, 2014 4:40 pm

Re: Reproducable crash on biome change: IndexOutOfRangeExcep

Post by UpperKEES » Tue Jan 21, 2014 8:29 am

Thanks for forwarding Touriste!

By the way, the issue is not restricted to the Forest Giant; I have the same crash with the other 3.

User avatar
Yuri
Posts: 88
Joined: Thu Nov 29, 2012 2:01 pm
Contact:

Re: Reproducable crash on biome change: IndexOutOfRangeExcep

Post by Yuri » Tue Jan 21, 2014 11:22 am

Hey there UpperKEES,

Thanks for playing Reus so much! That's an immensely long run you have there.
We currently have a beta-branch running (via Steam) which lets you play the latest (yet to be stabilized) version of Reus. We would like to know if this issue also persist on this newer version. Would it be possible for you to get into the beta and try if this fixes the problem?

You can get into the beta by right clicking Reus in your Steam-library -> Properties -> Beta's -> Switching to "beta - Protected Beta". You won't need a code!

Please let us know if this made a difference!

Best regards,
Yuri

User avatar
UpperKEES
Posts: 12
Joined: Sun Jan 19, 2014 4:40 pm

Re: Reproducable crash on biome change: IndexOutOfRangeExcep

Post by UpperKEES » Tue Jan 21, 2014 5:29 pm

Hi Yuri,

Thanks for your reply! I'll subscribe to the beta right now and test it.

User avatar
UpperKEES
Posts: 12
Joined: Sun Jan 19, 2014 4:40 pm

Re: Reproducable crash on biome change: IndexOutOfRangeExcep

Post by UpperKEES » Tue Jan 21, 2014 5:42 pm

Exactly the same issue unfortunately. Only difference is that the error log now appears on screen before crashing into Windows.

Loading my saved game (see first post) into the debugger should make it clear which index is out of range.

In addition: this version does not show a mouse cursor when starting the game in FullScreen mode (but does show highlighted buttons at the mouse position). When I disable FullScreen mode in the Options, the mouse cursor re-appears, but the game stays FullScreen.

Please let me know if you like more info; always willing to help you out. :-)

User avatar
Yuri
Posts: 88
Joined: Thu Nov 29, 2012 2:01 pm
Contact:

Re: Reproducable crash on biome change: IndexOutOfRangeExcep

Post by Yuri » Wed Jan 22, 2014 10:35 am

Hey UpperKEES,

Thanks for testing it in the beta-version.
We are currently waiting on the Mono version to be finished by the people that ported Reus. After it is done we will look into this bug and do our best to fix it for you!
We're sorry for the issues you're having!

Best regards,
Yuri

User avatar
UpperKEES
Posts: 12
Joined: Sun Jan 19, 2014 4:40 pm

Re: Reproducable crash on biome change: IndexOutOfRangeExcep

Post by UpperKEES » Wed Jan 22, 2014 7:44 pm

Oh, does this mean all development/bug fixing is ceased until the Linux/Mac versions are fully operational?

Too bad, as that may take a while.... I guess I have to give up on this then. :-(

Post Reply