Ashley's Recent Forum Activity

  • If a server is responding with a 403 error, that usually means "Forbidden", so that would be a permission or configuration issue with your server.

    Construct projects now only support iOS 15+ and cannot run on older versions of iOS and will show the "software update needed" message on those devices. I'm afraid it's simply not feasible to support old iOS versions forever, and we have to occasionally increase the minimum requirements to be able to keep improving Construct. The vast majority of devices in active use support iOS 15+. For example the newest iPhone that only supports up to iOS 12 is the iPhone 6 which came out in 2014. That's a decade ago, and quite often the device battery simply won't last that long and so people end up buying a newer device; if they did, it will support iOS 15+ (see this table).

  • In that post, I mentioned an update in r417 that may help, but nobody has responded to that yet - it'd be interesting to know if it made a difference for anyone.

  • We've seen a number of such reports but we've not yet been able to identify what causes the problem. Our best guess is a browser extension is interfering with Construct and causing the problem. Try disabling any browser extensions you have and see if that fixes the problem. It would be useful to know which browser extension caused the problem if you can identify that (try disabling them one-by-one).

  • Try using the File System plugin.

  • Is there a way to animate an icon?

    You can use [tag] in BBcode to tag a region of text - perhaps just a placeholder icon - and get its position. Then you could put an animated Sprite object there - which allows for using any other features in Construct (effects, behaviors, other kinds of objects like Particles, etc.)

  • Even if we did this, I'm not sure it would be sufficient for all those use cases - if you want something like a private message channel to multiple users, or different levels of group chat, then you need a dynamic number of Multiplayer instances. Even if you can add more Multiplayer instances, then how many do you add? Then setting up your event sheet to be able to manage them as if they were an array sounds complicated.

    Things like an "Alert" server that just sends a global message out every now and then would be a relatively simple case for a WebSocket connection to a custom server - re-using Multiplayer for that seems a bit overkill.

    Another option is to run the host on a traditional headless server - it's not especially straightforward to set up, but then you have better privacy as things like private messages are routed via a generic server rather than a player's machine. Even with the host being a player, it's possible to set up an encrypted messaging system between two peers so the host still can't read their messages, but that's a fairly complicated cryptography case. (Maybe the Cryptography plugin could help...)

    So I think if we wanted to do this properly, the single Multiplayer object alone would have support for connecting to multiple rooms simultaneously. I think that would be a pretty complicated change to make though. Even if adding multiple Multiplayer objects is straightforward, in the long term there will probably still be a need for truly dynamic room joining, and so there'd still be a need for the proper multiple simultaneous rooms support; then if we did implement that, we're left with a messy design, as there is no longer any need for multiple Multiplayer instances but we're stuck with that short-term measure for backwards compatibility reasons. So with a long-term view, I'd rather do this the proper way, even if it's more difficult. It's always tempting to choose the easy option, but it can make a mess in the long term, and we'll still be here dealing with that.

  • This just came up in this thread as well where I already responded.

  • Listing all templates is also an interesting idea, but I think it's a slightly different use case. Should all those templates be in a separate section of the Project Bar? If so, there's still the problem of what happens when you drag in a new instance from the Object Types folder. Should templates appear as child items of object types in the Project Bar? If so presumably you can still drag from the object type itself, and the same problem comes up. So while I think that may well be worthwhile as well, it's probably best thought of as a separate addition.

  • It was retired in r413. As far as we're aware, virtually nobody used it, and virtually no iOS users care about Game Center, and it was difficult to support and maintain. We've heard very little about it since stable r416 rolled out to everyone nearly a month ago, so I think we made the right call - I'd say just ignore it and don't bother trying to use it any more.

  • I think it's important to use the templates feature for this. It's what it's for: by defining a template, you are defining a named instance which you can make copies of. It's also what's used at runtime for creating instances based on copying another instance. If we define some other system for the editor, then the editor and runtime have different systems to define default instances. This then causes other inconsistencies, and people will ask things like "how do I create an instance at runtime that matches the editor's default instance?" to which the answer will still be "use templates"; others would rightly complain that the design of Construct is inconsistent. So I think this feature has to be based on templates.

    My issue with your proposed solution is every single instance pulled from the project bar would then need to be manually set as a replica—an error-prone or easily forgotten step that my level designers should not be expected to do.

    What if there's another checkbox to control whether new instances are replicas or not? It looks like the default at the moment is to make replicas. If you disable that then you just get a non-replica copy of the template set to be used for new instances in the editor.

    We could still then add a 'Make default instance' context menu option, which would just be a shortcut to:

    • Set the instance as a template with a default name (e.g. "default", but that string can be made translatable as the specific string doesn't matter)
    • Set the object type to use that template name for new instances

    ...but it's not clear what that should do if the template named "default" already exists, nor whether you want the 'new instances are replicas' setting to be enabled or disabled. I'm also a bit concerned about long-term cluttering the Layout View context menu too much, as it's already pretty long. Perhaps it's not too bad to leave that as something that you manually set up?

  • Make sure the server is configured to use the same cache settings for all file types - if your server is doing something like caching HTML files for 7 days but JS files for 1 day, then after an update you could end up with browsers loading a mix of files from different versions, which will then break.

    Your Cache-Control header looks strangely formatted - it should be enough to set Cache-control: no-store, but that won't fix existing browsers with a bad cache.

    You may actually find it works better with offline support enabled - Construct then manages updates by ensuring the new version is fully downloaded bypassing the cache, and then swaps over to that on the next reload. Another strategy is to use different URLs for every update to make sure it never mixes up versions (e.g. mygame/v1/index.html, mygame/v2/index.html...), which you can then enable immutable caching for as versions never change.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • In the latest beta release r419 if I export 'Spell caster' with Windows WebView2, extract all the files to a folder, and run WindowsIconUpdater.exe, it works fine for me and reports it successfully updated icons.

Ashley's avatar

Ashley

Early Adopter

Member since 21 May, 2007

Twitter
Ashley has 1,422,688 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
  • x108
    Coach One of your tutorials has over 1,000 readers
  • x62
    Educator One of your tutorials has over 10,000 readers
  • x3
    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
  • x35
    Great Comment One of your comments gets 3 upvotes
  • Email Verified

Progress

32/44
How to earn trophies

Blogs