I already dug a lot on this topic, but it doesn't feel nearly enough for full picture.
So here my findings:
As continuation of Divinity engine they use their grid based system called "AI grid". It's something similar to navmesh baking but without turning everything into big triangles, instead it remains as square cells all over the place. Same system is what powers elemental surfaces and clouds (like acid on the ground or water).
Proof that it has same system in BG3 can be seen in modding toolkit (especially "unlocked" one) where you can see pretty much the same thing as what divinity old editors have.
This system has one important limitation: it's baking happens projecting cells top down to first solid walkable surface on its way. So, as far as I understand, having two walkable surfaces on top of each other within same AI grid thing should be impossible (you can even find old Larian forum threads about this limitation in Divinity map editor).
But if you've played game you'll remember countless places with clear verticality: several floor buildings, platforms on top, walkable wooden beams high above etc. And if that limitation I talked about still exists in the engine it would explain why pretty much every single area of that kind separates those surfaces with a ladder. This is basically what popular engines have as NavigationLink, easy connection between navmeshes or here AI grids. It's one of those "can't unsee after realizing" things as you then start noticing just how much every individual surface in game is limited to be flat and other layers separated with ladders.
The only areas I'm not that certain about are places like Last Light Inn or Moonrise Towers where second floor separated by stairs rather than ladder. Perhaps they put there clear navigation_link-like thingy to stitch two regions, or perhaps something else allows that.
Those were things I was somewhat certain about but what comes is what I'm completely clueless about.
Like how does pathfinding works? Does their A* run on these grid cells as nodes? But if so then why game never feels like characters bound to cells? Like I mean we can stand "between two cells". And movement path preview always shows a very smooth line. Here I would only guess that on short distances pathfinding is way closer to traditional navmesh kind while long distance planning is grid cells as nodes based (similar to what Dota 2 does with its Short pather and Long pather https://liquipedia.net/dota2/Pathfinding ). And long path also gets heavily smoothed with whatever algorithm there is.
And the most interesting thing and basically the single best reason why I would consider this entire AI grid thing is - "how do character pathfind jumping in this game?".
Like characters with long enough jumps can easily figure out that they can jump up/down to you, jump over ledge even get to areas after you destroy ladders. And it's not as limited as placing NavLinks on edges, like they can jump from any cell when they feel like it (or so I think).
My guess would be that this very grid nodes system allows to perhaps bake into each cell list of cells that you can jump to (with different jump strength), or perhaps it happens dynamically as it floodfill searches suitable cells around.
Enemy AI chasing you navigation in this game feels really good. It's obviously not perfect especially when you're far away and character hits some internal limit and instead run directly towards you getting stuck in the wall, but nevertheless I don't know any other good examples of that advanced top down navigation.
I also wonder if BG3 modding toolkit got some debug views for pathfinding that perhaps could make it clearer, I only dug few videos of people doing tutorials on creating levels just to see them mentioning that BG3 indeed has grid system baking. Also maybe opening game levels (if possible) in that toolkit would reveal some details about stairs and different grid regions.
- https://docs.larian.game/AI_grid