Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Prosty Farmbot do gry 2D


Rekomendowane odpowiedzi

Opublikowano

Potrzebuje nieskomplikowanego farm bota do gry Warspear (grafika 2D).  Postac stoi w danym miejscu i gdy w danym obszarze pojawia sie potwor postac podchodzi i zabija go poprzez wcisniecie skillow (pod przyciskami 1-9). Potwor zostaje zabity postac klika na cialo i zbiera dropa. I na koniec ewentualnie wraca na pozycje poczatkowa.

Fajnie gdyby ktos mi cos takiego napisal.

A komus co sie zna na tym pewnie zajmie to kilka minut.

 

 

 

Znalazlem kod zrodlowy z prostym botem nie mojego autorstwa. 

Program napisany w jezyku Pyhton.

Zastanawiam sie czy to bedzie dzialac i co mam zrobic zeby to sprawdzic. Jaka wersje pythona sciagnac i jak utworzyc program?

import pyautogui
import time
pyautogui.FAILSAFE = True
DETECTED = False
ATTACK = True
LOOTED = 0
alive = True
DECIDED = False
detectedHand = False
im = pyautogui.screenshot()
#  warspear online bot --- RAILWANDERER 2016
def detecting():
    """Detect a mob x=800-1040"""
    im = pyautogui.screenshot(region=(840,150,1250,300))
    mobLocation = pyautogui.locate('side.png', im, grayscale=False)
    if mobLocation != None:
        mobx, moby = pyautogui.center(mobLocation)
        if mobx +840 < 1000:
            print('mob detected')
            pyautogui.click(mobx+810,moby+200,button='left')
            pyautogui.mouseDown(mobx+810,moby+200,button='left')
            pyautogui.mouseUp(mobx+810,moby+200,button='left')
            time.sleep(2)
            pyautogui.click(900,260,button='left')
            pyautogui.mouseDown(900,260,button='left')
            pyautogui.mouseUp(900,260,button='left')
            time.sleep(1)
            pyautogui.click(1160,210,button='left')
            pyautogui.mouseDown(1160,210,button='left')
            pyautogui.mouseUp(1160,210,button='left')
            time.sleep(5)
            im = pyautogui.screenshot(region=(1000,100,1250,300))
            mobLocation = pyautogui.locate('side.png', im, grayscale=False)
            if mobLocation != None:
                if mobx +1000 > 1070:
                    hiddenSpot()
                    detectHand()

        elif mobx+840 > 1070:
            print('check for sure')
            detectSword()
            detectHand()
            time.sleep(1)
            print('reset')
            pyautogui.click(1110,210,button='left')
            pyautogui.mouseDown(1110,210,button='left')
            pyautogui.mouseUp(1110,210,button='left')
            time.sleep(1)
            detectHand()
            pyautogui.click(1160,210,button='left')
            pyautogui.mouseDown(1160,210,button='left')
            pyautogui.mouseUp(1160,210,button='left')
        else:
            print('no mobs')
            pyautogui.click(1160,210,button='left')
            pyautogui.mouseDown(1160,210,button='left')
            pyautogui.mouseUp(1160,210,button='left')

# -------ATTACK
def attack():
    """attack"""
    print('attack')
    pyautogui.typewrite('6')
    time.sleep(2)
    pyautogui.typewrite('7')
    pyautogui.click(1111,210,button='left')
    pyautogui.mouseDown(1111,210,button='left')
    pyautogui.mouseUp(1111,210,button='left')
    pyautogui.typewrite('3')
    time.sleep(3)
    pyautogui.typewrite('3')
    pyautogui.typewrite('8')
# -------SWORD
def detectSword():
    """detectSword"""
    print('sword Check')
    pyautogui.click(1110,210,button='left')
    pyautogui.mouseDown(1110,210,button='left')
    pyautogui.mouseUp(1110,210,button='left')
    time.sleep(1)
    im = pyautogui.screenshot(region=(1070,180,1140,240))
    mobLocation = pyautogui.locate('best.png', im, grayscale=False)
    if(mobLocation != None):
        print('swordfound')
        mobx, moby = pyautogui.center(mobLocation)
        pyautogui.click(mobx+1070,moby+180,button='left')
        pyautogui.mouseDown(mobx+1070,moby+180,button='left')
        pyautogui.mouseUp(mobx+1070,moby+180,button='left')

        time.sleep(1)
        hiddenSpot()
