Mamy dokument tekstowy z opisem gry oraz projekt. Na podstawie tych materiałów należy stworzyć schemat bazy danych oraz dokumentację dla REST API. Następnym krokiem będzie implementacja w Node.js.
Dokumentacja jest potrzebna przed implementacją, abyśmy mogli równolegle pracować nad front-endem
Użytkownik może:
- Zalogować się do gry, przy pierwszym logowaniu tworzony jest wpis w bazie danych, jeśli użytkownik przyszedł przez link polecający, to powinno to być uwzględnione
Unikalność użytkownika jest sprawdzana za pomocą telegram_user_id, telegram_username + powinien być generowany pewien hash, który pozwoli wykluczyć rejestrację poprzez ręczne wysyłanie żądań, na przykład za pomocą Postmana, po autoryzacji użytkownik otrzymuje token API, który jest przekazywany w nagłówku Bearer token we wszystkich pozostałych żądaniach.
- W grze zobaczyć dane z serwera
- swoje saldo, informacje, zapas paliwa, poziom itp. zgodnie z dokumentem - żądanie GET
- może przejść do sekcji z ulepszeniami, zobaczyć listę dostępnych i je kupić - żądanie GET, POST
- może przejść do sekcji z zadaniami, wykonać je i odebrać nagrodę - żądanie GET, POST
- może przejść do sekcji z polecającymi, tam informacje o systemie poleceń i liczba zaproszonych - żądanie GET
- Grać - sens gry polega na powtarzaniu tych samych czynności - przesunięcia po ekranie. Gracz przesuwa n-ilość razy, po czym następuje żądanie do serwera, które przekazuje ilość i bieżący znacznik czasu na serwer. Na serwerze następuje sprawdzenie/ochrona przed oszustwem oraz przyznanie zasobów za każde działanie zgodnie z poziomem. - żądanie POST.