Ashley's Forum Posts

  • Graphic glitches are commonly caused by system issues like broken graphics drivers rather than being anything to do with Construct. Try installing the latest graphics drivers, or install any available system software updates.

  • Most authentication services don't provide an email address for privacy reasons. You would probably have to ask the user to enter their email address separately.

  • Simple minify should always be safe to use. If you want to use advanced minify, see the guide Exporting with advanced minification for the kinds of code changes you might need to make.

  • Thanks for checking - based on this:

    So I uploaded a new build with that option - XBox controller works but the overlay doesn't.

    ...it sounds like gamepads do actually work when specifying "allow-host-input-processing": false providing Steam Input is configured appropriately. So you can work around gamepads not working, at the cost of not having the Steam overlay work until the WebView2 issue is fixed.

    The "allow-host-input-processing": false should have no impact on any Steam features other than the overlay. All other features like achievements should still work.

  • It looks like a bug. It's best to report such things to the issue tracker following the guidelines.

  • In the past cases of "400 Bad Request" are due to buggy browser extensions, VPNs, or security software, that interfere with the network requests the browser is making, and ends up making them invalid. In particular the error beginning "YIkPfp2E9gyQ09dk_yNy9scwlvKH58Ft..." does not look like a request Construct would normally make. So I would guess this is not actually a problem with Construct.

    If you disable browser extensions/VPNs/security software, you may need to also clear your browser cache afterwards to allow it to start over properly - otherwise it may still be getting error responses from the cache.

  • Yes, large tilemaps are optimized: the tilemap is internally split in to chunks and only nearby chunks are processed for both rendering and collision detection. You could make a test project to check the performance.

  • I tried registering and allocating an app ID, but the Steam SDK fails to initialize, presumably because it's not published yet. I don't want to have a public storefront app just for testing purposes, and I doubt something like an empty "Scirra test app" would be approved for such a purpose anyway, so it seems like we're stuck without a good way to test this ourselves at the moment. I've asked Valve for advice on how to better test this.

  • I just want to mention Valve got back to me about gamepad input - see this post.

  • Just to update this thread regarding the gamepad input issue - Valve got back to me about this, and it turns out that Spacewar - the title with app ID 480 often used for testing purposes - has a custom Steam Input configuration which appears to be why gamepad input doesn't work. I think that means Steam is taking over gamepad input and expecting the app to use Steam Input APIs, but in a Windows WebView2 export it's just using the regular browser Gamepad API, which inside Chromium is using the regular Windows gamepad APIs. So basically it's a configuration issue.

    If you have your own app ID, you should be able to configure Steam Input for that app in the Steamworks app admin - I think you just want to turn it off (from the documentation it looks like you can choose 'None selected') or use a default mapping. As we don't publish titles ourselves we don't have an easy way to test this right now - perhaps someone can give it a go? Hopefully this means you can both initialize the Steamworks SDK and still use gamepad input (providing you set "allow-host-input-processing": false for now until the WebView2 bug is fixed).

    I've also asked Valve for advice on how we might be able to set up a testing mode where you don't need your own app ID to check Steamworks integration and gamepad input are working - hopefully we can make this a bit simpler to try out.

  • I think we will get round to this at some point - there's just a lot of other work to be done at the moment - but I would point out that the place we normally advise to post feature suggestions is here: https://github.com/Scirra/Construct-feature-requests

  • The first issue is a combination of two bugs - see this thread. Currently there's a WebView2 issue that prevents gamepad input working when you enable a setting to allow the Steam Overlay to work. You can turn it off, but then it still doesn't work, seemingly due to a bug in Steam Input, because if you disable that then it finally works again. I've already contacted Valve about that but not heard back yet - if you can report it to them that would help get attention.

    As for Proton any issues with that are very much on Valve's side so that's another thing to report to them. For now I would recommend using the Linux CEF export.

  • In general I can't easily tell from just screenshots - it's best to share a sample project. In this case if the same logic works OK on other platforms, then it would be best to file an issue following the guidelines. In the mean time you may be able to work around it if it is a bug by using File System instead of Local Storage.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Local Storage should still work the same in a Linux CEF export. It won't however share data with an export of a different type like Windows WebView2 - although last I checked, Windows WebView2 didn't work on Steam Deck - does it work now? Perhaps they've improved the emulation.

    You might also want to consider using File System. Files saved to the system will naturally also be shared between any export option.

  • Your event sheet has two mistakes:

    1. By default local variables are reset every tick, so SaveText will get cleared while the picker dialog is open. You need to make SaveText static so it preserves its value, or make it a global variable. Then saving works providing you enable the action to set SaveText to SaveStateJSON.
    2. Loading doesn't work because the open picker tag is the same as the save picker tag ("mysave"), so when opening a file it will also try to save to it. Use a different picker tag like "myload".