• You've discovered RedGuides 📕 an EverQuest multi-boxing community 🛡️🧙🗡️. We want you to play several EQ characters at once, come join us and say hello! 👋
  • IS THIS SITE UGLY? Change the look. To dismiss this notice, click the X --->

Request - MQ2Nav Beta by Brainiac and Donation Kick Starter. (4 Viewers)

Status
Not open for further replies.
Alright, after spending like two weeks on the problem, I've finally fixed MQ2Nav to work with innerspace/isboxer loaded. There were some really strange issues and I believe I've finally worked through all of them. I've updated the repository so Maskoi should grab the latest code and make a new build for you.

Other changes include some tweaks to the ui and random bug fixes.
 
Fixed some bugs with path finding:

* Fixed path following algorithm (and added some debug data to the screen for pathing). Characters should bounce aroundin place far less!

Fixed a few other bugs:

* Crash when zoning while model data was loaded
* Crash when launching EQ with MQ2Nav loaded

Will look to maskoi to release an updated plugin
 
I've run into a problem with MQ2Nav since the last updates. If it is active when a character zones, it crashes and throws up the popup.


Nav_crash.jpg


If you select Ignore (several times) sometimes it won't crash. If you select anything else, it will crash the client.
 

Attachments

  • Nav_crash.jpg
    Nav_crash.jpg
    54.9 KB · Views: 5
Hmm, Im running the latest 3/24/16 build of MQ2(Redguides) with the latests ISboxer. If I load up the game using ISboxer and load my six instances, everything works fine. When I type /plugin MQ2nav load, it crashes that instance.

Do I need to do a meshgeneration first? or load the plugin first?
 
I have the same issues with ISBoxer. If I generate a fresh eqclient.ini it will work just fine. I haven't gone through to debug to find out which EQ setting breaks it for ISBoxer. I've been running my puller with a WinEQ2 window and the rest of my crew with ISBoxer, annoying, but it works for now.
 
I hit show navmesh in game and it crashes when it gets to 13 % appears to be working though as long as I don't try to show nav mesh,
update:he started pulling and it crashed
I don't use anything but mq2 and kissassist.

any ideas? I'm kinda not able to use it at this time because of this
 
Last edited:
When this was first released, I was able to load and run with mesh generator etc. I had some issues with resolution of the mesh (I think) that I had pullers getting caught on large tree's returning to camp. I stopped using it and then we had patches since. I originally was using WinEQ at that time and since got ISBoxer in place due to the number of teams and accounts I was having to load and unload. With ISBoxer on all four computers I use, if this plugin is loaded will crash as a session loads. If session is started first and then load plugin from within game, that session will crash immediately as it loads. I've not tried to debug or log anything but this is repeatable every time I do it.

Rustycat
 
When this was first released, I was able to load and run with mesh generator etc. I had some issues with resolution of the mesh (I think) that I had pullers getting caught on large tree's returning to camp. I stopped using it and then we had patches since. I originally was using WinEQ at that time and since got ISBoxer in place due to the number of teams and accounts I was having to load and unload. With ISBoxer on all four computers I use, if this plugin is loaded will crash as a session loads. If session is started first and then load plugin from within game, that session will crash immediately as it loads. I've not tried to debug or log anything but this is repeatable every time I do it.

Rustycat

Have you upgraded your computers OPS since the first time you had it running. I had to jump through all kind of hoops to even get it to run on my computer, but it runs fine now. What I ended up doing was uninstalling everything having to do with DX9 and reinstalled I even reinstalled .net of every version I had on my PC. A couple weeks ago, I updated the .dll and /plugin MQ2Nav load and it loaded no problems. I have been using it and creating meshes for each zone I have been in.

As far as getting snagged on stuff, I found that if you double the size of the Agent Radius, it backs the grid away from objects a bit. But doing this can also close off narrow passages, so be careful.
 
When this was first released, I was able to load and run with mesh generator etc. I had some issues with resolution of the mesh (I think) that I had pullers getting caught on large tree's returning to camp. I stopped using it and then we had patches since. I originally was using WinEQ at that time and since got ISBoxer in place due to the number of teams and accounts I was having to load and unload. With ISBoxer on all four computers I use, if this plugin is loaded will crash as a session loads. If session is started first and then load plugin from within game, that session will crash immediately as it loads. I've not tried to debug or log anything but this is repeatable every time I do it.

Rustycat


I spoke with Brainiac this afternoon, and there is currently a bug with mesh gen loading objects. That is why you are probably getting stuck on trees, as those objects are not being included onto the mesh atm.
 
Hi,

