Open cpdef opened 4 years ago
Ok didn't know somebody worked on it already. But the last commit seems to be very long ago, so we would have to check, which parts of it can be used. I'll look into that.
It shouldn't depend on map size since all maps can suffer from pathing issues.
didn't got that one? Doesn't every algorithm take more time for bigger sized maps?
What @KJeff01 means is that If the new algorithm is better, then it should be enabled regardless of map size.
I researched this a bit yesterday, and Perl99:s PR is essentially what we should do. It's also exactly the same algorithm as this book (as Perl99 states himself):
Then, for each path that needs to be calculated, if the unit and the target are in the same segment, that segments flow field is generated.
If they are not in the same segment, a traditional A* path is construed BETWEEN PORTALS. This decides what segments the unit will traverse to reach its goal. It also means that "the flow field for reaching portal A from portal B in the same segment" is cacheable.
Well that's the theory of it, the code seems to be doing this, but perhaps I can try to understand exactly what's going on as it seemed to be misbehaving when the team tried it out.
@cpdef do you want to take this on? I could do this initial test (and merge from master as well) and return here with the results if you want.
Can you make the initial test and then if you finished it the person, which has time and wants to do it can start it? I have at moment a few other things to do, but maybe i finished them until then?
I just looked through the cleanup branch and it's purely cosmetical, I believe those kinds of PRs should be merged only when fresh.
Furthermore it's not related to the pathfinding at all, only some movement logic. Can we disregard it in this issue?
@cpdef absolutely
Describe the feature you'd like first general ideas from people on discord:
now two of my ideas:
Describe why do you think it is needed