Add resources over het uur verspreid

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jeffrey Barn

jeffrey Barn

29/12/2011 11:08:16
Quote Anchor link
Hey,

Ik heb een vraagje ik ben bezig met een browser game maar ik moet een script hebben.
Die resorces add zoals brons zoveel per uur net zoiets als travian.
Hoe zal ik dit kunnen maken?

MVG,
Jeffrey
Gewijzigd op 29/12/2011 11:08:31 door Jeffrey Barn
 
PHP hulp

PHP hulp

18/12/2024 03:06:23
 

29/12/2011 11:10:42
Quote Anchor link
Met ASP of php scripttaal kan je dat doen
 
Jeffrey Barn

jeffrey Barn

29/12/2011 11:11:16
Quote Anchor link
Ja maar hoe? :P
 
Jasper DS

Jasper DS

29/12/2011 11:13:31
Quote Anchor link
Je zet bij je brons wanneer er de laatste keer brons is toegevoegd, is dit nog geen uur geleden gebeurt dit niet. Is dit meer als een uur geleden tel je hoeveel uur precies en tel je het brons erbij. Een andere optie is een cron laten lopen maar dat zou ik niet doen.
Gewijzigd op 29/12/2011 11:14:00 door Jasper DS
 
Jeffrey Barn

jeffrey Barn

29/12/2011 11:14:19
Quote Anchor link
ja maar ik wil het verspreid over het uur hebben realtime zegmaar :P
Kan iemand hier een voorbeeld van even?
 
Frank WD

Frank WD

29/12/2011 11:15:15
Quote Anchor link
Als voorbeeld:

Scriptje maken die de volgende onderdelen heeft.
1. Gebruikers informatie ophalen, zoals ID, Level
2. Kijken hoeveel brons, enz.... de gebruiker er bij mag krijgen p/uur. Dit op basis van Level.
3. Het weg schijven van de onderdelen naar de database bij de betrefende gebruiker.
4. Dit zou je eventueel met een Cronjob elk uur kunnen aansturen. Cronjob moet wel door je hosting ondersteund worden. Maar na mijn weten is dat bij de meeste horsting al wel mogelijk.

Zo zou ik ongeveer te werk gaan. Niet dat ik ervaring heb met browser game's.
 
Jasper DS

Jasper DS

29/12/2011 11:16:56
Quote Anchor link
Ik zou green cronjob gebruiken, als je wil verspreiden over het uur moet je enkele opsplitsen wanneer de gebruiker online is, je laat een tellertje lopen en pas als de gebruikers grondstoffen gaat gebruiken tel je deze er effectief bij.
 
Jeffrey Barn

jeffrey Barn

29/12/2011 11:23:05
Quote Anchor link
Zou ik dit met een fomule kunnen oplossen bijv.
aantal per uur/aantal min in uur*timestamp??
Het moet trouwens ook gebeuren als de user offline is ;)
dus meschien timestamp now - timestamp laats geupdate?
Gewijzigd op 29/12/2011 11:24:53 door jeffrey Barn
 
Frank WD

Frank WD

29/12/2011 11:25:13
Quote Anchor link
Jasper,
Gaf een voorbeeld hoe ik het zou doen in de eerste positie.
Maar nu ik jou antwoord lees, denk ik idd dat dat de beste oplossing is.
Met een cronjob heb je elk uur een php script die loopt. Dit kan met 50,000 users nog wel eens wat zwaarde gaan lopen. En met jou manier heb je dat niet en ga je pas actie ondernemen als de gebruiker een onderdeel aanspreekt.

Deze gaan we overigens ff onthouden, want kan met veel andere dingen ook de beste oplossing zijn.
 
Jasper DS

Jasper DS

29/12/2011 11:26:49
Quote Anchor link
Jeffrey Barn op 29/12/2011 11:23:05:
Zou ik dit met een fomule kunnen oplossen bijv.
aantal per uur/aantal min in uur*timestamp??
Het moet trouwens ook gebeuren als de user offline is ;)
dus meschien timestamp now - timestamp laats geupdate?


je telt de grondstoffen er pas bij als de grondstoffen aangesproken worden, bijvoorbeeld als de user terug aanmeld of als een andere user grondstoffen steelt, ...
 
Jeffrey Barn

jeffrey Barn

29/12/2011 11:32:48
Quote Anchor link
even een mktime() werkt tog in seconden?

$query = $Mysqli->query("select * FROM resources WHERE user_id = '".$_SESSION['user_id']."'");
$res = mysqli_fetch_array($query);
$oldtime = $res['latupdate'];
$newtime = mktime();
echo $newtime - $oldtime;
$Mysqli->query("UPDATE resources SET latupdate= '".$newtime."' WHERE user_id = '".$_SESSION['user_id']."'");
zo ik heb dit nu hij update nog niet de resources maar kan dit beter?

Toevoeging op 29/12/2011 12:02:38:

?

Toevoeging op 29/12/2011 12:19:33:

Gefixt :D
Gewijzigd op 29/12/2011 11:42:02 door jeffrey Barn
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.