![]() |
![]() ![]() |
![]() |
![]() ![]()
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 ![]() Anybody? ![]() Ten post edytował Shadowrunner 17.09.2008, 10:36:27 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 890 Pomógł: 65 Dołączył: 13.11.2005 Skąd: Olsztyn Ostrzeżenie: (0%) ![]() ![]() |
Ale Cron może zadania wykonywać równie dobrze na przykład co minutę...
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 17.09.2008 Ostrzeżenie: (0%) ![]() ![]() |
Ale Cron może zadania wykonywać równie dobrze na przykład co minutę... A czy Cron zmajstruje mi odpalenie skryptu na określoną godzinę którą aplikacja zadamu mu w momencie kiedy gracz wyśle najazd? I czy może to zrobić dla n liczby użytkowników - nie będzie konfliktów jak w tym samym momencie 1000 graczy ![]() A jesli tak, to znaczy że istnieje duże prawdopodobieństwo że OGame i inne tego typu gry też robią te swoje myki w oparciu o crona, tak? |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 8.07.2025 - 21:56 |