Ir para conteúdo

Extended Opcodes (OtClient)


BananaFight

Posts Recomendados

Extended opcodes

 

Com esses códigos você pode enviar dados do servidor e receber no client e fazer o contrario também, ou seja posso enviar o numero de um storage por exemplo, só saber usar.

 

Desculpem pela minha tentativa de traduzir o que o BeniS postou meio falha.

 

Extended opcodes, é um sistema que permite a adição de novos opcodes no protocolo de jogo usando apenas scripts em lua tanto no Servidor quando no OtClient. Tornando assim mais fácil de implementar novas funcionalidades tanto no otclient quando no servidor. Apenas um código de operação é suportado, no momento, a 0x01, que é enviado pelo cliente informa a linguagem corrente do jogador. Opcodes novos serão adicionados no futuro, incluindo opcodes para reprodução de sons e novas interfaces.

 

versão em Inglês

 

Extended opcodes is a system to allow adding new opcodes to game protocol using just lua scripts in both client and server sides, thus making easy to implement new client/server side features independently of the game cor made in C++. Just one opcode is supported at the moment, the 0x01 which is sent by the client informing the current player language. New opcodes will be added in the future, including opcodes for playing sounds and new interfaces.

 

Vamos ao Código :

 

protocolgame.h

-[Diff] protocolgame.h - Pastebin.com

 

protocolgame.cpp

-[Diff] protocolgame.cpp - Pastebin.com

 

const.h

-[Diff] const.h - Pastebin.com

 

luascript.cpp

-[Diff] luascript.cpp - Pastebin.com

 

player.h

-[Diff] player.h - Pastebin.com

 

creatureevent.h

-[Diff] creatureevent.h - Pastebin.com

 

creatureevent.cpp

-[Diff] creatureevent.cpp - Pastebin.com

 

game.h

-[Diff] game.h - Pastebin.com

 

game.cpp

-[Diff] game.cpp - Pastebin.com

 

/creaturescripts/creaturescrips.xml

-[Diff] creaturescripts.xml - Pastebin.com

 

/creaturescripts/extendedopcode.lua

-[Lua] extendedopcode.lua - Pastebin.com

 

Ou baixe um pach dos arquivos aqui : https://github.com/e...dedopcode.patch

 

Creditos: BeniS e EduBarts

Editado por BananaFight
Link para o comentário
Compartilhar em outros sites

Cara, eu postei um tutorial de como compilar '-', vou fazer um novo com imagens T.T

 

@Edit, isso ai é dentro das source do ot server você sabe né ?

 

@Edit como compilar o otclient com imagens http://www.xtibia.com/forum/topic/207691-compilando-ot-client/

Editado por BananaFight
Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...
  • 3 weeks later...

uma duvida, ai está perfeitamente como receber dados do client no servidor, mas vc pode explicar como envio os dados do cliente para o servidor?

 

e o contrario também (como fazer, por exemplo, enviar a informação de uma storage para o client atravez de uma talkaction e receber em alguma função no client q mostre em uma janelinha o valor.. ? )

 

ty

Link para o comentário
Compartilhar em outros sites

Cara, esses codes tão dando umas incompatibilidades com o TFS rev 3884. Consegui adaptar a maioria, menos o protocolgame.cpp. Veja o erro:

 

In member function `void ProtocolGame::parseExtendedOpcode(NetworkMessage&)':
'class Player' has no member named 'getId'
[build Error]  [obj//protocolgame.o] Error 1

 

Alguém consegue ajudar?

 

~~ Edit ~~

 

Consegui arrumar. Problema no case sensitive. O certo deveria ser getID, e não getId.

Editado por LuckOake
Link para o comentário
Compartilhar em outros sites

  • 3 months later...

Aqui não ta funfando banana, meu tfs é 0.3.6 virgem, nem editei.. não esta igual ao do pastebin não, na hora adicionar as coisas não sei fazer pq esta diferente de lá :/

 

-------------------

 

RESOLVIDO

Editado por xS0NYx
Link para o comentário
Compartilhar em outros sites

  • 4 years later...
×
×
  • Criar Novo...