/ / tworzenie bazy danych do starcia klanów (lub podobnej gry) [zamknięte] - projektowanie baz danych

tworzenie bazy danych dla zderzeń klanów (lub podobnej gry) [zamknięty] - projektowanie bazy danych

Nadal jestem całkiem nowy w grze z bazami danych i chciałem stworzyć bazę danych śledzenia dla kilku gier, takich jak zderzenie klanów.

Nie jestem pewien, jak ustrukturyzować niektóre tabele.

Oto wynik końcowy: Wybierz użytkownika Poziomy budynków wprowadzane przez użytkownika. jest to przechowywane w tabeli.

trudną częścią (przynajmniej dla mnie) jest ustalenie, jakie budynki i jakie poziomy są dostępne na podstawie aktualnych poziomów użytkownika.

Przykład: Obecny poziom użytkownika to TH7, poziom laboratoryjny 5 i fabryka zaklęć 3

Czary dostępne w th7 to A B C. Ale na poziomie fabryki 3 tylko czary to A B a wraz z Laboratorium Zaklęcie A może osiągnąć maksymalnie 3, a Zaklęcie B może osiągnąć maksymalnie 2 poziom.

Mam na myśli 1 gigantyczny stół wszystkich permutacji wszystkich budynków i warunków wstępnych. Ale to nie wydaje się słuszne. Czy to jest zbyt uproszczone?

Pamiętaj, że istnieje wiele tego samego rodzaju budynków, tj. 5 wież łuczniczych, 5 armat itp.

moje zapytania byłyby jakoś Uzyskaj aktualne poziomy gracza dla wymagań wstępnych sprawdź cały budynek dostępny dla bieżącego poziomu TH. określ, jakich budynków i poziomów brakuje. Pokaż je.

jest już ładna strona internetowa (clasofclans-tracker), ale chcę ją odtworzyć na własny użytek i dostosować do innych gier. Więcej na ćwiczenie edukacyjne niż cokolwiek innego.

Odpowiedzi:

1 dla odpowiedzi № 1

Nie znam Clash of Clans, ale mogę pracować z twoim przykładem.

Obecny poziom użytkownika to TH7, poziom laboratoryjny 5 i fabryka zaklęć 3

Czary dostępne w TH7 to A B C. Ale na poziomie fabryki 3 tylko czary to A B, a w laboratorium Czary A mogą osiągnąć maksymalnie 3, a Czary B mogą osiągnąć maksymalnie poziom 2.

Najpierw utworzymy tabele obiektów. W twoim przykładzie nadałeś nazwy Użytkownik, Laboratorium, Zaklęcie i Fabryka. Ogólnie nazwy tabel są pojedyncze.

User
----
User ID
User Name
User Game Name
User Password
User Level
...

Laboratory
----------
Laboratory ID
Laboratory Name
...

Spell
-----
Spell ID
Spell Name
User Level Available
Factory Level Available
...

Factory
-------
Factory ID
Factory Name
...

Stworzyliśmy tabelę dla każdego obiektu. Kluczem podstawowym dla tych tabel jest automatycznie generowana liczba całkowita, którą nazywamy identyfikatorem.

Teraz te tabele same w sobie nie są aż tak przydatne. Musimy stworzyć tabele połączeń, które kojarzą użytkownika z innymi komponentami gry.

Pierwszą tabelą połączeń, którą omówimy, jest tabela UserLaboratory.

UserLaboratory
--------------
User ID
Laboratory ID
Laboratory Level

Ta tabela kojarzy (łączy) użytkownika zlaboratorium. Poziom laboratoryjny jest ważny dla konkretnego użytkownika i określonego laboratorium. Jak można się domyślać, klucz podstawowy tej tabeli to (identyfikator użytkownika, identyfikator laboratorium).

W twoim przykładzie poziom laboratorium to 5.

Następną tabelą połączeń, którą omówimy, jest tabela UserFactory.

UserFactory
-----------
User ID
Factory ID
Factory Level

Ta tabela jest prawie identyczna z tabelą UserLaboratory, z tą różnicą, że dotyczy fabryk.

W twoim przykładzie poziom fabryki to 3.

Myślę, że w tym momencie można zobaczyć, jak utworzyć pozostałe tabele połączeń.

Jest to proces tworzenia dowolnej bazy danych.

  • Wyodrębnij wszystkie tabele obiektów.
  • Upewnij się, że tabele obiektów definiują jeden i tylko jeden obiekt.
  • Utwórz wszystkie tabele połączeń.

Powodzenia w staraniach bazy danych.