Pozdrav,
Ranije sam igrao ovu igricu, verujem da je dosta od vas culo za nju. E sad, front-end igrice je PHP sa nesto javascripta, ono sto mene interesuje je kako su resili jedan problem.
Pre svega, sta mislite, da li koriste jos nesto sem PHP-a za server-side? A sada, ono glavno pitanje. U igrici je moguce napadati druge igrace, stavljati zgrade da se grade, stavljati vojnike da se prave itd... Sve se to desava na nivou sekundi, dakle svake sekunde se napravi hiljadama igraca nova zgrada, vojnik itd... Igrac vidi preostalo vreme do izgradnje zgrade (uzecu zgradu kao primer), u sekundama, verovatno PHP uzme vreme zavrsetka pa se obradi vreme do kraja izgradnje koje se potom odbrojava... Ono sto moram da napomenem je da ce se zgrada koju je igrac stavio da se pravi, napraviti i ukoliko on nije online. Npr, kliknete "Napravi batinara", izbaci vam da ce batinar biti napravljen za 12 min 20 sec, i on se tada napravi.
Kako biste vi resili taj problem? Ja sam razmisljao o cron jobu koji ce izvrsavati skriptu na svakih 1s (nisam siguran da cron moze da izvrsava skriptu svake sekunde, cak sta vise mislim da ne moze?) i da uzima iz baze podataka vremena zavrsetka neke akcije, potom da ukoliko se vreme poklapa, menja neke druge vrednosti u drugoj tabeli itd... Mozda cron na svakih minut sa loopom koji se izvrsava sa pauzom na svakih 1s?
Ranije sam igrao ovu igricu, verujem da je dosta od vas culo za nju. E sad, front-end igrice je PHP sa nesto javascripta, ono sto mene interesuje je kako su resili jedan problem.
Pre svega, sta mislite, da li koriste jos nesto sem PHP-a za server-side? A sada, ono glavno pitanje. U igrici je moguce napadati druge igrace, stavljati zgrade da se grade, stavljati vojnike da se prave itd... Sve se to desava na nivou sekundi, dakle svake sekunde se napravi hiljadama igraca nova zgrada, vojnik itd... Igrac vidi preostalo vreme do izgradnje zgrade (uzecu zgradu kao primer), u sekundama, verovatno PHP uzme vreme zavrsetka pa se obradi vreme do kraja izgradnje koje se potom odbrojava... Ono sto moram da napomenem je da ce se zgrada koju je igrac stavio da se pravi, napraviti i ukoliko on nije online. Npr, kliknete "Napravi batinara", izbaci vam da ce batinar biti napravljen za 12 min 20 sec, i on se tada napravi.
Kako biste vi resili taj problem? Ja sam razmisljao o cron jobu koji ce izvrsavati skriptu na svakih 1s (nisam siguran da cron moze da izvrsava skriptu svake sekunde, cak sta vise mislim da ne moze?) i da uzima iz baze podataka vremena zavrsetka neke akcije, potom da ukoliko se vreme poklapa, menja neke druge vrednosti u drugoj tabeli itd... Mozda cron na svakih minut sa loopom koji se izvrsava sa pauzom na svakih 1s?
Potpis
THE ONLY EASY DAY WAS YESTERDAY