lobbesbot Autobid Functionality

Category: bot Published: March 4, 2017

Following the suggestion from hanbot in #eulora, I set off to implement an auto-bidding feature for lobbesbot. Here are the basics of how it works:

!Qautobid [auction id (INT)] [max bid in coppers] [increment ammount in coppers]

Only accepted via pm. Enter your max bid amount in coppers for an auction id. Abbreviations like 'mn' and 'k' are accepted and are parsed accordingly. Increment amount specifies how much you will overbid up to your max auto-bid amount. E.g. If your max bid = 12mn, increment = 1mn, and the bot triggered your auto-bid against a bid of 6mn, your auto-bid would be 7mn. If it were instead responding to a bid of 11.5mn, your auto-bid would be your max of 12mn.

Using this command a consecutive time for a given auction id will update the values for that auction. Note: To set your values to 0 (remove your auto-bid), use the !Qauctionbidzero command detailed further down.

Each time someone 'manually' bids in channel, lobbesbot checks all outstanding auto-bids and resolves by overbidding either the manual bid in the channel or the second-highest max auto-bid outstanding for that auction id. The lobbesbot will reply with both the overbid amount and the amount of 'losing' auto-bids (0 if none).

In this example, 'dengus' and 2 other auto-bidders have previously entered their sekkrit max auto-bid amounts. I bid 12.1m coppers on auction 43. The lobbesbot goes through the computations and arrives at 'dengus' being the top-dog bidder in the scenario with a bid of 25mn, overbidding both my previous bid as well as the second-banana auto-bidder. Notice the '2 other auto-bid(s)' portion:

lobbes: !Qbid 43 12.1m

lobbesbot: AUCTION # 43: test Heard: 12.1mn from lobbes Ending: 2017-03-06 03:11:49 UTC (46 hours 59 mins)

lobbesbot: AUCTION # 43: AUTO-BID Heard: 25mn from dengus overbidding lobbes and 2 other auto-bid(s) Ending: 2017-03-06 03:11:49 UTC (46 hours 59 mins)

With regards to collisions between more than one auto-bid per auction: the auto-bidder with the highest max bid will always win. In cases where two auto-bidders have the same highest max bid, the winner will be decided on who entered their auto-bid first for that auction id. In other words, a priority system is employed. Note that the actual priority values are deliberately obfuscated from all bidders.

---

!Qautobidlist [takes no arguments]

Will only respond via pm, even if sent in channel. Lists all of the active auto-bids for the irc nick that sent the command.

E.g.

lobbes: !Qautobidlist

lobbesbot: Auto-bid for Auction # 45: Max Bid = 26mn coppers; Max Increment = 500k coppers

lobbesbot: Auto-bid for Auction # 46: Max Bid = 0 coppers; Max Increment = 0 coppers

---

!Qautobidzero [auction id (INT)]

Can be used to set all of your auto-bid amounts to 0 for a given auction id. Note: Your priority will be preserved. You can also use this to reserve your auto-bid priority for an auction before actually commiting to bidding anything.

E.g.

lobbes: !Qautobidzero 45

lobbesbot: Success: Autobid amounts have been set to 0 coppers for Auction # 45. Your priority has been preserved

---

Happy auto-bidding!




Comments coming soon.