Automating ticket collection in the "Four paths" event in Shadow Fight 3 | SF3

Опубликовано: 18 Август 2023
на канале: Oleg Savchenko
186
4

BUTTONS:

Button locations can be imported and exported (i.e. shared with other players), so I leave you with a file of my button locations (so you don't have to do it manually), and instructions on how to use that file

1. Where I can download your button locations file? Here:
https://drive.google.com/file/d/1ucCq...
2. How to import them into #SF3 (instruction)?
https://www.bluestacks.com/features/g...

And don't forget to rearrange the game elements according to the buttons.
Buttons A,W,D,S correspond to the game joystick
J button - arm
K button - leg
Button I - throwing weapon
Button L - shadow energy

BLUESTACKS:
https://www.bluestacks.com/

PYTHON 3.8:
https://www.python.org/downloads/rele...

CODE (if something doesn't work for you, try substituting other values (between 0.1-1.0) into the 'time.sleep' function):

import keyboard
import threading
import random
import time
import pyautogui
from PIL import ImageGrab

def has_white_pixels(image):
for pixel in image.getdata():
if pixel == (255, 255, 255):
return True
return False

def thread_1_1_l():
while True:
keyboard.press('1')
time.sleep(0.2)
keyboard.release('1')
time.sleep(0.2)
keyboard.press('1')
time.sleep(0.2)
keyboard.release('1')
x, y = pyautogui.position()
screenshot = ImageGrab.grab(bbox=(x-25, y-25, x+25, y+25))
if not has_white_pixels(screenshot):
keyboard.press('l')
time.sleep(0.2)
keyboard.release('l')
time.sleep(0.8)

def press_random_key():
while True:
random_key = random.choice(['d', 's', 'd'])
keyboard.press(random_key)
time.sleep(0.2)
keyboard.release(random_key)

keyboard.press_and_release('j')
time.sleep(0.2)
keyboard.press_and_release('j')
time.sleep(0.6)

def press_key_x():
while True:
time.sleep(0.2)
keyboard.press('x')
keyboard.release('x')

time.sleep(3)
thread_1_1_l_ = threading.Thread(target=thread_1_1_l)
thread_random = threading.Thread(target=press_random_key)
thread_x = threading.Thread(target=press_key_x)

thread_1_1_l_.start()
thread_random.start()
thread_x.start()

thread_1_1_l_.join()
thread_random.join()
thread_x.join()