Jump to content

Moobs demoram e não recebem hit (com video)


Lyn2
 Share

Recommended Posts

Boas pessoal, deparei-me com um problema, que não é confortável na hora de upar, simplesmente os monstros (alguns) demoram a receber o hit ou ficam parados no tempo...

 

 

 

Mas no servidor Sena2 era isto que queria, que fossem mortos e não tivesse aquele bug (alem de demorar a desaparecer, alguns demoram aparecer e a receber hits)

 

Agradecia, deve ter algum problema ou da vps ou até mesmo dos monstros, mas em geral acontece com todos...

 

Não sei se consegui transmitir o problema, quem souber, agradecia mesmo! 

 

 

Obrigado! 

Edited by Lyn2
Link to comment
Share on other sites

Ficheiro char_battle.cpp

Dentro da função

void CHARACTER::Dead (LPCHARACTER pkKiller, bool bImmediateDead)

Terás algo assim (o teu valor será diferente de 3. No meu caso coloquei a desaparecer ao fim de 3 segundos):

m_pkDeadEvent = event_create (dead_event, pEventInfo, bImmediateDead ? 1 : PASSES_PER_SEC (3));

 

Mobs ficarem e não levarem hits pode ser algo relativo a posição dos mobs (no cliente vês que estão perto de ti, no servidor ainda não estão). Já não me lembro como resolvi isso, deve ter sido algo nos packets.

Link to comment
Share on other sites

Spoiler
18 horas atrás, tierrilopes disse:

Ficheiro char_battle.cpp

Dentro da função



void CHARACTER::Dead (LPCHARACTER pkKiller, bool bImmediateDead)

Terás algo assim (o teu valor será diferente de 3. No meu caso coloquei a desaparecer ao fim de 3 segundos):



m_pkDeadEvent = event_create (dead_event, pEventInfo, bImmediateDead ? 1 : PASSES_PER_SEC (3));

 

Mobs ficarem e não levarem hits pode ser algo relativo a posição dos mobs (no cliente vês que estão perto de ti, no servidor ainda não estão). Já não me lembro como resolvi isso, deve ter sido algo nos packets.

 

 

 

Obrigado, mas se colocar 1 segundo irá fazer diferença ou criar erros?  

 

Pois, era o problema que tinha encontrado, parece que não está 100% em sintonia, já tentei pesquisar no google mas não encontro nada mesmo...

 

Obrigado pela atenção e pela ajuda!!! 

Link to comment
Share on other sites

10 minutos atrás, tierrilopes disse:

Apenas irá desaparecer mais rápido, experimenta para ver se é isso que queres.

Em relação aos monstros ainda tenho de testar aqui no meu para ter a certeza que foi corrigido, mas é um problema já antigo

Eu achei estranho e fica meio desconfortável de upar, muito melhor agora, desaparecem no momento em que é morto, mas o problema persiste dos moobs não levarem dano ..

Tentei com outros moobs tudo na mesma, pode ser da vps? 

 

Link to comment
Share on other sites

15 horas atrás, Lyn2 disse:

Eu achei estranho e fica meio desconfortável de upar, muito melhor agora, desaparecem no momento em que é morto, mas o problema persiste dos moobs não levarem dano ..

Tentei com outros moobs tudo na mesma, pode ser da vps? 

 

Tenta ligar em uma máquina localhost, não vou dizer que não possa ser isto, então basta testar localhost 

Link to comment
Share on other sites

  • 1 month later...
  • 10 months later...
  • 4 months later...

Para quem ainda quiser corrigir isto, tem a ver com o monstro em si.

Na pasta do monstro nas animações, RUN, WAIT, ATTACK, ou o nome que tiver, existe uma coisa que se chama "Accumulation", o que deverá ser adicionado ao  ficheiro".msa"  da respetiva animação.

Por exemplo, uma animação: run.gr2 (aberto com Granny Viewer)

Vamos a Animation List > Botão direito na animação > View in Detail > em "void ** TrackGroups" clicamos em (click to view sub-structure) > agora vamos ver o valor que está em "granny_real32 LoopTranslation",

no meu caso é: 0     -399.999969     0

Por tanto no ficheiro run.msa irei adicionar a linha:

Accumulation             0.00	-399.99	0.00

por baixo de:
MotionDuration           0.466667



Exemplo completo:
ScriptType               MotionData

MotionFileName           "D:\ymir work\npc2\escorpion_g\run.gr2"
MotionDuration           0.466667
Accumulation             0.00	-399.99	0.00

-399.99 e -400.00 poderia ser utilizado porque 0.01 de diferença não se irá notar, seja qual for o arredondamento que façam se o número estiver muito perto do ideal não se nota diferença. Isto fará com que as animações corram todas sem nenhum problema e os monstros irão levar o dano devido quando chegam ao pé da personagem.

 

Outro bug por não ter esta linha no ficheiro ".msa" é os monstros começarem a dar dano ao jogador mesmo estando longe.

 

Espero que ajude alguém,

Cumprimentos

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...