Jak napisać grę z trybem multiplayer?

0

Witam
Nie wiem czy swój wątek zakładam w dobrym dziale. Jeśli w złym to przepraszam, ale nie wiedziałem gdzie go utworzyć.
Mam napisaną przez siebie w javie grę kółko i krzyżyk. Chce do niej dodać opcję multiplayer.
Chciałbym zrobić coś takiego np. Że tam gdzie jest server jest jeden gracz i oczekuje on na oddanie ruchu przez drugiego gracza(klienta).
Nie wiem jak sie za to zabrać. Czy mógłbym dostać jakieś podpowiedzi?

0

Hmm, Jeżeli chodzi o c++, to oczywiście podstawowa bibloteka do przesyłania danych protokołami TCP/IP lub UDP to winsock, tutaj wszystko opisane: http://cpp0x.pl/kursy/Kurs-WinSock-C++/Tlo-Klient-Serwer/276
nie zapomnij o pliku libws2_32.a dodać do linkera, no i ważna sprawa polecenie recv() do odbierania danych, jak pamiętam zapycha cały wątek, i czeka dopuki nie dostanie jakiejś informacji od klienta/serwera, więc trzeba to po prostu wrzucić na osobny wątek.
jest też wiele innych bibliotek do przesyłania danych między klientem/serwerem jak np. RakNet który polecam (http://www.raknet.com/raknet/downloads/RakNet_PC-4.0802.zip), w paczce cała biblioteka + masa przykładów zacznij sobie od Chat Example, na pewno ogarniesz, jak chcesz to moge ci przesłać przekompilowany plik libRakNet.a (gcc).

0

Tyle, że tutaj chodzi o jave

0

Właśnie czytałem troche o tym i wpadł mi do głowy pewien pomysł jak to wkomponować w moja grę, ale nie wiem czy dobrze myśle.

Myślałem nad tym aby do gry dodać 2 klasy. Jedna to Server druga to klient. Gracz który by chciał postawić serwer klikał by w np w przycisk "Załóż gre Online" która by uruchamiała klase serwer a gracz dołączający do gry klikał by w przycisk "Dołącz do gry" następnie by wpisywał ip serwera i tak by się łączył.
Nie wiem czy tak się to robi w javie czy to dobry sposób.

0

Może po prostu zrób jednego gracza jako serwer którego najpierw uruchamiasz a potem uruchamiasz gracza który łączy się automatycznie z serwerem, bez żadnego wpisywania ip. Moim zdaniem najprostsze rozwiązanie.

0

Albo napisz calkiem osobna aplikacje bedaca serwerem do ktorego lacza sie klienci

1 użytkowników online, w tym zalogowanych: 0, gości: 1