Time To Fix MQ2Navigation Thread

Well JJ i kinda did make headway and figured out why it doesnt load some things when i looked at the source from MQ2.com i think i also figured out why it crashes when you get stuck, just need the source that is rolling around here and sometime to read the code and patch in a couple things and might fix the crashing.

flatline:
when starting navigation run it as admin, once your in hit the tab key, it will ask for a eq file, the program is looking for windows install root HD IE c:. so when its looking for the eq folder, navigate to (rootfolder containing windows)/users/admin/installedgames/sony/everquest (maybe) no more in the eq file and hit enter or ok and it should then ask for a mq2 folder, again root/MacroQuest2 and hit enter and should work.
 
Last edited:
Well JJ i kinda did make headway and figured out why it doesnt load some things when i looked at the source from MQ2.com i think i also figured out why it crashes when you get stuck, just need the source that is rolling around here and sometime to read the code and patch in a couple things and might fix the crashing.

flatline:
when starting navigation run it as admin, once your in hit the tab key, it will ask for a eq file, the program is looking for windows install root HD IE c:. so when its looking for the eq folder, navigate to (rootfolder containing windows)/users/admin/installedgames/sony/everquest (maybe) no more in the eq file and hit enter or ok and it should then ask for a mq2 folder, again root/MacroQuest2 and hit enter and should work.
that's EQNavigation. Please be clear the pathing file generator (EQNavigation) or the actual EQ/MQ2 plugin (MQ2Navigation) that you mean, when mentioning issues.

BTW, known issues - yeah, I know, we suck - shoulda been fixed - it's all about priorities and how you have to debug/troubleshoot the particular issues, i.e, ROI.

htw
 
MQ2Nav is one plugin I'd love to use again, but honestly it causes way to many issues to be worth to load it. People should just stop loading it for the time being.

If the Exe ever gets worked on, I'd also love to see all the zone overlays that don't get added to the mesh file being included in the overall zone mesh.
 
Not sure what (if any) of the last few posts was replying to my post.

I am trying to run the exe, as I posted, so I can generate a zone mesh or map file, whatever it will be called. Maybe this won't even work due to the above mentioned bugs in the thread, but I can't even get the prog running in the first place.

To saar's post, I don't have my EQ game folder in whatever location you list, I have it off the C: root. It has a long file name, but I renamed it to a short one (c:\eq) just to make sure this was not an issue. The common shell dialog asking me to pick a folder with EQ in it lets me select the folder, and when I hit ok, I get a msgbox error with the title I mentioned before, abnormal path.

After that, if I mess about, it asks me for where I will store the resulting files, and this again bombs the app, same thing.

It doesn't start up and get to a point that I could press tab because it wants me to pick a folder, but won't let me pick any folder I select. It is already running as admin.

I am able to build the MQ source from the zip, so if someone has source for this and wants me to try stuff, I could probably cope. I'm not great with c++ and all it's craziness though, back in the c++ days I used turbo pascal for command line work and delphi for windows, and nowadays all c#.
 
I remember when I was building all the mesh files, I had to build them on an XP machine, for some reason, I was having troubles with windows 7. I can't actually remember why off hand.
 
Thanks, Fry, I tried xp compat mode after reading that reply but it didn't help. I don't have an XP VM around, I guess I'll have to leave it, unless someone is interested in looking at the issue.

JJ .. lol, just lol.
 
If you need help with mesh files Fry PM me, I've got over 70% of the game zones working mesh.
 
I looked a bit at the source code for the .exe I was unable to get started. Just to be totally clear, EQNavigation.exe, the zone analyser / mesh generator.
There are 2 routines which are running before the app starts up, that are part of it making sure it has the right config.
They output console text, asking you for the location of the EQ file (to get zone files from), and the mesh storage location.

Both have some code which specifically wants the final part of the path you select to have a particular name. The everquest folder specifically wants to find a folder called everquest. So EQ or everquest_live or whatever else, will cause it to go down it's "abnormal folder name" code path.
The mesh folder specifically wants to be given a path with ends in "Release" (because MQ2 builds to a release folder...), and otherwise will go down it's "abnormal folder name" code path.

So far as I can see, when either goes down the abnormal folder name path, they recurse into the same function with a variable to cause them to use a slightly different code path. This variation, on win 8.1, as admin, all details noted in prior posts, etc, returns a junk path, no actual folder location just some random memory or something.
The recursion closes and the junk paths get passed on to the rest of the app, which then bombs into shell32 or whatever, probably trying to access a junk folder.

By disabling the folder name check (or by using the exact (final) folder name it checks for) I was able to get the tool running fully as far as I could tell. It's possible the save routine might have some oddity there too but I haven't got time to look right now.

