Ashley's Forum Posts

  • Well, I have a sand box game that had 10 large background music files. The game would load and start but lag terribly and sprites would stop moving for a few seconds when ever I started the game even with no music playing. I took out those music files and sprites stopped lagging.

    There's no technical reason for that, because the engine doesn't touch music files unless you tell it to preload/play them. I'd be interested to see an example of that if you can make one. I would assume the problem was really caused by something else though.

  • Try not to get confused between download size and runtime performance. The two do not directly affect each other. For example a large music track will increase the download size, but should have no impact at runtime at all.

  • The Raspberry Pi OpenGL driver is a work-in-progress and hopefully will be working better in future. Really the problem is the OpenGL driver is unreliable, and that's not C2's fault.

  • I've never heard about such limitations being in place on Android. Such arbitrary limits would not improve anything and would seriously affect performance, so I don't see any technical reason that would ever be put in place. Where did you find out about this?

  • Sorry, the NW.js install doesn't support portable installation right now. You could try just putting the installer on the USB drive and re-installing it on every device.

  • Moving to "How do I", this is not a bug report so should not be in the Bugs forum.

  • Both Crosswalk and the Android webview use the same browser engine - Chromium - so there's no reason they would be any different. The Android webview updates from the store on Android 5.0+ so it is more likely to be up-to-date.

  • The actual filename is the name of your project. In your screenshot it's probably the file named nw.

  • I've heard different information - it is currently possible to publish to Xbox One via the UWP export, but it's not particularly easy. We're working to try and make it easier.

  • No - OpenGL rendering is only a small fraction of the amount of code that would need to be ported. I'd also add there would be no performance difference in rendering in a native engine, because WebGL already makes the same calls a native app would. See this blog for more information.

  • Browsers have historically supported disabling pinch-to-zoom, and C2 does specify to disable that on export. However there are so many websites that disable zoom and yet have a tiny hard-to-read font, which annoys so many people (especially anyone without eagle-quality vision, which is more than most realise), that browser vendors are starting to ignore the "disable zoom" feature. This means these user-hostile websites become easy to read again, by ignoring the "disable zoom" instruction and letting the user zoom in anyway.

    That's all a good idea, but the downside is it affects anyone who really doesn't want the page zoomable... like C2 content. It's a tricky issue because the browser only provides a crude "do the default thing" flag for touch events, and it can only be on or off. So if you drag in a text box, the default action may be to move the cursor or make a selection - and also start a zoom. Often we can't disable one but not the other. So we could forcibly disable the zoom, but then you might not be able to select anything in the text box. So this is probably something we need to go back and talk to browser vendors about.

    FWIW the Android browser is falling out of use in favour of Chrome. Also I'm pretty sure Cordova is not affected, so mobile apps will stay the same. Anyway maybe post a minimal example to the Bugs forum and I'll look in to what could be done.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • You can run the signalling server permanently on an offline LAN network, which means you only need to set it up once. But setting it up involves running a node.js server on a machine with the correct network configuration, e.g. setting up the firewall to allow server hosting, then identifying the machine's local IP address, and then using that address to connect to the signalling server with the Multiplayer plugin.

    It's definitely possible, but I'd guess most players probably can't be bothered to do all that configuration just to play a game. By far the easiest thing to do is just go online and use the Scirra signalling server.

  • Well from what I remember and was able to test using grid placement in the platformer template, it still requires a 32x32 player to be either slight smaller than 32x32 for it's collision box to fit in a 32x32 hole or have the hole be slightly bigger.

    This comes down to the math involved in the collision engine: two exactly aligned objects like you describe will have their edges at exactly the same position, and two things at the same position count as overlapping.

    Even if we changed that case to not count as overlapping, I don't think it would actually help much. All movement and calculations in C2 use floats, which is nice for precision and smooth movement, but as with the entire field of programming, float calculations are not exact. So you could easily end up computing the player's position as 32.0000001 or 31.999998999, and it will still no longer exactly fit inside a 32px gap, even if the collision engine specifically allows exact-fits. So I don't think there's really any easy fix to that - you just have to adjust your collision boxes to not require exact-fits. So shaving 0.1px off the collision box is a good workaround, and one you'd likely still need even if we changed the engine.

  • I do wish Scirra would introduce some sort of pixel-perfect collision or something similar as an optional alternative.

    I don't remember exactly which behaviors use it, but definitely the platform behavior does even better than pixel precision - it goes down to 1/16th of a pixel, IIRC. So it's actually kind of sub-pixel-perfect.