Coder Social home page Coder Social logo

shagu / pfquest Goto Github PK

View Code? Open in Web Editor NEW
175.0 22.0 48.0 118.1 MB

A Questhelper and Database Addon for World of Warcraft: Vanilla & TBC

Home Page: https://shagu.org/pfQuest

License: MIT License

Makefile 0.01% Lua 99.98% Shell 0.01%
pfquest pfquest-tbc vanilla tbc addon world-of-warcraft lua questlog quest-helper database

pfquest's Introduction

pfQuest

This is an addon for World of Warcraft Vanilla (1.12) and The Burning Crusade (2.4.3). It helps players to find several ingame objects and quests. The addon reads questobjectives, parses them and uses its internal database to plot the found matches on the world- and minimap. It ships with a GUI to browse through all known objects. If one of the items is not yet available on your realm, you'll see a [?] in front of the name.

The addon is not designed to be a quest- or tourguide, instead the goals are to provide an accurate in-game version of AoWoW or Wowhead. The vanilla version is powered by the database of VMaNGOS. The Burning Crusade version is using data from the CMaNGOS project with translations taken from MaNGOS Extras.

pfQuest is the successor of ShaguQuest and has been entirely written from scratch. In comparison to ShaguQuest, this addon does not depend on any specific map- or questlog addon. It's designed to support the default interface aswell as every other addon. In case you experience any addon conflicts, please add an issue to the bugtracker.

Downloads

You can check the [Latest Changes] page to see what has changed recently.

World of Warcraft: Vanilla

  1. [Download pfQuest] (*)
  2. Unpack the Zip-file
  3. Move the pfQuest folder into Wow-Directory\Interface\AddOns
  4. Restart Wow
  5. Set "Script Memory" to "0" (HowTo)

*) You can optionally pick one of the slim version downloads instead. Those version are limited to only one specific language: English, Korean, French, German, Chinese, Spanish, Russian

World of Warcraft: The Burning Crusade

  1. [Download pfQuest] (*)
  2. Unpack the Zip-file
  3. Move the pfQuest-tbc folder into Wow-Directory\Interface\AddOns
  4. Restart Wow

*) You can optionally pick one of the slim version downloads instead. Those version are limited to only one specific language: English, Korean, French, German, Chinese, Spanish, Russian

World of Warcraft: Wrath of the Lich King

Important

This is a BETA version of pfQuest

It is able to run on a WotLK (3.3.5a) client, but does not yet ship a WotLK database. Every available content is limited to Vanilla & TBC as of now.

  1. [Download pfQuest] (*)
  2. Unpack the Zip-file
  3. Move the pfQuest-wotlk folder into Wow-Directory\Interface\AddOns
  4. Restart Wow

*) You can optionally pick one of the slim version downloads instead. Those version are limited to only one specific language: English, Korean, French, German, Chinese, Spanish, Russian

Development Version

The development version includes databases of all languages and client expansions. Based on the folder name, this will launch in both vanilla and tbc mode. Due to the amount of included data, this snapshot will lead to a higher RAM/Disk-Usage and slightly increased loading times.

Controls

  • To change node colors on the World Map, click the node.
  • To remove previously done quests from the map, <shift>-click the quest giver on the world-map
  • To temporarily hide clusters on the world-map, hold the <ctrl>-key
  • To temporarily hide nodes on the mini-map, hover it and hold the <ctrl>-key
  • To move the minimap-button, <shift>-drag the icon
  • To move the arrow, <shift>-drag the frame

Addon Memory Usage

The addon ships an entire database of all spawns, objects, items and quests and therefore includes a huge database (~80 MB incl. all locales) that gets loaded into memory on game launch. However, the memory usage of pfQuest is persistent and does not increase any further over time, so there's nothing bad on performance at all. Depending on the download you pick (especially the full packages), you might see a message that warns you about an addon consuming too much memory. To get rid of that warning, you can set the addon memory limit to 0 which reads as no limit. This option can be found in the character selection screen.

Map & Minimap Nodes

Auto-Tracking

The addon features 4 different modes that define how the new or updated questobjectives should be handled. Those modes can be selected on the dropdown menu in the top-right area the map.

Option: All Quests

Every quest will be automatically shown and updated on the map.

Option: Tracked Quests

Only tracked quests (Shift-Click) will be automatically shown and updated on the map.

Option: Manual Selection

Only quest objectives that have been manually displayed ("Show"-Button in the Questlog) will be displayed. Completed quest objectives will be still automatically removed from the map.

Option: Hide Quests

Same as "Manual Selection" and in addition to that, Quest-Givers won't be shown automatically. Also completed quest objectives will remain on the map. This mode won't touch any of the map nodes created.

Database Browser