# -------DETECT HAND
def detectHand():
    """hand"""
    im = pyautogui.screenshot(region=(1050,150,1150,250))
    mobLocation = pyautogui.locate('handd.png', im, grayscale=False)
    if(mobLocation != None):
        print('hand')
        mobx, moby = pyautogui.center(mobLocation)
        pyautogui.click(mobx+1050,moby+150,button='left')
        pyautogui.mouseDown(mobx+1050,moby+150,button='left')
        pyautogui.mouseUp(mobx+1050,moby+150,button='left')
        time.sleep(1)
        bag()
# -------BAG
def bag():
    """bag"""
    im = pyautogui.screenshot()
    mobLocation = pyautogui.locate('bag.png', im, grayscale=False)
    if mobLocation != None:
        print('bag')
        mobx, moby = pyautogui.center(mobLocation)
        pyautogui.click(mobx,moby,button='left')
        detectedMob = False
        ATTACK = False
        time.sleep(0.5)
        pyautogui.click(1160,210,button='left')
        global LOOTED
        LOOTED+=1
        print(str(LOOTED))
        time.sleep(0.5)
        DECIDED = True
# -------SPOT
def hiddenSpot():
    """hidden Spot"""
    im = pyautogui.screenshot(region=(1050,150,1150,250))
    if pyautogui.locate('empty.png', im, grayscale=False) == None:
        print('hidden spot')
        pyautogui.click(1111,210,button='left')
        pyautogui.mouseDown(1110,210,button='left')
        pyautogui.mouseUp(1110,210,button='left')
        attack()
        time.sleep(1)
        pyautogui.typewrite('3')
        pyautogui.typewrite('8')
        time.sleep(1)
        pyautogui.typewrite('8')
        time.sleep(9)
        print('attack finished')

        detectHand()
# -------NO
def no():
    """no"""
    im = pyautogui.screenshot()
    if pyautogui.locate('no.png',im,grayscale=False) != None:
        print('no')
        mobLocation = pyautogui.locate('no.png', im, grayscale=False)
        mobx, moby = pyautogui.center(mobLocation)
        pyautogui.click(mobx,moby,button='left')
        DECIDED = True
# -------AD
def ad():
    """ad"""
    im = pyautogui.screenshot()
    if pyautogui.locate('close.png',im,grayscale=False) != None:
        print('close')
        mobLocation = pyautogui.locate('close.png', im, grayscale=False)
        mobx, moby = pyautogui.center(mobLocation)
        pyautogui.click(mobx,moby,button='left')
        DECIDED = True
# -------INVITE
def invite():
    """invite"""
    im = pyautogui.screenshot()
    print('invite')
    print('no')
    pyautogui.click(720,390,button='left')
    time.sleep(1)
    DECIDED = True
# -------DEAL
def deal():
    """ad"""
    im = pyautogui.screenshot()
    if pyautogui.locate('close.png', im, grayscale=False) != None:
        print('ad')
        mobLocation = pyautogui.locate('close.png', im, grayscale=False)
        mobx, moby = pyautogui.center(mobLocation)
        pyautogui.click(mobx,moby,button='left')
        pyautogui.mouseDown(1160,210,button='left')
        pyautogui.mouseUp(1160,210,button='left')
        time.sleep(1)
        DECIDED = True
    print('Press Ctrl-C to quit.')
    try:
        while alive:
            #x, y = pyautogui.position()
            #positionStr = 'X: ' + str(x).rjust(4) + ' Y: ' + str(y).rjust(4)
            #print(positionStr, end='')
            #print('\b' * len(positionStr), end='', flush=True)

            #take screenshot
            global LOOTED
            LOOTED= 0
            while True:
                # -------DETECT DEATH
                if pyautogui.locate('revive.png',im,grayscale=False) != None:
                    print('death')
                    print('revive')
                    mobLocation = pyautogui.locate('revive.png', im, grayscale=False)
                    mobx, moby = pyautogui.center(mobLocation)
                    pyautogui.click(mobx,moby,button='left')
                    alive = False
                    decided = True

                # -------DETECT MOB
                detecting()
                im = pyautogui.screenshot()

                # -------DETECT BUY
                if pyautogui.locate('buy.png',im,grayscale=False) != None:
                    print('ad detected')
                    ad()
                # -------DETECT BUY
                if pyautogui.locate('no.png',im,grayscale=False) != None:
                    print('ad detected')
                    no()


                # -------DETECT INVITE
                if pyautogui.locate('invite.png', im, grayscale=False) != None:
                    invite()

                # -------DETECT DEAL
                if pyautogui.locate('deal.png', im, grayscale=False) != None:
                    deal()
        except KeyboardInterrupt:
        print('\nDone.')

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...