Ashley's Forum Posts

  • I'm not sure you need to do either of those things - if you want to swap one sound for another, you could have a variable of the name of the sound to play, and then just change that variable when you want to switch it for another sound. That way there's no need to delete or modify actual sound files.

  • There did indeed appear to be a problem with iOS exports using Mobile Advert - we did some server maintenance yesterday and it looks like some of the build service configuration got changed. I just changed it back and it looks like it's working again - apologies for the inconvenience.

  • Really the only reason we use CEF on Linux is because Linux doesn't provide a built-in system webview (or at least nothing consistent enough to depend on) like WebView2 on Windows and WKWebView on macOS.

    If we have two export options for the same platform it's twice as much as much work to develop, maintain, support, document etc. and that directly reduces our capacity to make other improvements to Construct, so overall I think such a move would overall be a bad outcome for Construct.

    The Steam Overlay is a known issue, but:

    • Steam has fallbacks to handle the in-game overlay not being supported - it shows the actual Steam UI instead
    • I don't think that is a serious enough problem to warrant the large amount of work both up-front and on-going work it would take to have a secondary export option
    • I couldn't actually get the Steam Overlay to work correctly on Linux desktop with CEF either - so even doing all that work is no guarantee it will end up working
    • The Steam Overlay never actually worked that well with NW.js either - we had a bunch of hacks to get it working (and it would be the same for CEF), and those hacks could stop working at some point, which would leave us in the same situation needing Valve to fix it
    • It's entirely possible that Valve could fix it for our existing export options and then it's all sorted with no need for secondary export options (and Valve fixing it would also make sure it works much better with NW.js/Electron/CEF)
    • The Steam Overlay works fine on the Steam Deck, because it works differently (drawing in a layer over the game instead of intrusively modifying the game executable). So that demonstrates if desktop platforms worked the same, it would work fine there too.

    In short, if there are two major features to do the same thing, it is a lot more work and a continual drain on our limited resources, and it's confusing for users too. In my view the best approach for the long term is to focus on one solution and resolve any problems with that. In other words: if you have one major feature and it has a problem, and your solution is to introduce a whole new second major feature, now you have two problems.

    I found tons of reddit threads of people uninstalling their WebView from Windows because they don't like too many background processes.

    Well, that's a crazy thing to do in my opinion, but our WebView2 exporter is designed to prompt the user to install WebView2 if it's missing, so it should not be a major problem - if someone uninstalled it, a Construct WebView2 export will prompt them to reinstall it.

    Maybe as a side-note: are there plans for Scirra to also develop their own Mobile Wrappers?

    At the moment Cordova does the job well, so I don't think there is any reason for us to do that. In particular there is a large existing ecosystem of Construct plugins using Cordova plugins, so moving off that would be far more painful than changing the desktop export technology.

  • If there isn't an API covering it in the documentation, then it's not supported and you'd need to post a feature request. However your workaround looks reasonable - get the URL from the event sheet and fetch that as a blob. I've definitely seen worse workarounds!

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Construct does now require Intl.Segmenter support in the browser. Firefox only added support for this in v125, but that was released in April last year - the current version is v134. The latest Extended Support Release (ESR) is v128 released back in October, so even those sticking to ESR releases have a supported option. Therefore we deemed support good enough to rely on it in Firefox. The error message advises what to do - the browser is out of date and needs updating.

    Support in Chrome was indeed added in v87, but that was released over four years ago, so I don't really know why anyone would still be running such an old version of Chrome unless their entire system is no longer supported. In general it's just not feasible for us to support old browsers forever - the web platform keeps improving and we want to make the most of that, and sometimes that means increasing the minimum requirements. With Chrome and Safari we try to make sure we're compatible with around 4 years of past releases. In this case we made an exception for Firefox and brought the minimum version up as it was the last browser to support a key feature that allowed us to make internationalization improvements, we waited long enough for the latest ESR release to support it, and these days Firefox usage is (sadly) much lower than Chrome or Safari so the impact of such a change is reduced.

  • Please don't cross-post the same feedback in multiple places - I already addressed this in this comment, but now the discussion is split over two places. (See the Forum & Community guidelines)

    Update 15th January 15:16 GMT: all the planned maintenance work has now been completed. All services should be running normally again - if there are any problems please let us know. Thank you for your patience!

    Update 15th January 10:05 GMT: the planned maintenance work is now starting.

  • If you want to specify multiple tags, you still use a single string, but the tags are separated by spaces, e.g. "foo bar". You can use an expression to generate such a string, but it must be a valid expression. The expression str(Midi.NoteNumber - 23) & " audio" will do this as it will return something like "50 audio" - note the space before " audio". Using a number is an odd kind of tag though, I'd suggest something like "note" & str(Midi.NoteNumber - 23) & " audio", which will produce a tag string like "note50 audio", i.e. two tags "note50" and "audio".

  • The Voice Recorder example saves the recorded data to a Binary Data object. You can see in the event for handling the share button click it shares the Binary Data object. So instead of sharing, you could use the AJAX object 'Post binary to URL' to upload it to a server. Alternatively if you want to use JavaScript you can get the ArrayBuffer of the binary data from the IBinaryDataInstance script interface.

  • MacOS WKWebView exports are based on the Safari browser engine, and so you're limited to the features available in Safari with that. It should work in the Chrome browser though.

  • I did test all features in development and so they should be working - if anything isn't working please file an issue following all the guidelines.

  • I'm afraid WebView2 doesn't appear to have a way to control this at the moment - there's this feature request for it though.

  • It's difficult to have Construct set the executable details, because it's tricky to modify those properties in a pre-built executable. So for now it's probably best to use an external tool if you need to set those - something like Resource Hacker will do the job. Open the executable, choose 'Add script template', use the VERSION_INFO template, fill out the details you want, press the "Compile" button, and then save, and it should have updated the executable. Note if you digitally sign the executable you must do this before signing.

  • Those errors don't appear to be part of Construct. If you are using custom JavaScript code, or third-party addons, you might need to check those.