Olá Pessoal, sou novo aqui no forum, apesar da conta ser antiga..
Ultimamente tenho me interessado sobre programação e fuçado por aí, querendo entender mais sobre o assunto.
Eu já tive um servidor à uns 7 anos atrás haha, programava apena scripts em .lua e tentava umas loucuras em C++.
Mas agora estou querendo entender como funciona essa comunicação do Tibia.exe (independente da versão) com o Servidor.
- Primeiro: ambos utilizam de linguagens certo? E eu sei que o servidor é feito em C ou C++ e depois compilado todos os arquivos juntos para criar um único executavel, o procedimento é o mesmo com o Tibia.exe, ou seja, ele é feito em C++ também? ou em Hexadecimal/ASCII como é representado em um editor hexadecimal?
-Segundo: as strings, funções, variavéis e sei lá o que mais, devem estar contidas tanto no Tibia.exe quanto no servidor para que haja um reconhecimento? ou apenas em uma das partes? Como acontece isso?
-Segundo.2: SE o Tibia.exe é feito em hexadecimal, e tem toda aquela estrutura de MSDOS Header, PE Signature, Data, Storage e outras fitas lá que não lembro.. como eu consigo entender o que significa aqueles codigos em ASCII feitos pela tradução do codigo Hexadecimal ?
-Segundo.3: e SE o Tibia.exe é feito e compilado em C++, seria certo pensar que a compilação converte a linguagem em BITS para que o computador possa entender essa linguagem?
-Terceiro: E também se eu quisesse fazer um Tibia.exe diferente, sem editar pelo hex editor, eu teria que começar um projeto por source com uma lingaugem compativel com o servidor em questão que irá se comunicar com esse cliente?
Acho que é isso que está matando meu cerebro agora..
Gostaria de saber o que vocês pensam sobre isso.. iria me ajudar muito a compreender melhor esta logica!!
Obrigado pessoal!!