VANILLA Errors & Specs
= loading WhiterunExterior04 in the CK triggers the "horse errors" (MODELS:Bone Harness Right/LeftBone). This cell is the main gate to Whiterun.
- there is no Vanilla navMesh on the interior of the walls/gate.
= loading WhiterunExterior05 triggers a texture error (like the grey-head bug), then a MODELS:Could not find the model path\00073FD4.nif; also for 00073FD8.nif, 0007C4D3.nif, 0007C4D2.nif, another texture error, anothr model error for 00073FD4.nif, another one just like it, 73FD8, 7C4D3, 7C4D3, 7C4D2, 73FD4, 7C4D3, and the horse errors (not a marker, just the two harness)
- WhiterunExterior05 is the only cell in Whiterun which has no nilla-nav whatsoever. This is the cell which contains the front door of Breezehome.
WHITERUN EXPERIMENTS
("=" indicates the results testing in-game)
1a
- placed two doors near the main gate, linked em, moved one and its marker inside the gate (yet in the same cell
- created navmesh in that cell (wrExt04) and three others (wrExt01 & 02, and wrExt05 being my expected troublemaker)
1b
- finalized all four cells; 04, 02, 01, 05 (counter-clockwise from the main gate)
- no errors, all cell-borders merged to solid-green
- save the ESP, navBar closed
1c
- created the Delphine clones, placed 9 of them (3 in 04, 2 in each of the other cells)
= everything worked fine, except one delphine from 02 spawned outside the walls (about 20-30ft away fro mwhere placed); all others still sandboxed in the cells but had wandered slightly (though still on custom navMesh, except the one outside the wall)
2a
- same setup as Test One, except not saving the ESP until the very end (with navBar closed)
- also adds some dwemerFacadeBridges because Whiterun's interior landscape is too rough for NPCs to navigate correctly
- finalizing showed no errors, saving (navBar closed) triggers the following error:
[[PATHFINDING: Precomputed path init - Could not resolve location for Road Marker 000f077d, please verify its placement]]
[[PATHFINDING: BSNavmesh::GetMatchingEdge() for (Navmesh 0x00089ffd, Tri 5, Edge 0) - Bad matching triangle index: Navmesh 0x0010f682, Tri 15]]
same for 0x000ea081, Tri 299, Edge 0 for index 89ffd, Tri 11
same for 0x01000d77, Tri 0, Edge 0 for index ea081, Tri 310
same for d77, Tri 9 Edge 1, Index 0x0010f682 Tri 9
= everything same as above except - the 02 Delphine stayed where she was supposed to, BUT ALL THREE Delphines in 04 spawned outside the wall (ie: on Vanilla navMesh)
3a
- same as Test Two except saving before any navMesh has been made
- adds patrol markers and places actors in four cells with them (one crosses a cell-border and the other patrols inside the cell; for each cell, plus one extra actor in 04; total of 9)
- each patrol marker is then linked to a static deer skull, one placed for each patrol marker
= on first-arrival actors placed in cells with Vanilla navMesh spawn inside it instead of on the spot without navMesh where placed, actors placed in the cell with no navMesh at all just sandbox in-place... and wander slighty as expected
3b
- creates the navMeshes in all four cells, saves with navBar closed no errors
3c
- moves the vertices close enough to merge cell-borders, tweaks all the rest a little, saves with navBar closed no errors
3d
-finalizes them in the 04ccw order as above, no errors
- saves with navBar closed, no errors
= the three actors in 04 spawned outside the wall, all others spawned in the places they were supposed to, none of em patrolled while some tried to move but seemed a little stuck after a step or two
3e
- adds patrol idle time .25 to each marker
= same as 3d except one of the 04 Dels spawns inside
3f
- deleted the sandbox AI, added the defaultMasterPackage
= first-arrival all of them were patrolling as they should be; though it took several seconds for the AI to fully kick in, before that they seemed to studder and bump into each other
= fast-trav-return finds two from 04 outside the gate (facing the wall, not moving), the other one inside the next cell (05, not moving), and one in 02 wasn't moving either; all others were patrolling normally
= a second fast-trav-return finds three outside the main gate now, but the third isn't the one from 04, it's the one from 02 which was standing still before (the one whose patrol crosses into 04); the one from 04 just standing in 05 was there again (its patrol took it into 05
*** It seems WhiterunExterior04 is the Anathema Cell for Whiterun.
4a
- uses the ESP from 3c, changes the patrol idle time to .25, changes the AI tothe master package
4b
- finalizes the cells from 05cw, saves with navBar closed
- when saving, triggers the 'precomputed path init road marker f077d' error
= only actors placed inside 04, and have patrols that enter 04 are broken
4c
- moves one of the actors from 04 to outside the gate (onto Vanilla navMesh, patrol inside it too)
= the one placed in nilla-nav keeps patrolling normally; while the others placed in the same cell, but on custom-nav, spawn on nilla-nav after fast-trav-return.. while the ones with paths going into 04 were just standing in place inside their other cells
= also, of the two that spawn outside the gate, one of them keeps trying to walk through the wall (bumps into it, turns around a little, then bumps into it again, forever)
= a second fast-trav-return finds the outside spawner that just stands still, standing still inside 02; all else is the same
5a
- uses the ESP from 4a, finalizing the cells 05cw, saving with navBar open, same path-init error as above
= same results as 4b
5b
- deleting the custom-nav in 4a triggers the 'bad matching triangle error (0x01000d8c Tri0 Edge2, index 01000d8d Tri15) simply by scrolling over a little (not even saving)
- rebuilt the 04 navMesh, finalized no errors
- saving (with navBar open) pops up the road marker errors, and the bad matching triangle index error (01000d8f Tri10 Edge1, index 10f682 Tri19)
= one of the 02 actors stood still (the one that should patrol into 04) on first arrival, fast-trav-return finds all four actors with AI in 04 outside the gate
= second ftr finds the 05 actor standing still in 05.
*** It seems that actors whose AI enters an Anathema Cell will either spawn in their original cell or in the Anathema Cell (inside Vanilla navMesh), seemingly toggled between the two on alternate ftr's.
5c
- added mannequin scripting to the actors (to force them to their markers onCellAttach)
- saving with navBar open, it pops up the normal error, and the 5b bad matchtri error (same one), AND another one (01000d8c Tri2 Edge2, index 10f682 Tri4), and another (d8c Tri4 Edge2, index f682 Tri 2)
= in-game, first-arrival had most working normally, except the cross02-04 and 04-05
= ftr finds the inra04 outside the gate, the 04-02 in 02 (then walks a bit trying to find path, can't find it so stops), and the 05-04 in 05 (standing still)
**= activating them resets their position; if AI is ALL in 04 then it works, if AI crosses cells then it stands still in other cell (or walks a bit to find path, then stops)
= second ftr finds one of the intra04's still in 04 patrolling, others are stopped/searching in other cells, and one outside gate
5d
- running a checkNav on 04 no errors, on 05 triggers Pathfinding one common edge error.
[[PATHFINDING: Navmesh 01000d8c Cell 'WhiterunExterior05' (000095FB)(5,-2) in WorldSpace 'Tamriel' (0000003C) and Navmesh 01001854 Cell 'WhiterunExterior04' (000095FC)(4,-2) in WorldSpace 'Tamriel' (0000003C) have at least one edge in common but are not connected. Are the navmeshes Finalized?]]
then shows no more warnings after clicking yes
*** it BROKE the merged cell-borders between 04-05 AND 04-02 (ONLY the custom navMesh merges.. the Vanilla ones in 04 remained intact); another checkNav shows same error
- refinalized no errors, checkNav all the cells no errors, saving with navBar open only the marker error
= first-arrival had everything working perfectly, ftr had the same except the intercell patrollers to 04 were stuck in their other cells (one was searching)
= second ftr finds one intra04 outside the gate, 2 in 02 and 1 in 05 (all stuck, not even searching), with all the others patrolling normally
***looking at the ESPs in TESvSnip:
- NVMI is a subrecord under the NAVI (which is one record containing a subrecord for each navMesh reference contained in the plugin)
- each NVMI has the FormID of the navMesh it points to at the very beginning of the subrecord
- the byte immediately after it (the 5th byte) seems to indicate the presence of doors (02) or not (00), I don't know what 04 does (maybe 4 doors?)
- all NVMIs seem to have a common block going backwards from the 8th byte from the end (00 00 3c a0 e9 a5 3c, where the last 3c is the 8th from end)
- 16, 17, 18, 19th bytes from beginning seem to be the cell where it's located (2 bytes are cell coords)
- then four groups of zeros, an 02, then three groups of zeros (00 00 00 00 02 00 00 00)
- then it has the FormIDs of navMeshes it is connected to (back to back)
- next, navMeshes with doors seem to have their data in there, before the aforementioned common block (8th from the end)
- NVMI always ends in 00 00 00, then the cell coords (2bytes each) eg:fe ff 04 00, next to fd ff 04 00, fd ff 05 00, and fe ff 05 00 (test cells are 5,-3; 6,-3; 4,-2; 5,-2 NOT respectively)