First off, I wanted to thank you for taking this on. It's a really good re-write so far. I took a look at this code a while back as considering trying to tackle it myself, but ran the other direction. My C++-fu isn't super, and I have never really played in 3D spaces.

I've found a couple things here that I just wanted to mention and check in on.

First off, the path seems to cut corners really hard. For larger characters (such as an ogre), its extremely easy to get stuck, on pretty much every corner in my experience. Could the path be changed to give a smidgen more space between the run path and the edge of available pathing if possible, to account for this?

I've also noticed that the "attempt to get unstuck" option doesn't seem to do anything right now. I'm assuming that's known?

This also seems to falter around npcs and players, especially if the character is large. It just runs straight into them and gets stuck. Is there any intention of trying to integrate pathing around complex objections like these? Seems like maybe it should be an option as it may be more compute intense or something, but it would be *really* nice.

If this could not get stuck on edges or npcs/pcs with large characters, this would be pretty much perfect I think. All other problems I've had I've been able to get through using your debug tools (thanks that!) and re-charting the map with different settings. Particularly, if it helps anyone else, I found that in some edge cases where the character moved over something that made them jump upwards (walking over a bump on the ground or object of some kind), I'd have to adjust the Agent "Max Climb" or "Height". You could see this behavior because your character gets "stuck" in a circle, which was easy to see in the debug window. Suddenly a bunch of new path points would appear.

Small enhancement request? Could you save the settings used to generate the mesh, hopefully in the mesh file or something, so that when you need to go back and tweak a mesh you know what got you close?

Thanks for all your work. Just confirming we are still tweaking this going forward, and I intend to also donate.

- - - Updated - - -

Oh! I forgot to ask!

Are the coordinates backwards in your argument for X Y Z? X and Y seem reversed. Here is the code I have to run, with an example of getting a location, that makes this move correctly:

Rich (BB code):
Sub WaitUntilMoved(int X, int Y, int Z)
	| Not sure if in game loc is backwards, or Nav, but for some reason X/Y are reversed
	/nav ${Y} ${X} ${Z}
	/while (${Navigation.Active}) {
		/delay 1
		/doevents
	}
/return

Thanks!

~~

Slight update, its the in-game loc that is backwards, the code I had here was backwards as well.
 
Last edited:
You can use this to save a listing that is compatible with MQ2Nav.

Rich (BB code):
| Saveloc.mac v 1 by Maskoi 3/15/2015
| NavSavelaoc.mac modified from above for use with MQ2Navigation by Randyleo

Sub Main
    /declare i int outer
    /for i 1 to 100
        /if (!${Ini[NavLocations.ini,MyLocations,Loc${i}].Length}) {
            /ini "NavLocations.ini" "MyLocations" "Loc${i}" "${Me.X} ${Me.Y} ${Me.Z}"
            /echo NavLocation saved as Loc${i}=${Me.X} ${Me.Y} ${Me.Z} in NavLocations.ini files
            /end
        }
    /next i 
/return
 
Thanks everybody for your comments and feedback. I've been super busy (I'm a full time software engineer juggling several active projects), so I apologize if it takes a bit of time to address some issues.

Hmm, Im running the latest 3/24/16 build of MQ2(Redguides) with the latests ISboxer. If I load up the game using ISboxer and load my six instances, everything works fine. When I type /plugin MQ2nav load, it crashes that instance.

Do I need to do a meshgeneration first? or load the plugin first?

Is this still occurring? Do you have any crash dumps you can dropbox to me? Without a crash dump, issues like these can be really hard to diagnose if I can't reproduce it myself. I believe Innerspace is working for me, although i haven't tried ISBoxer (I think its the same thing, right?). Running the plugin without a mesh shouldn't cause any problems.

- - - Updated - - -

I spoke with Brainiac this afternoon, and there is currently a bug with mesh gen loading objects. That is why you are probably getting stuck on trees, as those objects are not being included onto the mesh atm.

Yeah, I found an issue with newer zones that load their objects differently. You can tell if you look at the navmesh in game and it doesn't have outlines on the ground around things like trees and tents. I looked into the issue briefly, and its a mathy problem, so I haven't fixed it yet. I'm looking at adding some more debugging tools to help me figure it out.

- - - Updated - - -

First off, the path seems to cut corners really hard. For larger characters (such as an ogre), its extremely easy to get stuck, on pretty much every corner in my experience. Could the path be changed to give a smidgen more space between the run path and the edge of available pathing if possible, to account for this?

I know that currently it follows the path pretty strictly. Eventually I'd like to get to a point where it can swing around corners and allow room for larger character models, but I'm a bit far off from that. If this is a recurring problem for you, you can try setting the Agent Radius to a larger amount when generating the navmesh

