Register for your free account! | Forgot your password?

You last visited: Today at 01:15

  • Please register to post and access all features, it's quick, easy and FREE!


Diablo 3 Happy Auction Bot

Old   #1
elite*gold: 0
Join Date: Oct 2007
Posts: 4
Received Thanks: 0
Diablo 3 Happy Auction Bot


Habe hier etwas gefunden was ich euch nicht vorenthalten möchte.

Author: ChuiChu
Download (enthält auch den Sourcecode (C++)): (funktioniert mit patch 1.0.4)

HappyAuction ist ein Open Source C++ Auktionshaus Bot der mit LUA Scripts selber scriptbar ist. Er bietet völlige kontrolle über die AH Such/Equip Funktionen und in der Zukunft auch Kontrolle über das komplette AH. Ein paar bot scripte sind bereits inkludiert.
Der Bot ist natürlich gratis.

- fixed d3 crashing for sure this time
- further stability improvements
- added haStashAt() to determine current stash position. see README
- added haListAt() to determine current search list position. see README
- added haItem().ilevel to get item level
- fixed d3 crashing while rummaging through search results (hopefully )
- fixed haGetLogin()
- added haFilterPrimary() and haFilterSecondary() to manually control primary (ex:armor) and secondary (ex:ring) filters.
- improved reliability and speed of haListNext and haListSelect
- haItem().text will now strip out item stat text numberic values allowing it to be consistently compared to.
- changed haItemStat(pattern) to match the beginning of haItem().text not substring search. this will prevent cases like haItemStat('critical hit chance') from matching 'increases critical hit chance of energy twister ...'
- added haItemStat(pattern, true) to still allow substring searches
- added haUnique(name, row) allowing you to select a row from the dropdown box.
- added haGetGold() to get total gold balance
- added haGetAccount() to get active account name. useful for identifying d3 client in multiclient setup.
- investigate reported filter state lost on relogin
- investigate reported relogin issue causing login process to get stuck on some systems
- create example script for multibotting
- support file logging for multiple instances
- evaluate need to get values of haFilter*() functions
- expose more manual control of search list (page prev/next, item count)
- improve RMAH support
- add haItem().as_min haItem().as_max

Beispiel Scripte:

Buyout Script:
function SnipeBuyout(buyout)
   while true do
      haFilterBuyout(buyout, true)
      if haActionSearch() then
DPS Buyout Script

function SnipeDps(dps, buyout)
    while true do
        haFilterBuyout(buyout, true)
        if haActionSearch() then
            local idps = haListItem()
            if idps > dps then
Snipe Buyout:

function SnipeBuyout(buyout)
    while true do
        haFilterBuyout(buyout, true)
        if haActionSearch() then


function GemMiner(prices)


    -- for each item type
    for i, itype in ipairs(ITEM_TYPES) do


        -- if item type has sockets
        if haFilterStat(1, 'has sockets', 1) then

            -- if search successful
            if haActionSearch() then

                -- toggle buyout column to sort in increasing order

                -- for each search item in search list
                while haListNext() do
                    local total_value = 0
                    local dps, bid, buyout, nstats, nsockets = haListItem()

                    -- calculate total gem value of item
                    for j = 1, nsockets do
                        local stat, gtype, rank, value = haListItemSocket(j)
                        if rank > 0 then
                            total_value = total_value + prices[rank]

                    -- buy item if total gem value is more than twice buyout
                    if buyout > 0 and total_value > (buyout * 2) then

HappyAuction v0.9

HappyAuction is a C++ open source LUA scriptable Diablo 3 auction house bot.
It offers full control over the AH search/equipment section and possibly the
entire AH interface in the future. Some popular bot scripts are included.
Happy botting!

1. Run bin/HappyAuction.exe
2. In Diablo 3 visit AuctionHouse/Search/Equipment.
3. Hit CTRL-F12 to start/stop the main script. The taskbar icon will change
color while script is active.
4. The default sample script will run the basic buyout loop you see in other
AH bots. It sets the buyout to 200 by default for saftey reasons.
5. See bin/Lua/Main.lua for further details.

- SnipeBuyout: Traditional buyout bot that will buyout loop first item.
- SnipeDps: Will buyout loop first item reaching desired DPS.
- LogResults: Sets filters and scans all results logging all items to a file
- GemMiner: More complex bot that searches across multiple filters finding
and buying cheap items with expensive gems.

- There will be a brief 2-3 second delay before running a script the first
time. This is necessary to run a memory scan of Diablo 3 to detect
everything HappyAuction needs to operate.
- Do not use Video/Letterbox option
- Do not enable either Video/Max FPS option or keep them above 50.
- HappyAuction has not been tested with RMAH.
- Can operate while you do other things so long as the left filter side of
the screen remains uncovered (if you are using a bot that uses filters).
CTRL-F12 is a global hotkey that can be called any time.

