Git Product home page Git Product logo

finder-addon's Introduction

/Finder

/Finder is a World of Warcraft AddOn that lets you search for any item in the game, and show an item link for it.

Download Latest

Installation

Installs like any WoW addon, if you are unsure of the process, these are the quick steps:

  1. Download latest release (link above).
  2. Unzip the .zip file anywhere, you should end up with a folder named Finder
  3. Copy (or move) the Finder folder to your AddOns directory: World of Warcraft\_VERSION_\Interface\AddOns
  4. MAKE SURE that the name of the folder is Finder, rename it if needed (for example, if you downloaded the GitHub source zip file, it will be named finder-master after extracting).

Replace _VERSION_ with the version of WoW you are installing to, either _classic_ or _retail_.

/Finder should be enabled by default, but double-check your addon list when you start the game.

On login, you should see a welcome message from /Finder, although it may get lost in the spam of other AddOn login messages!

Type /finder for a quick help message to get started. For more info, see the rest of this Readme.

Incompatibility note

Unfortunately, /Finder uses the exact same commands as the "Search" module included with the Prat chat addon. This means, if you have Prat installed, with the Search module enabled, the two default /Finder commands /find and /search will not work. You have two options:

  • Disable the Search module within Prat. (/prat - Module Control tab - set the "Search" module to "Don't Load").
  • Use the long and much less convenient version of the /Finder search command: /finder search 'search term'

Usage

(Make sure you've built your item cache first, see Cache down below for how that works.)

Using /Finder is super easy, all you need to do is type /find <search term> or /search <search term>, and the addon will spit out some search results in your chat window. These are just 2 different commands that do the same thing, use whichever seems more natural to you!

Right now, the addon won't print more than 20 results. Try narrowing down the search if you get that many.

In the future, this might be configurable, or somehow more interactive!

The <search term> can be anything you want, including spaces. The search term is NOT case-sensitive, everything is converted to lowercase.

Finally, the search is looking for an exact partial match - it does not account for mis-spellings.

For example:

/search searing arrw will NOT find [Bow of Searing Arrows]

however

/search searing arr WILL find [Bow of Searing Arrows]

Hopefully in the future I will add fuzzy searching, allowing for missing or mis-typed letters!

Cache

Before you use /Finder for the first time, you have to build the item cache it uses for searching. This is simple, automatic, and happens in the background! To trigger a cache rebuild, simply type:

/finder rebuild (Notice the slash command here is /finder, not /find!)

/Finder will then request from the server and store information about every item in the game, one by one. This should take about 35 seconds by default (see Config). The reason it takes a long time is because WoW servers will disconnect any client making too many requests per second, so it has to be done more slowly! The rebuild process will tell you when it's finished.

If the rebuild progress updates are annoying you, you can mute them using /finder hush, this will mute (or unmute) the messages for this particular rebuild. It will always tell you when it's done, regardless of mute status.

You can actually use /find or /search immediately, however until the rebuild is completed, the search results may be incomplete, or empty alltogether.

Finally, you can stop the current rebuild using /finder stop/abort/cancel. This will immediately stop the rebuild, leaving it partially complete. Unfortunately, for now, there's no way to resume it, and you have to start over to complete it. The addon will complain about an incomplete cache until you do a complete rebuild!

Please note: You absolutely must rebuild the cache after any major game updates, since these often add or remove items. The cache has no way to maintain itself, so you must remember to rebuild it after a big update (like a content patch). In the future, /Finder might be able to detect major updates, and slowly rebuild itself in the background. For now, that's on you!

Configuration

/Finder allows some configuration options and various commands through the /finder command, however most features available are undocumented for now, sorry. Here are a few:

  • /finder greeting toggles login-greeting message. If disabled, /Finder will still print login messages if there are errors with the Item Cache.
  • /finder set <option> <value> allows you to change some configuration options. Right now, only 3 options are exposed:
    • <progressinterval> <5000> - this sets how many item requests to complete, before posting a progress update message to the chat window.
    • <speed> <slow> - some presets for rebuild speed. Valid options are:
      • glacial = 100 items/sec
      • slow = 250 items/sec
      • normal = 500 items/sec
      • fast = 750 items/sec
      • insane = 1000 items/sec Possible disconnect risk, massive frame drops!
      • custom = <custombatchsize> See below
    • <custombatchsize> <50> - this sets how many item requests the rebuild process makes per second, ONLY if you are using the "custom" speed option above
    • The default speed is normal, becuase it has a very minor effect on game performance, and finishes quite quickly (~35 seconds). Feel free to experiment. Faster speeds are potentially much faster, but your client will stutter while doing it.
  • /finder wipe allows you to wipe out the item cache. Pay attention to the messages, as you have to type this command TWICE in a row, to actually wipe the cache. This is to avoid accidents!
  • /finder wipesettings - this will wipe out the per-character configuration options, such as speed and progressinterval (see above)
  • /finder status - this will tell you whether /Finder believes its item cache is healthy or not. Emphasis on believes...
  • /finder <invalid command> - any invalid command will just trigger the quick help message, just like typing /finder.

Why / how?

/Finder builds a cache of all items in the game that it then uses for searching. This might sound excessive, however it is required because World of Warcraft does not actually offer a simple way to search / query the servers for an item, by its name. The game only allows direct queries about itemID's, which are just numbers, and not very helpful. Therefore, to actually search the game for an item using its plain text item name, a database needs to be built from the ground up. And that's exactly what /Finder does when it /finder rebuilds the cache.

The first version of /Finder stored a large amount of data in this cache, however current and future versions will make an effort to reduce this, so speed up game loading / UI reloading / player logout.

finder-addon's People

Contributors

haatveit88 avatar

Watchers

 avatar

Forkers

urdhi

finder-addon's Issues

Does not load on WotLK build

The addon does not load on the WotLK pre-patch build. Is it possible that this could be updated to be compatible with the new patch?

This addon is a lifesaver and I hope it gets updated soon!

Thanks!

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.