AOWiki :: AODevs Forums :: Arcanum :: AO Official Forums :: AOC US/EU Official Forums
Welcome, Guest. Please login or register.
Did you miss your activation email?
+  AOdevs.com
|-+  AO 3rd Party Dev.» General Discussion» Updated Whereis
Username:
Password:
 
Pages: [1] 2
  Print  
Author Topic: Updated Whereis  (Read 3403 times)
Zibby
Rollerrat
*
Offline Offline

Posts: 25



View Profile
« on: September 06, 2006, 05:34:32 »

I'm stuck in Mexico for work this week, so I had time to do some coding.

With the addition of the new Inferno quests, I was inspired to update helpbot's whereis.

So I went to work and developed a module for BeBot, and fired it up on Rubi-Ka 1 as Geosurvey. Anyone can do /tell geosurvey whereis searchstring.

So for the cool tech stuff:
It's only a BeBot module. The module does two types of searches. If the searchstring is 1-3 characters, it does a LIKE query. However, if the searchstring is longer than 3 characters I am using MySQL FULLTEXT indexes for searching, and it seems to be working well so far. I've split up name of factoid, the factoid answer, and keywords for the factoid in MySQL. The name and answer are fairly obvious. Keywords are somewhat special. Fulltext indexes do not index strings of 3 characters or less, which means I can't do whereis efp with a fulltext search. My workaround was the keywords column where I stuck all the three letter acronyms.

I also added keywords to the fulltext index so longer keywords can be added to force a result on strings that are not in name or answer. When importing http://www.kuren.org/ao/helpbot/whereis.php this was helpful as I was able to stick all of Kuren's wacky misspellings into the database as well without showing them in output.

So the current state of things is that I have a whereis database containing almost all of Helpbot's whereis answers. Pretty cool so far, but things are out of date, and I don't have time to run around in AO and add information, so I created a system that allows anyone to submit new information. I tested this out on Sentinels and Circle G as I have the privilege of running their guildbots. It worked great, however anyone could add anything they wanted, so there are a few wierd entries in the database.

Building upwards, I added a moderation system. Anyone can still submit new whereis factoids, however unless the factoids are approved by someone they do not show up in search results. And this is where I'm at now. I have this all working, it could probably use more testing, but I'm getting tired tonight and I've thought of all the ways to break it that I can.

So now I need volunteers on Rubi-Ka 1 to moderate this new creation. Bot admins in Sentinels and Circle G are able to do it, but I could use some outside help. So if you want to, let me know! If you don't want to moderate, that's OK too you can still lookup whereis information on geosurvey! Cheesy


So now here's the how to use it part:

Perform a whereis search:
/tell geosurvey whereis search string

Add a whereis factoid:
/tell geosurvey whereis add some thing is located out there somewhere.

Add a factoid with keywords:
/tell geosurvey whereis add some thing is located out there somewhere. keywords: something else

Add keywords to an existing factoid:
/tell geosurvey whereis add keywords word1 word2 wordN to some thing