My c++ isn't the best, but I think the above is accurate. So I wonder why the folders are being forced to these names, and why it uses recursion in such a way.
If the app asks me to pick my EQ folder, and I tell it XXX, why then complain it isn't called "Everquest"? I know that, you asked me what one, move along now please!
Even worse for the MQ2 folder I think.
 
what source did you look at? was it one that is here? or from mq2? What the exe is based on is azone which the emu servers use to build zone files, the eq folder for those emu versions end with Everquest as the main path for the eq folder, and when compiling your own mq2 (last time i checked) defaulted to a release folder so i am just guessing that the code just defined them like that.
 
it was from the macroquest forum, MQ2Navigation_20121108, was the newest I could find there.

What I was suggesting is coding into the source a check to see if the directory happens to be called "release" or "everquest", after asking me to pick the correct place anyhow, is second-guessing that I picked wrong, and likely to cause problems for people with different folder names.

Why it then fails with junk I don't know, but the whole check is un-necessary so far as I can tell. Just trust me to pick what you asked me to pick - my EQ folder, my mesh folder.
 
I removed tiles from most of the zones I meshed to create areas where I could run without hitting objects. and to just block off areas completely.
 
The folder checks confuse me every time I run the application. I do manage to get it to work, however, with the folders named EQLive and MacroQuest2. It really doesn't like those folder names, however.
 
I've added it to list to change, will do it asap. I'll make it not be absolute that way, and instead just look for a verification item - e.g., that eqgame.exe is in the everquest folder you pick, and mq2main.dll is in the MQ2 folder you pick. I don't even think that's really necessary for eqnav, but mq2nav expects it I believe.

Either way, I'll post back after I set it up.

htw
 
Ok, finished this and pushed it. Check for updates from loader tray icon, and download the new EQNavigation.exe

Fixed:
1) Setting EverQuest and MQ2Navigation directories.
2) Program was improperly using zones.ini from windows directory, instead of where it was launched from.

Updated: The directories are loaded/written to the [General] section of EQNavigation.ini, in the directory EQNavigation.exe is located (which is usually your MQ2 directory). You can also redefine them in the program by pressing the Tab key.

Let me know how it goes for those of you who are interested in keeping on improving EQNavigation / MQ2Navigation.

htw
 
Last edited:
Updated once more:

1) Moved directory definitions to EQNavigation.ini, since Zones.ini is compile maintained, and will change if zones are added/changed.

htw
 
Thank you for looking at that :)

This time round, running the latest new version, first run, it asked for my EQ folder, I selected it .. it accepted the folder fine.
It asked me for my mesh folder. It did the same shell32 crash ... before I could pick a folder from the (same, working) common folder dialog.

Ran it again, this time it skipped asking the EQ folder, asked me the mesh folder only. Did not crash, ran the full window, worked fine.

3rd run, just straight to the full window .. although there is a (blank) console window behind it all.

So ... it saved in the ini file properly. No idea why it bombed, but it is functional, thank you!

Is there anything you want checked or tested with the app or the plugin? I was interested in using it, but not sure if there is still a problem as described way back in the thread.
 
The biggest issue with MQ2Nav IMO is that it cannot handle large zones. It was mentioned that the size allocated could be increased, so I'm hopeful that could fix this issue.

I know for a fact Evantil is too big to create a working mesh. If you try to use /nav in that zone, you get a "no start reference" error.
 
The biggest issue with MQ2Nav IMO is that it cannot handle large zones. It was mentioned that the size allocated could be increased, so I'm hopeful that could fix this issue.

I know for a fact Evantil is too big to create a working mesh. If you try to use /nav in that zone, you get a "no start reference" error.


Thats not the biggest issue, it just doesn't work well in most zones past TBS or so, ever since they started adding overlays that aren't part of the mesh file. All those trees, plants (the ones in Beast Domain come to mind), houses, boulders etc that aren't part the zone mesh but are obstacles, make it hard to get the full benefit out of the plugin.


You can test how well the plugin works by going to a old word zone and seeing how amazing it is and then test it in a zone like Fearot The Dream. You'll run into all those trees, since they aren't part of the mesh.

Occasionally you might get lucky and find a newer zone that doesn't have much overlay objects, and it works pretty well.
 
A system I think I recall from EQ2, but maybe not .. used a mesh like this, but then if you ran it (in game) on learn mode, and it hit an obstruction, it would update the mesh to indicate that way was not traversable after all.

I haven't looked but do the non zone file items show up running under the emu? if so it might be possible to combine active mesh updating with a path checking / mesh checking script, and run it on emu to avoid live servers seeing very obvious bait behaviour. Then use the resulting mesh on live / update the distribution files here.

Also, I think some system I used in the past used large mesh sections but they could join to smaller ones / a mesh segment could be replaced with the next size down segments, and then more detailled area info could be provided for tricky sections or areas, but large open areas would not require 1000s of segments.
 
Last edited: