W poprzednim artykule pisałem o zagadnieniu balansowania planszówek
i karcianek. Jednym z problemów z jakimi można się
spotkać jest duża liczba możliwych scenariuszy gry w pojedynczym
zestawie zasad. Do tego dochodzi zagwozdka wynikająca niewiele
mniejszej liczby wariantów reguł gry. Jeśli planujemy turę gry
składającą się z 2 etapów, to możliwe są 2 sposoby
ich ułożenia, jeśli etapów jest już 5, to można je ułożyć na
120 sposobów. Do tego każdy etap można doprecyzować na kilka
sposobów. Oczywistym jest, że dla gry mającej np. milion możliwych
wariantów zasad nie będziemy testować ich wszystkich nawet jeśli
planujemy szybką rozgrywkę do 5 minut.
Test składa się z
następujących faz:
-
Określenie założeń odnośnie trudności gry i czasu rozgrywki
-
Wybór 1. wariantu zasad – kierujemy się raczej intuicją, prawdopodobnie będą to dobre zasady, ale niestety nie najlepsze
-
Zagranie kilku partii z wybranym wariantem zasad
-
Ocena zestawu zasad
-
Jeśli konieczne – propozycja poprawy:
-
Jeśli gra toczy się zbyt szybko, zmieniamy zasady, tak aby opóźnić grę
-
Jeśli gra toczy się zbyt wolno, zmieniamy zasady, tak aby przyspieszyć grę
-
Jeśli jest zbyt trudna – upraszczamy
-
Jeśli jest zbyt łatwa – utrudniamy
-
Najlepiej zmienić tylko jeden element zasad, żebyśmy wiedzieli, który z nich jest odpowiedzialny za zmianę
-
-
Zmieniamy jeden z elementów zasad i idziemy do kroku 3.
Dzięki temu
unikniemy sprawdzania wszystkich możliwości. Pewnym zagrożeniem
przy ocenie trudności jest to, że gdy już opanujemy jeden wariant,
to nauczyć się kolejnego podobnego jest łatwiejsze, nawet jeśli
on sam w sobie jest trochę trudniejszy. Szukanie nowego zespołu dla
każdego wariantu nie wydaje się idealnym rozwiązaniem.
Pułapkę tę można
rozwiązać software’owo korzystając z algorytmów uczących się.
Co prawda istnieją gotowe biblioteki z realizacją takich
rozwiązań, ale istnieje jedna grupa funkcji, które musimy sami
stworzyć. To te, które będą sprawdzać, czy proponowany przez
sztucznego gracza ruch jest dozwolony.
Jeśli temat
programowania nie jest Ci obcy to zagadnienie optymalizacji,
sztucznych sieci neuronowych i algorytmów genetycznych nawet
jeśli w tym momencie jest dla Ciebie niewiadomą, to po kilkunastu
minutach od wpisania tych fraz w Google powinieneś umieć napisać
program, który będzie symulować rozgrywki.
Dla osób nie
mających pojęcia o programowaniu, proponuję zrobić kurs
wychowawcy kolonijnego i nawiązać współpracę z jakimś
biurem podróży – przez 8 tygodni wakacji przewinie Ci się
dostateczna liczba testerów :D
Komentarze
Prześlij komentarz