Moderate factoids (if you're a moderator)
/tell geosurvey whereis

Please hammer away and let me know if you are willing to be a moderator. Smiley

Oh, and if you're Iriche, Naturalistic, Khalem, or Vhab...well I made you moderators. I can remove you if you'd like. Wink
Logged


Glarawyn Title 7 OT Adventurer
Lilredhot Title 7 OT Enforcer
Stringtheory Title 3 OT Nano Tech
Naturalistic
Administrator
*****
Offline Offline

Posts: 33

Vhabot/Helpbot Coder


View Profile
« Reply #1 on: September 09, 2006, 15:52:39 »

Add meh other char name, and I can add them Tongue
Logged

Helpbot Host and Maintainer
Vhabot Coder
Vhab
VhaBot Developer
Administrator
*****
Offline Offline

Posts: 200


View Profile WWW
« Reply #2 on: September 09, 2006, 16:07:52 »

Was wonder, are you planning to keep this running and update for a long term?
Else I might aswell have helpbot direct you to that bot when you do whereis
Logged
Zibby
Rollerrat
*
Offline Offline

Posts: 25



View Profile
« Reply #3 on: September 09, 2006, 17:07:16 »

Was wonder, are you planning to keep this running and update for a long term?
Else I might aswell have helpbot direct you to that bot when you do whereis

I will if I have to, though I think I'm much rather see the new answers and functionality worked into helpbot. Smiley
Logged


Glarawyn Title 7 OT Adventurer
Lilredhot Title 7 OT Enforcer
Stringtheory Title 3 OT Nano Tech
Zibby
Rollerrat
*
Offline Offline

Posts: 25



View Profile
« Reply #4 on: October 30, 2006, 21:52:25 »

New submissions seem to have tapered off, so here's the SQL Data. The zip file will update automatically weekly. Use it wisely.
Logged


Glarawyn Title 7 OT Adventurer
Lilredhot Title 7 OT Enforcer
Stringtheory Title 3 OT Nano Tech
Naturalistic
Administrator
*****
Offline Offline

Posts: 33

Vhabot/Helpbot Coder


View Profile
« Reply #5 on: November 09, 2006, 18:07:02 »

I think that could easily be added to helpbot Wink
Logged

Helpbot Host and Maintainer
Vhabot Coder
Zibby
Rollerrat
*
Offline Offline

Posts: 25



View Profile
« Reply #6 on: November 09, 2006, 20:12:04 »

Forgot to mention, the BeBot module is WhereIs-0.2.1.zip, in the same directory as the SQL. Smiley
Logged


Glarawyn Title 7 OT Adventurer
Lilredhot Title 7 OT Enforcer
Stringtheory Title 3 OT Nano Tech
evol
Rollerrat
*
Offline Offline

Posts: 30


View Profile
« Reply #7 on: January 07, 2007, 22:32:50 »

I am currently working on a bot, and have been working on converting some services to webservices, so that databases can be updated automatically when mobs are added.   Anyway I took your data and turned it into a web service

http://www.evolbot.com/whereis.php

basically you can do just a simple query

http://www.evolbot.com/whereis.php?query=alvin

also if you have a suggestion (something to add/remove/change, tell me I'm a douchebag)

http://www.evolbot.com/whereis.php?suggest=evol%20you%20are%20a%20douchebag

you can also include colors, using the same format as vhab's central items database color_normal, color_header, color_highlight, defaults are the same for these as they are for vhabs.. but it just takes the 6 character hex color values.

It will always return everything in an aoml (ao html) format.

Anyway, this could easily be incorporated into a bot plugin, and feel free to do so.

Logged
Vhab
VhaBot Developer
Administrator
*****
Offline Offline

Posts: 200


View Profile WWW
« Reply #8 on: January 08, 2007, 06:23:37 »

jummy Cheesy
mind if I ask for an xml output though? Tongue
Logged
evol
Rollerrat
*
Offline Offline

Posts: 30


View Profile
« Reply #9 on: January 08, 2007, 08:30:25 »

I can do that, question about that though.. what kinda format... the data in the database would be a little odd to parse honestly.. and I probably send less data without xml.. but honestly bandwidth isn't a huge issue to me...

like maybe Alvin Odeleder
Code:
<whereis>
<name>Alvin Odeleder</name>
<location> in the Lush Fields Outpost (1538,2500)</location>
</whereis>

although maybe I should expand on this database and do something more like, although honestly the example above would probably be adequate.

Code:
<whereis>
<name>Alvin Odeleder</name>
<location>
<zone>Lush Fields</zone>
<landmark>Lush Fields Outpost</landmark>
<x>1538</x>
<y>2500</y>
</location>
</whereis>
Logged
Vhab
VhaBot Developer
Administrator
*****
Offline Offline

Posts: 200


View Profile WWW
« Reply #10 on: January 08, 2007, 11:28:38 »

reason I''m asking is cause XML allows me to style the result myself without some funky regex.
How about:
Code:
<whereis>
<name>Alvin Odeleder</name>
<zone>Lush Fields</zone>
<landmark>Lush Fields Outpost</landmark>
<x>1538</x>
<y>2500</y>
</whereis>
There's always just 1 result i assume?
Logged
evol
Rollerrat
*
Offline Offline

Posts: 30


View Profile
« Reply #11 on: January 08, 2007, 19:09:19 »

nope, there can be multiple results like

http://www.evolbot.com/whereis.php?query=athen
Logged
Vhab
VhaBot Developer
Administrator
*****
Offline Offline

Posts: 200


View Profile WWW
« Reply #12 on: January 08, 2007, 19:25:01 »

Then I'd really love an xml Cheesy
My text windows have a default template so I want to build it into those.
Logged
evol
Rollerrat
*
Offline Offline

Posts: 30


View Profile
« Reply #13 on: January 08, 2007, 20:51:20 »

ok, well its doable, and honestly alot more manageable.. but I'm gonna have to completely redo the database, as the data is not in a computer parseable format.
Logged
Vhab
VhaBot Developer
Administrator
*****
Offline Offline

Posts: 200


View Profile WWW
« Reply #14 on: January 08, 2007, 22:16:49 »

the output suggests you have 2 different fields.
i'd already settle for that in xml infact
Logged
Pages: [1] 2
  Print  

 
Jump to:  

Page created in 0.244 seconds with 17 queries.