Suggestion for new Pathfinding Behaviour

Discussion and feedback on Construct 2

Post » Fri Feb 01, 2013 12:47 am

I'm using one of the pathfinding plugins, and would like to switch to use one that would allow uploading to the arcade.

But mine allows choosing the fastest route or the stealthiest route, sticking to the trees along the way. So I would have to wait for the value additions.

Mine is isometric, so I copy the screen to a hidden layer as a grid, and run the pathfinding on it. Then the results are followed on the big map.


edit: to clarify how I used the points, grassland had a higher cost than the trees, so on stealth mode, the trees were preferred. Paradox2013-02-01 00:50:52
B
200
S
51
G
30
Posts: 897
Reputation: 36,496

Post » Fri Feb 01, 2013 5:27 am

[QUOTE=tanoshimi]For example, a "wall"-type obstacle would be completely impassable, a "rough terrain"-type obstacle would not be impassable, but any route that crossed a cell containing that obstacle would be given a higher path cost, making it less favourable than a (perhaps longer in distance) route over lower cost terrain.
[/QUOTE]

This is exactly what I came here to suggest.

My second (related) suggestion would be to include logic that forces the path to always intersect a certain type of obstacle, rather than avoid it. For example, so pedestrians must always follow a sidewalk, or a car a road.
B
14
S
6
G
1
Posts: 8
Reputation: 1,559

Post » Fri Feb 01, 2013 5:47 am

i have visions of zombies swimming in my head imagining pathfinding + some way to do a circling behavior.
B
14
S
6
G
2
Posts: 136
Reputation: 3,210

Post » Sat Feb 02, 2013 7:41 pm

Wow, thanks for making an "official" pathfinding module. This is a huge help to my current project.

I do have a suggestion for a possible change to the functionality. I'm making an isometric game, so to get the proper illusion of movement on an isometric grid, I need to set the vertical movement rate separate from the horizontal rate.

Would this be something supportable with the pathfinding behavior?

Nice work, everyone, and congrats on the Steam release!
B
3
G
2
Posts: 12
Reputation: 699

Post » Sat Feb 09, 2013 9:31 am

@Ashley: R118 has brought some very nice additions to the behavior.
Nevertheless, it brought an unexpected change on one of my project.

It seems that in r117, the behavior did not move in diagonal, which suits fine my project but in r118, it does.

Would it be possible to add a property/action to set if the algorithm should allow/disallow diagonal movement please ?
New to Construct ? Where to start

Image Image
Image Image

Please attach a capx to any help request or bug report !
Moderator
B
247
S
85
G
40
Posts: 6,999
Reputation: 57,793

Post » Sat Feb 09, 2013 2:11 pm

Just a thought.
Would it be better if this were split up into two different behaviors?
A path finder, and a path movement?
Image Image
B
161
S
48
G
90
Posts: 7,356
Reputation: 66,767

Post » Sat Feb 09, 2013 5:58 pm

A delayed parenting system would be neat.

A few of the game engines I have worked on they have a feature called "boids" or "flocking".http://en.wikipedia.org/wiki/Boids

It would be extremely useful for fish or birds (I think boid is a joke name for how some Americans pronounce birds).

It is also useful for moving large numbers of objects like groups of infantry for a Real time strategy game (RTS) or moving a bunch of mobs in a tower defense game with dynamic paths and dynamic objectives.

One of the engines has a promotion system to choose the alpha boid ,(the one that all the others will seem to follow). After the alpha gets destroyed, it would choose the next boid to take over the overall flock's path.

If it is not too much trouble can we have something like this too?
B
28
S
8
G
4
Posts: 767
Reputation: 5,940

Post » Sat Feb 09, 2013 6:05 pm

@jojoe Check out this custom plugin. :)
B
24
S
8
G
7
Posts: 756
Reputation: 7,192

Post » Sat Feb 09, 2013 7:55 pm

[QUOTE=vee41] @jojoe Check out this custom plugin. :)[/QUOTE]

Thank you so much :)

I added a bit in that thread too about the alpha system.
B
28
S
8
G
4
Posts: 767
Reputation: 5,940

Post » Sun Feb 10, 2013 2:02 am

Maybe these are dumb suggestions because they are too easy, too complicated to implement or they can be done actually(I suck at programming :D) but still:

1) It would we awesome if one can make the sprites/objects don't collide/overlap with others instances of the sprite/object. Making the sprites themselves obstacles or solids doesn't work (don't know why)and while the flock idea has some nice uses it wont help if someone wants his individual rts tanks going to different places. (*)

2) This is harder probably: if the destination is unreachable why don't make the sprite/objects go to the nearest empty/reachable place instead. Something like "find nearest path to X,Y"

(*) Using "on collision" + wait 4 the further instance it gets a little better but they still overlap randomly and sometimes even trespass solids.
B
9
S
5
G
4
Posts: 5
Reputation: 2,716

PreviousNext

Return to Construct 2 General

Who is online

Users browsing this forum: No registered users and 10 guests