Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×

Shepher

Emerald Member
  • Total de Posts

    1.880
  • Registro em

  • Última visita

  • Dias Ganhos

    1
  • WCoins

    52

Posts postados por Shepher

  1. 28 minutos atrás, doisdedoo disse:

    Eu fiz exatamente como vc disse. Porém ele ainda continua cobrando errado. Não consigo identificar o problema pois a conta não fecha.

    EX: Peitoral de ferro na itemList está como 12.600. No visual dentro do jogo, o valor do item no NPC está por 13.230. O que corresponde a 5% de imposto. 12.600 + 5% = 13230. Até aí está tudo ok. Porém quando eu efetuo a compra do item, ele desconta do meu saldo no inventario o valor de 10.256. Não faz sentido essa conta. Você sabe me dizer como eu regulo o imposto do server? Talvez o imposto esteja certo apenas visualmente. 

     

     

     

    • Curtir 1
  2. 46 minutos atrás, Mandalorian disse:

    Basicamente quando o buffer de recebimento de pacotes está cheio para aquele socket ele é zerado, também fecho o socket. Sem essa alteração ou dá falha ao tentar conectar, o jogo trava ao entrar no personagem ou diversos outros erros ingame ocorrem devido ao buffer cheio. Você ou alguém da sua equipe fez a mesma tratativa na sua base, porém não fecha o socket e nem tem log do ocorrido.

    É necessário se cadastrar para acessar o conteúdo.

     

    Como disse no próprio tópico, corrigir o flood de pacotes é outra tratativa. 

     

    Bom, nesse caso, não tem nada a ver com SYN attack. 

     

    O caso de buffer full, até ok. Não é necessário você fechar a conexão com o usuário, na verdade, você pode só descartar ou ver o que quer fazer.

    Até pode acontecer numa situação saudavel de um lag, a depender do tamanho do buffer.

     

    Além disso, chamar diretamente o closesocket do windows não é bem ideal. Deveria chamar a função CloseUser da própria TM, fazendo com que o player de fato fosse desconectado, removido do jogo e etc. Como eu disse, pode sim acontecer numa situação saudavel (apesar de dificil), e isso geraria outros danos.

     

    Acredito que simplesmente `return FALSE` seja o mais correto, veja na w2pp

    Os dois = 0 resetariam os buffers e seria possível receber pacotes deste socket novamente (o log em si parece estar errado, o closeuser deve ter sido removido, não sei).

     

     
                if(pUser[User].cSock.Receive() != 1)
                {  
                    char temp[256];
                    sprintf(temp, "clo, server receive %d", User);
                    Log(temp, "-system", 0);
                    Log(temp, "-system", 0);
                    Log(temp, "-system", 0);
     
                    pUser[User].cSock.nRecvPosition = 0;
                    pUser[User].cSock.nProcPosition = 0;
     
                    break;
                }
     
    • Curtir 1
    • Amei 2
  3. 14 horas atrás, fodex3 disse:

    Este não seria aquele que envia multiplas conexões simultânea ?

    Se for esse, fiz uma checagem para lidar com isso no AcceptUser, mas parece não ser lá, não cai nos log.

     

    Mas, talvez seja um novo software, fiquei muito longe da área, não sei.

     

    Não, é uma conexão não completada. Ela nunca vai chegar para você porque ela não foi de fato concluída. Você só vai receber o evento de conexão quando ela de fato for concluída poara você aceitar

     

    SYN Flood – Wikipédia, a enciclopédia livre

     

    Basicamente o cliente nunca envia o ACK e o servidor fica esperando com a conexão aberta.

    • Curtir 1
  4. 3 horas atrás, Jr.Junior01 disse:

    não tenho culpa se voces não soube configurar e deixou o jogo tudo bugado .....o jogo roda liso sem bugs e virus nao contem até aonde sei , acho que na certa é assim que funciona deixe-me explicar ....

     

    uma certa vez um adm postou um servidor top top de completo , do nada alguns adms baixaram e para que outras pessoas não baixassem começaram a criticar e falar que tinha bug e tals só para defamar a imagem da pessoa que fez a boa ação ...

     

    ai foi até o forum [WEBCHEATS] que é super facil defamar com comentarios e falaram : tem bug , tem npc flutuando , ta diferente do cliente do youtube e blablabla porem se olharem a source tenho video dela completa mostrando como ligar e configurar corretamente e rodar liso e sem falhas ...

     

    a comunidade do wyd é nojenta porque só sabem sugar e agradecer por nada por isto não vale a pena postar conteudos melhores aqui pois pq o publico é tóxico mais irei continuar postando muitos servidores no canal de graça haha .....

     

    se sua intenção foi fazer eu parar de postar só motivou a soltar mais conteúdos bons que adm bota defeito para galera nao adquirir FREE ... irei acabar com a mafia destes adms que vende servidor cagado e se acha o bom programador ,

     

    não falando nomes porem acabou a festa e sim quero ganhar inscritos ja que soltei uma base que vale no minimo 5k ou até mais quem quiser o video ligando e configurando isto sim é pago nao solto free pq não tenho filho desta idade para cuidar .  

     

    quer o cliente do video eu provo e mostro que é o mesmo cliente que vcs tem em mão desta postagem quer suporte podem chamar porem meu tempo meu valor abraços .

    @ Sabala se quiser finalizar o tópico pode finalizar meu querido para evitar possiveis bate bocas a galera não sabe aproveitar nada .

     

    Me falta fôlego pra ler isso aí, me ajuda. Faz o seguinte prompt no ChatGPT: "Por favor, reescreva esse texto de uma forma que um humano com QI normal escreveria".

    Aí, você copia o resultado e cola aqui, por favor. Faça isso a partir de hoje em todos os seus posts, fazendo o favor.

     

    "a comunidade do wyd é nojenta", sim, você tá nela.

    • Curtir 1
    • Uau 1
  5. 10 horas atrás, ExploiTT disse:

    Eu instalei o vcpkg instalei as bibliotecas que pedia ai ele instalou aqui " C:\Users\ExploiTT\vcpkg " só que meu projeto não encontra os arquivos ainda fica assim 

    É necessário se cadastrar para acessar o conteúdo.

     

    Querido colega, se você vai usar o vcpkg, o ideal seria que você lesse o que o vcpkg pede para que seja feito. Você já teria resolvido o problema.

     

    Você precisa dar um integrate install usando o vcpkg, para que o Visual Studio possa encontrar os arquivos corretamente.

    • Curtir 1
  6. "baixei ele no github e tudo mais"

    E fez o que com eles? Os erros são de símbolos não encontrados. 

    Neste caso, você adicionou os .cpp e .h na solução para que pudessem ser compilados e os símbolos existirem? Ou se compilou como lib, adicionou a referencia a lib?

    • Haha 3
  7. 3 horas atrás, Mandalorian disse:

    Então, partindo das condições as quais o jogo faz a desconexão dá pra fazer reconectar ou até mesmo nem dar necessariamente o DC.

    É necessário se cadastrar para acessar o conteúdo.

     

    No caso, como eu fiz, por exemplo, aparece um Reconectando na tela.

    Ela fica de uma forma que não pode clicar em nada aguardando.

    Aí toda a burocracia acontece quanto a reconectar, há uma negociação pra voltar pra sessão anterior e caso válido, a mensagem de reconexão some, e você já está no jogo de novo. A velocidade depende da conexão da pessoa. Claro que há várias pequenas nuances para o usuário voltar a um estado saudavel, mas é possível.

    • Curtir 1
  8. P: É viável construir um servidor inteiramente do zero dessa forma?
    Não sei bem que forma você quis dizer, mas, é possível construir um servidor de qualquer forma que você tiver ideia, provavelmente. De maneiras boas, maneiras ruins, maneiras foda-se.

     

    P: Como faço para descobrir todos os pacotes que o jogo envia e espera receber?
    Analisando mesmo. Mas todos os pacotes já foram disponibilizados de alguma forma. O TMProject tem todos eles, acredito.

  9. 15 horas atrás, Mandalorian disse:

    Enquanto houve essa discussão saudável aparentemente estou terminando essa questão da escala de forma até que Solo, só tirando dúvidas com alguns companheiros de comunidade. Em breve talvez abra a todos a conclusão e como é feito o processo.

    É necessário se cadastrar para acessar o conteúdo.

     

    Boa. Minha sugestão é seguir algo que o WYD já faz para tornar algo mais automático (por autmático eu quero dizer qualquer resolução se adequará sozinha, seja qualquer que você adicionar):

    O cliente já tem um método chamado BASE_ScreenResize que basicamente "calcula a posição baseado na proporção". O segredo é fazer com que componentes sem parent sejam criados em uma posição absoluta da tela e os children sejam calculados proporcionalmente. 
     

    Pena que o fórum não destaca diffs para mostrar melhor mas... vou mandar o código como quero dizer:

     

    É necessário se cadastrar para acessar o conteúdo.

    É claro que existem outros construtores, tudo teria que ser propagado.

    E aí nos atributos m_nPosX e m_nPosY você usa essa variável bAbsolute para saber se só usa o valor do argumento ou calcula usando BASE_ScreenResize/BASE_ScreenResizeY.

    É necessário se cadastrar para acessar o conteúdo.

    E aí você adapta a leitura dos .bin (não o arquivo, mas a leitura). Quando ele cria os componentes, você tem a informação se é parent ou não, e aí você passa o bool pro construtor. E vualá. Boa parte está feita. E aí basta adaptar o resto do código onde mexe com posições para ou calcular ou usar a posição absoluta (seja na criação ou manipulação) já que algumas coisas são criadas em runtime quando se cria a scene.

     

    A resolução 800x600 (onde é a base de tudo) ficará normal. Vale lembrar que a resolução 640x480 deixa de funcionar com esse método.

    • Curtir 37
    • Amei 2
  10. 20 horas atrás, .Unk disse:

    Maluco, é você, cara. Ninguém aqui te chamou. Não citei seu nome, falei sobre o Myth, e você se meteu aí e sentiu as dores. Só porque eu diminuí a quantidade de códigos do sistema de escala do Myth, que pelas dores parece que foi você quem codificou. E outra coisa, ninguém tem que mostrar nada para ninguém, não. Se fosse para ser público, não seria código. Maluquice. Quando seus códigos eram apenas seus, você ficava exibindo para o pessoal, não é? Deixa de ser maluco. Você realmente não conhece os jogadores de WYD. Abre pelo dinheiro. Eles ainda jogam WYD até hoje, porque não é todo mundo na comunidade que tem PC top. Entendeu, playboy? agora fala sozinho ai que não to afim

    Que dores, cara? O código original foi todo feito pela equipe do WYD, só descompilado.

    E aliás, desde quando quantidade de código = qualidade ou otimização?

     

    Eu quero gerar uma discussão saudável, todos aprendemos com elas. É tão, TÃO difícil assim? Vamos com calma. Ninguém tá te atacando, sai da defensiva, por favor.

    Eu tenho a aprender com você. Você tem coisas a aprender comigo. Todos temos coisas a aprender um com o outro. 


    Mas eu entendo: deve ser complicado quando não se tem um argumento sustentável. E tá tudo bem! Eu entendo!

     

    E parece que o coordenador já falou tudo citando a blacklist aí.

    • Curtir 1
    • Haha 1
  11. 3 horas atrás, .Unk disse:

    Tem certeza? O que tenho a oferecer é meu próprio código, não um Ctrl+C do que vocês postaram. É isso que tenho para mostrar. Desenvolvi e atualizei meu código para evitar o uso excessivo de floats, algo comum no Myth, especialmente para posicionar painéis simples. Entendeu agora? Ou você ainda quer continuar debatendo? Não entendi exatamente o que você quer que eu explique aqui. Se alguém realmente quiser entender, pode simplesmente baixar a source do Myth e verificar por si mesmo. No entanto, sei que nem todos estão dispostos a fazer isso e preferem debater com argumentos superficiais. Da mesma forma que você @ Shepher descompilou o cliente DB e TM e tudo mais e refez do seu jeito, eu li, entendi como funciona e fiz do meu jeito, do jeito que notei que não preciso usar uma quantidade desnecessária de floats.Só que sua intenção não é entender, né, mano? Você veio aqui para sabotar o comércio aqui da marketplace, né?
    @ Sabala 

     

    Você não sustentou seu argumento, e me atacou. Eu não falei de mim em momento algum. Eu só quero entender teu ponto. Seria interessante gerar uma discussão pra entendermos se essa otimização foi válida ou não. Otimização sem um benchmark é quase sempre desnecessário.

    Simplesmente você dizer "alocar" memória. São alguns poucos bytes salvos pra computadores em 2023 com 16gb de ram (não estamos mais em 2003 que 1gb era o top).

     

    Mas pelo visto, você não tem um ponto.

     

    Você é meio maluco mas, tudo bem, parabéns pela "otimização". 

  12. 43 minutos atrás, .Unk disse:

    cobra o codigo pra vc saber :). ué aquele mont de fpos seila oq são variaveis float que vao ser alocada onde ? vixi ta ficando doido kevinho ? quiser conversa manda o whatsapp na dm

     

    Caraca, cara. Sustenta teu argumento. Eu fiz uma pergunta simples porque quero entender o seu ponto. 

    Quem lê o post vai entender que você não tem nada a oferecer com essa "otimização". 

  13. 1 hora atrás, .Unk disse:

    Usar muitos floats para mover os PNLs e outros elementos é realmente necessário? Existem maneiras melhores de economizar memória. Os jogadores de WYD escolhem esse jogo por sua leveza, então seria uma boa prática começar de forma mais eficiente e continuar assim. Não entendo, se pegamos o que vocês fazem, somos criticados; quando mudamos para algo melhor ou otimizado, também somos criticados... difícil agradar a todos. enfim qualquer coisa Dm ta on.

     

    Não critiquei. Falei: "discorra". Você fez uma afirmação. Gostaria de entender essa afirmação.

     

    Você não explicou a sua frase. Alocar memória? Onde estaria sendo alocado? Qual foi exatamente a otimização que você fez? 

    • Curtir 2
  14. 1 hora atrás, .Unk disse:

    Se você não deseja a resolução, basta desativá-la. O conteúdo está disponível para todas as resoluções(citadas). Se tiver interesse, envie uma mensagem direta (DM). Quanto à escala, está definida para todas as resoluções, mas só é acessível por meio do código. Você também pode usar o do WYD 2.0; no entanto, eles usaram float em excesso, o que aloca muita memória desnecessariamente.

    "no entanto, eles usaram float em excesso, o que aloca muita memória desnecessariamente."?

     

    Discorra, por favor

    • Curtir 1
  15. 9 horas atrás, .Unk disse:

    não é um problema é só adicionar. isso é de menos.

    da mesma forma que funcionar para os existentes. 

     

    Na verdade, esse é o único problema. Para criar itens novos normalmente vc só cria uma figurinha e voilá... E aí você pode adicionar muitas mecânicas facilmente. COm o antigo método, é bem mais dificil e custoso (tanto financeiramente quanto em tempo).

    • Curtir 3
×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.