Gugu - Karin Uzumaki

Membros Mestres
  • Posts

    1171
  • Joined

  • Last visited

  • Days Won

    19

Posts posted by Gugu - Karin Uzumaki

  1. Bom dia, amigo.

    Não sei bem como está o OTC V8 hoje, mas na pasta do otc provavelmente tem uma pasta chamada mods que você pode colocar seus próprios modulos customizados. Se não existir mais esta pasta, o equivalente a ela é a pasta `data/modules`.

    Pra você criar um modulo que seja aceito pelo OTC, você precisa criar obrigatóriamente um arquivo .otmod e .lua. E também um .otui caso queira criar uma interface.

    Já criei vários modulos para o OTC, e aqui está um projeto de um bot que criei há alguns anos mas não cheguei a terminar. Você pode estuda-lo para criar os seus próprios modulos.

    https://github.com/GustavoBlaze/kingdom-bot

    #Edit: Existe um forum chamado OTLand, onde tem muuuita informação sobre o OTC.

  2. Fala galera!
    Talvez poucos se lembrem de mim porque parei de jogar faz alguns anos, mas sou o antigo GM Slash / Gustavo Blaze.

    Bom, boa parte dos anos em que joguei tibia eu me dediquei em criar scripts de automação e pequenos bots pro OTClient e fiz disso minha principal fonte de renda durante minha adolescência. Com a pouca experiência que eu tinha na época eu criei o Kingdom Bot, um bot totalmente open source (código aberto) que está hospedado no github até hoje e é escrito em Lua e OTUI (linguagem muito parecida com CSS). Esse bot tem diversas funções que funcionam muito bem, são elas: heal, heal frield, autoloot e targeting. O bot funciona, no entanto o projeto não recebe atualizações faz um tempo.

    A principal funcionalidade que está em falta hoje é a de salvar e recuperar as informações dos modulos existentes, apesar de não ser nada complicado, eu simplesmente não tive tempo pra desenvolver.

    Os bots pra OTClient tem muito potêncial e pode ser até melhor e mais rapido do que qualquer outro pelo simples fato de rodar dentro do proprio cliente sem nenhuma restrição e também ter total acesso a todos os pacotes que chegam e somente com a linguagem Lua, sem C/C++. Dá pra desenvolver até cavebot 100% AFK e praticamente qualquer coisa.

    Eu gostaria muito de continuar a desenvolver novas funcionalidades, fazer correções e outras coisas mas hoje eu não tenho tempo nenhum. E por isso estou aqui pra tentar "recrutar" alguns colaboradores que tenham conhecimento em linguagem de programação pra poder contribuir com o projeto enviando pull requests e abrindo issues. Mesmo que você não saiba programar, pode fazer alterações na documentação e fazer correções gramáticais no projeto. Dependendo posso até te colocar como maintainer.


    E oque eu você ganha contribuindo com o projeto? Além de se divertir criando suas proprias funcionalidades, se você deseja ser programador algum dia, este projeto pode te dar experiência e portifólio principalmente se quer trabalhar com tibia ou desenvolvimento de jogos. Existem pessoas que pagam (em reais, dolar ou euro) pra você desenvolver funcionalidades ou fazer correções em projetos privados que tem relação com o OTClient, TFS, Unity3D ou projetos que usam a linguagem Lua.

    Por hora é isso, obrigado pela atenção. Caso tenha dúvidas pode me mandar inbox :).

    • Like 6
  3. Daqui a pouco vocês tão dando sugestão do faramir enviar dinheiro direto pra conta de vocês.. O jogo já ta uma moleza, tem 300 formas diferentes de se fazer dinheiro.. Se você não está conseguindo o suficiente, arrume algo mais engenhoso. Faz um script pra vender suas gemas no NPC ou sei lá.

    • Like 1
  4. É uma ideia legal mas é um pouco trabalhosa. Do jeito que funciona hoje precisaria fazer novas sprites para cada item que tivesse um atributo especial e tencaixar essas novas sprites no client do tibia oficial, não sei se é viável.

    Uma coisa legal de se fazer seria se o slot da backpack ficasse com uma cor diferente, seja de fundo ou de borda, sinalizando que aquele item é magic, rare ou whatever. Seria só algumas modificações no servidor e no OTClient do servere já era.

    • Like 1
  5. BUMP!

    Dei uma atualizada no script de exani hur up/down.

    pra desvincular a teclas do script é só usar g_keyboard.unbindKeyPress('up') g_keyboard.unbindKeyPress('down') g_keyboard.unbindKeyPress('left') g_keyboard.unbindKeyPress('right')

    • Like 1
  6. dei uma reduzida no codigo, vê se vai funcionar de boa

    cycleEvent( function()
        if g_game.isOnline() then
            local player = g_game.getLocalPlayer()
            local pos = player:getPosition()
            local items = {'3578', '7159', '3041', '1781'}
            for i=1, #items do
                local item = player:getItem(items[i])
                if item then
                    g_game.move(item, pos, item:getCount())
                end
            end
        end
    end, 1000/2)

     

    • Like 5
  7. Em 26/12/2018 at 16:23, Vinícius - Tigerson disse:

    Existe alguma forma de rodar scripts Python no OTC?

    Com a morte do Tibia Auto fiquei com um monte de script sem utilidade.

    Seria lindo

    • Like 2
  8. Em 04/10/2018 at 21:07, Tutor Bruno>>Xkira disse:

    assim o povo iriam votar com seus diversos makers, nem compensa

    Se a pessoa tiver a conta vinculada com o facebook isso pode ser usado como exigência pra poder votar. E também, varias pessoas aqui tem ou teve mais de 1 conta com p.a, quem faz 11 ppt faz 22 fácil.

  9. potion_event = cycleEvent( function() 
        local potions = {283, 284, 285, 23373, 23374}
        if g_game.isOnline() then
            local player = g_game.getLocalPlayer()
            local mypos = player:getPosition()
            for k,v in pairs(potions) do
                local flask = player:getItem(v)
    
                if flask and flask:getCount() > 0 then
                    g_game.move(flask, mypos, flask:getCount())
                    break
                end
            end
        end
    end, 1000/2)

     

    1 hora atrás, Pet Mercenarys disse:

    O tibiawiki me da os Ids abaixo, oque eu faço agora? coloco em que lugar do script Gu? (nao manjo nada disso, desculpa)

    ultimate mana potion 23373
    ultimate spirit potion 23374
     

    • Like 1
  10. potion_event = cycleEvent( function() 
        local potions = {283, 284, 285}
        if g_game.isOnline() then
            local player = g_game.getLocalPlayer()
            local mypos = player:getPosition()
            for k,v in pairs(potions) do
                local flask = player:getItem(v)
    
                if flask and flask:getCount() > 0 then
                    g_game.move(flask, mypos, flask:getCount())
                    break
                end
            end
        end
    end, 1000/2)

    usa esse script aki, editei e dropa qualquer potion vazia que vc tiver dentro da bp que estiver dentro da lista chamada "potions", ai vc coloca o id das potions ali e já era

  11. 1 hora atrás, Pai disse:

    Estou gostando dos scripts que voce criou pro otcliente, demora pra lançar todos no terminal.. Poderia criar um otcliente com mining e drop de poção? Seria simples e ao mesmo tempo fantastico !

    O Pytiko pegou meus scripts, deu uma editada e colocou num otclient. Mas não lambro se ele disponibilizou. Da uma revirada no forum aqui na parte de otclient pra ver se consegue achar.

    Eu já nao to mexendo mais com isso.

    • Like 1
  12. Atualmente ele só suporta até a versão 10.99, mas fazendo gambiarra vc consegue acessar umas versões mais recentes.

    modificando essas linhas em c++

    https://github.com/edubart/otclient/blob/master/src/client/game.cpp#L1504

    https://github.com/edubart/otclient/blob/master/src/client/game.cpp#L1522

    e adicionando o numero da versão nessa função em lua

    https://github.com/edubart/otclient/blob/7cd01714fc3bf702d3cecf46c697f6fe2b1e663f/modules/gamelib/game.lua#L52

    Depois de fazer tudo isso, vc vai precisar recompilar o otc com visual studio, codeblocks ou então com g++ puro(vai depender da sua preferencia e se vc estiver usando windows ou linux), ai vai poder entrar com ele em outras versões.

    Só tem um porém, os protocolos mais novos pode ter alguma modificação que o otclient não acompanhou(já aconteceu cmg). Então algumas coisas podem não funcionar muito bem. Que são comumente coisas como não ver um npc falar, um monstro não gritar, ou não conseguir ver a mensagem de um player no default.