Pomysły na komunikację graczy w grze w Szachy

0

Witam chciałbym zapytac czy macie jakis pomysł jakie są możliwosci zapewnienia komunikacji pomiedzy dwoma graczami w szachy aktualnie mysle nad
-zwykly klient serwer i przesyłąnie obiektow
-uzycie stockfish'a jako drugiego gracza i granie przeciw CPU

Jesli macie jakies pomysły to chętnie bym posłuchał.

https://github.com/Prank866/Szachy2

1

Możesz jeszcze zrobić granie z innymi bez serwera ale P2P, czyli np. dwa komputery w sieci lokalnej

0

klient-serwer to chyba standardowe rozwiązanie i tego bym się trzymał, sockety zupełnie wystarczą
Chyba, że chcesz zrobić coś bardzo, bardzo po**** to możesz użyć Kafki i wysyłać ruchy w szyfrowanym Avro xD

i 2 drobne sprawy, kod trzymaj w src/main a testy w src/test oraz nie commituj na gita out/production, dodaj tą ścieżkę do .gitignore

0

Ogólnie to jeśli o szachy chodzi (czy wszystkie prawdziwie turowe gry) to opcji jest multum, pytanie tylko - co chcesz zrobić.

  1. Czyli pomysł zerowy, to połączenie bezpośrednie dwóch aplikacji, np. po socketach.
  2. Email - zaczyna się gra, gracz #1 robi ruch, apka #1 pod spodem wysyła maila, apka #2 w międzyczasie pinguje sobie skrzynkę o wiadomości, w końcu odbiera info, wykonuje ruch u siebie, gracz #2 widzi ruch, wykonuje go i tak dalej. Jest to ciągle architektura serwer-klient, tyle tylko, że serwer jest pocztowy. Wiem, że wydaje się karkołomne, ale tam gdzie nie da się utrzymywać połączenia będzie jak znalazł.
  3. Wspomniana Kafka - tak jak w pkt. 1, tylko, że zamieniasz serwer pocztowy na MQ.
  4. Dzielony udział dyskowy - aplikacje sprawdzają, czy pojawiły się pliki na udziale.
  5. I taka opcja trochę bardziej karkołomna - tj. serwer do grania w P2P. Tj. gracz #1 rejestruje się na serwerze, gracz #2 też, serwer ich matchuje, wtedy aplikacje łączą się bezpośrednio (tj. klient #1 łączy się z klientem #2).

Natomiast wszystko oczywiście zależy od ciebie i tego, jak bardzo chcesz się pobawić.

1

A chcesz, żeby możliwa była gra na 2 komputerach podłączonych do tej samej sieci, czy wymagasz, żeby możliwa była gra "przez Internet", bo to trochę wpływa na propozycje.

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