The database GUI allows you to bookmark and browse through all entries within the pfQuest database. It can be opened by a click on the pfQuest minimap icon or via /db show. The browser will show a maximum of 100 entries at once for each tab. Use your scrollwheel or press the up/down arrows to go up and down the list.

Questlog Integration

Questlinks

On servers that support questlinks, a shift-click on a selected quest will add a questlink into chat. Those links are similar to the known questlinks from TBC+ and are compatible to ones produced by ShaguQuest, Questie and QuestLink. Please be aware that some servers (e.g Kronos) are blocking questlinks and you'll have to disable this feature in the pfQuest settings, in order to print the quest name into the chat instead of adding a questlink. Questlinks sent from pfQuest to pfQuest are locale independent and rely on the Quest ID.

The tooltip will display quest information such as your current state on the quest (new, in progress, already done) as well as the quest objective text and the full quest description. In addition to that, the suggested level and the minimum level are shown.

Questlog Buttons

The questlog will show 4 additional buttons on each quest in order to provide easy manual quest tracking. Those buttons can be used to show or hide individual quests on the map. Those buttons won't affect the entries that you've placed by using the database browser.

Show
The "Show" button will add the questobjectives of the current quest to the map.

Hide
The "Hide" button will remove the current selected quest from the map.

Clean
The "Clean" button will remove all nodes that have been placed by pfQuest from the map.

Reset
The "Reset" button will restore the default visibility of icons to match the set values on the map dropdown menu (e.g "All Quests" by default).

Chat/Macro CLI

The addon features a CLI interface which allows you to easilly create macros to show your favourite herb or mining-veins. Let's say you want to display all Iron Deposit deposits, then type in chat or create a macro with the text: /db object Iron Deposit. You can also display all mines on the map by typing: /db mines. This can be extended by giving the minimum and maximum required skill as paramter, like: /db mines 150 225 to display all ores between skill 150 and 225. The mines parameter can also be replaced by herbs, rares, chests or taxi in order to show those instead. If /db doesn't work for you, there are also some other aliases available like /shagu, pfquest and /pfdb.

pfquest's People

Contributors

artur91425 avatar bidaumm avatar cirosantos0 avatar den13501 avatar duzga avatar ellingtonsantos avatar ennea avatar flyinbed avatar jtuc avatar muehe avatar road-block avatar sattva-108 avatar shagu avatar shikulja avatar skipi avatar tortugamodding avatar wanliqiaoxi avatar xigbclutchix avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pfquest's Issues

Linking Quests In Chat Not Working

Hey, there seems to be something wrong with linking quests in chat. When i shft+click on a quest to link it in chat the link shows up in the my type box, but when i hit enter nothing shows up. Not even just the quest in brackets without it being an actual link.

I have other addons running, but ive isolated it to pfQuest by turning all the other addons off except for pfQuest. I tried deleting my WTF folder and redownloading pfQuest and neither of these fixed it.

Need a way to synchronize between two systems

as stated above, im sometimes playin on my homecomputer and sometimes on my laptop. so if i create a character on my home pc, play it some time and decide to continue on my laptop, pfquest on my laptop still thinks he is a fresh character and doesnt recognize what i have already done.

Feature Request: Hide individual quests from the world map+minimap.

Description of feature:
pfQuest adds 3 red buttons in the questlog. "Show", "Clean" and "Reset". I suggest adding a 4th button labelled "Hide" - or something similar. The function of the button: Hide the elements related to that specific quest from the world and mini map.

Issues that it solves:
Sometimes you get a quest where a lot of mobs across the world have a very low chance to drop a specific item. This clutters the map with little dots for every NPC or interactive object that is related to the quest. The clutter can sometimes be some extensive that it is nigh impossible for the user to find relevant information about other quests.

Minimap nodes draw above standard tracking dots.

Repro

  • Search pfQuest for Silverleaf
  • Click result to add nodes to map
  • Activate Find Herbs
  • pfQuest map nodes obscure stock UI find herb markers

Workaround is to set minimap node transparency to ~0.5 but results are not ideal, messy to read

The newly created level 1 role does not accept any task times error.

pfquest just created a role in the absence of any task when the error situation.
This situation only exists in the role of a time when no task is being given, that is, when the game into the game, there is an infinite error situation, as long as the task is not finished

pfquest+EQL3 Will appear
kyj avlmh1g w2en vstid
Two alone are not wrong

Reccurent reload

Hello,

with pfquest and even with no other addons loaded (deleted all cache/config and so on) about every 30sec the interface reload freezing up the game for a few seconds, in a cycle, has anyone encountered this ? i play with wow vanilla 1.12 client.

Thanks.

browser: add spawn and item id's

Please add id in browser. Something like that:
bandicam 2017-11-17 21-12-54-651
This will help you quickly find out the id by name and find on the Internet quickly the information you need.
It would also be very convenient to do a two-way search. By name and by id.