I've also noticed that the "attempt to get unstuck" option doesn't seem to do anything right now. I'm assuming that's known?

It only seems to work in some cases and its totally buggy. Its code from the original plugin and I'm not suprised at all of it doesn't work right.

This also seems to falter around npcs and players, especially if the character is large. It just runs straight into them and gets stuck. Is there any intention of trying to integrate pathing around complex objections like these? Seems like maybe it should be an option as it may be more compute intense or something, but it would be *really* nice.

I hope to add dynamic obstacles with npcs in the future. not there yet.

If this could not get stuck on edges or npcs/pcs with large characters, this would be pretty much perfect I think. All other problems I've had I've been able to get through using your debug tools (thanks that!) and re-charting the map with different settings. Particularly, if it helps anyone else, I found that in some edge cases where the character moved over something that made them jump upwards (walking over a bump on the ground or object of some kind), I'd have to adjust the Agent "Max Climb" or "Height". You could see this behavior because your character gets "stuck" in a circle, which was easy to see in the debug window. Suddenly a bunch of new path points would appear.

Thanks! I spent an unhealthy amount of time building the tools to help assist with diagnosing problems. Glad that it is useful for you. If you have any suggestions or ideas for improvements let me know!

Small enhancement request? Could you save the settings used to generate the mesh, hopefully in the mesh file or something, so that when you need to go back and tweak a mesh you know what got you close?

I want to do this. Really, I do. I need to do this anyways to support the npc dynamic obstacles too.

Thanks for all your work. Just confirming we are still tweaking this going forward, and I intend to also donate.

Oh! I forgot to ask!

Are the coordinates backwards in your argument for X Y Z? X and Y seem reversed. Here is the code I have to run, with an example of getting a location, that makes this move correctly:

Thanks!

Thank you for your support!

One of the things I had to make sense of was the coordinate system, and make sure that things are consistent throughout. I didn't realize it changed how the coordinates were being read, but I guess that happened. sorry about that! I don't know if I should chnage it now, as it would break any waypoints people have already created.

As far as trees, objects, etc: I've found that some newer zones that I hadn't test use a different kind of mechanism for loading objects. Its lots of positional math and I 'm not too good at that, so I've been working on a system that lets me more easily see the things in game so I can tweak the parameters more easily.
 
Posted on another thread but I still have crashes if I try to load a character set if MQ2 is loaded with MQ2Nav plugin. I did find that if I do not load MQ2 until after all the ISBOXER instances are up and running, I could then load MQ2 and it loads with the plugin correctly without crashing. Not sure if that helps narrow where the conflict is coming from.

Now that I'm able to get this going at least, i'm messing around with meshes and unfortunately have little experience with the old navigation. While you still have things in work on the objects in newer zones and such, is there a way to edit the mesh and say create holes in it manually? That way we could edit troublesome areas that are not getting identified such as the tents and trees noted above?

Thanks on this!
 
Posted on another thread but I still have crashes if I try to load a character set if MQ2 is loaded with MQ2Nav plugin. I did find that if I do not load MQ2 until after all the ISBOXER instances are up and running, I could then load MQ2 and it loads with the plugin correctly without crashing. Not sure if that helps narrow where the conflict is coming from.

Now that I'm able to get this going at least, i'm messing around with meshes and unfortunately have little experience with the old navigation. While you still have things in work on the objects in newer zones and such, is there a way to edit the mesh and say create holes in it manually? That way we could edit troublesome areas that are not getting identified such as the tents and trees noted above?

Thanks on this!

Yes, there is a tool in mesh generator (open the tools window) for creating convex polygons. basically you draw shapes in the navmesh and they get cut out when you regenerate the tile. screenshot attached of tool and results! Screenshot 2016-03-26 13.01.25.png
Screenshot 2016-03-26 13.02.15.png
 
Finally got to try it, and it is pretty darn cool. Couple issues I noticed:

I am using ISBoxer/Innerspace

-Loading more than 1 box will cause all the other boxes to crash. Just edit ini to delete mq2nav from auto loading.
-Mesh Generator is extremely fast, but it doesn't find rocks and other collision objects automatically.

Other than that its pretty darn sweet. I dig the ingame mesh view, and editing area's where I want to avoid and the just going.
 
Finally got to try it, and it is pretty darn cool. Couple issues I noticed:

I am using ISBoxer/Innerspace

-Loading more than 1 box will cause all the other boxes to crash. Just edit ini to delete mq2nav from auto loading.
-Mesh Generator is extremely fast, but it doesn't find rocks and other collision objects automatically.

Other than that its pretty darn sweet. I dig the ingame mesh view, and editing area's where I want to avoid and the just going.

I found the tools Brainic mentioned in the meshgenerator for adding polygons areas to omit in the mesh but I don't see that in game view. What tool drop down does that come with or am I missing another tool? <feels dumb right now>
 
OK, I can confirm that it is working for me IF I load up the instances in ISBoxer, get to the server select screen, Then run MQ and then run MQ2nav. It will run until someone crashes and has to be reloaded, then I have to back all the way out and try again.

Noob, are you saying that you load and unload on one character MQ2nav? before camping out? My MQ seems to remember the plugins on one toon and propagate it to the others when I log back in. A classic example is MQ2maps. I turn off MQ2map on all my toons except my driver. When I log out, then the next time I log back in, all the toons have MQ2maps loaded. Is there a way to visualize or have plugins on a per toon basis?

I have a crashdump that MQ2 does when I load up MQ2nav if MQ2 is loaded before ISboxer(interspace). where do you want it sent?
 
I'm unable to make a mesh for Morell's Castle, it seems to build the mesh below the actual areas. It's probably an easy fix, but I have no idea how to do it. :)
 
Thank you everybody who has donated!!!

I'm looking into some reported issues.

I also wanted to throw out a reminder that MeshGenerator lets you change the bounding box, to effectively exclude certain geometry form the navmesh. Use this on zones that have super large geometry (like a flat plane) that isn't part of the zone, or if you have things like objects very far below the world.

Screenshot of an example! Check out the sliders at the bottom.

View attachment 8682

I'm unable to make a mesh for Morell's Castle, it seems to build the mesh below the actual areas. It's probably an easy fix, but I have no idea how to do it. :)

On the first page of this thread is a picture example using Morell's castle. Mathe the settings to the picture and it should work. I was having the same problems with it not meshing over the zone, but after reviewing the settings it worked first try. Hope this helps!
 
The opening and closing of the in-game UI window is very shaky at best. Have to do some serious button mashing to open or close it usually. Not sure if this is on my side or for everyone.
 
It's likely something on my end with the latest compile. I'll have more bandwidth tomorrow

Sent from my Nexus 5X using Tapatalk
 
POK hangup at loc -369.71 1046.49 -107.97 looks like a tree hang up, but it doesn't quite make it there. It's like it gets stuck in the tree, but its about 10 feet away. (Map cast radius). the nav command was from guild lobby zone out to POT stone waypoint. This happens a every time.

I've regenerated the mesh using a couple of different tile sizes with the same result.

I've also had issues with loading the mesh in game as well as the UI being too small.

Mesh won't load. (Not sure if there is a setting in game that I am missing, there isn't much documentation on the new plugin)

UI won't show full window and is not resizable. USING Wineq so this may be playing a factor. I'll update the post with results from full client as soon as I can.
navui.png

Feel free to PM me for contact details. I am more than willing to QA/TEST this. I think its a phenomenal work in progress. I would donate cash, but I've been in a tight spot.
 
I figured out that the type of mouse I am using (Dell cheapo) was not enabling me to drag/resize the navui window. (Odd but I seem to be good at breaking weird stuff) I still have the hangups in POK. Just wanted to give the update on what I have found so far.
 
This is causing crashes for me as well if running Innerspace/ISBoxer. I can load MQ2 after getting to character select with this plugin enabled but still have 2-3 characters out of my 6 crash sometimes when zoning to a new zone. Which means I would probably have to load and unload the plugin every time I try to zone. Going from PoK to PoTranq doesn't seem to be an issue but zoning into PoInn or zoning out of PoInn causes crashes on random toons. Tonight was my first time playing with this plugin.
 
MQ2Nav with InnerSpace (ISBoxer) will always crash. It doesn't matter which compile you use. If you want to use MQ2Nav on your puller, load up all your toons with ISBoxer except the puller and toss her in a separate WinEQ or Regular EQ session.
 
Just an FYI: I am getting dead spots on my EQ UI, mainly upper left corner. It isn't constant, and seems to only happen when the Nav UI is hidden. I'm thinking the Nav UI has a default 'space' when invisible, regardless of where you might have moved it, that keeps 'focus' from being applied under it. UI issues have been mentioned previously in this thread but I wanted to alert that it was still an issue and to highlight that I suspect it involves a default space when hidden. I occasionally get it even on the character select screen.

I love this plugin and will use it even with its quirks lol.
 
Request - MQ2Nav Beta by Brainiac and Donation Kick Starter.
Status
Not open for further replies.

Users who are viewing this thread

Back
Top