BeBot - An Anarchy Online and Age Of Conan chat automaton

Archive => Anarchy Online Archive => 0.2.x Custom/Unofficial Modules => Topic started by: Malosar on May 11, 2006, 03:02:00 am

Title: Boss loot table module
Post by: Malosar on May 11, 2006, 03:02:00 am
I created this for my guild and figured others may find it useful for their guild/raidbots as well. Basically allows you to lookup a loot table either by the name of a boss (returns loot for that name) or the name of an item (returns bosses it drops from).

I've added loottables for pretty much all SL dynas that have specific loot, RK uniques, and most of the wanted loot from most dungeons. Feel free to correct/modify/add to the existing data. If you make large additions to it, try to post them here for others to add. Also advise if I have made any mistakes with loot drops or missing loots/bosses. Most of the data has come from various sites, some of which are quite dated and concrete data is not available.

I've included the ability to add items to the db ingame however it only currently works with an itemref. eg. you must post the item into the command. Would probably be good to add in adding via lowid as well, which is how is matches bossid's to items in the boss_loot table.

This module requires the items db which is standard with bebot. I have not tested it with the upgraded itemsdb posted recently however as long as the column names are identical and the lowids match then it should be fine.

Update: Using JJs slightly modified version for command change, loot layout with icons. Incorporated php5 fix. Also added !whereis lookup links. This requires the whereis module which I ahve included below with the SQL data as well.

Commands:

!bossloot name name of boss - searches the db for that name, can be partial and will return loottables for each match.

!bossloot loot name of item - searches the db for each boss that drops that item. Will return results for each item if multiple found.

!bossloot add <itemref>/name of boss/location - Adds an item to the db. It will check whether the item already exists under the boss name so the name of the boss MUST be exact. The location will not overwrite if the boss already exists, so you can put anything for location if adding to an existing droptable. However you must include something for location.

!bossloot check - Can only be done in a tell. Correlates data between the boss db and the items db for missing information. (thanks JJ)

Personally it's a lot easier updating loot tables in the db itself, using a frontend like phpmyadmin, sqlyog or similar.
Title: Re: Boss loot table module
Post by: Alreadythere on May 11, 2006, 03:57:11 pm
Nice, thanks :)
Title: Re: Boss loot table module
Post by: tabsl on May 12, 2006, 10:52:38 am
Very nice, except one bug.

Code: [Select]
[2006-05-12 08:36:03]   [GROUP] [MSG]   [<<< Shadowmoon Association >>>] Tabsl: !boss name beast
Fatal error: Cannot use string offset as an array in /home/teibl/aobots/smooni2/modules/boss.php on line 72


The error occurs also if i type in "!boss name the" or "!boss name the beast".

Some ideas? :)


*edit*
I removed The Beast from sql db.. now it's not crashing again but only shows Beasthandler and so on..

*edit2*

Code: [Select]
[2006-05-12 12:00:38]   [GROUP] [MSG]   [<<< Shadowmoon Association >>>] Tabsl: !boss loot gaily
Fatal error: Cannot use string offset as an array in /home/teibl/aobots/smooni2/modules/boss.php on line 105

seems the same bug, maybe someone will find out whats wrong :)
Title: Re: Boss loot table module
Post by: Malosar on May 12, 2006, 08:36:59 pm
That error actually occurs if one of the items it's looking up is not found or bugged. Did you add to the beast loot table or something? I tried both of those and not getting the same error.

Also try changing on line 72 and 105, from $boss[0][0] to $boss[0] as suggested by someone to me previously however it didn't work for me in that specific instance. It might be a php version difference?
Title: Re: Boss loot table module
Post by: Malosar on May 13, 2006, 11:41:45 pm
Also see this (http://bebot.link/index.php/topic,389.0.html) post regarding the error in php5.
Title: Re: Boss loot table module
Post by: tabsl on May 15, 2006, 10:33:38 am
Thanks for the info, hope it will be fixed  8)
Otherwise it's a very funny module  ;D
Title: Re: Boss loot table module
Post by: Malosar on May 15, 2006, 04:54:53 pm
I'll see if I can recode around the problem sometime. However it works fine for me so it wont exactly be high on my todo list  ;D
Title: Re: Boss loot table module
Post by: buff on November 28, 2006, 06:47:59 pm
Fatal error: Cannot use string offset as an array in D:\RK2\Wyraid\modules\boss.
php on line 72