Almost never works when searched for a NPC.

image

When I search for an NPC and click on it I get this error.

## Interface: 11200
## Title: |cff33ffccpf|cffffffffQuest
## Author: Shagu
## Notes: A lightweight Questhelper and Database
## Version: 2.0beta
## OptionalDeps: pfUI
## SavedVariablesPerCharacter: pfQuest_config, pfDatabase_fav, pfQuest_history, pfQuest_colors

OS: MacOSX

locale independent objective parser

just tested and noticed a bug:
This is due to #11.
Parser doesn't work I checked it on my server with ruRU game client and enUS server database.
Accordingly in the addon I use the base enUS(look at screenshot). After clicking on the Show button, no marks appear on the minimap:
bandicam 2017-11-12 22-11-40-265

P.S. if use the same locales in the server and the client, then the parser works correctly.

Minimap Mouseover doesn't work

Hey Shagu,

I just discovered your successor of shaguquest and directly downloaded it (Version 1.3)!
Unfortunately the display of the tooltips in the minimap doesn't work and there isn't an error code.
I disabled all other addons and even tried it on another client where I never had any addons installed.

Quick update: the previous version works flawlessly!

Hope you can help =)

Tahlia

PS: Spielst du nicht mehr auf Nefarian? Hab dich mal im Discord geaddet (Manix) ;)

Database selection

This addon has one big problem. It will only work if the client language and server localization language are the same. But I think you know that most servers only support enUS server localization. And if I want to play on a Russian client, on a server with enUS localization, then your addon will not work. :'(
Please implement the choice of the database language in the addon.

P.S. Sorry for my bad english...

conflict: MBF (Minimap Button Frame)

You know what... while writing this, literally just now, I figured out the problem. It's Minimap Button Frame. I disabled all my map mods and the Ogre nodes were the proper size. Then turned just MBF on again... they're huge. (see the screenshots below so this all makes sense. ha.)

I guess you can close this out right away then. That way it's at least archived if someone else ends up having the same problem. I'll also note the thread too.


Per your request... here is a screenshot of my minimap showing the overly large icons.

image

The large icons you see are for "An Unwelcome Guest", "Solomon's Law", "Howling in the Hills", and "Shadow Magic".

I was able to recreate the "floating" off the map issue I mentioned on the forum, but only until I moved far enough that the icon disappeared from the minimap normally. Once I did that, they were properly dropping off the map instead of floating about an inch or so away.

For the map mod addons... I'm using Questie, Atlas, Cartographer, Gatherer, Minimap Button Frame, RecipeRadar, and of course pfUI.

Here's a shot of of the "Mo'grosh Ogre" nodes for the "Mercenaries" quest. You see the extra space in Minimap Button Frame... that's only there when the nodes are active on the minimap.

image

Another shot of the same area, but fully zoomed in... there are less invisible buttons on MBF now.

image

*** Added this to show you after MBF is turned off. Same area, still fully zoomed. Guess I need to find a new button container.

image

Combine zone databases

please combine the database of zones. something like that zones.zip and put this pfQuest\db

