PerViamInvenire

Core Concept
This library is a thoroughly reworked version of the multi-threaded pathfinding algorithm originally developed for the Minecolonies modification. During adaptation, citizen-specific features were replaced with universal flags managed through callbacks and internal feature registries.
The standard navigator creates a cache of chunks between the starting point and potential targets, then initiates calculations in a thread pool. The algorithm is based on an enhanced version of the A* method for finding optimal routes. Block weight configurations can be customized for different entity types using the provided API.
Vanilla Compatibility
By default, the mod replaces the standard ground navigator for all vanilla mobs that travel on land surfaces. However, functionality for flying and climbing creatures is not yet implemented.
Supported Entities:
- Creeper
- Drowned
- Enderman
- Evoker
- Illusioner
- Iron Golem
- Mooshroom
- Skeleton
- Stray
- Vex
- Villager
- Vindicator
- Wandering Trader
- Witch
- Wither Skeleton
- Zombie
- Zombie Villager
Development Status: The project is in alpha testing stage. Users should be aware that not all possible scenarios and mob behavior features have been fully tested. If you find discrepancies with original mob behavior, please create a bug report.
Mod Compatibility
Any mob using the standard ground navigator can be easily integrated by adding it to the datapack tag: per-viam-invenire:replace_vanilla_navigator. This will allow PerViamInvenire to automatically replace the navigator for entities in the specified list, applying optimal values when necessary.
Mod developers can directly utilize the PerViamInvenire API to achieve full compatibility.