Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Travian - Kako oni to rade?

[es] :: PHP :: Travian - Kako oni to rade?
(Zaključana tema (lock), by dakipro)
Strane: 1 2

[ Pregleda: 10077 | Odgovora: 26 ] > FB > Twit

Postavi temu

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

cyBerManIA
I ovo T ono
Space

Član broj: 25195
Poruke: 698
*.exe-net.net.

Sajt: www.facebook.com/cyberman..


+263 Profil

icon Re: Travian - Kako oni to rade?07.10.2011. u 02:47 - pre 152 meseci
Ne znam zasto se hvatate za cronjob kad je mnogo lakse napisati aplikaciju (server/daemon) npr u C/C++ koja ce stalno biti pokrenuta i u stalnoj vezi s nekom bazom podataka a po zahtevu korisnika i sa httpd kako bi vratila kljucne informacije browseru.
Tim putem ce se preracuni voditi "u toku", odmah u nizu po principu LILO, a ne svi na cekanju pa odjednom kad se aktivira cron udri :D
Tada se igra odigrava na serveru, sto je mnogo sigurnije po pitanju varanja od onog tipa kad bi se neki preracuni vrsili kod igraca, pa naknadno uporedjivali sa serverom.
Nista ne dobijate, samo gubitak prilikom komunikacije :)

Preracune odradis kao sto je reko valjan.
Npr, spremate odbranu a napad stize za 1h. Kako se koja stavka dodatno izgradi, samo dodate koeficijent odbrane date figure na vec sracunat rezultat.
Isto tako i kad 5 igraca napadnu jednog, samo sto ce se racun voditi u nekoliko koraka koji ce zavisiti od vremena dospeca vojske i koeficijenata aktivnih figura.
Ostalo je sminka JS/AJAX :D
 
0

Goran Rakić
Beograd

Moderator
Član broj: 999
Poruke: 3766

Sajt: blog.goranrakic.com


+125 Profil

icon Re: Travian - Kako oni to rade?07.10.2011. u 10:10 - pre 152 meseci
Zato što će sve što uključuje "upit ka bazi svaki sekund" zakucati pre ili kasnije. Zato se uvek između baze i demona postavlja neki red u koji se podaci povuku svaki minut ili ređe. Čak ni tada, ništa se ne izračunava svake sekunde već samo po bitnom događaju kako je već u temi više puta rečeno, i kako si i ti naveo.

Što se resursa tiče, opet imaš račun ono što je bilo + ostvareno u proteklih n sati po formuli toliko/min. Kada dođe do nadogradnje, ostvareno se doda na ono što je bilo i udri dalje. Jednom dnevno se takođe sav račun zapiše kako se ne bi stalno računalo.
http://sr.libreoffice.org — slobodan kancelarijski paket, obrada teksta, tablice,
prezentacije, legalno bez troškova licenciranja
 
0

valjan
Janko Valencik
Software Deployer
Schneider Electric
Novi Sad

Član broj: 158605
Poruke: 3531
*.dynamic.sbb.rs.



+553 Profil

icon Re: Travian - Kako oni to rade?07.10.2011. u 11:21 - pre 152 meseci
Iako ne izgleda tako, igra ovog tipa je u stvari jedan specijalizovani knjigovodstveni program. :-) Sve sto treba da uradis je da samo evidentiras stanja u "magacinu", belezis promene, i obracunavas iznose na dan dospeca :-) Kad krenes da posmatras igru na taj nacin, mnogo toga postaje lako :-) Sve ostalo je sminka...
 
0

cyBerManIA
I ovo T ono
Space

Član broj: 25195
Poruke: 698
*.exe-net.net.

Sajt: www.facebook.com/cyberman..


+263 Profil

icon Re: Travian - Kako oni to rade?07.10.2011. u 14:17 - pre 152 meseci
Gorane mislio sam na pristizanje informacija u realnom vremenu i sortiranje pred izvrsenje kao sto sam napisao, po LILO (last in last out) principu.
Tipa, posaljem zahtev za izgradnju necega, npr radnika. Primi je neki "sorter" i ubaci me u red za cekanje. Ispred mene su 1000 drugih radnji. Docekam svoj red i sorter je prosledi daemonu na izvrsenje. Po meni mnogo elegantnije resenje od recimo crona koji ce u trenutku izbaciti npr 60 000 zahteva i doci do zagusenja dok ne odradi sve to, a onda ukoliko zavrsi ranije da kulira nezaposlen do sledeceg zagusenja.
 
0

ColdKeyboard
Sasa Karanovic
Hardware and Firmware Engineer
Toronto, Canada

Član broj: 31924
Poruke: 868
*.dynamic.sbb.rs.

Jabber: ColdKeyboard
Sajt: www.SasaKaranovic.com


+11 Profil

icon Re: Travian - Kako oni to rade?07.10.2011. u 15:59 - pre 152 meseci
Princip sa obradom i upisivanjem informacije onoga trenutka kada korisnik izda naredbu za napad i onda potom preracunavanje
svakog puta kada se nesto novo desi je po mom misljenju najbolji i najelegantniji. Dakle kad se nesto desi, izracunaj, upisi u bazu i miruj
dok se nesto novo ne dogodi.

Cronjob nije nikakvo rjesenje osim za recimo da pokrene query da svim igracima doda resurse koje zaradjuju po minuti ili recimo
da u tacno odredjenom trenutku osvjezi statistike.
 
0

matijalukic

Član broj: 242387
Poruke: 80
*.ADSL.neobee.net.

Sajt: mltutorijali.com


+8 Profil

icon Re: Travian - Kako oni to rade?17.04.2012. u 15:09 - pre 146 meseci
Imam pitanje isto u vezi browser igrica pa da ne otvaram novu temu pišem na ovoj.

Naime u Travianu imamo resurse koji imaju promenljivu brzinu dodavanja(u zavisnosti od nivoa građevina koje prave resurse). I sada, ako se korisnik uloguje drugi put kako da php obračuna koliko je resursa zaradio ako nije bio online između prvog i drugog prijavljivanja? Razmišljao sam na ovu temu pa sam smislio da prilikom prvog prijavljivanja upiše vreme prijavljivanja u bazu. Prilikom drugog prijavljivanja bi se oduzelo vreme prvog prijavljivanja od vremena prvog prijavljivanja. Pa bi se dobijeno vreme pomnožilo sa brzinom koja je bila u međuvremenu. Ne znam koliko je ovo rešenje ispravno jer na igrici Ikariam daju automatsko ažuriranje resursa tj. koriste Ajax. Ako bih koristio ajax kako bih odradio deo sa live ažuriranjem podataka o resursima?
 
0

FOXCONN1
marko markovic
nista
nista
banja luka

Član broj: 327275
Poruke: 1
31.223.159.*



Profil

icon Re: Travian - Kako oni to rade?15.01.2015. u 20:21 - pre 112 meseci
ima li ko link da mi da od skripti poz
 
0

[es] :: PHP :: Travian - Kako oni to rade?
(Zaključana tema (lock), by dakipro)
Strane: 1 2

[ Pregleda: 10077 | Odgovora: 26 ] > FB > Twit

Postavi temu

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.