PathFinder status
Hello, the zombies are really polished now. I can't reproduce the air hanging error anymore, so I think it's fixed. Can you?
They don't freeze anymore, but at daylight, will not charge at you when they're hiding in the shadows unless provoked, this behavior will later be tweaked.
Reply
Thanks given by:
About the zombies following second best path, the correct behavior would be for the zombie to check if there is a line of sight to the player, and then get the best/second best path (vanilla does that, afaik) as long as the player is in some nearby area.
Reply
Thanks given by:
Update: The new AI and PathFinder branch has been merged and is now part of the official MCServer.
Reply
Thanks given by:
xoft Wrote:Make Step() call the cWorld::DoWithChunk() function, then in the Item() function call the SingleStep() several times, passing the cChunk over to it for direct querying. Note that once you have a cChunk instance, you can simply get its neighboring chunks and thus query the neighborhood rather efficiently. I believe this would be such an improvement that it would invalidate the need for a cache completely.

Problem: The A* algorithm is sometimes jumpy: It won't necessarily query one chunk and then its neighbors, it could jump lots of blocks at a time.
Reply
Thanks given by:
It's still faster to do what xoft wrote because the slow bit is DoWithChunk, querying neighbors within DoWithChunk is cheap. The problem with that is that whilst it increases throughput, the depth limit becomes much more important because you hold the ChunkLayer lock for the entire time.
Reply
Thanks given by:
Deleted no longer relevant questions and submitted a pull request here. Please review.
Reply
Thanks given by:
It's not so much about the locks - they are locked during the mob ticks anyway. It's about the chunk lookups. Each DoWithChunk() needs to locate the chunk within the world, which is not exactly trivial; if you do that for each queried block, it quickly becomes the bottleneck.
Reply
Thanks given by:
Oh, ok. You're referring to the name of the commit only, correct?
Is the PR much better performance wise?
Reply
Thanks given by:
I have no idea; I'd expect so, but unless someone actually measures the performance, there's no way to know.
Reply
Thanks given by:
It's me or mobs can jump fences now?
Reply
Thanks given by: LogicParrot




Users browsing this thread: 4 Guest(s)