Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Allegro Multiplayer

Ostatnio zmodyfikowano 2013-02-23 22:44
Autor Wiadomość
wiktor16s
Temat założony przez niniejszego użytkownika
Allegro Multiplayer
» 2013-02-22 23:32:59
Witam.

Od jakiegoś czasu zastanawia mnie, czy można zrobić multiplayer do allegro.

To miało by wyglądać mniej więcej tak:  Client1>>>wysyła_pozycje_x_y_bitmapy>>>Server>>>wysyła_pozycje_x_y_bitmapy>>>Client2
i na odwrót. Czyli jedna osoba tworzy serwer i włącza client, druga osoba włącza client, Obydwoje łączą się do servera i wymieniają się zmiennymi x,y.

Tyle w teorii :D Teraz jak to zrobić? ;>  
P-76760
mactec
» 2013-02-23 10:39:19
P-76764
RazzorFlame
» 2013-02-23 11:29:19
Ja ci powiem tak wiktor16s: Tak nie działa zasada Serwer-Client : Client-Serwer. Najczęściej w grach jest tak:
SERWER>>Sprawdz czy nowi gracze nie doszli>>Wyślij dane wszystkich graczy>>Odbierz komende od Clienta>>Wykonaj Obliczenia
Za to client:
CLIENT>>Odbierz dane od serwera>>Wyslij odpowiednią komende akcji>>Wyswietlaj/Odtwarzaj odpowiednie dane
To tak z grubsza wygląda.
Komenda akcji to np. string. Jeśli np. gracz wcisnal strzałkę w górę to ta komenda może mieć zawartość "CMD_PLAYER_GO_UP". Dlatego żeby client nie obliczał np. nowej pozycji bo to można bardzo łatwo zhakować (np. podmienić Clienta na fałszywego). Teraz trzeba nauczyć się WinSock bo bez tego ani rusz. Bardzo łatwo przenieść ten kod na linuksa (???Podmienić nagłówki???)
P-76770
wiktor16s
Temat założony przez niniejszego użytkownika
» 2013-02-23 12:12:18
To mam jeszcze takie pytanie: W jaki sposób mogę połączyć 2 biblioteki. Np WinSock i Allegro. Po prostu je zalinkować?
P-76774
mactec
» 2013-02-23 13:10:37
Tak, to nic trudnego, wstawiasz nagłówki linkujesz i inicjujesz samego Winscoka. Ale najpierw lepiej samego winsocka poćwicz a potem zabieraj się do łączenia.  
P-76778
wiktor16s
Temat założony przez niniejszego użytkownika
» 2013-02-23 22:44:25
Dobra, zaczynam naukę :) dzięki za informacje, temat do zamknięcia.
P-76859
« 1 »
  Strona 1 z 1