Post by Darth Maul on Jan 22, 2015 10:12:48 GMT
EDIT [23 October 2015]:
After posting this thread, about revealing invisible monsters, players had noticed they could utilize this feature to make an alarm play when certain Magic Items drop.
If the Magic Item is a Common, Uncommon, or Rare, a blue magic effect is displayed. (Any healing spell also creates a blue magic effect on your characters position, this is useful for testing to see if you've set it up properly).
Using the "revealing invisible monster" method in the targeting section of elfbot, and making it play an alarm when one of these are detected, it causes the bot to play an alarm when a blue magic effect is displayed onscreen. This method only allows you to play an alarm, and you can't use it to auto loot. The bot doesn't give us the ability to detect where it's being displayed, so we don't know the position of these effects. Due to this, you wont be able to fully AFK if you intend to utilize this feature.
Mess around with this feature. I'm not sure how long the Noxious Staff will keep these effects, or at least the blue magic effect, active on the Magic Items.
As I've explained to Caric, Deviance, and to everyone else it's not possible using elfbot.
Elfbot can do a great many things, but it can not do this unfortunately.
Let's pull this apart piece by piece.
After posting this thread, about revealing invisible monsters, players had noticed they could utilize this feature to make an alarm play when certain Magic Items drop.
If the Magic Item is a Common, Uncommon, or Rare, a blue magic effect is displayed. (Any healing spell also creates a blue magic effect on your characters position, this is useful for testing to see if you've set it up properly).
Using the "revealing invisible monster" method in the targeting section of elfbot, and making it play an alarm when one of these are detected, it causes the bot to play an alarm when a blue magic effect is displayed onscreen. This method only allows you to play an alarm, and you can't use it to auto loot. The bot doesn't give us the ability to detect where it's being displayed, so we don't know the position of these effects. Due to this, you wont be able to fully AFK if you intend to utilize this feature.
Mess around with this feature. I'm not sure how long the Noxious Staff will keep these effects, or at least the blue magic effect, active on the Magic Items.
As I've explained to Caric, Deviance, and to everyone else it's not possible using elfbot.
Elfbot can do a great many things, but it can not do this unfortunately.
Let's pull this apart piece by piece.
- First you need to auto attack a monster;
You then need to be able to "loot", or "look inside the body" of that monster;
After that you need to detect only the "rare" items;
Then move the "rare" items from the dead body into your backpack.
In elfbot you're able to auto attack, and auto open a body (even hades using custom scripts), that's not the issue here. It gets a little tricky when you move onto the next step.
While trying to detect a rare item from a group of items within a body you could try a number of things.
Firstly you could try and see what message is displayed when you kill a monster (in default chat, or server logs), is there any sign of a "rare", or "different", item being dropped?
- In this case no. At one point this was shown, however it doesn't show anything that we could use to determine which item we need to grab.
If the monster drop message did have some sign that a specific item was rare we could use these to detect it, and with a little clever thinking we could have it auto pickup or play an alarm.
$token.’text’.n will return the nth token (word/element) of a string. A token is either a word that ends with a space, or the inside of a singlequote/doublequote. If you omit to specify n, then the returned string will simply be the first token of ‘text’. If ‘text’ is ’12 “34 56″ 78′, n=1 will return: 12, n=2 will return: 34 56, and n=3 will return: 78
example: if [$token.'$lastmsg.sender' == 'GM'] logout, it will make you logout if the first name of the last message you recieve is ‘GM’
$cutstr.’string’.startpos.lenght, will let you cut a part of a sentence
example: $cutstr.’123456′.2.3, will return 234, that is 3 characters starting at the 2nd character. You can also omit the lenght paramter, in which case the remainder of the string will be returned ($cutstr.’123456′.2 will return 23456)
$curmsg.property it will check something about each message you are recieving.
content -> will return what was wrote in the message, in the example: $curmsg.content will return ‘hey, u there?’
$lastmsg.property it ill check something about the last message you recieved.
color -> will return the message’s color, in the example: $curmsg.color will return 16838639
isdefault -> will return 1 if the message was sent in default, and 0 if not, in the example: $curmsg.isdefault will return ’1′
isstatus -> will return 1 if the message was a status message (like the ‘Sorry, not possible’), and 0 if not, in the example: $curmsg.isstatus will return ’0′ - The second thing we could try is to try and pickup on the "rare", or magic_effect, that is displayed when a rare item drops. As it stands now elfbot can not detect this type of text.
- Finally we move onto checking each item individually.
If I'm not mistaken, and I quite often am, elfbot can not "look" at items automatically. Elfbot has an inbuilt system that auto looks at players, which can be found under the HUD panel, but I don't think you can choose what the bot looks at. Of course the bot always looks at the IDs of the items around it, however as caric said, the IDs of the "rare" items are the same as the "normal" items.
If you find a way for elfbot to auto look at specific items then I could easily make a script for you to play a sound, or even loot, rare items; aside from that you're out of luck.