- The following measures have been added to reduce detection:
- Random delays between actions (simulated mouse clicks/keyboard keys)
- Random buyout adjustments
- Positioning of mouse clicks is randomized by a few pixels
- Sent input is minimized. It's mostly mouse movement for a search scan.
- HappyAuction uses the following measures to interact with Diablo 3:
- Win32 Messages: To send keyboard/mouse events
- Read Process Memory: To determine item values such as DPS and armor
- Write Process Memory: Yes it's safe because only text/data memory is
altered, not instruction memory. It's used only to set the filter
combobox values and clear item tooltip state.
- The following is recommended as additional security:
- Include additional delays with haSleep()
- I am aware of other security measures and will be adding them in the future.
- There is no guarantee HappyAuction is 100% safe from detection. Use at your
own risk.

- Focusing away from the D3 window may cause an active script to fail. Avoid
by staying either focused on D3 or unfocsed (doing other stuff in windows).

- If you are new to LUA visit: . There really
isnt much to learn to operate this bot besides loops if statements and
some basic operators.
- The main entry script is Lua/Main.lua.

The following are the available functions in addition to standard LUA stuff
arranged by category:

- haFilterType(id) -> status
Sets item filter. This will also take care of character and primary item
types automatically.
- id: substring identifier of secondary item type.
example: 'voodoo' will match 'Voodoo Mask'
- status: true if successful

- haFilterLevel(min, max) -> status
Sets item level filter.
- min: minimum level
- min: maximum level
- status: true if successful

- haFilterRarity(id) -> status
Sets item rarity filter.
- id: substring identifier of rarity. example: 'rare'
- status: true if successful

- haFilterStat(index, id, value) -> status
Sets item preferred stat and minimum value filter.
- index: specify which of the 3 stat filters to use. range: 1-3
- id: substring identifier of type.
example: 'level req' will match 'Reduced Level Requirement'
- value: minimum value for this filter. range: 0-999
- status: true if successful

- haFilterBuyout(amount, randomize) -> status
Sets the buyout amount filter.
- amount: buyout amount
- randomize: (optional) if true adds a small random value to
amount to avoid cached search results and detection.
- status: true if successful

- haFilterUnique(name) -> status
Sets legendary or set item filter.
- name: string idenfiying a legendary or set item.
- status: true if successful

- haListSelect(index) -> status
Selects the current item given a row index from search results.
- index: index of item to select. range: 1-11
- status: true if successful

- haListNext() -> status
Iterates through the entire search results list selecting every item
until it reaches the last item of the last page.
-- will buyout every item found
while haListNext() do
- status: true if successful

- haListItem() -> dpsarmor, bid, buyout, nstats, nsockets
Returns information about the selected item. Values will be 0 if no
item is selected or if failure occurred.
- dpsarmor: the DPS or armor value found in tooltip.
- bid: the actual max bid price. not necessarily the shown price.
- buyout: the buyout price or 0 if there is no buyout
- nstats: the number of stats
- nsockets: the number of sockets

- haListItemStat(index) -> stat, value1, value2, value3, value4
Gets individual stat information of the selected item. Loop with
up to nstats to get all item stats.
- index: the index of the stat to get. range: 1-nstats
- stat: the name of the stat. example: 'Attack Speed %'
- value1-4: stat values. for most stats only value1 will be used.

- haListItemSocket(index) -> stat, type, rank, value1, value2, value3, value4
Gets individual stat information of the selected socket. Loop with
up to nsockets to get all socket stats.
- index: the index of the socket to get. range: 1-nsockets
- stat: the name of the stat. example: 'Intelligence'
- type: gem type: 'Amethyst','Emerald','Ruby', or 'Topaz'
- rank: gem rank up to radiant star. range: 1-14 or 0 if empty
- value1-4: stat values. for most stats only value1 will be used.

- haActionBid(bid) -> status
Bids on current item and sets an optional bid price.
- bid: (optional) your max bid price.
- status: true if successful

- haActionBuyout() -> status
Buys out the current item. Use with caution!
- status: true if successful

- haActionSearch() -> status
Hits the search button.
- status: true if successful

- haActionSortDpsArmor() -> status
Toggles DPS or Armor column sorting order
- status: true if successful

- haActionSortBuyout() -> status
Toggles buyout column sorting order
- status: true if successful

- haLog(message)
Writes a message to the User.log file
- message: message string

- haBeep()

- haSleep(delay)
Delays execution for the specified time.
- delay: delay in milliseconds

- haAlert(message)
Opens popup message with specified message.
- message: message string

- haSettingsListDelay(delay)
ADVANCED: Sets the global delay between reading list items. The higher
your FPS the lower this can be set. At 60 FPS a value of 25 should be
fine. The default is 50 which has been tested against the low D3 default
background setting of 15 FPS. You can test this using the LogResults
bot and ensure the total TOTAL FOUND items is 500 (end of log file).
- delay: delay in milliseconds. range: 5-60000

HappyAuction is under the strict "do whatever the fuck you want just dont
blame me" license. Break these rules and I'll sue your neckbeard off!

bin/ Build output and everything you'd find in the binary release.
build/ Project files. Open HappyAuction.sln with Visual Studio 2008 or
higher then build/run.
docs/ Nothing useful here yet
source/ The source code! HappyAuction is a combination of 1 executable
and 3 library packages. Ignore HappyMemory: It's temporary code to
help me with stuff where Cheat Engine falls short.

