Jeżeli danych jest mało w sensie ilości połączeń to możesz użyć protokołu http, czyli w przeglądarce użyć na przykład funkcji fetch (fetch API JavaScript) i wysłać dane albo jako GET, czyli po prostu na jakiś adres do API, albo wysłać te dane metodą POST i wtedy można skorzystać z autoryzacji (np. gracz musi być zalogowany). Ta sama funkcja fetch odbierze odpowiedź serwera (potwierdzenie wykonania ruchu, błąd, itp) do przeglądarki. Po stronie serwera musi być API, czyli kod, który odbierze dane (z GET lub POST), sprawdzi czy klient jest uprawniony do wykonania ruchu, dokona zapisu w bazie danych i odeśle odpowiedź, najlepiej w formacie json, którą trzeba wyrenderować u klienta. Ogólnie to jest to podobne i trochę przypomina odbieranie danych z formularza. Ale przy kilku graczach klient (kod w przeglądarce) musi sam sprawdzać stan gry.
Jest też technologia websocket, ale nie znam się na tym.