Skocz do zawartości

Nowa funkcja do generowania unikalnego identyfikatora

Opublikowano

Cześć,

 

Chciałbym podzielić się z Wami zmianami, które wprowadziłem w funkcji Create, odpowiedzialnej za tworzenie nowych postaci.

 

Opis zmian:

Wyodrębnienie Generowania UID

W poprzedniej wersji funkcji Create, generowanie UID odbywało się przez funkcję GetCRC32, która była podatna na kolizje. Zamiast tego, zdecydowałem się na wykorzystanie identyfikatorów UUID.

UUID (Universally Unique Identifier) to unikalny identyfikator generowany losowo. Jest on znacznie mniej podatny na kolizje niż zwykły ciąg znaków CRC32.

 

Zalety korzystania z UUID

  • Unikalną identyfikację postaci/potwora pozostaje stały niezależnie od tłumaczenia nazw potworów na różne języki.
  •  UUID pozostaje niezmieniony, nawet jeśli format nazwy potworów ulegnie zmianie (np. dodanie/usunięcie spacji).

Zaktualizowana klasa VID

Klasa VID teraz przechowuje identyfikator UUID zamiast CRC32.

Identyfikatory CRC32 są generowane na podstawie nazwy postaci są one podatne na konflikty, jeśli nazwy postaci są podobne. Identyfikatory UUID są generowane losowo i są zawsze unikalne.

 

Aktualizacja typów dla argumentu:

const char * c_pszName ➡️ std::string_view displayName

 

Wymagane:

Minimalny standard: C++17 

 

 

Implementacja:

📂 Lokalizacja pliku: 'game -> char.cpp'

 

🔍 Szukaj
🔐 Ukryta Treść 🔐

 

➕ Dodaj wyżej nową funkcję:

🔐 Ukryta Treść 🔐

 

🔍 Szukaj

🔐 Ukryta Treść 🔐

 

♻️ Zamień

🔐 Ukryta Treść 🔐

 

 

📂 Lokalizacja pliku: 'game -> char.h'

 

🔍 Szukaj

🔐 Ukryta Treść 🔐

 

➕ Dodaj wyżej nową funkcję:

🔐 Ukryta Treść 🔐

 

🔍 Szukaj

🔐 Ukryta Treść 🔐

 

♻️ Zamień

🔐 Ukryta Treść 🔐

 

 

 📂 Lokalizacja pliku: 'game -> vid.h'

 

🔍 Szukaj

🔐 Ukryta Treść 🔐

 

♻️ Zamień

🔐 Ukryta Treść 🔐

 

🔍 Szukaj

🔐 Ukryta Treść 🔐

 

♻️ Zamień

🔐 Ukryta Treść 🔐

 

🔍 Szukaj

🔐 Ukryta Treść 🔐

 

♻️ Zamień

🔐 Ukryta Treść 🔐

 

🔍 Szukaj

🔐 Ukryta Treść 🔐

 

♻️ Zamień

🔐 Ukryta Treść 🔐

 

🔍 Szukaj

🔐 Ukryta Treść 🔐

 

♻️ Zamień

🔐 Ukryta Treść 🔐

 

🔍 Szukaj

🔐 Ukryta Treść 🔐

 

♻️ Zamień

🔐 Ukryta Treść 🔐

 

🔍 Szukaj

🔐 Ukryta Treść 🔐

 

♻️ Zamień

🔐 Ukryta Treść 🔐

 

 

 📂 Lokalizacja pliku: 'game -> stdx.h'

 

  Dodaj

🔐 Ukryta Treść 🔐

Featured Replies

Opublikowano

Dziękować szefito!

Opublikowano

dziękówa

  • 3 tygodnie później...
Opublikowano

Jest powód dla którego nie działa mi limiter ;D

Opublikowano
  • Autor

Opublikuj jakie masz problemy postaramy się pomóc. 

Opublikowano

dzięki

  • 2 miesiące temu...
Opublikowano
  • Premium

dziekuje

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...