Ich habe es selbst schon probiert hier könnt ihr meinen code mal haben.
Allerdings bleibt er dann irgendwann stehen und er macht nicht weiter...vllt könnt ihr mir ja dabei helfen.

local MAXSEARCH = 0 -- max amount of different items to search for minus 1. 0 is 1, 1 is 2, 9 is 10 different items exc. correspond to the filter function
local TIMEFILTER = true -- this will use the setting below to sort if you want by recent times
local AFTERSLEEPMIN = 10 -- minimum amount of time after searching all the items to wait in minutes (will avoid being kicked with this) set to 0 to disable
local AFTERSLEEPMAX = 30 -- maximum amount of time after searching all the items to wait in minutes (will avoid being kicked with this) set to 0 to disable

-- oldest item bot will look at TIMEFILTER must be true to use these
-- local NEW_ITEMS_TRESH= 35 * 60 * 60 * 1000 -- 1day 11hour (1h)
local NEW_ITEMS_TRESH= 34 * 60 * 60 * 1000 -- 1day 10hour (2h)
-- local NEW_ITEMS_TRESH= 33 * 60 * 60 * 1000 -- 1day 09hour (3h)
-- local NEW_ITEMS_TRESH= 29 * 60 * 60 * 1000 -- 1day 5hour (7h)
-- local NEW_ITEMS_TRESH= 24 * 60 * 60 * 1000 -- 1day 0hour

-- dont touch these vars unless you know what your doing
local ITEMS = 0
local BUYOUT = 0
local HG = true
local DPS = 0

-- filter function edit these to match what you wanna search for currently has 4 items but you can add as much as you want make sure to set MAXSEARCH to how ever many you use -1
function FILTER(ITEM)
if ITEM == 0 then
dps = 750 -- set a min dps 0 will disable it
haFilterType('2-Hand') -- filter by type if your doing rares
haFilterLevel(60, 60)
--haFilterUnique('name') -- your unique to look for if you want add ", row number" if more then one comes up
haFilterStat(1, 'Has Sockets', 1) -- stat 1
haFilterStat(2, 'Life on Hit', 500) -- stat 2
haFilterStat(3, 'Critical Hit Damage', 50) -- stat 3
--haFilterStat(4, id, value) -- stat 4
--haFilterStat(5, id, value) -- stat 5
--haFilterStat(6, id, value) -- stat 6
--BUYOUT = (math.random(100, 200)) * 1000 -- random buyout set within a thousand
--BUYOUT = 30000 -- static buyout


-- core script
haSortTimeLeft() -- sort it by time so we can only ge tthe most recent
while true do -- bot loop for everything

if haSearch() then

-- for each search item in search list
while haListIterate() do

local item = haItem()

if item.rtime < NEW_ITEMS_TRESH and TIMEFILTER then
if item.dps >= dps then -- dps checker
if haGetGold() >= item.buyout then -- make sure we have the gold for the item so we dont get stuck with errors and look like a bot
--haBuyout() -- buyout every item that pops up so use good filters
HG = false
haSleep(100, 150) -- slow down going through the list to avoid bnet kicks
haSleep(AFTERSLEEPMIN * 6000, AFTERSLEEPMAX * 6000) -- take a random break between each search
if HG == false then
break -- if hit this exit loop because we are out of gold
haLogout() -- logout

falls ich die quelle mit angeben muss sagt bescheid dann editier ich das

naddel is offline  
Old   #2
elite*gold: 0
Join Date: Jun 2009
Posts: 929
Received Thanks: 47

Ehm ne frage verstehe den bot nmicht bzw geht nix bei mir^^

GotoHell92 is offline  
Old   #3
elite*gold: 0
Join Date: Oct 2007
Posts: 4
Received Thanks: 0
Du musst die main.lua bearbeiten.
Dann startest du die .exe datei...gehst ins auktionshaus und drückst STRG+F12
naddel is offline  
Old   #4
elite*gold: 67
The Black Market: 115/0/0
Join Date: Sep 2009
Posts: 391
Received Thanks: 31
virustotal wäre nett denke ich da die wenigsten jemanden mit 4 Beiträgen vertrauen werden.

MMO-King is offline  
Old   #5
elite*gold: 50
Join Date: May 2008
Posts: 2,216
Received Thanks: 1,821
Originally Posted by GotoHell92 View Post

Ehm ne frage verstehe den bot nmicht bzw geht nix bei mir^^
pssht keine Werbung machen.

Aber im Prinzip läuft das alles gut, solange die Bibliotheken aktuell sind.
TheOnlyOne652089 is offline  
Old   #6
elite*gold: 0
Join Date: Apr 2006
Posts: 6,596
Received Thanks: 1,831
Wer eine Übersicht zur Lua Api benötigt:

Medix is offline  

« Previous Thread | Next Thread »

All times are GMT +2. The time now is 01:15.

Powered by vBulletin®
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Abuse
Copyright ©2017 elitepvpers All Rights Reserved.