😳 2x tipos de criptografia (XOR e AES) - sim, os arquivos são criptografados uma vez e depois novamente com outra cripto.
⚙️ Compressão dos arquivos (melhora em 60-70%) - por exemplo se seu .spr tem 500Mb ele vai ficar com 200Mb.
😎 Mais de 20 camadas de proteção (em cada arquivo é armazenado um header diferente, assim dificultando obter um padrão).
🕐 MultiThread (quão melhor sua CPU, mais rápido o processo).
🔄 Backup Integrado (relaxa, você não vai precisar se desesperar por criptografar nada, o sistema faz um tipo de backup para os arquivos processados e sempre gera também backup dos arquivos que forem excluídos do diretório de saída quando comparado ao diretório de entrada).
🔥 Particionamento do .spr (se você tem por exemplo 50000 sprites ao inves de ter somente 1x .spr com 50000, ficarão 5x de 10000) otimizado principalmente para mobile (soluciona o erro de leitura do spr).
✅ Verificação por HASHS (os hashs de cada arquivo processado são armazenados para que não seja necessário reprocessar o mesmo, caso não houver nenhuma alteração).
📋 Gerador de Logs (acompanhe detalhadamente cada arquivo que foi processado).
🤓 Exclusividade de Software (para cada cliente, é colocado um código individual exclusivo no sistema, para que minimize ainda mais os riscos de descriprografia, ou seja... Mesmo que você forneça suas chaves de criptografia à alguém que também possua o sistema, e esse alguém não tiver exatamente o mesmo software que disponibilizei à você, ele não conseguirá reverter o processo DESSA FORMA!).
🥳 Proteções contra ripping (protege contra dlls, cheat engine, dumps, debugger, ninja ripper, special k, etc...) - não garanto 100%, o foco é proteger todo seu client contra descriptografia(E AINDA SIM ESTAMOS SUJEITOS À ISSO, O QUE EU FAÇO É APENAS DIFICULTAR O MÁXIMO POSSÍVEL), além de que ripping você sempre estará sujeito por diversas outras formas...
🚫 Anti-Macro/Bot (protege contra alguns softwares conhecidos, não é 100% pois não conhecemos todos os softwares existentes para esta finalidade... E este é um recurso opcional, caso queira permitir o uso dos mesmos em seu projeto sem influenciar nas outras questões, será possível!).
✨ Verificação de Hash das DLL's(cada DLL contém um Hash após ser gerada na compilação, comparamos esse Hash em tempo real para impedir a injeção de outras DLL's (LanEngine por exemplo).
⭐ Verificação de Hash dos EXE's(os hashes são validados para garantir a integridade do client, assim impedindo que alterem de forma maliciosa o proprio .exe, para qualquer que seja a finalidade).
🕶️ Ocultação de Strings(É aplicado um tipo de codificação/ofuscação em diversas strings críticas do client e também nas proprias que se relacionam ao sistema de criptografia, dessa forma dificulta que encontrem funções no client para aplicar eng. reversa).
💾 Sistema de Limpeza de Memória e Otimização (a cada x tempo, o client vai limpar da memória sprites que não estão mais sendo utilizadas, assim armazenando somente o que está na visão do jogador).
▶️ Recurso Adicional(acompanha um inicializador SIMPLES, para que o usuário possa selecionar a versão que deseja jogar: DirectX ou OpenGL, além de ser um recurso adicional para proteção contra injeções diretas em seu Client).
⚡ Feature Extra (Mais velocidade na compilação do OTClient - PC, basicamente será efetuada a correção do build com JUMBO no visual studio, para maior velocidade e comodidade durante a compilação da source).
🚀 Atualizações Futuras (adquirindo o sistema, você receberá todas as próximas atualizações gratuitamente de forma vitalícia!).
Em resumo, o sistema é implementado diretamente na source do seu OTClient.
O Client vai ler e tratar as sprites como se estivessem em 64px, porém vão se manter em 32px no ObjectBuilder (nada precisa ser feito, o client faz todo processo automaticamente).
Além do upscale em si, são adicionados filtros nas sprites para que fiquem ainda mais realçadas e bonitas!
A melhoria é aplicada em todas as sprites, sejam elas: items, outfits, efeitos ou missiles.
O sistema de sombra é aplicado quando o player estiver no FLY...
Quando mais andares o player subir (z), mais translúcida fica a sombra e menor em questão de escala também e o contrário ocorre quanto mais desce andares... assim tornando-a mais "realista".
Essa feature, aplica uma "suavização" ao caminhar sobre itens com elevação (caixas, bancos, baus, etc...)
- Redução do Uso da Largura de Banda: A compressão reduz o tamanho dos dados transmitidos, o que diminui a quantidade de largura de banda necessária para a transferência. Isso é particularmente benéfico em conexões de rede lentas ou limitadas.
- Melhoria da Velocidade de Transferência: Pacotes menores levam menos tempo para serem enviados e recebidos, o que pode melhorar a velocidade geral de comunicação entre o servidor e o client.
- Server-Side: O servidor é responsável por comprimir os dados antes de enviá-los ao client, a compressão é aplicada em todos os pacotes(protocolos) que o servidor envia, como por exemplo: login, walk, etc...
- Client-Side: O client é responsável por descomprimir os dados recebidos do servidor, em resumo ele simplesmente descomprime para o tamanho original do pacote antes de ter sido comprimido pelo servidor, para fazer a leitura correta dos dados.