Страница 2 из 4

Re: проблемы

Добавлено: 03 янв 2019, 15:30
Sergxxx28
На пиратке Легиона работает как обычно, а вот на пиратке БФА перестал бот работать(

Re: проблемы

Добавлено: 03 янв 2019, 16:11
BlackDPS
Там в описании обновления если почитать...
Надо прописать имя исполняемого файла твоей пиратки

Re: проблемы

Добавлено: 03 янв 2019, 17:49
Sergxxx28
BlackDPS писал(а):
03 янв 2019, 16:11
Там в описании обновления если почитать...
Надо прописать имя исполняемого файла твоей пиратки
Это бесполезно, написал имя, но бот не хочет работать. Всё будто стало как было по началу, когда мы не могли запустить бот на пиратке бфа, но когда ты поколдовал бот начал работать. Сейчас бот пишет способность, но не прожимает.

Re: проблемы

Добавлено: 03 янв 2019, 17:52
BlackDPS
Правильное имя? Полное? Покажи скрин из диспетчера и скажи что написал

Re: проблемы

Добавлено: 03 янв 2019, 18:03
Sergxxx28
BlackDPS писал(а):
03 янв 2019, 17:52
Правильное имя? Полное? Покажи скрин из диспетчера и скажи что написал
Я понял что имя исполняемого файла это Wow.exe его и прописал, но вероятно это не правильно. В диспетчере задач высвечивается при запуске игры World of Warcraft, пробовал и это имя прописать, но и это не помогло. Так что это за имя и где его искать?

Re: проблемы

Добавлено: 03 янв 2019, 18:37
EnterBrain
Sergxxx28 писал(а):
03 янв 2019, 18:03
Я понял что имя исполняемого файла это Wow.exe его и прописал, но вероятно это не правильно. В диспетчере задач высвечивается при запуске игры World of Warcraft, пробовал и это имя прописать, но и это не помогло. Так что это за имя и где его искать?
У меня всё сразу заработало, так прописал:
Изображение

Хотя бинды программные всё равно не работают, только через "клавиша" прожимается(
приходится всё равно использовать свой скрипт модифицирующий код и возвращяющий из аддона сразу хоткей что надо прожать.

Кстати, BlackDPS, почему бы не возвращать через сигналы сразу хоткеи что надо прожать? Как понял у тебя тут происходит генерация кодов с обоих сторон, на стороне аддона и на стороне бота самого, и просто сигналами передаешь айди который связывает их.
Мне кажется из-за этого проблема бывает. Переписал на питоне примерно так и работает:

Код: Выделить всё

        autoit.win_wait_active(appTitle, 3)
        rawFP = autoit.pixel_get_color(0,0)
        rawSP = autoit.pixel_get_color(1,0)
        firstPixel = "{:06x}".format(rawFP)
        secondPixel = "{:06x}".format(rawSP)
        firstPixelArr = [firstPixel[i:i+2] for i in range(0, len(firstPixel), 2)]
        secondPixelArr = [secondPixel[i:i+2] for i in range(0, len(secondPixel), 2)]
        code1 = int(firstPixelArr[0],16) # XOR от других кодов
        code2 = int(firstPixelArr[1],16) # Счетчик
        code3 = int(firstPixelArr[2],16) # заклинание 1-модификатор
        code4 = int(secondPixelArr[0],16) # заклинание 1-клавиша
        code5 = int(secondPixelArr[1],16) # заклинание 2-модификатор
        code6 = int(secondPixelArr[2],16) # заклинание 2-клавиша
        code1test = reduce(lambda i, j: int(i) ^ int(j), [42,code2,code3,code4,code5,code6])
        if code1 == code1test:
            if autoit.win_active(appTitle):
                # print('code1test: {}'.format(code1test))
                # print('Первый пиксель {} {} {}'.format(code1,code2,code3))
                # print('Второй пиксель {} {} {}'.format(code4,code5,code6))
                # print("Первый бинд: {}{}".format(key_codes[code3],key_codes[code4]))
                # print("Второй бинд: {}{}".format(key_codes[code5],key_codes[code6]))
                if code3 != 0 and code4 != 0:
                    autoit.send("{}{}".format(key_codes[code3],key_codes[code4]))
                if code5 != 0 and code6 != 0:
                    autoit.send("{}{}".format(key_codes[code5],key_codes[code6]))
А с обоих сторон коды всех элементов биндов сразу.
Вот на стороне бота:

Код: Выделить всё

key_codes = {
    1:'{1}', 2:'{2}', 3:'{3}', 4:'{4}', 5:'{5}', 6:'{6}', 7:'{7}', 8:'{8}', 9:'{9}', 0:'{0}',
    10:'{t}', 11:'{y}', 12:'{u}', 13:'{i}', 14:'{o}', 15:'{p}', 16:'{g}', 17:'{h}', 18:'{j}', 19:'{k}', 20:'{l}', 21:'{z}', 22:'{x}', 23:'{c}', 24:'{v}', 25:'{b}', 26:'{n}', 27:'{m}',
    28:'{F2}', 29:'{F3}', 30:'{F5}', 31:'{F6}', 32:'{F7}', 33:'{F8}', 34:'{F9}', 35:'{F10}', 36:'{F11}', 37:'{F12}', 38:'^', 39:'!', 40:'+', 41:'!+', 42:'^+', 43:'!^'
}
А Вот на стороне Аддона:

Код: Выделить всё

blackdps_keys_codes = {
    ["1"]=1, ["2"]=2, ["3"]=3, ["4"]=4, ["5"]=5, ["6"]=6, ["7"]=7, ["8"]=8, ["9"]=9, ["0"]=0,
    ["T"]=10, ["Y"]=11, ["U"]=12, ["I"]=13, ["O"]=14, ["P"]=15, ["G"]=16, ["H"]=17, ["J"]=18, ["K"]=19, ["L"]=20, ["Z"]=21, ["X"]=22, ["C"]=23, ["V"]=24, ["B"]=25, ["N"]=26, ["M"]=27,
    ["F2"]=28, ["F3"]=29, ["F5"]=30, ["F6"]=31, ["F7"]=32, ["F8"]=33, ["F9"]=34, ["F10"]=35, ["F11"]=36, ["F12"]=37, ["CTRL-"]=38, ["ALT-"]=39, ["SHIFT-"]=40, ["ALT-SHIFT-"]=41, ["CTRL-SHIFT-"]=42, ["ALT-CTRL-"]=43
}
У меня с таким способом кстати пропали открытия окон при прожатии, когда бинд содержаший SHIFT прожимался словно буквы S+H+I+F+T. Таких проблем больше не вижу.

Re: проблемы

Добавлено: 03 янв 2019, 18:51
Sergxxx28
Я к сожалению совсем не разбираюсь в программировании и для меня это темный лес(
Подскажите, где мне взять имя исполняемого файла?

Re: проблемы

Добавлено: 03 янв 2019, 18:53
Sergxxx28
EnterBrain

Я правильно понял, что бот у тебя автоматом тоже не работает, не прожимает способности?

Re: проблемы

Добавлено: 03 янв 2019, 18:57
BlackDPS
Sergxxx28 писал(а):
03 янв 2019, 18:03
BlackDPS писал(а):
03 янв 2019, 17:52
Правильное имя? Полное? Покажи скрин из диспетчера и скажи что написал
Я понял что имя исполняемого файла это Wow.exe его и прописал, но вероятно это не правильно. В диспетчере задач высвечивается при запуске игры World of Warcraft, пробовал и это имя прописать, но и это не помогло. Так что это за имя и где его искать?
Попробуй прописать Naz.dat

Re: проблемы

Добавлено: 03 янв 2019, 18:59
EnterBrain
Sergxxx28 писал(а):
03 янв 2019, 18:53
EnterBrain

Я правильно понял, что бот у тебя автоматом тоже не работает, не прожимает способности?
Работает если ты вручную укажешь бинды спелов на панелях.
примерно вот так:
Изображение
Когда этот спел находится в ячейке которая используется по нажатию на =