EKKi: countdown

Beitrag lesen

Mahlzeit Lennart,

Ich arbeite grad an einem Browsergame, und da es ein Strategiespiel sein soll hat man da natürlich auch die Möglichkeit Gebäude zu bauen.

Natürlich.

Also wenn jetzt der Spieler zB. sagt "Gaus bauen" möchte ich einen Countdown einblenden lassen, der dem Spieler sagt wie lange das Gebäude zur Fertigstellung braucht.

Den blendest Du sinnvollerweise mit Javascript ein.

Soweit alles kein Problem, nur wenn das Gebäude sagen wir mal eine Stunde braucht dann wird der Spieler sicherlich nicht 1std lang seinen Browser offen lassen, und warten bis der Countdown durchgelaufen ist sodass, wenn er durchgelaufen ist, Einträge vorgenommen werden können wie die aktualisierte Stufe des Gebäudes.

Natürlich nicht - wieso sollte er auch.

Das gleiche Problem habe ich auch bei den Ressourcen. Nehmen wir mal an der Spieler hat jetzt eine Miene ausbauen lassen.

Ich persönlich würde ja eher meine Mine ausbauen lassen als meine Miene - so ganz ohne Mimik sähe ich sicherlich komisch aus ... aber weiter im Text:

Wenn er jetzt den Browser schließt müssen die Arbeiter in seiner Miene trotzdem weiter arbeiten, und das durch den Ausbau mit mehr Produktivität.

Natürlich. Wenn Du's richtig machst, tun sie das ja auch.

Also zusammengefasst wäre meine Frage wie ich solche Sachen wie das Sammeln von Ressourcen und das Fertigstellen von Gebäuden ablaufen lassen kann ohne das der Spieler durch seine "Anwesenheit" das Script ausführen lässt.

Der Name dieses Spielgenres täuscht: auch wenn sie "Browsergame" heißen, läuft doch nichts vom eigentlichen Spiel im Browser ab - sondern auf dem Webserver. Der Browser bietet nur die Bedienoberfläche. Wenn der Spieler also ein neues Gebäude "bauen" will, wird dem Server nur gesagt, dass er ein neues Gebäudeobjekt kreieren soll. Wenn die Bauzeit > 0 ist, muss der Server entsprechend festlegen, ab wann das Gebäude einsatzbereit ist. Der Browser kann lediglich "Snapshots" des derzeitigen Zustands anzeigen, wobei dann die restliche Bauzeit durch Fertigstellungsdatum - aktuelles Datum errechnet und angezeigt werden kann (ggf. dann natürlich mit einem entsprechenden Javascript-Countdown).

Mach Dich mit der grundlegenden Funktionsweise von "Browsergames" vertraut, bevor Du anfängst, viel Zeit in die Entwicklung eines solchen zu stecken (wie sinnlos das auch immer sein mag) - ansonsten wirst Du NIE fertig.

MfG,
EKKi

--
sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|