D:\RK2\Wyraid>pause
Press any key to continue . . .

got this message when i tried to do !boss name a or !boss name hezak
not sure if there's anything wrong w/ code :(
Title: Re: Boss loot table module
Post by: Malosar on November 30, 2006, 03:39:18 pm
It doesn't work with php5. I haven't recoded around it.
Title: Re: Boss loot table module
Post by: jjones666 on November 30, 2006, 04:06:33 pm
It'll crash with PHP 5 if there is an empty entry in the database.  Like boss 78 with no loot allocated to it or so.  Just make sure there are no empty entries and it will work fine.

-jj-
Title: Re: Boss loot table module
Post by: Malosar on November 30, 2006, 04:28:17 pm
It'll crash with PHP 5 if there is an empty entry in the database.  Like boss 78 with no loot allocated to it or so.  Just make sure there are no empty entries and it will work fine.

-jj-

Actually I don't think it works at all as there is a bug when using
Code: [Select]
[0][0]offsets in a foreach loop in php5 afaicr. I've never run php5 so I can't really test it and no idea how many bebot users actually use this module with php5.
Title: Re: Boss loot table module
Post by: pusikas on January 10, 2007, 05:46:40 pm
It does not produce error for me, but it is not really working, either. Watch this:
Code: [Select]
!boss loot asteroid
Items not found in boss loot:
Shoulderpads of Asteroid Calling
Code: [Select]
!boss name Tuqusk
Boss: Tuqusk
Loot:
Armplates of Meteorite Assembly
Boots of Stolen Comet Speed
Copy of The Excalibur
Exact Copy of The Excalibur
Gauntlets of Star Confabulation
Moon Watcher Helmet
Overcoat of the Firmament
Shoulderpads of Asteroid Calling
Vest of Torpid Sunrays
Location: Inferno, South of Frontier
------------------------------------
If I search for armplates or meteor, I get the merlin dragons... I can't see why atm. Any ideas? My bot does not give any error messages, btw.
Title: Re: Boss loot table module
Post by: Malosar on January 10, 2007, 06:09:18 pm
It's because of the stupid extra set of pads in the itemdb introduced in 16.3, the nodrop version of the pads. The module gets the highest value for the lowid and thats not in the boss loot db.

You could delete the entry from the items db. Item lowid 260685.
Title: Re: Boss loot table module
Post by: shilli on January 10, 2007, 07:33:30 pm
hey the boos loot in bebot dosent show loot only boss name and loc  and i get a error msg that lowid   do i need to make a table with items  in the database i9 have items.php and thats works fine
Title: Re: Boss loot table module
Post by: Malosar on January 11, 2007, 02:20:51 am
You just need to delete that entry from the itemdb if you want.

delete from items where lowid = 260685;
Title: Re: Boss loot table module
Post by: shilli on January 11, 2007, 04:01:38 am
You just need to delete that entry from the item db if you want.

delete from items where lowid = 260685;

tnx but i did find the error i need the itemsdb to get this to workcan sow plz can someone link it for me


