Jump to content

implementar ataque com timer (text mmorpg)


Recommended Posts

Posted

Boa noite a todos, estou a criar um browser mmorpg do zero em php e mysql. O problema é que queria implementar uma funcionalidade muito usada nos jogos mais comuns, que é:

A pessoa ataca, mas as tropas do jogador demoraram um tempo x a chegar ao sitio. Portanto os calculos e tudo mais só poderá ser feito quando chegarmos a "current time + x".

Qual acham que seria a melhor forma de fazer isto?

já pensei em algumas soluções, uma delas seria criar uma nova thread por cada acção com timmer, a thread ficava a dormir "x" tempo e executava as coisas nessa altura. Como podem adivinhar, esta solução tem algumas falhas..

Espero que tenham percebido a duvida.. lol, foi um dia longo, por isso n tou a escrever mt bem 😛

Posted

Boas,

Guardas o timestamp calculado de chegada do ataque na base de dados, e quando for feito algum request ao servidor que envolva de alguma forma valores associados a esse ataque, verificar se este já chegou ao destino e calcular os novos valores.

A tua ideia deu-me uma ideia parecida, espero que funcione!

tks!

Posted

Se tiveres acesso a um servidor só para ti (ou com shell) o melhor é programares uma imapi ou um programa em cron que te faça os calculos, assim não sobrecarregas o servidor web, caso não tenhas o melhor é guardares na BD o inicio e o fim da acção e sempre que alguém faz um requesta este tido de acção processas a informação, na minha opinião eu ia para a imapi.

Fica Bem.

O que não tem solução, solucionado esta...

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
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.