Marcin Mirończuk

Marcin Mirończuk Informatyk -
programista,
projektant systemów
informacyjnych

Temat: Gra w phpie...

Witam,
czy moze mieliscie okazje pisac gre w PHPie, tylko taka bardziej skomplikowana. Przez skomplikowanie rozumiem:
- zastosowanie modelu sieciowego (multi player)
- zastosowanie "skomplikowanych" modeli z analizy matematycznej czy tez fizyki, badanie w rozgrywce dosc znacznej przestrzeni stanu zmiennych etc.
Tak po szybkiej analizie zdroworozsadkowej wychodzi mi ze do gier turowych to w polaczeniu z ajaxem da sie cos ciekawego nawet stworzyc. W przypadku jednak gier o `ciaglym` przebiegu wybor PHPa jest nietrafionym pomyslem, ze wzgledu chociazby na mozliwosc przetwarzania requestow, transfer danych, opoznienia etc.

Moze posiadacie jakies ciekawe odnosniki czy ksiazki na ten temat godne zainteresowania ;). Jesli tak to moze podzielicie sie uwagami, opiniami, albo i wstepnymi wlasnymi przemysleniami na przedstawiony temat...

Pozdrawiam

konto usunięte

Temat: Gra w phpie...

samobójstwo jak dla mnie ;-)

konto usunięte

Temat: Gra w phpie...

Michał Wujas:
samobójstwo jak dla mnie ;-)
Dlaczego? :-)

Marcinie: może, jeśli chcesz silnie wykorzystywać Ajaksa, to może GWT wchodzi w grę?

konto usunięte

Temat: Gra w phpie...

Patrycjusz Omiotek:
Michał Wujas:
samobójstwo jak dla mnie ;-)

Marcinie: może, jeśli chcesz silnie wykorzystywać Ajaksa, to może GWT wchodzi w grę?

GWT - masochizm

Pod gry java + swing (jako applet) lub flash (ale chyba słabiej w multiplayu).

konto usunięte

Temat: Gra w phpie...

Michał Wujas:
GWT - masochizm
Dlaczego? Rzucasz opinie, ale nie znam uzasadnienia ;-)

konto usunięte

Temat: Gra w phpie...

Patrycjusz Omiotek:
Michał Wujas:
GWT - masochizm
Dlaczego? Rzucasz opinie, ale nie znam uzasadnienia ;-)

Jak widzę połączenie gry, fizyka, wątki, synchronizacja i javascript w jakiejkolwiek postaci to mi intuicja podpowiada że będzie źle ;-)

konto usunięte

Temat: Gra w phpie...

Szczerze mówiąc, to nie widziałem jeszcze gry w GWT :P ale też nie specjalnie szukałem ;-) Można np. w GWT wykonać interface gry, obsługę żądań do serwera oraz przetwarzanie i prezentację pobranych danych. Całość skompiluje się do czystego html,css i js. Natomiast jako backend można użyć jakąś lekką (o ile założenia gry na to pozwolą :P) aplikację napisaną w PHP, która dostarczałaby tylko potrzebnych danych w zależności od żądania... ale tylko tak gdybam - tworzenie gier przeglądarkowych jakoś mnie nie pociąga ;-)Patrycjusz Omiotek edytował(a) ten post dnia 14.09.09 o godzinie 23:09

konto usunięte

Temat: Gra w phpie...

i wyjdzie prawie HalfLife :)
Artur Świerc

Artur Świerc Programista PHP/Java

Temat: Gra w phpie...

wszystko zależy od tego, jak bardzo dynamiczna ma być gra, którą chcemy napisać. Fakt, że teraz ajax wiele ułatwia, ale pisanie fps'a pod JS mija się z celem :)
Marcin Mirończuk

Marcin Mirończuk Informatyk -
programista,
projektant systemów
informacyjnych

Temat: Gra w phpie...

Chyba bardziej sensowne zdawaloby sie napisanie gry turowej strategicznej tj. user (userzy) wykonuja ruch po czym serwerek (aplikacja) przetwarza dane, buduje model(e) w oparciu o algorytmy oraz dane i odsyla wyniki analiz i ustalone parametry na nastepna ture.
Raczej o plynne gdy typu HalfLife nie chodzi chodz wolfenstei wyglada wspaniale ;) az lezka sie kreci w oku :)

konto usunięte

Temat: Gra w phpie...

Michał Wujas:
Patrycjusz Omiotek:
Michał Wujas:
GWT - masochizm
Dlaczego? Rzucasz opinie, ale nie znam uzasadnienia ;-)

Jak widzę połączenie gry, fizyka, wątki, synchronizacja i javascript w jakiejkolwiek postaci to mi intuicja podpowiada że będzie źle ;-)

Ta wypowiedź przypomniała mi że faktycznie coś takiego jest:

http://box2d-js.sourceforge.net/index2.html
http://box2dflash.sourceforge.net/

Polecam dema do tego pierwszego (right-click) - wyczesane jak na przeglądarkę...Piotr Likus edytował(a) ten post dnia 15.09.09 o godzinie 14:38
Artur Świerc

Artur Świerc Programista PHP/Java

