Horrible C3 lag when large complicated event sheets fully opened

0 favourites
From the Asset Store
you can add, remove and reorder list items and many more
  • I don't seem to recall Construct 2 itself ever lagging when a large event sheet of 1000+ events is open with all nested events expanded or if I just expand everything on the project bar tree of my game if I have thousands of different object types. It gets really bad where I have to sometimes just swap to a layout in the editor so things like the animation editor don't lag 5 seconds behind my mouse being moved and clicked.

    This has been going on for probably years now where I assumed it was just Construct 3 was being refined more to improve performance, but it's still a major issue. I can mostly work around it if I pick collapse all on large event sheets and my project bar tree, but... I've never seen this kind of lag in any other program and I wouldn't think this would be a common occurrence I have to just constantly waste time working around.

    So I'm assuming I'm doing something wrong or maybe I need to update something unrelated to get rid of this lag?

  • Its bound to be a memory issue. Have you tried groups, and event includes?

    They could make a memory swapping system, but that would eventually become just as unresponsive in a lot of situations.

  • How do you work with 1000+ events in one sheet? Even if you keep everything organized in groups, it takes ages to find the right event.

    The obvious solution would be splitting them into multiple sheets.

  • I'm not sure why I would be having a memory issue when my computer has 16GB of RAM, but C3 works off things like browser tabs, so it might be a thing still?

    I have a lot of events because some functions have a ton of conditions and nested events and there is no way to break them down further because I have spent a ridiculous amount of time optimizing the game. Unless I'm not thinking of something. In one instance there's a function that makes the player character fire 1 out of 100+ different weapons based on which they have equipped. It really needs to be done through a function only because if the game just checks that amount of events every tick, there's a drastic higher impact on performance.

    I never had this kind of lag ever in Construct 2 with even more complex states in my games and I can go into regedit.exe that comes with Windows and expand like 5 million entries on the registry tree and it doesn't lag at all.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Maybe you are right and it's not possible to optimize these functions. But you can still divide this huge event sheet into multiple smaller event sheets.

  • Well like I said, I can work around this by just collapsing my entire project bar tree or the event sheet I'm in or just go to a layout editor before using something like the animation editor so it doesn't have lag issues like this that cause C3 to almost be unusable. I just hoped maybe there is something I can change with my Windows settings or download some patch for my computer to improve performance related to C3 or what have you. It isn't really an insurmountable hurdle, but it would definitely make workflow much better for me. Even despite all this, I've used GameMaker Studio before and Construct 3's workflow is infinitely superior being able to do things like start a preview in 5 seconds or less while GMS takes like 3 minutes just to tell you there's a simple typo in your code. lmfao anyone who tries to say GMS is better just has no clue what they're talking about.

  • In which situations are you scrolling the event sheet with all events expanded?

    I have my event shet, divided into 20 different groups. I seldom have more than max two groups open. When I'm done with I press collapse all again.

    so never have more than maybe 50 events open

    works fine for me.

  • The browser layout is a bit slower than Construct 2's layout. It can make a difference in extremely large event sheets.

    As noted splitting events in to separate smaller sheets should help a lot, and is probably a good idea for organising your project anyway. Collapsed groups also don't need to process layout so help speed it up.

  • I just have some event sheets that have rather complex functions that can't be simplified any further and will actually make the project messier if I start just putting each one on individual sheets like I probably will have to do so the GUI doesn't lag from them all being expanded. If it's just unavoidable that the GUI is like this then it's alright and no biggie either. I also don't really need to ever expand the whole project bar tree, so that's not really an issue for me per se, but was related. I just thought I should ask if there's anything I need to change like Chrome flags to help it. Thanks for the answers. As said, even if it lags like this, it's still infinitely better than like GMS that freezes for like 2 minutes when you type in the first letter into the search bar for project elements and this is my PC so I can only say they need to do something if they want GMS to outperform C3. lol

  • There are ways to improve it.

    1. use default theme only

    2. upvote my suggestion construct3.ideas.aha.io/ideas/C3-I-1231

    Editor needs extra grouping element. So you can hide events and action to improve performance and look

    3. Find Css bug, report Github, then report Crbugs and in months you get it fixed. And whole Internet benefits from it :)

    4.Test each Css property and then workaround ones that cause performance drop.

  • There are ways to improve it.

    1. use default theme only

    2. upvote my suggestion construct3.ideas.aha.io/ideas/C3-I-1231

    Editor needs extra grouping element. So you can hide events and action to improve performance and look

    3. Find Css bug, report Github, then report Crbugs and in months you get it fixed :)

    I do use the default theme since I'm someone who doesn't care if my tools look pretty, I only care about their raw capabilities and power. My friend said something along the lines of your suggestion hypothetically could improve C3 GUI lag in much larger projects, but I don't know enough about browser technology to say one way or the other despite I do know things like C# but I find C3 makes me able to do 10x more in the same amount of time as if I actually wrote programming for just one thing and if you optimize your game enough then you can do even more than Unity from that I've found where I had like 800 enemies on screen in one of my games that use line of sight and test every single tile they are on for terrain type while also testing every single character constantly that is on screen to see if their team IDs match or not to determine if they should attack each other and that was only when the game started to become to slow in FPS, but this is definitely A++ acceptable performance because my game is 320x240 resolution but I would never even need 100 enemies on screen at once even if the resolution was 1024x768 lol. Even if I've complained a lot about C3 at times, I have stuck with it for about 3 years now despite having only a subscription payment option I hated at first because it has always shown a lot of potential when it already is really good compared to some of the most popular IDEs.

  • An event can get really long if you have a lot of actions all on the top tier, which is somewhat obtrusive when its longer than the screen. If you take and add a blank sub event, and place the actions on it you will get the collapse arrow. Its much more manageable when the bulk is hidden there.

    Ashley could we get a method to hide the top tier like that manually? Like it would just show part of the top action with some sort of notation showing its continued. With something like the collapse arrow, and a ...

  • An event can get really long if you have a lot of actions all on the top tier, which is somewhat obtrusive when its longer than the screen. If you take and add a blank sub event, and place the actions on it you will get the collapse arrow. Its much more manageable when the bulk is hidden there.

    Yeah I use blank events for organizational purposes such as what you said. It is actually useful in other ways beyond reducing lag.

  • hypothetically

    ?

    Visual grouping element would be same as Event group, when you close group you get all perf back from events that are now hidden. And user can test event group, it's no longer hypothetically.

  • > hypothetically

    ?

    Visual grouping element would be same as Event group, when you close group you get all perf back from events that are now hidden. And user can test event group, it's no longer hypothetically.

    As said I have no clue how browser technology works under the hood like I do know stuff like C#. So that's why I thought maybe the GUI elements of the event sheets and project bar tree and such are being needlessly visually processed for parts that you can't even see due to being scrolled out of view and this problem could probably be averted if graphic processing was stopped on elements you can't see, but Ashley knows far more about this than I do considering he also made C3, so this might already be done or is not an option.

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