Postado Abril 13, 2015 10 anos Este é um post popular. Será possível o uso de opcodes em servidores sem o código fonte? Agora é sim com esse novo mod que eu fiz e disponibilizarei à vocês! Conversação de servidor para client! Muito fácil de usar e de instalar! Sem mais delogas, vamos logo ao conteúdo! 1. Crie um arquivo com o nome ModOpcodes.lua na pasta lib do seu servidor;2. Coloque o seguinte código dentro dele: -- By Hopus -- function doPlayerSendModOpcode(cid, port, param) doPlayerSendCancel(cid, '#<=>#ModOpcode#<=>#'..port..'#<&>#'..param) end 3. Agora coloque a pasta mod_opcodes na pasta modules de seu client;4. Abra o arquivo textmessage.lua, localizado na pasta modules/game_textmessage de seu client;5. Procure esse código: elseif string.find(text, '12&,') then modules.cdBar.cdBar.toolTipChange(text) return end 6. Adicione, logo abaixo, essa linha: if text:find('#<=>#ModOpcode#<=>#') then return end 7. Opcodes instalados com sucesso!Como usar? Simples! Spoiler [No servidor] Spoiler Basta usar a seguinte função: doPlayerSendModOpcode(cid, porta, parametro) cid: creature id do player; porta: número (inteiro) de identificação do opcode; parametro: Conteúdo que se deseja passar ao client; [No client] Spoiler A parte do client também é simples, veja as funções disponíveis: modules.game_opcodes.doConnectFunctionToModOpcode(port, funcao) modules.game_opcodes.doDisconnectFunctionToModOpcode(port, funcao) A função doConnectFunctionToModOpcode funciona para conectar uma função à receber o conteúdo de uma porta. A função doDisconnectFunctionToModOpcode funciona para desconectar uma função já conectada em uma porta. [Exemplo] Spoiler Servidor: doPlayerSendModOpcode(cid, 80, 'say@Teste de Opcodes by Hopus') --Envia o conteúdo para a porta 80 de opcodes. Client function Say(param) param:exlode('@') if param[1] == 'say' then g_game.talk(param[2]) end end modules.game_opcodes.doConnectFunctionToModOpcode(80, Say) --Conecta a função 'Say' à porta 80 No caso, ao receber o opcode na porta 80, o client acionará a função Say.O resultado será o player dizendo "Teste de Opcodes by Hopus" [Obs.: A função a ser conectada deve ter UM PARÂMETRO, seja ele nomeado como quiser.] Bom, é isso... Espero que seja de grande utilidade e ajude muita gente! Abraços e até a próxima! Spoiler Háá, pensou que eu havia me esquecido do download né? hehe [Versão 1.1 com correção de bugs] Arquivo LUA descriptografado: Scan: http://goo.gl/2CP2wv Download: http://goo.gl/hfeavu Editado Junho 2, 2018 6 anos por david0703 Adicionados links de download e Scan do arquivo .lua descriptografado (veja o histórico de edições)
Postado Abril 13, 2015 10 anos Como todo conteúdo do tibiaking, tem que botar o scan. E do modo que você fez, não vai funcionar isso: function Say(param) Por que falta um end no if dentro da função.
Postado Abril 13, 2015 10 anos Autor E do modo que você fez, não vai funcionar isso: function Say(param) Por que falta um end no if dentro da função. Concertado, obrigado por olhar. Como todo conteúdo do tibiaking, tem que botar o scan. Não sei por scan, poderia me ajudar? E não sei porque é necessário, pois são apenas 2 arquivos .lua que podem ser olhados sem necessidade do download... Mas enfim, regras são regras né... rs [EDIT] Scan Adicionado. Editado Abril 13, 2015 10 anos por david0703 (veja o histórico de edições)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.