Navmesh processing in .esp files still has a problem

Post » Wed Aug 11, 2010 1:50 pm

Ha! there it is! I can finally see it in one of my own cells now. But... 810? That seems a pretty low number to have to shoot for, for larger interiors... probably less than that, dunno.


Bethesda's RavenRock02 cell has 1673 triangles in its navmesh. It doesn't seem that we're meant to be limited to a number below 1000. Geck whines at 2000 so....
User avatar
Allison C
 
Posts: 3369
Joined: Mon Dec 18, 2006 11:02 am

Post » Wed Aug 11, 2010 12:19 pm

Bethesda's RavenRock02 cell has 1673 triangles in its navmesh. It doesn't seem that we're meant to be limited to a number below 1000. Geck whines at 2000 so....


Yes, I'm well aware that they exceeded the limits I was getting in that cell. Thinking about it now, I don't think it necessarily has anything to do with JUST the number of triangles in a navmesh. I think it pretty much has to be some combination of things that we haven't considered, or at least, haven't considered together. I'm willing to bet that someone, somehow, could make an 1000+ triangle navmesh, and not have the bug pop up.
User avatar
Jinx Sykes
 
Posts: 3501
Joined: Sat Jan 20, 2007 11:12 pm

Post » Wed Aug 11, 2010 10:45 am

I've had the problem with ~550-600 triangles, there's no hard limit.
User avatar
biiibi
 
Posts: 3384
Joined: Sun Apr 08, 2007 4:39 am

Post » Wed Aug 11, 2010 4:59 pm

Yes, I'm well aware that they exceeded the limits I was getting in that cell. Thinking about it now, I don't think it necessarily has anything to do with JUST the number of triangles in a navmesh. I think it pretty much has to be some combination of things that we haven't considered, or at least, haven't considered together. I'm willing to bet that someone, somehow, could make an 1000+ triangle navmesh, and not have the bug pop up.


I agree with this, and would argue that the number of triangles is Not the only factor here - but I have no solid proof of that without testing alot more cells. It must be at least 2 factors playing into what creates the error in the first place.

Furthermore, we have at least 3 ways to bypass the issue at present:

1. Duplicating a completed cell, deleting the original and re-linking the doors.

2. Using FO3Edit's MasterUpdate Mode to masterfy the entire mod list.

3. Convert our plug-in into a master file or master/plug-in combination as many of the big mods do.

There are pros and cons to each of the above fixes - but the point is, they Are fixes. I'm quite satisfied with that personally, though I'm going to keep testing as well to see if I can help further isolate the other factors.

Miax
User avatar
Rachael
 
Posts: 3412
Joined: Sat Feb 17, 2007 2:10 pm

Post » Wed Aug 11, 2010 1:50 pm

Updated Testing:

I have done a bit more testing based on PoHa's assertion that he isn't (or at least wasn't) getting the bug. What I reported earlier about the "hole" in the NAVM wasn't the cause, it was merely coincidental. I tried again without leaving any empty spaces and got the bug. I started trying with different numbers of triangles and discovered that it wasn't the number of triangles or the "hole" issue at all. It is the actual shape of the NAVM.

If we think of an X-Y co-ordinate system with X being left/right and Y being up/down, what I discovered (referring back to those two pictures) is that once I NAVM the bottom section of the test level so that the NAVM in the bottom section was about equal in "X" value to the origination NAVM (where the teleport door is) that's when the bug popped up. If I removed a few triangles from the bottom area, the bug went away. Its like if you make a loop of the NAVM (even if you don't complete the loop) the bug appears. I did this repeatedly with varying number of triangles. I was able to NAVM the area in those two pictures with as little as 55 triangles all the way up to 200 triangles with the same results. As soon as my NAVM crossed an imaginary "Y" line (of equal "X" value) that emanates from somewhere close to the teleport door (or the teleport door marker or the origination NAVM vertex - as they are all very close to one another in my test cell), that's when the bug appeared.

