dop2000's Recent Forum Activity

    do you have a third party antivirus installed or only windows defender?

    No, only Windows Defender. I'll try disabling it tomorrow, see if it helps.

    Does this happen in small/empty projects?

    I don't know, to test this I will have to actively edit the project for a prolonged period of time - maybe 20 minutes, maybe an hour.. These periods of lagging are very random.

    As ever it's difficult to provide any help whatsoever without the information requested by the bug report guidelines.

    Thanks for checking those chrome profiles!

    I don't have any other information unfortunately. I understand there is probably something specific to my setup (maybe a combination of hardware or drivers), that is causing this issue. If I find a certain way to reproduce it, I'll log a bug report.

    Thanks, Ashley and everyone else for the replies! I installed a fresh version of Chrome Canary, didn't log in, didn't install any extensions. Unfortunately, about 30 minutes after opening my project the issue returned.

    I recorded a performance report in Chrome DevTools - one when the editor was lagging and another when not. Both times what I did was adding a simple action in the event sheet with a simple expression in it - Player.8direction.VectorX

    Although I don't understand what most of this means, the report clearly shows huge periods of latency when I typed the dot after "Player" or "8direction". In the section I highlighted there were hundreds of long removeChild calls. Similar calls are present in the report when there was no lagging, but they took a lot less time to process.

    If anyone wants to investigate, here are both reports. To load them, open DevTools in chrome and click "Load profile" icon in the Performance tab.

  • Do you want it to flash (become visible) after the typewriter has finished? Then you should wait more than 1 second.

    Or perhaps you can display two spritefonts one over another. One with "hide" tags, and another without. Run the typewriter on both. Make the whole second spritefont invisible by default, and after a 1s wait change it to visible.

  • Please vote for this idea:

    construct3-21h2.ideas.aha.io/ideas/C321H2-I-125

    I suggest a slightly different approach - instead of making the inactive menus invisible, remove them from the screen. This is what I do in my projects.

    I have an invisible object MenuPanel, which is used as a parent object in all menu hierarchies. So when I need to display one menu, I move its MenuPanel to the screen, and move all other MenuPanels to position (-999999, -999999).

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads

    I will try your suggestions, but don't think it's the same problem. When I type "(" or "." in the expression editor, I believe it's Construct engine that tries to check the syntax of the entered expression, change text color, display a drop-down list etc. It probably has nothing to do with Chrome autofill.

    Besides, the editor is lagging in other places too - when I click and try to move objects on the layout, when adding a new event or action to an event sheet etc.

    Anyone else experiencing random lags in the editor? They are especially noticeable when working with events and expression. The editor starts to feel very sluggish for a minute or two for no apparent reason, then the problem goes away. This happens many times a day and is very annoying.

    The freezes can be very short or last up to 20 seconds! See the gif below - I started typing choose("armor"... and the editor froze for 16 seconds as soon as I typed the opening bracket! Chrome even popped up a message saying that the page is not responding.

    I tried monitoring CPU and memory utilization in Task Manager and didn't notice any spikes when these freezes happen. As a test I opened a youtube video in another browser and it continued to play smoothly during these freezes. So I'm sure that no other applications are responsible, the issue is definitely in C3 or Chrome. There are no any third party extensions installed in Chrome.

    I don't know if it's related to the project size or not. I've been only working on a large(ish) game lately - about 500 objects, 6000 events.

    My hardware specs: Ryzen 9 4900HS, 24GB of RAM, 1TB SSD.

    Tagged:

  • is there a way to detect when the line breaks?

    I guess when the TextHeight increases it means that a new line is added.

    But even if you insert manual line breaks, you still won't be able to detect the width of the last line which is currently typing. Because TextWidth expression will return the width of the longest line in the text object.

  • There's no such limitation, you must be doing something wrong. Please share your project file or a screenshot of the code.

  • As far as I know, this is not possible.

    You'll probably have to make your own typewrighter effect by adding one letter to the text every 0.1s or so.

    Then you will be able to detect the actual width of the text using Text.TextWidth expression and place the cursor in that position. But it will only work for a single line of text.

  • Shouldn't the variable isDead be called isAlive instead? isAlive=1 means the player is alive. isAlive=0 means not alive any more. (since in any programming language 1 is true and 0 is false)

    Checking if the player has any health left or if it's dead on every tick is not a good practice. I suggest you move these event inside the event where the player actually receives damage. For example:

    Bullet On Collision with Player : Player subtract 1 from Health
    
    .... Player health<=0
    .... : Player set isAlive=0
    .... : Player play animation "Death"
    

    See if it helps. If the animation still doesn't work, run the game in debug mode and check the variables on the Player object.

  • One possible reason is that there is no path to the nearest enemy.

    I suggest adding logging to your events - for example in the first event on your screenshot add this action:

    Browser Log "Finding path to enemy UID:" & enemy.uid

    Add another event "On Failed to find path" with another Browser Log message.

    Then run the project in debug mode, open console and check the enemy UID. Find this enemy by UID, zoom out the layout, see if it's blocked in solid objects etc.

dop2000's avatar

dop2000

Member since 26 May, 2016

Twitter
dop2000 has 257 followers

Connect with dop2000

Trophy Case

  • 8-Year Club
  • Entrepreneur Sold something in the asset store
  • Jupiter Mission Supports Gordon's mission to Jupiter
  • Forum Contributor Made 100 posts in the forums
  • Forum Patron Made 500 posts in the forums
  • Forum Hero Made 1,000 posts in the forums
  • Forum Wizard Made 5,000 posts in the forums
  • Forum Unicorn Made 10,000 posts in the forums
  • x5
    Popular Game One of your games has over 1,000 players
  • x2
    Coach One of your tutorials has over 1,000 readers
  • Educator One of your tutorials has over 10,000 readers
  • Regular Visitor Visited Construct.net 7 days in a row
  • Steady Visitor Visited Construct.net 30 days in a row
  • Enduring Visitor Visited Construct.net 90 days in a row
  • Unrelenting Visitor Visited Construct.net 180 days in a row
  • Continuous Visitor Visited Construct.net 365 days in a row
  • RTFM Read the fabulous manual
  • x3
    Quick Draw First 5 people to up-vote a new Construct 3 release
  • x13
    Great Comment One of your comments gets 3 upvotes
  • Delicious Comment One of your comments gets 10 upvotes
  • Email Verified

Progress

28/44
How to earn trophies