TKontakty for Cyberpunk ver.2.1 RC0

by Marcin "Tupteq" Bardź

TKontakty, jest to narzędzie mistrza gry, który dzięki niemu będzie mógł szybko wygenerować kontakty i znajomości dla bohaterów graczy (jak i dla BNów). Działanie programu polega na losowaniu kilku parametrów dla każdego kontaktu (imię, nazwisko, poziom zdolności specjalnej, poziom wiarygodności oraz opis), a następnie przedstawienie tego w czytelnej formie.

Kilka najważniejszych cech aplikacji to:


Poniżej przedstawiam bardziej szczegółowy opis poszczególnych funkcji programu (kliknij na interesującym Cię miejscu na obrazku).


Opcje generowania kontaktów

Tutaj wybierasz główne parametry działania programu oraz generujesz kontakty. W większości przypadków do szczęścia wystarczy Ci tylko ten kawałek okna oraz okienko Wyników.


  • Pole kombi - sposób doboru ilości kontaktów (dla Powiązań jest to Poziom^2, a dla pozostałych jest to wartość Poziomu)
  • Poziom/Wartość - od tej wartości zależy ilość generowanych kontaktów, dla Powiązań i Znajomosci półświatka mieści się w zakresie 1-10, a dla Konkretnej liczby 1 do ilości wszystkich kontaktów
  • Uwzględniaj 'szanse' z opisów - niektóre kontakty mogą mieć dodatkowy modyfikator, który powoduje, że jest on trudniejszy do wylosowania, niż można by to wywnioskować z jego poziomu zdolności specjalnej. Wyłaczenie tej opcji da nam więcej 'niecodziennych' kontaktów.
  • - informacje o programie, namiary na autorów, na hołmsajt i na instrukcję
  • - odświeżenie danych źródłowych (dane są czytane z pliku podczas startu programu i jeśli coś w nich zostanie zmienione podczas działania aplikacji, to właśnie ten przycisk pozwoli Ci te zmiany wprowadzić w życie, bez restartu programu)
  • Generuj kontakty! - jak myślicie robi co ten przycisk? Oczywiście gra melodyjkę na stacji dysków :P
    A tak na poważnie to jest to przycisk domyślny, więc wciśnięcie ENTER zawsze spowoduje wygenerowanie nowych kontaktów (oczywiście uwzglądniając wszystkie parametry)

Informacje

Tutaj podane są informaje na temat danych zawartych w plikach wejściowych. Jeśli chcesz wiedzieć nieco więcej na temat danych, to wystarczy, że zajrzysz do Informacji.

  • Opisów - ilość wszystkich opisów załadowanych z pliku
  • Opisów M - ilość opisów dla mężczyzn
  • Opisów K - ilość opisów dla kobiet (uwaga, to nie błąd, suma Opisów M i Opisów K może być wieksza niż liczba Opisów, wynika to z faktu, że niektóre kontakty mogą istnieć w wersji dla obu płci)
  • Imion M - ilość imion męskich
  • Imion K - ilośc imion kobiet
  • Nazwisk - ilość nazwisk pobranych z bazy

Opisy / poziom Zdolności Specjalnej

Jest to wykres słupkowy odzwierciedlający ilość opisów kontaktów przypadających na dany poziom Zdolności Specjalnej. Nie ma tutaj liczb, gdyż byłyby w tym miejscu dość mylące, ponieważ jeden kontakt może mieć przedział zdolnosci specjalnej np. od 3 do 5 i wówczas zostanie on dodany do trzech 'słupków' wykresu (3, 4, 5). Dlatego sam wykres mówi tylko o tym na jakim poziomie jest dużo opisów, a na jakim jest ich mniej.

Zdolnośc specjalna / Wiarygodność

Ze względu na podobieństwo obu widoków oraz ich podobną funkcjonalność opis będzie wspólny.

Widoki te służą do zmiany prawdopodobieństwa wystąpienia pewnych wartości (odpowiednio Zdolności Specjalnej i Wiarygodności) w wynikach.
Wykres słupkowy mówi jaka jest procentowa szansa na wylosowanie konkretnej wartości w wyniku (np. jeśli słupek podpisany '3' dla Wiarygodności będzie miał wysokość 14.8, to znaczy, że istnieje 14.8% szansy na to, że przy losowaniu Wiarygodności 'kontakt' będzie miał Wiarygodność 3). Suma wszystkich słupków daje 100%.
Krótko: Wartość początkowa i Wartośc końcowa wyznaczają granice wyniku, a Nieliniowość mówi jak bardzo będą różnić się szanse wystąpienia jednych wartości od drugich. Dlaczego Wartość początkowa i końcowa nie muszą być całkowite? Ponieważ wynik będzie zaokrąglony, a my - sprytnie to wykorzystując - możemy precyzyjnie określić prawdopodobieństwa dla poszczególnych wartości. Dodam jeszcze, że jeśli Nieliniowość jest równa zero, to funkcja losowa jest prostą przechodzącą przez dwa podane punkty, zaś Nieliniowość różna od zera 'wygina' tę prostą w jedną lub drugą stronę.

Po kliknięciu na wykresie słupkowym ukaże nam się wykres funkcji, która jest użyta do losowania wartości. Spojrzenie na nią i 'pomęczenie' parametrów może pomóc w zrozumieniu istoty losowania.
Losowana jest liczba rzeczywista z zakresu od 0 do 1 (oś pozioma) i wynikiem jest zaokrąglona wartość funkcji dla wylosowanego punktu (oś pionowa).

Powrót do widoku słupków, jak nietrudno się domyślić, nastąpi po ponownym kliknięciu wykresu jeszcze raz.

Dla dociekliwych:
Funkcja jest funkcją wykładniczą postaci:
y = a·ec·x - b
a = (f(0) - f(1)) / (1 - ec)
b = a - f(0)
przy czym:
c - Nieliniowość
f(0) - Wartość początkowa
f(1) - Wartość końcowa
Funkcja ta jest odwrotnością funkcji zmiennej losowej (odwrotnością dlatego, że nie szukam prawdopodobieństwa, tylko na jego podstawie chce otrzymać wartość zmiennej x).
Prawdopodobieństwa (do wykresu słupkowego) liczę numerycznie (dla 1000 punktów, czyli dokładność 0.1%), bo rozwiązanie analityczne jest za długie :)

Wynik

W tym okienku możemy zobaczyć efekty działania programu. Wyniki są posortowane według Zdolności Specjalnej, malejąco, tzn. kontakty o najwyższej Zd. Spec. będą na samej górze.

Na zakończenie

Najnowsza wersja programu jest zawsze dostępna na stronie Night City Limits, tam także znajdziesz nowe wersje bazy danych oraz (a może przede wszystkim) mnóstwo materiałów dotyczacych systemu Cyberpunk 2020.
Jeśli masz jakieś uwagi, propozycje, lub cokolwiek do powiedzenia, to pisz do mnie na adres tupteq@tlen.pl.