PoHa should be able to verify this as he has done similar testing. PoHa, did your NAVM between the 404 triangle test (which worked) and the 810 triangle test (which failed) cross an imaginary "Y" line that emanated from something like I described (again the teleport door/marker or origination NAVM Vertex? This would explain why many cells do not exhibit the bug as those cell's NAVM probably don't cross back over this "line".

My next tests will be to move the teleport door marker to different locations in the cell and see if that changes the imaginary "Y" line. I am pretty sure that the bug is not related to a COC marker as I have other cells without them that still manifest the bug. If moving the teleport marker does not affect the location at which the bug appears, then I would have to say that the imaginary "Y" line is based on the origination NAVM vertex.
User avatar
victoria gillis
 
Posts: 3329
Joined: Wed Jan 10, 2007 7:50 pm

Post » Wed Aug 11, 2010 9:03 am

I'm afraid the Y line theory doesn't hold up in my cell. When I added triangles to go from 777 to 811, I crossed a Y line that I had already crossed earlier.

If this works:

1. Duplicating a completed cell, deleting the original and re-linking the doors.


Then it leads me to believe that there's something, somehow that we're doing in the navmesh that it just doesn't like; that being because you'd have to recreate the navmesh in the new cell, no? A particular setup of triangles (ie, too narrow a path, too thin of triangles, or too large of triangles; perhaps in a completely different location from the test area, just so long as its in the navmesh somewhere) + a certain number of triangles as determined by some wonked out formula, might cause it. Just another theory to throw in our little bucket.

[tests something]

Dang... I did a balance for optimization on the 811 navmesh, which changed it down to 770 and got no bug.

Duplicated a room, and navmeshed the bottom floor

845 triangles: no bug
User avatar
Maya Maya
 
Posts: 3511
Joined: Wed Jul 05, 2006 7:35 pm

Post » Wed Aug 11, 2010 6:50 pm

I tried the Balance for Optimization on my small test cell, but the bug remained.
Hmm... I'll start playing with your test cell PoHa, and see if I can't find some (any) similarities as to when the bug starts to manifest.
User avatar
Chris BEvan
 
Posts: 3359
Joined: Mon Jul 02, 2007 4:40 pm

Post » Wed Aug 11, 2010 5:40 pm

Hey, PoHa. I was able to reproduce the "Y" line test with your cell quickly. The layout of the cell from your previous posted link didn't have any area that looped back toward the teleport door. So that cell shouldn't (and didn't) produce the bug in its native format. I added a hallway that looped around the back to test my theory. I only had to NAVM a short distance to reproduce the bug. I have included a link below to your updated "TESTCELL". That ESP will not produce the bug. All you have to do is extend the NAVM one full hallway piece to re-produce it yourself. Note that when you do extend the NAVM, it will be equal to or "behind" your teleport door on an "X" axis. Your test cell and my test cell are oriented 90 degrees different (Your entrance is at the bottom, mine was on the left side). So your's needs an "X" line, while mine needed a "Y" line for referencing where the NAM crosses back. I can produce and remove the bug at will using this technique. Removing the offending NAVM triangles does remove the bug (not that the triangles themselves are the culprit, only where they are located in reference to the teleport door/marker/triangle).

I would be curious as to what you did to get the bug to manifest during your testing. Did you add new dungeon pieces that weren't in the linked esp?


http://www.megaupload.com/?d=WMR2G7TM

EDIT: This can't be the only "thing" that causes the bug to manifest, as I have other cells that do not loop around behind the "entrance" area but still have the bug. These cells do have other looping sections though. More testing is required.
User avatar
Chloe :)
 
Posts: 3386
Joined: Tue Jun 13, 2006 10:00 am

Post » Wed Aug 11, 2010 9:39 pm

Yet, when I was duplicating vault pieces and adding more triangles to the navmesh, I never looped back, along either axis, and got the error.

Although... after a balance for optimization, the error went away...

[tests]

(Added another room, which runs past the door's X axis, and navmeshed a ways in; made sure that the navmesh crossed the door X line)

858 triangles: bugged

(Got rid of the triangles that were past the door X axis)

854 triangles: not bugged

Soo... it seems you have something.
User avatar
Genevieve
 
Posts: 3424
Joined: Sun Aug 13, 2006 4:22 pm

Post » Wed Aug 11, 2010 9:58 pm

Hey Yall..

It's a big deal that now we're finally to where we can have a small cell that works, then add a couple triangles, and that induces the bug, and we can really just see it happen plain and clear.

One of us should do this:

Make a level that is as small and simple as possible in which the problem can be caused. Save two versions of it to hard drive. One version will have the navmesh made all the way up to where the problem does not happen, but is about to. Other version will be that, plus, it has the extra triangle(s) that breaks the .esp. Then, a text explanation of just how to create the problem goes with it.

Others among us should verify that the problem is duplicable with what's in the zipfile - - meaning, that if someone sends someone else the zipfile, that person can test the version of it that does not fail and it works as expected, and then when the person makes the edit to that level so that it corresponds with the navmesh in file #2, they clearly induce the bug.

Then, that stuff should then be packaged up and gotten to Bethesda. I feel sure that whoever created and continues to work on their navmesh system would find it interesting, maybe even interesting enough to fix it for us :>. But let's not waste his time, let's get it perfectly duplicable for him.

The exact reasons for the problem are interesting to try to find out on our own, but I am certain that Bethesda's navmesh guy is much better at it than we are. Like, to a whole different scale of better.
User avatar
Heather beauchamp
 
Posts: 3456
Joined: Mon Aug 13, 2007 6:05 pm

Post » Wed Aug 11, 2010 6:04 pm

What would be an interesting test is if someone could try this on different versions of the game and/or GECK to see if a patch created the error or not.
User avatar
Céline Rémy
 
Posts: 3443
Joined: Sat Apr 07, 2007 12:45 am

Post » Wed Aug 11, 2010 5:47 pm

Hey Yall..

It's a big deal that now we're finally to where we can have a small cell that works, then add a couple triangles, and that induces the bug, and we can really just see it happen plain and clear.

One of us should do this:

Make a level that is as small and simple as possible in which the problem can be caused. Save two versions of it to hard drive. One version will have the navmesh made all the way up to where the problem does not happen, but is about to. Other version will be that, plus, it has the extra triangle(s) that breaks the .esp. Then, a text explanation of just how to create the problem goes with it.

Others among us should verify that the problem is duplicable with what's in the zipfile - - meaning, that if someone sends someone else the zipfile, that person can test the version of it that does not fail and it works as expected, and then when the person makes the edit to that level so that it corresponds with the navmesh in file #2, they clearly induce the bug.

Then, that stuff should then be packaged up and gotten to Bethesda. I feel sure that whoever created and continues to work on their navmesh system would find it interesting, maybe even interesting enough to fix it for us :>. But let's not waste his time, let's get it perfectly duplicable for him.

The exact reasons for the problem are interesting to try to find out on our own, but I am certain that Bethesda's navmesh guy is much better at it than we are. Like, to a whole different scale of better.


I agree completely. I don't know if the esp that is linked in my last post is small enough for what your saying, but it is setup just like you have said. It does not show the bug. If you add 1-2 triangles, it will break. Try it out and see for yourself. The instruction are in my last post as well.
User avatar
Mark Hepworth
 
Posts: 3490
Joined: Wed Jul 11, 2007 1:51 pm

Post » Wed Aug 11, 2010 8:36 pm

What would be an interesting test is if someone could try this on different versions of the game and/or GECK to see if a patch created the error or not.


It exists in all versions of the game, including the CD-installed, unpatched one, I tested for exactly this.

I can't speak for the earliest version of the GECK but it's done it for at least the last 2 versions.
User avatar
Toby Green
 
Posts: 3365
Joined: Sun May 27, 2007 5:27 pm

Post » Wed Aug 11, 2010 5:38 pm

I agree completely. I don't know if the esp that is linked in my last post is small enough for what your saying, but it is setup just like you have said. It does not show the bug. If you add 1-2 triangles, it will break. Try it out and see for yourself. The instruction are in my last post as well.


I've found that the cell can be used this way, but I had to extend that section of navmesh 2 sections down, not 1. And, deleting the offending new triangles does restore the navmesh's function, so that's cool.
User avatar
Neko Jenny
 
Posts: 3409
Joined: Thu Jun 22, 2006 4:29 am

Post » Wed Aug 11, 2010 8:26 am

So we have 100% reproducible errors. Can someone with contacts at Beth PM this thread so we can get an official response?
User avatar
Claire Mclaughlin
 
Posts: 3361
Joined: Mon Jul 31, 2006 6:55 am

Post » Wed Aug 11, 2010 5:24 pm

They are already looking at it.

Per Tarrant's post, we should summarize Good and Bad copies of the test cell, write up a bug report and post it for them.

Great work on finding the bug! :)

I re-iterate for all of us who have built cells with complex Navmeshes, at least we can "fix" the big through cell replication/replacement. Heh, kinda funny, sounds like Gene Therepy.

Miax
User avatar
Steven Hardman
 
Posts: 3323
Joined: Sun Jun 10, 2007 5:12 pm

Post » Wed Aug 11, 2010 10:41 am

So we have 100% reproducible errors. Can someone with contacts at Beth PM this thread so we can get an official response?


I've put together a zipfile which I think will allow anyone with GECK understanding to duplicate the problem themselves. I'm uploading it now, but because the file contains video, it's going to be about half an hour for it to finish (my upload speeds from home are ass). I'll post back when the upload is complete.

When it's done uploading, I'd like for a couple people to download it and see if they can use it to create the problem themselves. Assuming it does work for people other than me, we could at that point get it to Bethesda.

Assuming that the zipfile I've put together works as we're hoping, I don't think it's a matter of waiting for a response to a forum thread. We just wait for next patch and either a cool surprise will be in it, or there won't be.

When it's done uploading, it will be at http://www.finhosting.fi/~fallout/downloads/HowToBreakNavmesh.zip . But' it's not done yet, and you can probably download faster than I can upload, so you're gonna end up with a truncated file if you try to grab it before it's up all the way.
User avatar
brenden casey
 
Posts: 3400
Joined: Mon Sep 17, 2007 9:58 pm

Post » Wed Aug 11, 2010 12:48 pm

Just upload the video to youtube seperately? :P
User avatar
Hayley O'Gara
 
Posts: 3465
Joined: Wed Nov 22, 2006 2:53 am

Post » Wed Aug 11, 2010 6:33 am

I re-iterate for all of us who have built cells with complex Navmeshes, at least we can "fix" the big through cell replication/replacement.


*gulp* I can't just copy my cell and delete it... the deletion being the bigger issue.. the REFs don't copy over and I'm referencing the refs elsewhere..

..Assuming that the copy-delete truly works, even for a complex level like mine, that's so harsh to do in my case that I'd sooner wait for the underlying problem to be fixed and then make whatever changes are necessary at that point.

I think that I'd rather re-navmesh the whole thing by hand than delete my cell and then have to figure out which invalid condition in which AI package is causing the GECK to crash.
User avatar
Tai Scott
 
Posts: 3446
Joined: Sat Jan 20, 2007 6:58 pm

Post » Wed Aug 11, 2010 4:26 pm

Just upload the video to youtube seperately? :P


Nah... this way, people can watch the videos and pause and rewind and do whatever to them without svcking bandwidth down more than once. And, these videos aren't of interest to the entire world.
User avatar
Red Bevinz
 
Posts: 3318
Joined: Thu Sep 20, 2007 7:25 am

Post » Wed Aug 11, 2010 8:33 am

And, these videos aren't of interest to the entire world.


Neither is most of the stuff on Youtube! :rofl:
User avatar
Jason King
 
Posts: 3382
Joined: Tue Jul 17, 2007 2:05 pm

Post » Wed Aug 11, 2010 7:24 am

*gulp* I can't just copy my cell and delete it... the deletion being the bigger issue.. the REFs don't copy over and I'm referencing the refs elsewhere..

..Assuming that the copy-delete truly works, even for a complex level like mine, that's so harsh to do in my case that I'd sooner wait for the underlying problem to be fixed and then make whatever changes are necessary at that point.

I think that I'd rather re-navmesh the whole thing by hand than delete my cell and then have to figure out which invalid condition in which AI package is causing the GECK to crash.


I'm with Tarrant on this one as my mod is just full of NPCrefs that are also refed elsewhere. I'd prefer the ESMify fix over the dup/delete fix. I'll uust live with the bug until such time as the mod is ready for release, then ESMify it. If a true patch fix comes, I'll modify the mod then accordingly.
User avatar
Myles
 
Posts: 3341
Joined: Sun Oct 21, 2007 12:52 pm

Post » Wed Aug 11, 2010 12:30 pm

*gulp* I can't just copy my cell and delete it... the deletion being the bigger issue.. the REFs don't copy over and I'm referencing the refs elsewhere..

..Assuming that the copy-delete truly works, even for a complex level like mine, that's so harsh to do in my case that I'd sooner wait for the underlying problem to be fixed and then make whatever changes are necessary at that point.

I think that I'd rather re-navmesh the whole thing by hand than delete my cell and then have to figure out which invalid condition in which AI package is causing the GECK to crash.


Assuming nothing bud, this was tested by two people and confirmed - try it yourself! :)

