Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] jak to ugryźć, Kilka pytań
-Kloc-
post
Post #1





Goście







Witam.
posłużę się tutaj przykładem z gry menelgame.pl. W oto tej grze mogę szkolić i walczyć swoją postacią i tu będzie moje pytanie.

Gracz 1 ustawia szkolenie, które trwa 1 dzień ale on nie wchodzi przez 3 dni na swoje konto lecz punkty i jego moc się zwiększa bo szkolenie się zaskoczyło.
Co wywołało skrypt, który to wykonał ?, domyślam się że cron, ale takie coś może być nie optymalne gdy grą milion graczy a ich szkolenia kończą się praktycznie co sekundę?

Jak czegoś takiego dokonać w najłatwiejszy sposób i najbardziej wydajny?

To samo jest z walkami graczy, widzisz że ktoś cię atakuje i możesz jeszcze się ulepszyć by nie przegrać walki.

Jak to zrobić, aby nie skatować bazy?

Pozdrawiam.
Go to the top of the page
+Quote Post
SaMi
post
Post #2





Grupa: Zarejestrowani
Postów: 173
Pomógł: 14
Dołączył: 27.03.2004
Skąd: Białystok

Ostrzeżenie: (0%)
-----


W bazie zapisujesz datę do kiedy trwa szkolenie, potem tylko raz dziennie porównujesz datę zadeklarowaną w bazie z aktualną, jeśli ta w bazie jest większa(późniejsza) dodajesz punkty jesli nie to nie. skrypt wywołujesz np z crona.


--------------------
Zapraszam na spływy kajakowe rzekami podlasia www.splywy-kajakiem.pl
Go to the top of the page
+Quote Post
-Kloc-
post
Post #3





Goście







No ok, a jeśli gracz jest online to sam sobie wywołuje te skrypty?

A jak z tymi walkami?
gracz1 ma siły 80 gracz2 ma siły 90.
Gracz1 widzi, że jest atakowany w połowie pozostałego czasu i ulepsza się o 15 czyli ma 95 i to on wygrywa, więc skrypt musi wykonać się po upływie tego czasu (całej walki).
Może jest tak że wysyłający walkę ustawia crona na czas zakończenia walki?

Może ktoś pomóc mi jak włączyć tego crona?

Go to the top of the page
+Quote Post
gitbejbe
post
Post #4





Grupa: Zarejestrowani
Postów: 516
Pomógł: 63
Dołączył: 27.08.2012

Ostrzeżenie: (0%)
-----


mozna tylko gdybać, ale bardzo wątpię, że obsługa tych akcji to CRON.

Do podglądu na żywo tego co się dzieje wystarczy ajax. Jeśli ktoś akurat gra to dzięki ajax'owi widzi co sie w danym momencie dzieje. Jeśli się nie gra, to skrypt wykona się dopiero po uruchomieniu strony. W sumie to chyba jedyna najprostsza droga i na pewno da się za pomocą tego to osiągnąć. Wiem, że duże serwisy często wspomagają się autorskimi programami działającymi w tle, ale na ich temat nic więcej nie potrafię powiedzieć, bo nigdy nie korzystałem z takich rozwiązań.
Go to the top of the page
+Quote Post
aniolekx
post
Post #5





Grupa: Zarejestrowani
Postów: 340
Pomógł: 46
Dołączył: 31.07.2009
Skąd: A

Ostrzeżenie: (0%)
-----


jeszcze nie widziałem gry na takiej zasadzie gdzie mógłbym podejrzeć dokładne statystki przeciwnika.
raczej polega to na tym ze wybieram przeciwnika z odpowiedniej pozycji w tabeli i wtedy jak ta postać została wyzwana do walki, mogę uruchomić skrypt który uaktualni wszystkie statsy.
Go to the top of the page
+Quote Post
!*!
post
Post #6





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


http://forum.php.pl/index.php?showtopic=225732


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 06:42