-
Notifications
You must be signed in to change notification settings - Fork 536
Improvements for extraction tools (vmap/mmap) #3192
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: development
Are you sure you want to change the base?
Conversation
Will this still allow for running the extraction unsupervised/without manual input? That's important to me for scripting purposes. 😄 |
| bool highRes = preciseVectorData; | ||
| std::string userInput; | ||
| std::cout << "Extract vmaps with high resolution? [y/n]" << std::endl; | ||
| std::getline(std::cin, userInput); | ||
| highRes = userInput.empty() || userInput.compare("y") == 0; | ||
| std::cout << "High resolution = " << highRes << std::endl; | ||
| std::cout << "Press enter to start extracting vmaps." << std::endl; | ||
| std::cout << "=====================================" << std::endl; | ||
| std::cin.get(); | ||
|
|
||
| // Overwrite due to user input | ||
| preciseVectorData = highRes; | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you want to keep the prompts, to me it would also be fine to introduce a flag --non-interactive or something instead to be able to skip them.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for pointing that out. I might just open a second PR, adding promts for both maps/vmaps similar to how it's currently done in the mmap tool 👍 (diff is already big enough here 😅)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would be very much appreciated if you want to give it a try 😇. A good point to check is .go c Glutton and see if he manages to walk through his 'narrow passage' – when Razorfen Leanto03 was broken, he just disappeared in the walls instead.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm unfortunately on vacation and don't really have the time to test it, but I'll gladly give it a spin when I'm back next week!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks and no worries, enjoy your vacation!🎉
|
Nice work with the Deadmines fix! Looking forward to give that a try. Do you happen to have an idea how any of the following other pathing bugs could be fixed?
|
|
"RFD invisible wall issue" could already be fixed, since the patch that fixed parsing of “razorfen leanto03”, but have not checked that certain spot yet. Using offmesh connections is the simplest way of patching up broken mmap spots without having to touch the overall logic. You can "force" a path between two points, which you declare in A useful command to check NPC pathing between you and another NPC is |
Gnomergan also has pathing issues in the big room on the elevator after Crowd Pummeler 9-60. The big room that has the elevator, but at the bottom level. |
| printf("Done."); | ||
|
|
||
| char mapFileName[255]; | ||
| sprintf(mapFileName, "mmaps/%03u.mmap", mapID); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why are you formatting this separately and not in the printf
| processQueuedTiles(); | ||
|
|
||
| char outputFileName[255]; | ||
| sprintf(outputFileName, "mmaps/%03u%02u%02u.mmtile", mapID, tileY, tileX); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
again why not do this inside the printf
🍰 Pullrequest
The extractor was logging warnings for models referenced in DBC files that don't actually exist in MPQ archives.
Added
MPQFileExists()check before attempting to open model files, so only actual extraction failures are reported.Also removed the misleading "A few of these warnings are expected"
message since warnings now indicate real problems.
Add interactive prompts for vmap resolution.mmap connectcommand to record offmesh entriesProof
Issues
How2Test
Todo / Checklist