Archief - Q: Resources bijhouden in browsergames

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Cakeman

Legacy Member
Ik speel de laatste nogal wat browsergames, waaronder Travian en OGame.
Bij allebei de games krijg je per uur een aantal resources binnen.
Zo kan je bij Travian bijvoorbeeld elk uur 250 hout, 360 klei en 257 metaal binnen krijgen.

Wanneer je nu na vijf minuten ergens klikt, dan zie je dat de resources van 5 minuten er al zijn bijgekomen. Elke seconde wordt er 1/3600ste van je uuropbrengst bijgeteld.

Nu vraag ik mij af hoe zoiets gedaan wordt...

Crontabs lijkt me onwaarschijnlijk.
Elke keer je een pagina oproept worden je resources gerefresht? Misschien... maar het is zo dat wanneer een tegenstander je aanvalt om resources te stelen, hij ook een juist quota van jou moet weten.

Wordt er dan elke keer jij een pagina oproept of dat een tegenstander een resourcebased action op je uitvoert een resource update gedaan?

Of zou dat nog op andere manieren gebeuren?

WHiSPy

Legacy Member
Ik vermoed dat dat 'n combinatie is van 'n crontab (om 't uur) en 'n klein berekeningske van de geupdate voorraden. (elke keer de pagina wordt opgevraagd) Nu is dat niet zo moeilijk om te ontwikkelen, maar ik zou 't eerlijk gezegd afraden, aangezien 't een systeem is dat tot veel klachten kan leiden.

BertG

Legacy Member
dat valt natuurlijk te bezien welke technologie er achter zit.
Als dat een java (j2ee) of .net (asp.net) of eender welke andere web-"applicatie" technologie achter zit, dan kan dat gedrag gewoon geprogrammeerd zitten in de businees logic. Deze staat namelijk los van de requests die gebeuren.

Cakeman

Legacy Member
BertG zei:
dat valt natuurlijk te bezien welke technologie er achter zit.
Als dat een java (j2ee) of .net (asp.net) of eender welke andere web-"applicatie" technologie achter zit, dan kan dat gedrag gewoon geprogrammeerd zitten in de businees logic. Deze staat namelijk los van de requests die gebeuren.
Travian en OGame zijn beide in PHP gemaakt.

Edit: of bedoel je dat er naast heel de game engine nog een aparte 'applicatie' draait die de resources beheert?

Boddah

Legacy Member
mss wordt bij elke pageload gekeken naar de tijd en in het geval dat het uur eindigt op '00' (zoals 12.00), worden de resources bijgegeven?
of in het geval je zelf niet online bent, wordt er gekeken naar de tijd van je laatste login, en de resources worden dan met het verschil in uren bijgeven of zo (zodat een tegenstander ook al je resources kan zien).

in ieder geval denk ik niet dat de server om het uur steeds een volledige update gaat uitvoeren voor alle spelers, want dat zou op den duur wel een tijd duren als er veel spelers zijn.

Ramm

Legacy Member
Volgens mij wordt gewoon bijgehouden wanneer de laatste update was van de resources. Ieder uur is er een cronjob die berekent (huidige tijd - laatste update) * aantal. Bij elke raadpleging van uw resources vindt dezelfde update plaats zodat je het gevoel hebt dat het ct. wordt geupdate

BertG

Legacy Member
Cakeman zei:
Travian en OGame zijn beide in PHP gemaakt.

Edit: of bedoel je dat er naast heel de game engine nog een aparte 'applicatie' draait die de resources beheert?

dat kan idd ook. Ik ken zelf een site die een apparte server heeft ontwikkelt voor z'n site.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan