Online Game - Rohstoffe produzieren

stonk

Erfahrenes Mitglied
Tach zusammen!!

Ich bin momentan an einem kleinen Online Game am programmieren...
Man hat unter anderem verschiedene Gebäde, die Rohstoffe produzieren (z.B.: Holzfäller).
Sprich; ein Script zählt einen Eintrag in einer Tabelle immer etwas hoch...
Nun weiss ich aber nicht ganz genau wie ich dies am besten und vorallem möglichst ressourcen schonend machen kann....
Ich dachte an Cronjobs... diesen müsste ich aber fasst jede minute laufen lassen, was ja ziemlich viel Leistung beansprucht...
Mit Javascript kenne ich mich leider nicht aus...:(
Natürlich sollte auch das "produzieren" noch weiterlaufen, wenn der user das Fenster schliesst... ;)

Wäre also sehr froh über irgendwelche ideen oder Tips!! :-)

Besten Dank schon im Voraus

gruss
stonk
 
also das müsstest du dann schon mit einem Chronjob machen!
aber sicher das das für den anfang nicht etwas groß ist?
 
naja, fit ist relativ... ;)
bin nicht der totale anfänger, bin aber auch nicht voll der pro!!
so etwas zwischendurch... :)
habe aber hier aber mehr nach schlauen ideen gesucht! :P
 
ich würde einfach noch ein Feld in die Tabelle machen 'last_ressource_update' und jedesmal wenn der User die Ressourcenübersicht aufruft prüfen wie lang das Update her ist und ggf dann eben die Ressourcen erhöhen.
 
Hm, dazu hab ich eine Frage... Kann der Server mehrere php-Anfragen gleichzeitig durchführen?
Weil dann besteht die Möglichkeit (theoretisch, bei vielen Usern), dass mehrfach gleichzeitig die "Resourcen-Hinzufüg-Funktion" aufgerufen wird...

Abhilfe wäre in dem Fall vielleicht sofort ein "working" in die Datenbank zu speichern, wenn die Funktion einmal aufgerufen wird, und dies bei den anderen zu überprüfen, und evtl. bei den anderen die Funktion abzubrechen (bzw. gar nicht zu starten).
 
ich würde einfach noch ein Feld in die Tabelle machen 'last_ressource_update' und jedesmal wenn der User die Ressourcenübersicht aufruft prüfen wie lang das Update her ist und ggf dann eben die Ressourcen erhöhen.
Du musst natürlich berücksichtigen, dass in der Zeit die Ressourcen-Produktion durch den Ausbau eines Gebäudes erhöht werden könnte. Da musst du errechnen wann das geschehen ist, also wie die Produktion vor dem Ausbau war und wie sie danach war und jeweils halt wie lange das war.

Du wirst im Rahmen deines Projektes wahrscheinlich noch auf viele Probleme stoßen...
...bei nem Online Game (Browsergame) ists halt nicht mit ein paar std. MySQL-Querys getan.

Aber es gibt ja viele Foren, die sich mit dem Thema Browsergame-Entwicklung beschäftigen:
- http://www.browsergames.net
- http://www.onlinegame-agency.de
- http://www.browsergames24.de
 
besten dank!!
sind tolle links!!
ja, ist alles in allem schon noch ziemlich kompliziert...!!
mache es nun mit einem last_update feld, und einem script dass immer die neuen rohstoffe dazurechnet, dass immer dann aufgerugen wird, wenn sich was ändert... (z.B.: user eingabe oder wenn gebäudebau fertig ist....)
vielen dank für eure hilfe!!
 
Zurück