Udało mi się przenieść część funkcjonalności do nowego szablonu i już teraz widzę że generator jest wygodniejszy w użyciu nie tylko za sprawą ładniejszego gui, ale jako sama baza kodu. Zrobiłem spory refaktor, przepakietowanie, jakieś poprawki nazewnictwa i namespaców. Całkowicie przebudowałem część odpowiedzialną za dobieranie cech w przypadku więcej niż jednej profesji.
Algorytm
W poprzedniej wersji algorytmu przy dwóch profesjach losowałem dwie postacie i dobierałem wartości wylosowanych cech zgodnie z ich kolejnością losowania przy czym do końcowego podsumowania przenoszona była wyższa wartość. Jednakże bardzo trudno było sprawdzić czy cechy zostały dobrze dobrane, czy prawidłowo się połączyły i czy w ogóle końcowy efekt jest poprawny (zwykle nie był). Przeliczenie odporności stało się za skomplikowane i byłem pewien nieprawidłowych wartości w podsumowaniu postaci. Musiałem podjąć drastyczne kroki. Cały ten kod wyrzuciłem i napisałem od nowa.
Aktualna wersja działa inaczej. Przy dwóch profesjach tworzę meta profesję, do której dobieram tylko lepsze (wyższe) cechy z wybranych profesji. Dzięki temu generator cech i odporności uruchamiany jest jeden raz (tak jakby to była jedna profesja) i nie ma problemu z modyfikacjami współczynników wynikających z innych kroków generatora np. wagi postaci. Nie muszę uruchamiać algorytmu łączącego dwie wylosowane postacie i dobierającego lepsze cechy.
| Stan wyjściowy generatora |
Testy
Ach bym prawie zapomniał - do projektu dodałem kilka prostackich testów. W c# nigdy ich nie pisałem także jest to dla mnie terra incognita. Mam nadzieję, że wspomogą mnie w pracy nad projektem ... o ile będzie mi się chciało powiększać ich bazę.
Brak komentarzy:
Prześlij komentarz
Tu możesz wstawić swój komentarz