YA

Aumentando limite doShowTextDialog

Por Yan Liima, 07 de jun. de 2020 em Linguagens de Programação

spells
tecnicas
jutsu
debug
2
1.1k
Yan LiimaY
07 de junho de 2020 às 22:43

Salve meus queridos, tudo bom? Hoje decidi trazer uma pequena alteração na source. Vi que muita galera tem problemas com o limite do caracter da função doShowTextDialog, pois se excender o limite maximo de caractere da debug no client.

Isso ocorre principalmente pra galera do derivado que costuma utilizar !spells/!tecnicas/!jutsu para checar os ataques disponiveis que existe pra tal personagem. 

Se você é GOD, você consegue visualizar todas as spells do servidor , e se no servidor existir muitas, irá causar debug.

Diferente do doPlayerPopupFYI, não há uma proteção de limite para TextDialog...

 

Primeiramente, como que eu descobri?

Seguinte, eu coloquei o máximo de spells possiveis, ou seja, o máximo de caracteres possiveis na caixinha de texto.

Quando eu vi que começou dar debug no cliente, eu retirei alguns caracteres e fui testando.

tecnicas.png

Até que consigui achar o valor máximo!

Eu copiei tudo que estava na janela, e em um site online colei todo o conteúdo de lá para saber quantos caracteres existiam ali.

E esse foi o resultado:

contador.png

 

8192, descobrimos o máximo de caracteres no doShowTextDialog.

Após descobrir este valor, eu procurei nas sources e achei!

 

ENTÃO VAMOOOS LÁ!

TFS

Spoiler

Abram o networkmessage.cpp e procure por:

if(!hasSpace(size + (addSize ? 2 : 0)) || size > 8192)

Troque por:

if(!hasSpace(size + (addSize ? 2 : 0)) || size > 20000)
 

OTX

Spoiler

Abram o networkmessage.cpp e procure por:

if (!canAdd(stringLen + 2) || stringLen > 8192) {

Troque por:

if (!canAdd(stringLen + 2) || stringLen > 20000) {

 

 

Prontinho! Simples, não? haha

Editado Junho 7 por Yan Liima

nociamN
07 de junho de 2020 às 23:11

Nem sabia dessa disso.