Integrated Path Planning Object (T0) Version 0.4

Welcome to our brand new Clickteam Community Hub! We hope you will enjoy using the new features, which we will be further expanding in the coming months.

A few features including Passport are unavailable initially whilst we monitor stability of the new platform, we hope to bring these online very soon. Small issues will crop up following the import from our old system, including some message formatting, translation accuracy and other things.

Thank you for your patience whilst we've worked on this and we look forward to more exciting community developments soon!

Clickteam.
  • New major build (this is a release candidate), we now have transition profiles when custom transitions are enabled.

    Transition profiles allows us to change between different rules quickly without the need to manually specify the rules each time.

    Testing is still severely lacking, if you know someone that's working on an RTS or RPG that may be interested in helping with the testing please nominate him here.

  • Question: Can this extension be used in the AI for a platform game?

    I have a 2 player platform game that I need to make a 1 player mode for. I need to find a way to make the enemy characters climb ladders and move along platforms to get them to other locations on the board.

    Please login to see this link.
    Please login to see this link.
    Please login to see this link.

  • Certainly. There are at least two ways to do this:
    1)Fill empty areas (gaps) with hidden rectangular objects and add them as obstacles. Then your units will only be able to use the other areas (including ladders) to move around.
    2)Use the grid functions to specify which parts of the map are traversable, then generate the paths for your enemies and iterate over them to move the active objects.

    The first approach is probably the easiest to get working, but will require you to place the obstacles yourself. The second approach will require more work but gives you more control and may allow you to automate the process by looping over all your platforms and setting up the grid which would be the better approach if your levels are large/complicated.

    -Mokhtar M. Khorshid

  • I think you can get the first approach running in your game in a few minutes. Just create rectangular blocks, throw them all over the frame to cover the gaps, add the active object as an obstacle to the system, and you're done.

    If you need help getting it to work or run into problems, let me know.

    -Mokhtar M. Khorshid

  • Quote from Mokhtar

    I think you can get the first approach running in your game in a few minutes. Just create rectangular blocks, throw them all over the frame to cover the gaps, add the active object as an obstacle to the system, and you're done.

    If you need help getting it to work or run into problems, let me know.

    Actually, since I have NO idea how this object works, could you make a simple example of this so I can see how it is suppose to work?

    Thanks

    Please login to see this link.
    Please login to see this link.
    Please login to see this link.

  • Quote from AngelicTech

    since I have NO idea how this object works


    But that's the point. This object was designed to be simple to use for those that have never tried it before. Did you give it a try yet? You can refer to the "Messed Up Experiments" frame in my example file.

    I would really like to know what is hard to figure out in using the object, so that I can make it simpler or explain it better in the help file.

    -Mokhtar M. Khorshid

  • Okay dokay. I'll list all the improvements, as insignificant as they are:

    • first property, size of tile: should specify it is both width and height
    • For simplicity, change "agent" or "unit" to "object"?
      Also, "objective" to "destination"?
    • Advanced>Iteration has a dodgy seperator
    • Iterate seems to be a complex term, maybe it could be changed?
    • I note there's no condition or expression IsObstacle(X,Y) something along those lines but there is one for weight.
    • Finally, the object's comment (in object list) needs to be simpler, "faciliates" can be "helps with"

    Finally, the help file. As it's non-existant I would suggest including:

    • Details of how heuristics would work for custom transistions
    • When/if update obstacles action should be used
    • How pathfinding will work if the objects are grouped as compared to if the units are ungrouped
    • How tile weight affects agents (In some games, mountainous tiles would decrease agent's speed and usually they would go around them if it was faster overall) - or if it doesn't, how it could be used
    • What "threshold" in the add agent action means

    Darkwire Software Lead Programmer (C++ & C#)
    Please login to see this link. | Please login to see this link. | Please login to see this link. | Please login to see this link.

  • Thanks for the feedback. Did you build any new examples that used this object? If so can you share them?

    About the object:

    I can support non-square tiles. Do you think this has any practical use?

    Renaming "Agent" to "Object" would be confusing, especially since we have a condition that checks whether an object is an agent. Renaming "objective" to "destination" may be a good idea.
    What about "Loop" instead of "Iterate"?

    IsObstacle(X, Y) is a good idea, it's the same as the weight expression but may be simpler to understand.

    About the help file. I'm not sure why you say it's non-existent, do you mean that it's lacking content, or you didn't get the help file in the first place? I'm assuming it's the later since I think I cover most of what you mentioned here in the file, if that's the case you can find the PDF in this thread.

    I did mention in the "Custom Transitions" section at the beginning that heuristics will NOT work in this mode. What details do we need here?

    In the Update Obstacles section in the help file it says "If your obstacles moved around the frame and you want to update the system, use this action".

    I explain the group behavior in the "Plan Paths for Group" section. Do you suggest moving this to a different section?

    Tile weights are explained in the "Set Tile Weight" section and it should explain how its used.

    The "threshold" parameter has no significance and is there only to maintain compatibility when changes are made in the future.

    -Mokhtar M. Khorshid

  • Quote from SortaCore The Guy Who Didn't Check For New Posts

    first property, size of tile: should specify it is both width and height

    Quote from Mokhtar

    I can support non-square tiles. Do you think this has any practical use?


    Yep! For example some people might use a pentagon or hexagon map, like in the Wargame Map object.
    (sorry for not getting back earlier)

    Darkwire Software Lead Programmer (C++ & C#)
    Please login to see this link. | Please login to see this link. | Please login to see this link. | Please login to see this link.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!