Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×

stunkiie

Membro
  • Total de Posts

    6
  • Registro em

  • Última visita

  • WCoins

    15

stunkiie's Achievements

Esforçado

Esforçado (3/15)

  • Agora que já nos conhecemos... Rara
  • Aniversariante
  • Um é pouco!
  • Olá, mundo!
  • Terceirão

Emblemas Recentes

1

Reputação

  1. já tentei fazer isso, mas ao que parece a I.A ainda não chegou nesse nivel e cada vez que mais tento pior fica XD, o jogo é o Mixmaster Online, um jogo 2D de 2003 O jogo tem 1 personagem, mais 3 monstros que te acompanham, como demonstra na imagem a baixo, [Hidden Content] tambem temos os atalhos para as pots e skills, como demonstra na imagem a baixo [Hidden Content] então para curar no jogo, preciso primeiro de selecionar quem quero curar, selecionando com o mouse ou usando os atalhos tecla 1 para personagem, 2 3 e 4 para os monstros, depois de selecionado é usar as pots que estão do F4 ao F10, esse é o processo de cura no jogo. o que eu procuro no script, é que primeiro procure quem tem menos vida, depois selecione quem tem menos vida, e por fim faça uma sequencia de f4 a f10 sem parar até a vida estar cheia, ou até encontrar alguem com menos vida acho que no aspeto de selecionar quem quer ser curado, os atalhos 1, 2, 3 e 4 podem ser muito uteis evitando cliques do mouse a vida é representada pelo semi circulo a vermelho, tambem tem diferentes tons de vermelho, consoante a vida vai descendo ;=========================================================================== ; Executa o script como administrador se não estiver com privilégios elevados ;=========================================================================== if not A_IsAdmin { Run *RunAs "%A_ScriptFullPath%" ExitApp } #NoEnv SendMode Input SetBatchLines, -1 ; Define para capturar pixels apenas dentro da janela do jogo CoordMode, Pixel, Client global healingEnabled := false ; Cura desligada por padrão ;=========================================================================== ; Tecla F12 para ativar/desativar a cura ;=========================================================================== F12:: healingEnabled := !healingEnabled ; Alterna entre ativado/desativado if (healingEnabled) { TrayTip, AutoHeal, Healing Activated!, 1 SetTimer, MonitorHealth, 500 ; Inicia o monitoramento da vida } else { TrayTip, AutoHeal, Healing Stopped!, 1 SetTimer, MonitorHealth, Off ; Para a cura } Return ;=========================================================================== ; MONITORA A VIDA DOS PERSONAGENS ;=========================================================================== MonitorHealth: { ; Para se o script estiver desativado if (!healingEnabled) Return ; Verifica se a janela correta está ativa if !WinActive("ahk_class DracoMM ahk_exe MixMaster.exe") Return ; Obtém os valores de vida dos personagens charHealth := GetHealth("character") monster1Health := GetHealth("monster1") monster2Health := GetHealth("monster2") monster3Health := GetHealth("monster3") ; Descobre quem tem menos vida lowestHealth := charHealth lowestTarget := "1" ; "1" corresponde ao personagem if (monster1Health < lowestHealth) lowestHealth := monster1Health, lowestTarget := "2" if (monster2Health < lowestHealth) lowestHealth := monster2Health, lowestTarget := "3" if (monster3Health < lowestHealth) lowestHealth := monster3Health, lowestTarget := "4" ; Se o menor HP for abaixo de 98%, começa a cura if (lowestHealth < 98) { Send, %lowestTarget% ; Seleciona o personagem/monstro Sleep, 50 HealUntilFull(lowestTarget) ; Inicia a cura } } Return ;=========================================================================== ; FUNÇÃO DE CURA - USA F4 A F10 ATÉ A VIDA ESTAR CHEIA ;=========================================================================== HealUntilFull(target) { Loop { ; Se a cura for desligada, sai do loop if (!healingEnabled) break ; Se a janela do jogo não estiver ativa, sai do loop if !WinActive("ahk_class DracoMM ahk_exe MixMaster.exe") break ; Recalcula a vida dos personagens charHealth := GetHealth("character") monster1Health := GetHealth("monster1") monster2Health := GetHealth("monster2") monster3Health := GetHealth("monster3") ; Determina quem agora tem menos vida currentLowestHealth := charHealth currentLowestTarget := "1" if (monster1Health < currentLowestHealth) currentLowestHealth := monster1Health, currentLowestTarget := "2" if (monster2Health < currentLowestHealth) currentLowestHealth := monster2Health, currentLowestTarget := "3" if (monster3Health < currentLowestHealth) currentLowestHealth := monster3Health, currentLowestTarget := "4" ; Se outra pessoa precisar de cura, sai do loop if (currentLowestTarget != target) break ; Obtém a vida atual do alvo selecionado currentHealth := (target = "1") ? charHealth : (target = "2") ? monster1Health : (target = "3") ? monster2Health : monster3Health ; Para de curar se a vida estiver acima de 98% if (currentHealth >= 98) break ; Envia a sequência de cura F4 a F10 Send, {F4} Sleep, 200 Send, {F5} Sleep, 200 Send, {F6} Sleep, 200 Send, {F7} Sleep, 200 Send, {F8} Sleep, 200 Send, {F9} Sleep, 200 Send, {F10} Sleep, 300 } } ;=========================================================================== ; FUNÇÃO PARA CAPTURAR A VIDA COM BASE NA BARRA ;=========================================================================== GetHealth(type) { ; Define coordenadas das barras de vida if (type = "character") x1 := 726, y1 := 16, x2 := 769, y2 := 72 else if (type = "monster1") x1 := 798, y1 := 17, x2 := 834, y2 := 71 else if (type = "monster2") x1 := 865, y1 := 17, x2 := 901, y2 := 71 else if (type = "monster3") x1 := 930, y1 := 18, x2 := 963, y2 := 71 totalPixels := 0 healthPixels := 0 step := 2 ; Reduz carga de processamento pegando pixels alternados Loop, % (x2 - x1 + 1) { px := x1 + A_Index - 1 Loop, % (y2 - y1 + 1) { py := y1 + A_Index - 1 if (Mod(px, step) != 0 || Mod(py, step) != 0) continue totalPixels++ PixelGetColor, pixelColor, px, py, RGB if (IsHealthColor(pixelColor)) healthPixels++ } } if (totalPixels = 0) return 100 healthPercent := (healthPixels / totalPixels) * 100 return healthPercent } ;=========================================================================== ; FUNÇÃO PARA DETECTAR COR DA VIDA (TONS DE VERMELHO) ;=========================================================================== IsHealthColor(pixelColor) { R := (pixelColor >> 16) & 0xFF G := (pixelColor >> 8) & 0xFF B := pixelColor & 0xFF ; Se estiver dentro da variação do vermelho da barra de HP, retorna verdadeiro if (R >= 0x84 && R <= 0xD6 && B >= 0x39 && B <= 0x5A && G <= 15) return true else return false } fiz esse codigo no chatgpt, mas sem sucesso, não apresenta erros quando executo, mas tambem não cura nem seleciona quem deve curar
  2. Eae rapaziada, estou procurando ajuda pra criar uma macro de autopots no autohotkeys, ja tentei de tudo mas parece que cada vez estou mais longe, acho que alguem com experiencia conseguia resolver facil, alguem disposto a ajudar ? agradeço imenso !!
×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.