Freezing on loading layout under strange circumnstances

  • I am trying to figure out what is causing this issue for a long time. The case goes like this:

    After playing a level on my game you return on the main menu. This is happening automatically if the time runs out. Now if I dont interact with the game at all when the time goes out, I can go to main menu, I select play again and all goes well. If I interact with the game 1 or 2 seconds before time runs out (an change the layout) then I cannot replay this layout. It loads until a certain point but freezes.

    I have tried debugging with breakpoints but with no luck. I have tried doing several stuff before changing layout because it seems like something is leaking. I have tried stopping animations, sounds, sine behaviors, stopped all timers, disabled effects but still the issue continues.

    In Chrome I see the following message:

    c3runtime.js:2 Uncaught (in promise) TypeError: Cannot read property 'g_Bs' of null

    at g (c3runtime.js:2)

    at Array.sort (<anonymous>)

    at g_aQ.g_Bu.g_BD (c3runtime.js:2)

    at g_aQ.g_Bu.g_BE (c3runtime.js:2)

    at g_aQ.g_BF.g_BN (c3runtime.js:2)

    at g_aQ.g_BQ.g_Eb (c3runtime.js:2)

    at g_aQ.g_BQ.g_Eu (c3runtime.js:2)

    at g_aQ.g_BQ.g_El (c3runtime.js:2)

    at g_aQ.g_Fi.g_El (c3runtime.js:2)

    at g_aQ.g_amx.g_apt (c3runtime.js:2)

    at g_aQ.g_amx.g_Jj (c3runtime.js:2)

    g c3runtime.js:2

    g_BD c3runtime.js:2

    g_BE c3runtime.js:2

    g_BN c3runtime.js:2

    g_Eb c3runtime.js:2

    g_Eu c3runtime.js:2

    g_El c3runtime.js:2

    g_El c3runtime.js:2

    g_apt c3runtime.js:2

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    async function (async)

    g_Jj c3runtime.js:2

    g_anA c3runtime.js:2

    requestAnimationFrame (async)

    g_Jj c3runtime.js:2

    Any ideas what it might cause the above? If I dont interact with my game (its a puzzle game with correct and wrongs answers with effects following accordingly) some seconds before I exit the layout all is well. But if I interact (select correct answer or a wrong answer, which triggers effects, animations, sounds etc) then I cannot replay the layout. Is something leaking?

    Tagged:

  • It's difficult to help without more information, and the error report looks like it's from a minified export so any useful information has been obscured.

    It might be a bug in Construct. I'd suggest filing a bug report following all the guidelines - note we need all the information requested by the guidelines to be able to help.

  • I am aware of bug report, but you have to understand that this only works on occasions where the project is limited in size and complexity. When it come to big projects there are several issues:

    1) You cannot upload the project because you dont have the permission from your company.

    2) You cannot break the project because it is extremely complicated and big. Also, Construct engine favors the use of hard coded parts (that the reason there is no way to reuse code or event sheets you have written from other project files).

    3) It is an Instant Game which currently runs with bulk Facebook data that only when you have special permissions you can login and run.

    That said, I have exported the game without any minify, and that is the message:

    c3runtime.js:154 Uncaught (in promise) TypeError: Cannot read property '_GetLastCachedZIndex' of null

    at a (c3runtime.js:154)

    at Array.sort (<anonymous>)

    at C3.RenderCell._EnsureSorted (c3runtime.js:154)

    at C3.RenderCell.Dump (c3runtime.js:154)

    at C3.RenderGrid.QueryRange (c3runtime.js:157)

    at C3.Layer._GetRenderCellInstancesToDraw (c3runtime.js:160)

    at C3.Layer._DrawInstances_RenderCells (c3runtime.js:160)

    at C3.Layer.Draw (c3runtime.js:160)

    at C3.Layout.Draw (c3runtime.js:163)

    at C3.Runtime.Render (c3runtime.js:445)

    at C3.Runtime.Tick (c3runtime.js:445)

    a c3runtime.js:154

    _EnsureSorted c3runtime.js:154

    Dump c3runtime.js:154

    QueryRange c3runtime.js:157

    _GetRenderCellInstancesToDraw c3runtime.js:160

    _DrawInstances_RenderCells c3runtime.js:160

    Draw c3runtime.js:160

    Draw c3runtime.js:163

    Render c3runtime.js:445

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    async function (async)

    Tick c3runtime.js:445

    _tickCallback c3runtime.js:445

    requestAnimationFrame (async)

    Tick c3runtime.js:445

    Any ideas? Even rough ideas of what is causing this issue?

  • The bug report guidelines include tips on how to reduce a large project to something you can file.

    It looks like a crash involving the "use render cells" layer option. That's all I can tell from the information so far. There's usually no reason to use that setting unless you have huge layouts with thousands of static objects. If you turned it on for no reason, you could just turn it off (and note in general it's unwise to change any settings you don't need or understand). The bug won't be fixed though and could come up again. If you really have such a large layout that needs the setting, there is nothing more I could do to help without all the information covered in the bug report guidelines.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • In case this occurs on other users. I found a solution. I am using Spline plugin. Before changing layout I have:

    1) Cleared all path points

    2) Stopped all movements

    After that, I can change the layout without any issues.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)