Ashley's Recent Forum Activity

  • It's still not clear to me how any new OR feature should work. There are lots of awkward combinations of different types of conditions that need to be properly thought-through with specific results defined. It definitely can't just be a logical OR, because it needs to involve picking somehow. You can't just say "make a true OR" without explaining exactly what that means.

  • It's possible that the browser logs its own messages automatically, without involving JavaScript calls to the Console API. There is no way to access those messages from the page content. However if intercepting calls to the Console API is enough, then as noted there are libraries that can do that.

    • Post link icon

    Please contact supportzyw@construct.net for any questions about subscriptions.

  • FWIW the editor should support emoji anywhere (in expressions, object names, etc). If it doesn't, please file an issue. Supporting emojis is more or less a similar technical problem to supporting different languages like Japanese or Greek, so an emoji problem is probably also a language problem. And we want to fully support emojis anyway as it's kinda fun 😀

  • In the event system function parameters only exist for the duration of the function call. (It's not like JavaScript where you get a closure.) Therefore if you call setTimeout, the callback will run after the event sheet function finished and so the function parameter no longer exists.

    I think you can work around it by copying the local variable though and using a JavaScript closure, e.g.:

    let ind = localVars.ind;
    
    setTimeout(() => /* can use 'ind' here */, 300);
    
  • -----> Audio: Add remote URL FileChooser.FileURLAt(0) (type "audio/mpeg") as name "LocalMusic"

    -----> Audio: Play FileChooser.FileURLAt(0) looping from Music at 10 dB (stereo pan 0, tag "")

    If you add a URL with the name "LocalMusic", then you need to play audio named "LocalMusic", not pass the URL again.

  • I'm not clear what you're doing or if you're even using Construct? If you're not getting help you should provide more information and details to ensure others can help you, rather than just constantly bumping the thread.

  • The tutorial Offline games in Construct covers this. You can use the Browser object to detect update events and auto-update, and you can also look in the browser console to see what's going on as Construct logs update events there too.

    FWIW Wordle isn't uploading new content every day - it's just one app with a database of words for all the future day's puzzles. So it can load new puzzles every day without needing to update or load any new content.

  • That's how it's always worked - Sprites all share the same source set of textures.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • If more than 1 collaborator adds a new behavior, effect, object type, family, layout, event sheet, script, or timeline, it modifies the .c3proj and creates a conflict.

    This should not create a conflict as long as separate parts of the file were modified. It should only be a conflict if two people both try to commit changes at the same time that both affect the same line (e.g. both adding an object to the same folder).

    That really is just how source control works - I suppose Construct could load things some other way, but that doesn't prevent conflicts. You'll still get conflicts if two people modify the same image, edit the same comment, change the same instance variable, etc. etc. The best approach to avoid conflicts is to assign clear roles on the team - for example we have clearly assigned code areas for working on Construct itself, so we rarely have to modify the same thing and rarely ever get conflicts.

    Again, not the expert here, but sequential UIDs might not be the safest approach.

    It's true sequential UIDs don't work well for merging, and it's been a problem before. However I think there's a smarter way to solve this than just adding a whole new kind of UID: in r348 there's a new project property you can change that assigns all UIDs as random numbers with at least 6 digits. Therefore if two people add new objects, the chance they are assigned the same UID is negligible. I think if you set your project in to this mode it should avoid this type of problem happening.

  • There are new script APIs in r348 that let you do this, e.g. replaceCurrentAnimationFrame(blob). You can use it to load a URL like this:

    const response = await fetch(url);
    const blob = await response.blob();
    await spriteInst.replaceCurrentAnimationFrame(blob);
    

    The fact it uses a Blob helps make it flexible for other purposes like locally generated content.

  • If Construct let you place layers on top of HTML elements, would that solve a lot of the problems then? I had a feature like that planned.

    I think people mean lots of different things when they say "UI" - sometimes it means things like text inputs, which browsers already do very well, and are often very tricky with in-house engines. Playing Valheim recently I noticed the text inputs are kind of janky with poor support for selections, keyboard shortcuts, and other missing features - I think that's some in-engine Unity plugin. The browser built-in stuff is actually very sophisticated, something I went in to detail on in this blog. In other words, doing this in-engine is extremely difficult and a colossal amount of work, and even then it doesn't always reach the standard of a basic part of a browser engine!

    I don't think it's even feasible for us to address this as we just don't have a large enough team, which is why I'm focused on making HTML and CSS work - and if we can get it integrating nicely it will probably end up a much more powerful and flexible system than if we did it ourselves. Still, third-party developers could give an in-engine UI system a go if they really wanted to - best of luck to them if they try!

Ashley's avatar

Ashley

Early Adopter

Member since 21 May, 2007

Twitter
Ashley has 1,767,034 followers

Connect with Ashley

Trophy Case

  • 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
  • Forum Mega Brain Made 20,000 posts in the forums
  • x125
    Coach One of your tutorials has over 1,000 readers
  • x74
    Educator One of your tutorials has over 10,000 readers
  • x5
    Teacher One of your tutorials has over 100,000 readers
  • Sensei One of your tutorials has over 1,000,000 readers
  • Regular Visitor Visited Construct.net 7 days in a row
  • Steady Visitor Visited Construct.net 30 days in a row
  • RTFM Read the fabulous manual
  • x42
    Great Comment One of your comments gets 3 upvotes
  • Email Verified

Progress

32/44
How to earn trophies

Blogs