Table 'bebot.items' doesn't exist
MySQL error (# 7) on query: SELECT lowid, highid, highql, name FROM items


                                                WHERE lowid = '245659'
Table 'bebot.items' doesn't exist
MySQL error (# 8) on query: SELECT lowid, highid, highql, name FROM items


                                                WHERE lowid = '245677'
Table 'bebot.items' doesn't exist
MySQL error (# 9) on query: SELECT lowid, highid, highql, name FROM items


                                                WHERE lowid = '245676'
Table 'bebot.items' doesn't exist
MySQL error (# 10) on query: SELECT lowid, highid, highql, name FROM items


                                                WHERE lowid = '246277'
Table 'bebot.items' doesn't exist
Threshold of 10 errors in 30 seconds reached. Supressing error output for 30 sec
onds
Title: Re: Boss loot table module
Post by: pusikas on January 11, 2007, 08:45:19 am
This of course only works if you have a local items database. :)
Title: Re: Boss loot table module
Post by: Malosar on January 11, 2007, 02:13:14 pm

tnx but i did find the error i need the itemsdb to get this to workcan sow plz can someone link it for me


You need sql from here (http://www.jjones.co.uk/files/items17.00.00.zip) and if you want, you can use your local db with a different items.php here (http://bebot.link/index.php/topic,385.msg4227.html#msg4227)
Title: Re: Boss loot table module
Post by: Metaphblade on February 01, 2007, 08:44:18 am
I can do a "!boss loot item" and it will work fine, but when i try to do a name, i get the following error.


Code: [Select]
Fatal error: Cannot use string offset as an array in C:\php\modules\boss.php on line 72
*****Edit*****
This error only occurs when i use !boss name beast  i can use heart or other names, just not beast.
Title: Re: Boss loot table module
Post by: Malosar on February 01, 2007, 03:18:34 pm
I've updated the php file in my original post. Grab it and see if it fixes your problem, which only occurs in php5. You don't need to download the sql again.
Title: Re: Boss loot table module
Post by: jjones666 on February 02, 2007, 12:03:55 am
- Triggers are changed to !bossloot (you can change this back easily enough if u don't like it)
- Icons are added to loot output (by Axl)
- Loot output changed slightly
- !bossloot check in tell will check your !items database against the bossloot database and highlight missing/incorrect items.
- Includes PHP5 fix.

http://www.jjones.co.uk/files/boss.php
Title: Re: Boss loot table module
Post by: Metaphblade on February 02, 2007, 08:32:25 am
Thanks  :)  seeing as how i was already using Malosar's version, i just re-downloaded his to make sure there were no additional unforseen problems.  It worked like a charm  :)
Title: Re: Boss loot table module
Post by: Malosar on February 02, 2007, 02:03:58 pm
- Triggers are changed to !bossloot (you can change this back easily enough if u don't like it)
- Icons are added to loot output (by Axl)
- Loot output changed slightly
- !bossloot check in tell will check your !items database against the bossloot database and highlight missing/incorrect items.
- Includes PHP5 fix.

http://www.jjones.co.uk/files/boss.php

Nice JJ, that boss check is handy, and tbh I think I like !bossloot better :) . Since it's fixed for all now, maybe add it in the modules posts for 2.x

I really don't know why I didn't fix it before, the answer was right in front of me and mentioned a couple of times lol.
Title: Re: Boss loot table module
Post by: jjones666 on February 02, 2007, 02:18:56 pm
Actually, the PHP5 issue in the plugin was on my todo list for ages also, so I'm really glad you fixed it :-)  I didn't wanna post any of the changes I'd made until it was fully working.

Next step really should be to sync the SQL with the !whereis webpage that was posted on the aodevs forum I guess (grrrr, so many things to do and so little time!).

I'll add the plugin to the A-Z later.

Thanks for your feedback and obviously the code in the first place :-)

Btw, using my 17.0.0.5 !items database, there were the 2 shade items dropping from LOTV that needed changing to the non nodrop version and a Phatmos items that just needed deleting in my database - same for yours?  If you could post the updated SQL I'd be grateful, I had some other additions in mine which are kinda silly (for a certain engineer in our org).

Cheers,

-jj-
Title: Re: Boss loot table module
Post by: Malosar on February 02, 2007, 03:33:16 pm
Great idea on incorporating with whereis which I use on my bot. I modified the module to show links instead of a location, and added links when showing a list of bosses for a specific loot. Whereis module from aodevs required of course :)

I also fixed those shade items entries for Lord of the Void you mentioned, and removed the phatmos loot.

I've updated my original post to reflect these changes. I also left in the "location" column for boss_name as people can use it to update their whereis databases if they wish. If it's notquite what you were thinking or would like it another way I'll give it a go as im not very busy at work lately :)
Title: Re: Boss loot table module
Post by: Malosar on February 02, 2007, 04:34:52 pm
Here's an updated whereis sql which also contains all the location data for all the boss entries in my db.
Title: Re: Boss loot table module
Post by: pusikas on February 06, 2007, 03:42:52 am
Dunno if this in the latest version of the boss_name table, I think I found some typos. Not 100% sure, I did not set out and check every single mob:
Anasis Favorite (should be Anansis Favorite)
Anitaaps Shadow (I think it should be Aniitaps Shadow), and missing the low-QL of the 220 version of the piercing evil
Apprentice Beasthandler drops Lava Capsule as well, at least my guide says that
I was told the Conflagrant spirit does not drop the ql260 version of the gun
Crete drops the conflagrant gun, and also the head symbiant of the love child
Distracted Snake Tamer drops snake tamer shield and guard
Ishimk'Imk drops the mark of the fisher king
Punctilious Hiathin is written Punctilious Hiathlin or Punctlious Hiathlin - not entirely sure.  ;D
Scrupulous Hiathin is written Scrupulous Hiathlin
Title: Re: Boss loot table module
Post by: Malosar on February 06, 2007, 02:10:08 pm
Yeah it was never really a complete db, didn't know about the spelling errors either. It's also missing the hollow island bosses and loot as well. If I get a chance I'll correct and update the db, otherwise if you do so beforehand, please post here for others.

edit: got some time so updating it now.
Title: Re: Boss loot table module
Post by: pusikas on February 06, 2007, 03:24:06 pm
Am updating it as well, mebbe we can merge results somehow. It currently misses a lot of Ado bosses, and I'd like to add HI as well. Problem is getting a decent list of the bossloot that includes the locations as well. "NW ado" isn't exactly verbose. Would be grateful for any nice links. Otherwise I'll shoulder my knapsack and go visit the bosses myself. :)
Title: Re: Boss loot table module
Post by: jjones666 on February 06, 2007, 03:38:37 pm
Yeah it was never really a complete db, didn't know about the spelling errors either. It's also missing the hollow island bosses and loot as well. If I get a chance I'll correct and update the db, otherwise if you do so beforehand, please post here for others.

edit: got some time so updating it now.

I've done HI bosses already the other day, just didn't post yet.  Will do later if you didn't complete yet.

-jj-
Title: Re: Boss loot table module
Post by: Malosar on February 06, 2007, 03:58:16 pm
ok made the corrections, added in the extra loot and the HI data. Not sure if HI is complete as not many good sources for that. Updated my original post with the new SQL data. Between the 3 of us we can hopefully come up with a more comprehensive and accurate db.

Maybe you can post any corrects/additions in sql format?
Title: Re: Boss loot table module
Post by: pusikas on February 06, 2007, 06:37:10 pm
I am kinda done with the Adonis mobs. Prolly some missing still, but reliable info is scarce. Now, my MySQL is not very good. What would be a convenient way to give you the data? Select it into another table and dump the table? What would the commands for that be? Our bossid columns most likely differ, since I fiddled with the table a while ago, and I did not apply your changes before starting on Adonis. I could generate two tables from the output of
Code: [Select]
SELECT * FROM boss_name WHERE location like '%Adonis%';
SELECT bossname, itemid FROM boss_loot l JOIN boss_name n ON (n.bossid = l.bossid) WHERE location LIKE '%Adonis%';
for example, or whatever works well. :)
Title: Re: Boss loot table module
Post by: Malosar on February 06, 2007, 06:48:09 pm
Well I'll need the itemids so the 2nd select giving me the bossname and the itemid is perfect. I'll enter all the data into my db, and any JJ might have for me about HI then post a new version of the sql.
Title: Re: Boss loot table module
Post by: pusikas on February 06, 2007, 10:05:50 pm
OK, I know how to dump the result of a SELECT into a table, but how do I dump a table as a series of INSERT statements?
Title: Re: Boss loot table module
Post by: pusikas on February 06, 2007, 10:12:39 pm
Nvm, I think I found out. Check if you can use this.  ;D Should make two tables, dump1 and dump2. I hope... :) I put in all the ado mobs that I know to have non-pattern loot at all, plus their location where I could get it. Was too lazy to walk to the snatching souldredge to heck his coordinates...
Title: Re: Boss loot table module
Post by: Malosar on February 07, 2007, 03:59:48 pm
ok entered in the extra bosses and drops from Adonis. I left out some of yours as I don't consider quest items and armor to be boss loot. Also I left my JAME data pretty much intact as there is little data around to accurately tell me which ones it does/doesn't drop.

