Ashley's Forum Posts

  • Not sure how I missed this one, I've moved it in to help & tech support.

  • The simplest solution is probably for someone to write an online plugin

  • LOL! Well, it's a fair bit more involved. It's kind of an obvious idea for a game.

  • Well, RTS (with the A* algorithm) is more of a brute force solution - it checks all possible solutions to the problem, then picks the shortest path.

    Not quite - A* is a bit more clever than that. There are infinite unique journeys to travel between any points - just think of all the times you could go half way, go in a circle, then carry on, then the same with two loops round the circle, then the same with three loops round the circle...

    So it's actually impossible to generate all possible solutions then pick the best. It's a surprisingly efficient algorithm, but as a tradeoff it is not perfect in all situations. But I think it picks the optimal path in 99.9% of situations or so. Worth it to get an answer before the end of the universe!

    - the RTS behavior generates a complete path in the 'Move to' action, stores it, then just starts moving the object along the already calculated path. So it's not actually running any pathfinding logic as the mouse moves around, so you'll see negligable CPU usage. The biggest problem with that system is if the path is really big and complicated, or you're moving hundreds of objects in one go, it could hang for a second or two while it calculates all the paths.

  • Interesting idea for a challenge I'm not sure about how useful it is to prove whether or not Construct can do anything - difficult logic problems are difficult logic problems, no matter what tool you use - unless the tool solves that specific problem for you, which general-purpose tools usually do not. By "Construct can do anything 2D", I think we mean limitations in Construct shouldn't get in your way and prevent you from making the game you want.

    In this case, though, Construct does effectively solve the problem for you

    <img src="http://www.scirra.com/images/mouseevent.png">

    If that's not a perfect example of events being a quick and readable way to do something, then I don't know what is

    I've attached a copy where I just added the RTS behavior to the mouse, carefully adjusted the settings, and added an event to move the mouse to the cheese. The RTS movement has a very decent A* pathfinding algorithm built in to it which will basically immediately work out the optimal path to the destination, then move the object along that path. The A* bit is great, but it seems the RTS behavior's code to move the object along the path is a bit ropey. It wasn't designed for small, enclosed layouts like a maze - it's aimed at wide open spaces with occasional obstacles. So I had to tweak the settings a lot, but now the mouse basically walks directly through the maze to the cheese.

    It's pretty surprising to see how bad the RTS behavior fared with the default settings, it gets stuck pretty quickly. I guess it needs a redesign if I ever get round to it. The mouse also has to be very small and use the smallest cell size available in the RTS behavior, since the walls of the maze mark entire cells as solid, and the entire map would be marked solid with a large cell size.

  • Well, remember you can do everything the app runtime does in the DirectX runtime, you just need DirectX installed. That wouldn't make sense for public tools, but if it's your own little thing, I guess it's fine.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Importing events from text sounds suspiciously like a scripting language, which is not the purpose of events. It is kind of crazy how events exported as text are formatted, that could use some work, since it would be useful to post events to forums and such.

  • Actually, I don't think you could make much with the application runtime, at least not without a bunch of more useful plugins aimed at the app runtime.

    I think it's one of those features which didn't work out quite as we planned - I don't think many people use it, and it hasn't had much development time, it was kind of rushed. So maybe in the next version it'll either be dropped, or expanded on to make it more useful.

  • youtube.com/watch

    That little bit of zooming at the start is classy.

  • You do not have permission to view this post

  • For the record, while it may be possible via events, it could be easier. So further built-in controls in this area would be useful.

  • Yeah, copy to text has some problems. I'll see if I can have a quick look over it.

  • The important thing in Construct is that it's hardware accelerated, so you're more likely to run out of memory on the graphics card (VRAM) when it fills up with textures. Construct has options to control the loading and unloading of textures on a layout-by-layout basis, so as long as you're careful and don't import large, 100-frame animations, you should be fine. I've spent some time trying to make the runtime as efficient as possible, so it shouldn't waste memory or CPU power. I don't know how it compares to GameMaker though, since I haven't used it much.

    Also, I'd definitely advise you try some smaller projects before you get going with big ones - you might need the experience of how things work in Construct.

  • Whether or not an idea is a good one I don't like to see people editing away the original post, and now none of the thread makes sense to a new reader so the thread may as well be deleted. Even ideas which don't work are still worth keeping around sometimes.

    I think I'll lock this on that basis (I try not to completely delete threads unless I have to).

  • For the record, the best way to reset picking is simply in another event (like you say with multiple start of level events). However, if that's tricky, like if you're several subevents deep, then you can call a function with the function object, and specify that picked objects should be forgotten.