Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL] Obsługa wydarzeń czasowych w grach MMO
Shadowrunner
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 17.09.2008

Ostrzeżenie: (0%)
-----


Witam!

Czy ktoś orientuje się lub mógłby mi podpowiedzieć na jakich zasadach obsługuje się np. wykonywanie jakiegoś skryptu odpowiadającego za wykonanie konkretnej funcji w momencie kiedy użytkownik aplikacji internetowej nie jest zalogowany?

Konkretnie chodzi o to że od podstaw piszę własną grę przeglądarkową MMORPG/RTS i zastanawiam się na tym jak np. wykonać mechanizmy odpowiadające za: wybudowanie budynku po X czesie, dokonanie ataku po przybyciu za Y minut/godzin armii którą gracz wysłał w pewnym momencie itd.

Na razie jestem na etapie takim, że wymyśliłem sposób jak robić to trochę "pod górkę" i "na około" - metodami statycznymi - tj. poprzez zapisanie w bazie danych daty rozpoczęcia, daty zakończenia i podawanie czasu trwania np. budowy czy pozostałego czasu do "finalizacji" najazdu na postawie parównywania tych dwóch dat za każdym razem kiedy gracz wchodzi na stronę odpowiadającą za budowę czy najazdy i wyświetlania mu tej informacji - zaś w przypadku, kiedy gracz wejdzie na stonę już po zakończeniu takiej "akcji" to aplikacja przekierowywuje go do stronki gdzie może sobie "odebrać" produkcję czy zobaczyć wyniki starcia (i np. dopiero w tym momencie są wykonywane skrypty odpowiadające za potyczkę czy dopisywane są do bazy danych na końcie gracza informacje o powiększeniu się "stanu budowlanego").

Ale interesuje mnie to np. jak to jest rozwiązywane w sposób dynamiczny i bez obecności gracza np. w takim OGame, że zlecamy budowe, a ona sama sobie już chula, gdzieś tam jakoś odpalona naa serwerze, obojętnie od tego czy gracz jest zalogowany czy nie - jak odpalać takie skrypty bez obecności użytkownika. Bo czytałem gdzieś tu na forum że to wykonywania zadań z harmonogramu słuzy Cron, ale to są zazwyczaj na sztywno ustalone terminy a tu mamy do czynienia z dynamicznie przydzielanym okresem czasu po którym dany skrypt - np skrypt ataku naszej armii na bazę przeciwnika ma być wykonany?

Potrzebuję pomocy jakiegoś mózgowca któryby mi to objasnił na jakich zasadach to działa, a może ktoś ma gotowy kod do takich mechanizmów, co trzeba mieć żeby takie rzeczy robić - bo chciałbym za wszelka cenę uniknąć korzystania z jakiś zewnętrznych programów, Javy, JS czy tym podobnego badziewia winksmiley.jpg ...

Anybody? worriedsmiley.gif

Ten post edytował Shadowrunner 17.09.2008, 10:36:27
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 15:00