Main Menu

Timers

Started by syous, June 25, 2009, 09:24:25 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

syous

 ;D hola llevo mucho  tiempo jugando a los MMORPG y todos usan tiempos para el lanzamiento de un evento , reutilización del mismo o para efectos temporales

Un ejemplo, estoy jugando al World of Warcraft y todos los hechizos tienes unos segundos para lanzar el hechizo o ralentizas alguien o lo congelas alguien unos segs y así muchos juegos del genero pero intento algo innovador partiendo de esa base
Un Saludo
EL dia que la humanidad aprenda a mirar y sentir con los ojos del alma, recuperara su humanidad
http://sodonline.net/
http://darknessage.ayudaprogramacion.net/
http://www.ayudaprogramacion.net/

Proyecto: MMORPG
Completado: 2%
Estado: En Desarrollo...

SplinterGU

asincronos segun desde donde lo mires...
es cierto que para el caso que mencionas no sirve, pero para casos donde se basa en tiempo y no en frames si es util, no digo de usar timers, sino el get_timer.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

syous

 ;D  supongo que también sirve para dar tiempo al servidor para procesar la información :P
Un Saludo
EL dia que la humanidad aprenda a mirar y sentir con los ojos del alma, recuperara su humanidad
http://sodonline.net/
http://darknessage.ayudaprogramacion.net/
http://www.ayudaprogramacion.net/

Proyecto: MMORPG
Completado: 2%
Estado: En Desarrollo...

Drumpi

Es que verás, syous: si hace set_fps(50,0) sabes que al hacer 50 frames han pasado un segundo DE JUEGO, si usas timers sabes que pasa un segundo REAL, la diferencia está en si el juego ha conseguido funcionar en tiempo real o no.
Imagina que un enemigo empieza a cargar un ataque que tarda cinco segundos, tu te dispones a esquivarlo, y apenas empiezas a moverte se dispara la tarea automática de limpieza, el ordenador se "congela". Cuando termina han pasado los cinco segundos, pero tu jugador no se ha movido, y recibes un ataque que, en tiempo de juego, ha tardado medio segundo.

Obviamente me refiero a asincronía del mismo modo que las interrupciones HW: su ejecución sigue los tiempos de reloj, pero se activan en cualquier instante de tiempo, no predecible.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

SplinterGU

estas pensando a nivel juego basado en frames... en algunos casos no interesa cuantos frames se ejecutaron...
Por ejemplo, un juego que debe ser completado en 1 hora... o que tenes que sensar un dispositivo para 200ms minimo... o un reloj en tiempo real donde tenes que mostrar milesimas de segundo... o un protocolo de comunicacion donde el protocolo requiere que cada cierta cantidad de milisegundos envies un paquete de ECHO o HELLO.
tambien esta lo que decis, pero no aplica a todos los casos... en ocaciones es util.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Drumpi

No digo que no sean útiles, por ejemplo, para lo que dices.
Lo que me pone los pelos de punta es que la gente usa los timers como contadores para los juegos, más que nada, porque, según mi forma de ver, no se tiene en cuenta a los equipos más modestos, que pueden generar los "retrasos" mencionados.
Pero vamos, que no voy a crucificar a nadie por eso, sólo expongo mi opinión, cada uno es libre de programar como quiera (porque si no, sería yo el primer apedreado ;D)
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

SplinterGU

pero syous esta haciendo un juego online, que segun entiendo sera realtime, o basado en tiempo.

como sea, al ser online la componente tiempo debe prevalecer sobre frame... no podes penalizar a todos los jugadores porque uno tenga una carreta.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Drumpi

Pues en eso si que te doy la razon.
Tambien dependería de cómo esté implementado el juego, si el servidor se encarga de todos los cálculos y los clientes sólo transmiten la pulsación de sus teclas, se supone que el servidor es el rápido y es el único que debe ir a golpe de frame. Si las tareas se reparten sólo penalizaría al que tiene el PC movido por hamster en su rueda.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

syous

Quote from: Drumpi on June 29, 2009, 12:20:28 AM
Pues en eso si que te doy la razon.
Tambien dependería de cómo esté implementado el juego, si el servidor se encarga de todos los cálculos y los clientes sólo transmiten la pulsación de sus teclas, se supone que el servidor es el rápido y es el único que debe ir a golpe de frame. Si las tareas se reparten sólo penalizaría al que tiene el PC movido por hamster en su rueda.

esa es la idea  ;D pero hasta el que tiene el PC movido por hamster en su rueda va poder jugar
Un Saludo
EL dia que la humanidad aprenda a mirar y sentir con los ojos del alma, recuperara su humanidad
http://sodonline.net/
http://darknessage.ayudaprogramacion.net/
http://www.ayudaprogramacion.net/

Proyecto: MMORPG
Completado: 2%
Estado: En Desarrollo...