As for re-navmeshing, that depends on how complex the navmesh is versus how many references have to be re-clicked. Certainly it will depend on the mod author and the complexities of the mod.

I don't relish you having that situation, I was merely stating that I'm grateful the option at least exists eh?

Miax
User avatar
A Dardzz
 
Posts: 3370
Joined: Sat Jan 27, 2007 6:26 pm

Post » Wed Aug 11, 2010 2:56 pm

The file is up, please let me know how it works out!


http://www.finhosting.fi/~fallout/downloads/HowToBreakNavmesh.zip


And Miax, on the copy/delete/ fix... it sounds great if you know about it during level building and can use it then. Then meaning, BEFORE you put all the refs in and set up a gazillion AI packages that reference them.

It svcks have the GECK crashing every time you try to look at the AI packages. The GECK crash is THE reason I don't want to do it. If you have that kind of bad condition in a package like that, you can't even examine the list of packages in the GECK, you get insta-splat. You have to guess the correct NPC that the package lives in, view it there, and edit it in that spot.

Oh.. and if the package isn't in an NPC... *wonders*.
User avatar
:)Colleenn
 
Posts: 3461
Joined: Thu Aug 31, 2006 9:03 am

Post » Wed Aug 11, 2010 2:13 pm

I am downloading it now. At 122Kb/sec it going to take a while.....
User avatar
Christie Mitchell
 
Posts: 3389
Joined: Mon Nov 27, 2006 10:44 pm

PreviousNext

Return to Fallout 3