Also updated my whereis db with your location data and included the whereis db and module with my original post along with the loot updates.

Thanks for your extras, I'd left out quite a bit in Adonis lol
Title: Re: Boss loot table module
Post by: pusikas on February 07, 2007, 07:33:39 pm
I left out some of yours as I don't consider quest items and armor to be boss loot.

I can agree to the quest items, but for several reasons I think that the undercover and sanguisugent armor should stay. Some people actually use that stuff (some buff useful skills like CL or T&S), and it only drops off bosses. People use the bossloot module to find out what items of interest a boss drops, or to find out what boss drops a certain item. In both cases, the armor information might be considered interesting. It's not like too much info hurts anyone, or the database is getting too big - quite the opposite. The info is there - why not use it?
And I often hear questions like "Does anyone know if there are mobs in adonis that drop Pernicious armor?". Those questions could be answered with the armor included. I might agree that stuff like outsider and killer's armor is quite uninteresting, tho. But at least sanguisugent, pernicious, bootlegger and saboteur armor should stay in the DB, as these have real uses and only drop from bosses.
And please tell me the difference between pernicious armor and, say, FRN. Both drop only from certain kinds of bosses, but across all the playfields. FRN is in the DB, so should the armor.  ;D

Working on added info about ely atm... half the eremites are missing...
Title: Re: Boss loot table module
Post by: Malosar on February 07, 2007, 07:54:07 pm
Well if you happened to have a comprehensive drop list for all the armor types then it would be a good thing to include, but there was only a few in your list which had it. If you get to the point where you have details across multiple zones then please share!

