Guarda ajax e javascript usalo solo ed esclusivamente per visualizzare non fargli mai fare nulla di critico senno possono nascere enormi problemi.

E cmq nn saprei io farei fare tutto lato server con ajax che ogni tot secondi controlla lo stato e aggiorna la pagina.

Per le temporizzazioni io farei circa come dici te ma con un'accorgimento.

1 script lato server di controllo personaggio.
2 ajax che invoca tale script

Lancio lo script js con window.setInterval o setTimeout e gli faccio eseguire lo script di controllo.
Leggo i risultati dello script e li gestisco nella pagina.
Cosi' non sara' mai js a temporizzare ma lo script di controllo che puo' essere invocato e controllato meglio. COsi' se una cosa deve rompersi a tempo x sara' il server a deciderlo. Non la chiamata ajax. Che succede se disabilito i js sulla pagina ?? e Inizio a inviare request a mano nel server?????

Pensaci.

Eppoi joomla a me non piace.