-
Erimyth reagiu a uma resposta no tópico:
[Estudo/RE] ElfBot NG 4.1.6 (Tibia 8.60) documentado por dentro: injeção, CiroScript, hooks e engines
-
[Estudo/RE] ElfBot NG 4.1.6 (Tibia 8.60) documentado por dentro: injeção, CiroScript, hooks e engines
Fala, pessoal! Quem jogou 8.60 lembra do ElfBot NG. Passei um bom tempo fazendo engenharia reversa dele e organizei tudo num repositório público. É documentação técnica de um bot antigo, feita pra preservação e estudo. Os binários originais ficam no repo só como arquivo de referência. Não tem crack e não é guia de como usar. O que está documentado Cadeia de injeção: loader.exe (Delphi, madCodeHook) -> elfload.dll -> elfbot.dll::EcInit dentro do Tibia.exe Proteção Armadillo: o código está em texto claro, então a análise estática foi viável sem unpack em runtime 7.125 funções recuperadas no elfbot.dll (1.190 de lógica do bot + 5.935 de código de suporte), além de loader.exe (1.780), elfload.dll (6) e navserv.exe (12) CiroScript: 422 comandos mapeados até os handlers, com dispatch por perfect-hash de 3 tabelas Formato .elfc / .elft: não é criptografado, é uma codificação sparse-opcode, e tem decoder em Python Os 3 hooks no cliente (parser de pacotes, contexto de render, full light) e as shadow tables Healer, targeting, cavebot (walker e waypoints), looter, aimbot, hotkeys/alarmes, proxy e o protocolo NavNet Validação em runtime num cliente 8.60 real conectado a um TFS 0.4 local Organização do repo docs/: 40 capítulos numerados (00 a 39) docs/functions/: catálogos de funções, tabela de comandos do CiroScript em CSV e saída decompilada tools/: scripts Python de recon e decodificação ui/: geometria da interface capturada em runtime Ferramentas: IDA Pro / Hex-Rays, angr (decompilação offline), capstone, Frida e scripts Python próprios. Status: a parte estática está completa e todos os módulos tiveram PASS comportamental no harness local (os relatórios explicam o que foi testado de forma independente e o que compartilha caminho). Fica em aberto a geometria exata dos 7 popups de wizard/editor (os templates de diálogo são cifrados pelo Armadillo), um passe mais fundo no renderer do HUD e conciliar a tabela de offsets do SetFunctionAddresses com os hooks fixos. Repo: https://github.com/Kizuno18/elfbot_re Correções, dúvidas e contribuições são muito bem-vindas. Se você lembra de algum comportamento do bot que não bate com o que está escrito, comenta aqui ou abre uma issue, de preferência com build e endereço. Abraço!
-
-
Kizuno18 reagiu a uma resposta no tópico:
Baiak Hyper [8.60][TFS 0.3] ~ King-Baiak (atualizado 20/03/23)
-
HenriqueZoldyck reagiu a uma resposta no tópico:
Baiak Hyper [8.60][TFS 0.3] ~ King-Baiak (atualizado 20/03/23)
-
Baiak Hyper [8.60][TFS 0.3] ~ King-Baiak (atualizado 20/03/23)
@Bielzinks para ajudar você, leia o numero 1 da lista abaixo. @Digigi tem varias questões atém compilar: 0. obviamente instalar os pacotes necessários. apt-get update apt-get install git autoconf build-essential pkg-config libboost-dev libgmp3-dev libxml2-dev sqlite3 libsqlite3-dev libtcmalloc-minimal4 liblua5.1 libmysqlclient-dev ccache libboost-filesystem-dev libboost-regex-dev libboost-system-dev libboost-thread-dev screen libboost-iostreams-dev 1. você precisa corrigir um erro de syntax no makefile pesquisa por weapons.cpp no Makefile tem uma \ incorreta na sintaxe 2. criar a pasta objects 3. remover o sendPlayers do status.cpp como já mencionado aqui no tópico Eu trabalhei em cima desse ot sem mexer na source por 1 mês, depois percebi que a source que ja ta compilada na pasta (seja de linux ou a kingv2.exe) não é a mesma que o @Nolangg postou aqui, até porque essa aqui, quando compilei, o servidor aparece offline na otservlist se tiver 1 ou mais players. to aguardando o @Nolangg dar o suporte que ele disse que ajudaria em relação a source, mas claro, respeitando o tempo dele.
-
Baiak Hyper [8.60][TFS 0.3] ~ King-Baiak (atualizado 20/03/23)
@Nolangg sim, está dessa forma. @edit @Nolangg pensei em algo pra que voce possa entender o que ta acontecendo. talvez você possa fazer o teste com os arquivos que você disponibilizou e tentar reproduzir o bug que falei. só compilar a source e abrir pra ver se acima de 0 players aparece na otservlist. (Windows)
-
Baiak Hyper [8.60][TFS 0.3] ~ King-Baiak (atualizado 20/03/23)
Oi @Nolangg, como você mencionou nessa mensagem aqui, fiz essa alteração (a unica, porque foi necessária) -> porém sem nenhuma modificação a não ser essa ai que você mesmo sugeriu, o servidor liga normal, mas la na OTSERVList aparece offline caso tiver mais do que 0 players online. portanto a unica distro que funciona normal é a já compilada que está na pasta. peço ajuda em relação ao bug mencionado e as sources, não posso simplesmente usar a distro já compilada porque vou mecher na variavel de dinheiro (tá limitada a int32_t e os players podem perder dinheiro no comando !depositall)
- Baiak Hyper [8.60][TFS 0.3] ~ King-Baiak (atualizado 20/03/23)
-
Baiak Hyper [8.60][TFS 0.3] ~ King-Baiak (atualizado 20/03/23)
@Nolangg você sabe o que pode ser isso? (tela branca no site ) já testei 3 diferentes versões do xampp. @Edit Correção: verifique as releases do Control Panel 3.2.4 (a versão do xampp é outra) https://www.afterdawn.com/software/version_history.cfm/xampp_for_windows desde a v7.3.5 até v7.4.7 Control Panel 3.2.4 ps. adorei o servidor, deixei rodando a noite toda, varios testes e poucos bugs (quase 0) encontrados. muito completinho.
-
- Baiak-PvP [8.60] - Watch System + Cast Look
-
-
-
Duvida Candy Bot
@marcosap Sim -- para contar a quantidade de itens: local player = g_game.getLocalPlayer() player:getItem(ID) -- para saber o id do item, é simples, é o mesmo id de itens de bots ex: xenobot 3031 - coin, a mesma regra se aplica.
-
-
- PxG Client - 19/12/2017