Ashley's Forum Posts

  • We've had extreme problems with huge amounts of spam in the past, and any loopholes can and will be exploited hard. It's easy for users to work around anyway, just drop the http and www parts from the link.

  • As ever, there is little I can offer without seeing a .capx example. Export should actually be more efficient than preview, because of all the export-time optimisations that are applied.

  • This is the kind of thing you could probably write a PhD on. I've tried this a couple of times in other projects, and it feels like a semi-impossible problem.

    The real difficulty is not so much in the collision avoidance - it's relatively straightforward to come up with some mechanisms to either make objects steer around each other, or plot paths that are less likely to overlap other object's paths. The real problems start when inevitably something unpredictable happens and everything queues up in to a traffic jam. Then you need algorithms that can unpick the traffic jam without getting other objects stuck or making things worse - while all the time other stuff is happening around it. This is super difficult to do without making objects either get permanently stuck somewhere, or end up with ridiculous results like a line of 10 objects waiting for 1 object to get out the way, but that object is waiting for another object to get out the way, which is waiting for one of the 10 objects to get out of the way, so nothing ever moves even though any one of them could break it by doing something "wrong" like steering away from their destination.

    Then when you throw in various types of movements like: can objects pivot while stopped or must they accelerate? Can they reverse? How fast is their acceleration? Are the objects using box or circle collision masks? All of this has a huge impact on the way these algorithms work out.

    So I'm pretty doubtful this is something where we can feasibly build a reasonably general-purpose solution.

  • Oh right, so yeah, that's just the same thing but happening with the viewport. The bottom layer is white, and the objects exactly fit the viewport, so you get a seam along the bottom. It's conceptually the same thing, and the workaround is similar: cover it up by moving the terrain 1px down.

    With floating point zoom/scroll/positioning and linear sampling, exactly adjacent objects will, in general, show seams. This is just how computer graphics work. You need to use tricks like overlapping by 1px or adding an extra row of pixels here and there to work around it. Or just disable floating point zoom/scroll/positioning entirely.

  • Yes, there are lots of features to control what is stored on your device, such as private browsing - that would wipe storage when you close the tab. Some browsers refer to all local storage as "cookies" for historical reasons, so if you've done something like disable cookies then that can disable local storage as well.

  • I'm afraid this is definitely a graphics driver bug, and it means the latest drivers available for your system aren't working.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Pressing "undo" does a bunch of work refreshing the project and UI, and one of those updates caused quite a long chain of calls that ended up changing the selection.

  • I can reproduce, but it's a tricky fix. For now the next beta has a small tweak to make this a bit less confusing: the actions that disappear come back when you add the effect to Sprite2, instead of when you paste actions again.

  • Thanks for the video, that helped me reproduce it. Should be fixed in the next beta.

  • Thanks for the report, it should be fixed in the next beta.

  • Closing as not a bug. It is rendering correctly! I am not sure specifically which lines you are referring to, a screenshot would help to illustrate what you mean, but I see a horizontal line along the top of the terrain (TiledBackground2).

    The line is not white: it is the color of the terrain. The terrain is a tiled background object, so its image wraps. The bottom row of pixels is all opaque, and at some floating-point zoom levels, there is a row of pixels at the top that partly wraps round to show the bottom row of pixels from the image again. These kinds of "seam" issues are common when you enable floating-point zoom or scrolling, since nothing exactly aligns to the pixels in the images. The only way to guarantee perfect alignment is with letterbox integer scale, pixel rounding, point sampling and simply not setting any float zoom levels like you do in your .capx.

    An easier way to work around this though is just put a transparent row of pixels at the bottom of the terrain tile image. This means if it ever wraps to show the bottom row of pixels at the top of the image, they're invisible.

  • Can't reproduce on an iPad Air 2 with iOS 9.3 on r224. Given that iOS devices are usually pretty consistent and there are no other reports of this, it sounds like it's specific to your device. Are you sure you haven't set some privacy settings or content blockers that will block storage access?

  • It's very unusual to add the Solid behavior to any interactive or moving object. Why have you done that? If you just delete the solid behavior from the tanks it works fine.

    I think it's ambiguous to ask for whether you have LOS to an object that blocks LOS, so I don't think you should expect it to work either way. Combining that with the fact I can't see any reason to have the solid behavior on those objects, closing as won't fix.

  • Note this isn't a bug: your condition filters out all Text objects, since none of them have an instance variable that meets the condition. So the actions run since the system condition was true, but with no Text objects picked. If you add an action for another object in the event, you can see it is running.

    If the text object did change to "Success!", it would mean an action ran on an object that did not meet the event's conditions!

  • Closing as not a bug. It is working correctly. Try setting the text of a different Text object: it is running the event.

    The problem is the OR block runs, and finds that no instances of the Text object have that instance variable value. However because the system condition was true, it runs the event anyway, but with zero Text objects picked. This means there are no instances to run the "set text" action on.

    If the object's text was changed, it would mean an action ran on an object that did not meet the event's conditions, which contradicts the way events work.