I'm also starting to think along the way somewhere I lost some of my entries in my db, maybe I had reverted to an earlier version somewhere as I know some of the adonis ones you put in I definitely had beforehand. And i'm seeing more missing as well.

I guess eventually we'll end up with a complete db. Thanks for helping out with updating this.
Title: Re: Boss loot table module
Post by: pusikas on February 07, 2007, 10:13:18 pm
As I said, I am atm collecting locations for ely, and I have half a list for scheol ready. If it pleases you more, mebbe I prepare an update with the armor some day. You are right that it makes more sense to include it completely or not at all.

BTW, I copied most of the info for ado form aowiki.de, crosschecked it with comments from auno.org and a thread on the german official forum. Still, I did not get most of the adonis info firsthand, so there might be errors.
Title: Re: Boss loot table module
Post by: Heffalomp on April 14, 2007, 05:27:23 pm
Annyone got a helpfile for the !whois part?
Title: Re: Boss loot table module
Post by: pusikas on April 15, 2007, 12:29:55 am
Helpfile? !whois?
Title: Re: Boss loot table module
Post by: Malosar on April 15, 2007, 03:58:29 pm
I assume you mean the !whereis support I added into the bossloot module. Information on it can be found at aodevs.com (http://aodevs.com/index.php/topic,30.0.html).
Title: Re: Boss loot table module
Post by: chek on June 21, 2009, 12:47:50 am
how install this module?
Title: Re: Boss loot table module
Post by: Temar on June 22, 2009, 04:05:43 am
you normaly put the module in custom/modules
then simple start or restart your bot
Title: Re: Boss loot table module
Post by: Temar on June 22, 2009, 04:06:45 am
Altho this is posted in 0.2.x which is very old and will not work with latest version and there is no support module for it
SimplePortal 2.3.7 © 2008-2024, SimplePortal