Because as I wrote earlier, many servers do not have Russian server localization and if quests in English, need to download the version of enUS. But in this version there is a database with enUS zones (!) And because of this the addon does not work on the Russian client ... :((( It is necessary manually to transfer the base of zones from the Russian version to the English databases. Of course, I can do this without problems, but it will be difficult for most ordinary users.

I already posted your addon for download on our site (team WoWruRU), because this addon very good. :) But once again I repeat that Russian players will have the problem described above (if the server does not have Russian localization)

Inventory tooltips

Currently the addon does not display tooltips about the quest item, when hovering over a quest item.
image

This is with EQL3's option enabled, a partial solution, but something first party would be nice:
image

Marker disappear issue

When two quests require the same mobs and both are tracked, then when one completes but the other one doesn't yet, it will remove the markers for the mobs, despite you still needing them for the other quest.

Initial file loading improvement

One minor thing if you are using a script to package the different language versions.
It might be worth it to have it comment out other locale database files from the .toc when packaging a single locale release.
The reason is for cutting down on game loading times (a little bit).
The game scans for files referenced in the .toc file and takes the time to make error entries in Logs\FrameXML.log etc, it's not significant but every little bit helps 😃

add locale independent questobjective detection

I added in questParse this:
["ruRU"] = {
[1] = "(.*) - убито",
},
but 'slain' quests are not displayed on the map... What is the problem I do not understand. Maybe I forgot to add something somewhere. All quests of other types displayed correct

browser: replace quest-text wildcards in tooltip

add handling $ character:
$N - UnitName("player")
$C - strlower(UnitClass("player"))
$R - strlower(UnitRace("player"))
$B - \n
$G - gender
I always did the following processing:
For example:
string = $GText1:Text2;
replace: "..gsub(gsub(UnitSex("player"), "^2$", "Text1"), "^3$", "Text2").."
bandicam 2017-11-17 20-11-32-503

Tracked Quests - Question

When the Tracked Quests option is selected for showing Quest POI on the map.
Is it intended that completing the Quest (which if tracked, un-tracks it) should remove the POIs for that quest?
This is not the current behavior as far as I can tell.
Quest objective POIs and questgiver POIs remain and have to be cleared manually if the quest becomes untracked due to completion. 😃

Massive frame stutters when addon is enabled

Not sure what conflict could be causing this, but if I enable this addon I get massive frame stutters periodically while playing. I have my addon memory usage uncapped (I thought that might fix it, but to no avail) and I'm not sure what else to do other than keep the addon disabled. Which is a shame because I really like it!

incorrect tooltip

image
as u can see, tooltip for hunter's pet shows me this quest's info lol

support strlower for non-latin characters

function strlower only works for 0-127 ASCII characters. To make it work for other characters, need do the hook.
Proof:
without a hook
bandicam 2017-11-17 20-40-21-672
no search result

with a hook
bandicam 2017-11-17 20-41-05-186

Here is an example of a hook (author @Shuraken007):

function chsize(char)
   if not char then
      return 0
   elseif char > 240 then
      return 4
   elseif char > 225 then
      return 3
   elseif char > 192 then
      return 2
   else
      return 1
   end
end

old_strlower = strlower

function strlower(str)
   if not str then return nil end
   local t
   str = gsub(str, ".[\128-\191]*",
      function(w)
         t = strlower_hook(w, chsize(strbyte(w)))
         return t or w
      end
   )
   return old_strlower(str)
end
	
function strlower_hook(word, byte_size)
	if byte_size == 2 then
		l_byte = strbyte(word, 1)
		r_byte = strbyte(word, 2)
		if "А" <= word and word <= "П" then
			return strchar(l_byte)..strchar(r_byte + 32)
			elseif "Р" <= word and word <= "Я" then
			return strchar(l_byte + 1)..strchar(r_byte - 32)
		end
	end
	return nil
end```

My search began to work slowly and began to slow down :( Can you have an idea how to make it work better and faster?

Databases: add dungeons zone for NPC

For all NPCs in the dungeon, the zone is not listed. Please add correct zone.

I think that it will can't automatic generated and have to be done manually ... :(

Add-On does not show up in WoW

Simple, issue for me...this add-on does not show up in the add-on listing in 1.12.1. I've renamed the downloaded file to pfQuest

Cartographer - nodes and tooltips

First, thanks for all your great work with pfUI and pfQuest.

With pfQuest Beta 2.0 I finally replace questie because I love the look of pfQuest more and also the included Database.

Now I discovered two bugs when using Cartographer (r18701).

  1. "World Map Node Transparency" has no effect on the world map in Cartographer (always no transparency).
  2. The tooltip of nodes in Cartographer are not in the front. So when you have a lot of pfQuest nodes, it displays the nodes in the foreground.

Screenshot

Problem with ruRU localization

HI there! Just after i log in i got this message in chat window. I am using the latest version of PFquest (2.1.1 atm) from release page.

screen shot 2017-12-05 at 16 34 17

Nodes don't work on World Map, nodes show but nothing when hovered over

Open World Map, I see nodes for my quests. I hover over said nodes with mouse, nothing.

I open Quest Log, I select a quest and click "Show" --> World Map opens and I see nodes, I can now over over nodes and see the tooltips.

BUT, when I close the World Map again, and re-open, I see the nodes still, but once again does nothing when hovered over.

I tested every pfQuest release, and all of them had the same issue. Please help, I love ShaguQuest so much, wanted to try this for a new Vanilla server.

v2.1 conflict with DPSMate

[2017/11/23 05:10:59-3753-x2]: pfQuest\pfMap.lua:132: attempt to index a nil value pfQuest\pfMap.lua:132: in function <Interface\AddOns\pfQuest\pfMap.lua:130> <in C code>: in function SetPlayerBuff'
DPSMate\DPSMate_Options.lua:848: in function `PopUpAccept'
:"DPSMate_PopUp_Total:OnClick":2: in main chunk

---`

This happens when accepting the reset of DPSMate data from it's options popup.
The reason is DPSMate is using GameTooltip as a buff scanner (sets buffs on it and parses the text).
pfQuest on the other hand creates a child frame parented to GameTooltip (pfMap.tooltip) which shows with the GameTooltip.
When the GameTooltip is used as a buff scanner there no guaranteed GetMouseFocus() frame under it.

Support for manually completing quest

It would be really fantastic if this addon supported a mechanism to mark quests as already completed. That way, I could utilise the functionality that shows uncompleted quests without my map being cluttered from all the quests I had completed before I got the addon.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.