To jest część 1 tutoriala o kalkulatorze kostkowym Anydice: https://anydice.com/
Ta część demonstruje podstawowe funkcje na przykładach zaczerpniętych z 5 edycji Dungeons and Dragons.Kulminacją jest porównanie stylów walki wojownika 1 poziomu.
Podstawy
Kości
Anydice oblicza rozkłady prawdopodobieństwa dla procesów losowych, takich jak rzucanie kośćmi.
Rolling sześciostronną kością ma 6 możliwych wyników: 1
, 2
, 3
, 4
, 5
i 6
.
Ten program anydice oblicza możliwe wyniki rzutu sześciościenną kością.
output d6
https://anydice.com/program/304
Każda z możliwości jest równie prawdopodobna, co widać w wynikach, a średni wynik wynosi 3,5
output
to polecenie, które powoduje, że jego argument (to, co po nim) jest dołączany do wyjścia programu.Na wyjściu mogą być wyświetlane całe rozkłady prawdopodobieństwa, jak wszystkie możliwe wyniki rzutu kostką 1d6.
Arytmetyka
Anydice może wykonywać działania matematyczne na liczbach i kostkach, w tym dodawanie +
, odejmowanie -
, mnożenie *
, dzielenie całkowite /
i wykładanie ^
Może dodać liczbę do wyniku rzutu kostką. Rzucenie d6 i dodanie 4 nadal ma tylko 6 możliwości, ale wyniki i ich średnia są wyższe.
output 1d6 + 4
https://anydice.com/program/b529
Niezależność
Kości są od siebie niezależne. Jeśli 2d6 są toczone, są możliwe wyniki, gdzie inna liczba pokazała się na twarzy każdej kości. Jedna może być 2, a druga 5, co daje 7.
output 2d6 named "2d6 vary independently of each other"
Multiplikacja rozkładu przez liczbę nie jest tym samym, co toczenie wielu niezależnych kości. Ma tę samą średnią, ale nie te same możliwe wyniki.Nie ma sposobu na uzyskanie wyniku 7 przez podwojenie liczby wyrzuconej na d6, nawet jeśli jest to najczęstszy wynik dla 2d6.
output 2*d6 named "2*d6 depends on only one dice roll"
Zmienne przechwytują całe rozkłady prawdopodobieństwa. Przypisanie rozkładu do zmiennej nie wybiera wyniku.Użycia tej zmiennej będą się różnić niezależnie od siebie.
X:d6output X + X named "Variables capture entire distributions"
https://anydice.com/program/120e3
Używanie funkcji
Anydice ma niewielką liczbę wbudowanych funkcji. Funkcje mają nazwy (zapisane w lowercase
) i przyjmują argumenty.
Użyj funkcji, zawijając jej nazwy i argumenty w nawiasy kwadratowe ()
Na przykład, aby użyć funkcji highest NUMBER of DICE
do znalezienia rozkładu wyników przy toczeniu z przewagą
output
lub lowest NUMBER of DICE
do znalezienia rozkładu wyników przy toczeniu z wadą
output
https://anydice.com/program/120ec
.
Najbardziej użytecznymi funkcjami są
highest NUMBER of DICE
lowest NUMBER of DICE
highest of NUMBER and NUMBER
lowest of NUMBER and NUMBER
SEQUENCE contains NUMBER
Argumentami funkcji są albo liczba, kostka (rozkład prawdopodobieństwa), albo sekwencja liczb.
Jeśli funkcja przyjmuje liczbę jako argument, a zamiast niej podajesz rozkład prawdopodobieństwa, to funkcja zostanie zastosowana do każdej możliwości w tym rozkładzie, a wyniki zostaną połączone w celu utworzenia nowego rozkładu.
Następujące funkcje są takie same:
output output
https://anydice.com/program/120ed
Podstawowe przykłady
Uszkodzenia broni
Jeśli ataki mają taką samą szansę na trafienie, możesz je porównać, porównując tylko obrażenia broni.
A d4 sztylet plus 4 zręczność
output 1d4 + 5 named "1d4 dagger + 5 dex"
A 2d6 wielki miecz plus 5 siła
output 2d6 + 5 named "2d6 greatsword + 5 str"
A 1d8 długi łuk plus 4 zręczność i 3d6 ataku skradania
output 1d8 + 4 + 3d6 named "1d8 longbow + 4 dex + 3d6 sneak attack"
https://anydice.com/program/120f2
.
Attack Rolls
Przykłady attack rolls
output d20 + 3 + 4 named "+3 proficiency +4 strength"output d20 + 3 + 4 + d4 named "+3 proficiency +4 strength with bless"output + 3 + 4 named "+3 proficiency +4 strength with advantage"output d20 + 3 + 4 + 2 named "+3 proficiency +4 dexterity +2 archery fighting style"output + 3 + 4 named "+3 proficiency +4 strength with disadvantage"
https://anydice.com/program/120ef
Chance to hit
Aby obliczyć szansę na trafienie porównujesz attack roll do AC, a następnie przeliczasz na 1, jeśli trafi i na 0, jeśli spudłuje.
Zacznij od porównania rolki ataku do AC.
d20 + 3 + 4 - 15 + 1attack roll | minus AC | attacker wins ties
Pokonanie AC o więcej nie zadaje dodatkowych obrażeń. Nie możesz otrzymać więcej niż 1 trafienie od ataku.
A brak o więcej nie leczy wrogów. Nie możesz otrzymać mniej niż 0 trafień od ataku
and 0]
Teraz możemy obliczyć szansę na trafienie vs AC 15 dla poprzednich przykładów.
output and 0] named "+3 proficiency +4 strength"output and 0] named "+3 proficiency +4 strength with bless"output + 3 + 4 - 15 + 1 and 1] and 0] named "+3 proficiency +4 strength with advantage"output and 0] named "+3 proficiency +4 strength +2 archery fighting style"output + 3 + 4 - 15 + 1 and 1] and 0] named "+3 proficiency +4 strength with disadvantage"
https://anydice.com/program/120f0
W wynikach 0s to chybienia, 1s to trafienia, a średnia to szansa na trafienie.
Oszacowanie obrażeń
Mnożąc szansę na trafienie przez rolkę obrażeń otrzymujemy efektywne obrażenia przeciwko AC.Uwzględnia to celność, ale ignoruje efekty trafień krytycznych.
Użyjemy tego do porównania obrażeń stylów walki wojownika na poziomie 1, przeciwko przeciwnikowi z 13 AC.Walka dwoma broniami spowoduje dwa ataki, obliczymy je osobno i dodamy do siebie.
output and 0] * (1d6 + 3) + and 0] * (1d6 + 3)named "Two-weapon fighting"output and 0] * (1d8 + 3 + 2) named "Dueling"output and 0] * (1d10 + 3) named "Archery"output and 0] * (2d6 + 3) named "Defense (Greatsword)"
https://anydice.com/program/12125
Kliknij na Calculate
, Graph
i At Least
, aby zobaczyć wykres pokazujący jak często dany styl zadaje przynajmniej określoną ilość obrażeń. Na przykład, styl walki pojedynkowej zabija przeciwnika z 11 punktami trafień w około 25% przypadków.
Wyższe wykresy zadają obrażenia bardziej konsekwentnie. Szersze wykresy zadają większe obrażenia. Wyższe, szersze grafy zadają większe obrażenia bardziej konsekwentnie.
Nie mamy jeszcze narzędzi do radzenia sobie z wielkim stylem walki bronią.
Gotchas
Kolekcje kości
Kolekcje kości zachowują się dziwnie. Niektóre funkcje, takie jak highest ? of ?
, zaglądają do wnętrza rozkładu, aby zobaczyć, z czego jest zrobiony.
Możesz oczekiwać, że następujące funkcje będą zachowywać się tak samo
output output + 100
Nie zachowują się: https://anydice.com/program/120e2
Używaj highest ? of ?
i lowest ? of ?
prosto i nie zawieraj żadnej matematyki w argumentach.
Nie używaj introspekcji do kolekcji kości.
Sekwencje nie są strukturami danych
Dodawanie kości do sekwencji dodaje liczby z tej kości do sekwencji. Na przykład
output 1d{0, 0, 0, 1d4}
nie rzuca kostką d4 przez jedną czwartą czasu. Zamiast tego ma siedem możliwości i jest taki sam jak
output 1d{0, 0, 0, 1, 2, 3, 4}
https://anydice.com/program/120e0
Kolejność operacji
Chcesz rzucać monetą i robić 1d6 + 4
szkody przez połowę czasu? To robi 4
obrażeń przez cały czas.
output 1d{0, 1} * 1d6 + 4
Dodaj nawiasy do sumy 1d6 + 4
przed pomnożeniem jej przez rzut monetą
output 1d{0, 1} * (1d6 + 4)
https://anydice.com/program/120e1
Przyszłe części
Część 2 obejmuje definiowanie funkcji i wykorzystuje je do rozwiązania dwóch problemów: ponownego rzucania kośćmi i rozliczania trafień krytycznych.Te narzędzia są używane do wprowadzenia strategii i zbadania strategii łotrzyka rzucającego sieciami, aby uzyskać przewagę.
Część trzecia obejmie zajmowanie się stanem. Obliczymy obrażenia wielkiego mistrza broni, a następnie zajmiemy się trudnym problemem mistrza bitwy, granego przez biegłego gracza.
Edycja: Dodano link do przykładu szacowania obrażeń, część 2
.