Temat: Gra w phpie...

Piotr Likus:

Ta wypowiedź przypomniała mi że faktycznie coś takiego jest:

http://box2d-js.sourceforge.net/index2.html
http://box2dflash.sourceforge.net/

Polecam dema do tego pierwszego (right-click) - wyczesane jak na przeglądarkę...Piotr Likus edytował(a) ten post dnia 15.09.09 o godzinie 14:38


Imponujące, jednak z drugiej strony, jest to sztuka dla sztuki.
Nie chcę myśleć ile kodu trzeba było napisać i ile czasu ten projekt pochłonął. Pisząc to w innym języku, chociażby w ActionScripcie, byłoby znacznie szybciej i łatwiej.
Marcin B.

Marcin B. Student, Wojskowa
Akademia Techniczna
w Warszawie

Temat: Gra w phpie...

Napisalem gre przyblizona do travian.pl

moje produkcje to

http://www.streetofrace.com i http://badlandwars.comMarcin Braniewski edytował(a) ten post dnia 11.02.10 o godzinie 22:29
Marcin Mirończuk

Marcin Mirończuk Informatyk -
programista,
projektant systemów
informacyjnych

Temat: Gra w phpie...

Marcin Braniewski:
Napisalem gre przyblizona do travian.pl

Z kad brales info tj. mozesz polecic jakies ksiazki, miejsca z kodami z ktorych mozna czerpac inspiracje ;)
Marcin B.

Marcin B. Student, Wojskowa
Akademia Techniczna
w Warszawie

Temat: Gra w phpie...

Nie znam ksiazek w ktorych ucza pisac gry internetowe :) Znasz sie na php, mysql, xhtml, ajax, js, css i spokojnie napiszesz gre godna polecenia.
To jest poprosrtu web2.0

konto usunięte

Temat: Gra w phpie...

Gry jak travian to przecież nic innego jak parę fajnych algorytmów, system turowy, parę skryptów odpalanych w cronie.. To tak na prawdę nie potrzebuje wielkiej mocy obliczeniowej.

Nasza firma też pisze gry MMO. Jesteśmy też współwłaścicielem wspomnianego wcześniej streetofrace, ale to chyba nie o ten typ gry chodziło założycielowi wątku.

Gry czasu rzeczywistego, multiplayer. Jako frontend najlepiej sprawdza się flash, który komunikuje się z serwerem np. przez AMF i tutaj można wykorzystać PHP'a. Można, ale przy wysokim ruchu będzie trzeba będzie mieć własny serwer i to dość mocny, bo PHP jest strasznie pamięciożerny. Każdy proces łyknie parędziesiąt megsów i RAM znika w trybie błyskawicznym, a nie wydaje mi się, że każdego stać na serwer z minimum 32GB RAM. Do tego skrypty muszą być szybkie. Jeśli skrypty trafią na wąskie gardło (np. nieoptymalne zapytania do bazy) do gracze dostaną białą stronę albo wdzięczne info "maximum execution time exceeded" lub "Too many connections" od szacownego MySQLa.
Łukasz C.

Łukasz C. Senior Technical
Architect

Temat: Gra w phpie...

dla mnie gra z fizyka kojarzy sie wylacznie z c++ :p

konto usunięte

Temat: Gra w phpie...

Marcin Szczurek:
Gry czasu rzeczywistego, multiplayer. Jako frontend najlepiej sprawdza się flash, który komunikuje się z serwerem np. przez AMF i tutaj można wykorzystać PHP'a.

I to jest samobójstwo ;-)
Robienie cronem turówki z turami po 10 sekund...
Wykorzystywanie bazy danych jako przechowalni stanu dla php...
Śmieszna próba naśladowania architektury klient - serwer javy.

konto usunięte

Temat: Gra w phpie...

I to jest samobójstwo ;-)
Jak widać gry MMO w PHP śmigają sobie bardzo ładnie i mają multum graczy. Nie muszę chyba tłumaczyć dlaczego ŁATWIEJ napisać grę w PHP niż w Javie, choć ŁATWIEJ nie znaczy oczywiście LEPIEJ lub OPTYMALNIE. A gierek MMO w PHP jest pełno. Poczynając nawet od Traviana..
Robienie cronem turówki z turami po 10 sekund...
Znam aplikacje, które odpalają crona co sekundę. Przeliczenie czegoś w jednym skrypcie odpalanym co 10 sekund czemu ma być samobójstwem? Jeden proces opalany co 10 sekund (albo rzadziej, jeśli jest jakieś semaforowanie) to samobójstwo? Why?
Wykorzystywanie bazy danych jako przechowalni stanu dla php...
Oprócz DB może być shm lub memcache, ale to nie o to chodzi. Tanio, dostępnie i działa i obsługuje. I nikogo nie zabija, "ino trza umieć pisać w pehapie."
Śmieszna próba naśladowania architektury klient - serwer javy.
Jak się nie ma co się lubi to się lubi co się ma. Koszt tani, a efekty są wystarczające.

Btw: Java na gierkę turową to jak wytaczanie ciężkich dział przeciwko piechocie złożonej z dziesięciu żołnierzy...



Wyślij zaproszenie do