Kiekvienas stalo žaidimų mechanikas turi matematinį tapatumą. Kauliuko metimas turi numatomą vertę ir dispersiją. Kortų traukimas turi tikimybių pasiskirstymą. Prekyba ištekliais turi valiutos kursą, kurį galima išreikšti santykiu. Dizaineriai, kurie supranta šią matematiką, priima geresnius sprendimus nei dizaineriai, dirbantys pagal jausmus – ne todėl, kad matematika pakeičia intuiciją, o todėl, kad intuicija dažnai nesutampa su tikrove, todėl vien tik testavimas ištaisomas lėtai.
Šiame straipsnyje aptariamos matematinės sąvokos, kurios yra svarbiausios kuriant stalo žaidimus ir žaidžiant: tikimybių pasiskirstymas, numatoma vertė, dispersija ir psichologinis atotrūkis tarp to, ką sako matematika, ir to, ką patiria žaidėjai. Nesvarbu, ar kuriate žaidimą, ar tiesiog bandote suprasti, kodėl jūsų kauliukų sesijos taip katastrofiškai nesiseka, čia esanti sistema pakeis jūsų požiūrį į atsitiktinumą žaidimuose.
Kodėl matematika svarbi žaidimų dizaine
Žaidimų dizaineris, kuris neapskaičiavo numatomos savo žaidimo pagrindinės veiksmo ekonomikos vertės, nežino, ar jo žaidimas veikia. Tai skamba griežtai, bet funkcionaliai tai tiesa. Jei tikėtinos pajamos iš geriausio galimo veiksmo yra 4 ištekliai vienam raundui, o pergalės sąlygos veiksmo kaina yra 30 išteklių, dizaineris turi žinoti, ar tą pajamų lygį galima pasiekti per įprastą žaidimo trukmę – prieš žaidimo testavimą, o ne po šešių seansų, stebint, kodėl niekas niekada nelaimi.
Matematika ir žaidimų testavimas yra vienas kitą papildantys įrankiai, o ne alternatyvos. Matematika pasako, ką numato teorija. Žaidimo testavimas parodo, ar žmogaus elgesys atitinka teoriją. Dažniausiai jie skiriasi – ne todėl, kad neteisinga matematika, o todėl, kad žaidėjai ne visada pasirenka teoriškai optimalų veiksmą. Atotrūkis tarp teorinio optimalaus žaidimo ir tikrojo žmogaus žaidimo yra pats dizaino kintamasis: žaidimas, kuriame tik optimalus žaidimas priima įdomius sprendimus, yra prastesnis žaidimas nei tas, kuriame neoptimalus žaidimas taip pat sukuria įdomių situacijų.
Kiekvienas mechanikas turi tikėtiną vertę, o dizaineriai turi tai žinoti. Kai Neutronium: Parallel Wars žaidėjas gauna pajamų iš branduolinių uostų, jis gauna tiksliai apskaičiuotą numatomą kiekvieno prievado vertę per raundą. Kai jie pasirenka pulti, o ne kurti, jie priima sprendimą, kurio rezultatai yra apskaičiuojami pagal skirtingus scenarijus. Šiuos skaičius žinantis dizaineris gali priimti reikšmingus pusiausvyros sprendimus; nežinantis dizaineris spėlioja.
Svarbiausia asimetrija yra ta, kad atsitiktinumas atrodo nesąžiningas, net jei jis yra subalansuotas. 50/50 monetų vartymas šešis kartus iš eilės sukuria galvutes maždaug 1,6 % laiko – retai, bet neįmanomai. Kai taip nutinka žaidėjui žaidime, jie tai patiria kaip žaidimo nutraukimą, o ne kaip įprastą statistinį įvykį. Supratimas, kodėl taip nutinka – ir kaip dizaineriai gali susisteminti atsitiktinumą, kad jaustųsi mažiau bausmingi, išlaikant tas pačias pagrindines tikimybes – yra praktiškai vertingiausias žaidimo dizaino matematikos pritaikymas.
101 kauliuko tikimybė
Singlas d6 yra labiausiai paplitęs atsitiktinės atrankos įrankis stalo žaidimuose ir vienas iš labiausiai nesuprantamų. Standartinis d6 sukuria vienodą pasiskirstymą: kiekvieno paviršiaus (nuo 1 iki 6) tikimybė atsirasti yra 1/6, o numatoma vertė yra 3,5. Žaidėjai tai intuityviai supranta, bet dažnai nesupranta, ką reiškia pakartotinis permetimas per sesiją.
Vienas d6 ir 2d6 skirtumas yra esminis dalykas norint suprasti, kodėl skirtingi kauliukų mechanizmai skiriasi. Vieno d6 tikimybės pasiskirstymas yra vienodas – kiekvienas rezultatas nuo 1 iki 6 yra vienodai tikėtinas. Susumavus du d6 gaunama varpelio kreivė: 7 yra labiausiai tikėtinas rezultatas (tikimybė 6/36 = 16,7%), o 2 ir 12 tikimybė yra 1/36 = 2,8%. 2d6 pasiskirstymas sutelkia rezultatus arti vidurio, todėl ekstremalūs rezultatai tampa reti. Štai kodėl Catan, kuris naudoja 2d6 išteklių gamybai, jaučiasi mažiau bausmingas atskiriems ritiniams nei vieno kauliuko sistemos – paskirstymas natūraliai riboja kraštutinius rezultatus.
Pasirinktiniai kauliukai su nestandartiniu veidų paskirstymu leidžia dizaineriams tiksliai valdyti tikimybių profilius, kurių negali pateikti standartiniai kauliukai. Kauliukas, kurio veidai yra [0, 0, 0, 1, 1, 2], turi labai skirtingą pobūdį nei d6: jis sukuria nulį 50 % laiko, vienas 33 % laiko ir du 17 % laiko, o numatoma vertė yra 0,67. Neutronium: Parallel Wars naudoja pasirinktinius D6 kauliukus su spalvomis pažymėtais veidais: mėlyni veidai reiškia standartinius kovos rezultatus, raudoni veidai – svarbiausius rezultatus, o žali – specialius sugebėjimų paleidiklius. Veidų tipų pasiskirstymas – ne tik veidų skaičius – lemia kiekvieno rezultato tikimybę. Kabelis su trimis mėlynais, dviem raudonais ir vienu žaliu veidu 50 % atvejų duoda mėlyną, 33 % – raudoną, 17 % – žalią. Dizaineris gali koreguoti šiuos santykius keisdamas veidų skaičių, o ne kurdamas matematiškai sudėtingas skyros sistemas.
Sprogstantys kauliukai – tai kauliukai, kurie metant didžiausią vertę metami dar kartą ir pridedami rezultatai. D6, kuris sprogsta ant 6, numatoma vertė yra (1+2+3+4+5+6)/6 + (1/6 × numatoma d6 vertė) = 3,5 + (1/6 × 3,5) = 3,5 + 0,583 = 4,083. Atviras pobūdis sukuria teoriškai neribotus rezultatus – sėkminga sprogimų seka gali duoti labai aukštus rezultatus – tai sukuria „sėkmingo jausmo“ akimirkas, kurias kai kurie žaidimai sąmoningai ugdo. Kompromisas yra didelė dispersija ir kartais žaidimą lemiantis laimingas metimas.
Apriboti kauliukai yra priešinga filosofija: maksimalaus rezultato apribojimas siekiant apriboti dispersiją. Kauliukų rinkimo sistemos, kuriose metate kelis kauliukus ir pasieksite tik geriausių N rezultatų (privalumo sistemos, pvz., D&D 5E pranašumų mechanikas arba Gumshoe kelių kauliukų paėmimas aukščiausias), matematiškai sumažina dispersiją, išlaikant tikimybę. Paėmus didesnę iš dviejų d6 metimų, laukiama vertė pasislenka nuo 3,5 iki 4,47 – pagerėjimas 28 % – ir žymiai sumažinama žemų rezultatų tikimybė.
Numatoma išteklių žaidimų vertė
Išteklių kaupimo žaidimai – eurai, variklių kūrėjai, ekonominės strategijos – yra pagrįsti numatomos vertės skaičiavimais, kuriuos dizaineris turi tiksliai suprasti, net jei taisyklėse jie niekada nėra aiškiai nurodyti. Kai žaidėjas pasirenka vieną iš dviejų veiksmų, jis (sąmoningai ar ne) lygina numatomą tų veiksmų vertę atitinkamu laiko horizontu.
Neutronium: Parallel Wars Branduolinio uosto pajamų sistema yra aiškus numatytos numatomos vertės pavyzdys. Pajamų formulė nustato, kad žaidėjas, turintis N branduolinių uostų, gauna pajamas netiesiškai su N. Specifinė formulė – 1 portas duoda 2 Neutronium vienetus per raundą; 10 prievadų duoda 220 Nn per raundą - neatsitiktinai. Tai yra aiškus dizainerio teiginys, kad prievadų kaupimas turėtų duoti eksponentinę, o ne linijinę grąžą, nes eksponentinė grąža sukuria koalicijos slenkstį, kuris lemia žaidimo konkurencinę dinamiką.
Ši formulė yra apgalvotas žaidimo dizainas, išreikštas matematika. Atotrūkis tarp 7 uostų pajamų (42 Nn/raund) ir 10 uostų pajamų (220 Nn/raundo) yra ekonominis argumentas, kodėl koalicijos formuojasi ties 7 uostų slenksčiu, o ne laukti iki 9 ar 10 uostų. 7 uostuose žaidėjas turi pakankamai pajamų, kad būtų grėsmingas, tačiau koalicijos veiksmai vis tiek gali būti lemiami, kol pajamų pranašumas tampa matematiškai neįveikiamas. Dizaineris, kuris pasiekė šiuos skaičius vien atlikdamas testavimą, gali juos gauti maždaug teisingai; dizaineris, kuris nuo pat pradžių suprato eksponentinę funkciją, galėtų tiksliai nurodyti slenkstį.
Platesnis principas: kai eksponentinis mastelio keitimas yra apgalvotas žaidimo kūrimas, dizaineris turi dokumentuoti mastelio keitimo funkciją ir patikrinti, ar jos sukuriamos slenksčiai yra ten, kur jie nori. Jei koalicijos slenkstis turėtų būti 6, o ne 7, pajamų formulę reikia koreguoti – tam reikia žinoti, kokia formulė, o ne tik stebėti, kad „žaidimas jaučiasi subalansuotas“.
Variantas ir žaidėjų suvokimas
Variantas yra matas, nurodantis, kiek faktinių rezultatų pasiskirsto aplink tikėtiną vertę. Didelė dispersija reiškia, kad individualūs rezultatai gali labai skirtis nuo lūkesčių; maža dispersija reiškia, kad rezultatai yra glaudžiai susiję su vidurkiu. Žaidimų kūrėjams dispersija yra valdymo rankenėlė, kuri turi įtakos tiek matematiniam žaidimo teisingumui, tiek subjektyviam žaidimo patirčiai.
Pagrindinė psichologinė įžvalga: didelė dispersija jaučiasi blogai, net jei ji matematiškai subalansuota. Monetos vartymas yra visiškai teisingas – 50/50, tikėtina vertė yra lygiai tokia pati abiem žaidėjams, bet žaisti žaidimą, kuriame kiekvienas sprendimas išsprendžiamas monetos metimu, atrodo savavališkas ir neapdovanojamas. Žaidėjai turi jausti, kad jų sprendimai yra svarbūs, o tai reiškia, kad jiems reikalingas priežastinis ryšys tarp gerų sprendimų ir gerų rezultatų, kad būtų galima pastebėti žaidimo sesijos metu. Didelė dispersija nutraukia tą ryšį.
7 prieš 2 „Catan Hex“ problema tai aiškiai parodo. Katane skaičius 7 atspausdintas ant daugiausiai šešiakampių, nes jis turi didžiausią tikimybę su 2d6 (16,7%). Skaičius 2 atspausdintas ant mažiausiai šešiakampių (2,8%). Patyrę žaidėjai žino, kad pirmenybę teikia 6s, 8s, 5s ir 9s ištekliams – didelės tikimybės šešioliktainiams. Tačiau bet kurioje konkrečioje sesijoje žaidėjas, kuris teisingai nustato savo pradinius atsiskaitymus ant šių šešiakampių, vis tiek gali būti gerokai mažesnis už žaidėjo, kurio pozicijoje yra mažesnė tikimybė, jei faktiniai kauliukų metimai nukrypsta nuo laukiamų verčių. Tai nėra nesąžininga – tai įprastas statistinis skirtumas. Tačiau tai atrodo nesąžininga, nes ryšį tarp sprendimo (geros vietos) ir rezultato (dažnos išteklių gaunamos pajamos) užtemdo dispersija.
Dizaino sprendimai, skirti suvaldyti suvokiamą nesąžiningumą dėl dispersijos, apima: švelninimo mechaniką (peržaidimai, išteklių bankai, pasivijimo mechanizmai, kurie suaktyvinami nesėkmės metu), sprendimo taškai, kurie išlieka reikšmingi net ir nepasisekus (taigi, prastai metęs žaidėjas vis tiek turi įdomių pasirinkimų) ir variacija: pirmaujantis žaidėjas nori stabilių, nuspėjamų pajamų;
Kingmakerio momentai iš kauliukų – kai atsitiktinis metimas lemia, kuris žaidėjas laimi ar pralaimi paskutiniame raunde – yra žalingiausias žaidėjo pasitenkinimo rezultatas. Sprendimas yra ne kauliukų pašalinimas, o vėlyvojo žaidimo struktūrizavimas taip, kad kauliukų rezultatai paveiktų kelią į pergalę, o ne ją tiesiogiai nulemtų. Kai keli žaidėjai turi perspektyvias laimėtas pozicijas paskutiniame raunde, laimingas metimas patenkina laimėtoją, bet nesijaučia neteisėtas pralaimėjusiems – nes pralaimėtojai taip pat turėjo kelią laimėti, kurį galėjo sudaryti jų pačių laimingi metimai. MEQA sistema (matuojamas, įtraukimas, kokybė, prieinamumas) suteikia struktūrinį žaidimo balanso testavimo metodą. Išmatuojamumo ramstis – M MEQA – yra ta vieta, kur matematika formaliai patenka į projektavimo procesą: prieš pradedant bandymą, dizaineris apibrėžia, ką išmatuojamais terminais reiškia „subalansuotas“. Žaidime su asimetriškomis grupėmis, pvz., Neutronium: Parallel Wars, išmatuojamas balansas reiškia: kiekviena frakcija turi pasiekti laimėjimų rodiklį tam tikroje tolerancijos juostoje per pakankamą panašaus lygio žaidimų imtį. Jei tikslas yra 50 % laimėjimų procentas (grynas balansas) su ±10 % priimtinu diapazonu, tai frakcija, laimėjusi 42 % žaidimų, yra tolerancijos ribose, o frakcija, laimėjusi 63 % – ne. Tačiau norint pasiekti šį standartą, prieš bandymą reikia žinoti tikslą – post-hoc nepaskelbti, kad pastebėti laimėjimų rodikliai yra „pakankamai artimi“. Metrikos apibrėžimas prieš bandant žaisti keičia tai, ką stebite. Jei žinote, kad vertinate vienos frakcijos laimėjimo koeficientą, galite stebėti frakcijų užduotis ir rezultatus per sesijas. Jei žinote, kad matuojate vidutinę žaidimo trukmę, įrašote laiko žymes. Šiuos sprendimus reikia priimti prieš pirmąjį žaidimo testo seansą, nes retrospektyvinė metrika yra nepatikima – atmintis yra selektyvi ir žmonės natūraliai prisimena seansus, kurie palaiko esamus įsitikinimus. Atrankos dydžio reikalavimai balanso išvadoms dažnai yra didesni, nei tikisi dizaineriai. Dviejų žaidėjų žaidime su 2 grupėmis 30 žaidimų pateikia pradinius duomenis, leidžiančius aptikti didesnį nei 15 % disbalansą su 80 % patikimumu. 4 žaidėjų žaidimams su 6 grupėmis kombinacijų erdvė yra daug didesnė: 30 žaidimų suteikia maždaug 5 žaidimus vienai frakcijų porai – vos pakanka ekstremaliam disbalansui nustatyti ir nepakanka subtiliems pranašumams aptikti. Nepriklausomi leidėjai retai turi išteklių griežtam statistiniam patvirtinimui; Praktinis metodas yra naudoti matematiką laukiamoms vertėms patikrinti, žaidimo testavimą, kad būtų galima užfiksuoti nuokrypius, ir bendruomenės atsiliepimus po išleidimo, siekiant nustatyti išlikusias problemas. Norėdami sužinoti visą sistemą, įskaitant tai, kaip „Measurability“ integruojamas su kitais MEQA ramsčiais, žr. MEQA žaidimų balanso pagrindų vadovą, kuriame pateikiamas visas požiūris į balanso apibrėžimą, matavimą ir žaidimo sistemų pasiekimą.
Pajamų skalės formulė Neutronium tiesiogiai susieta su mechanikos detalėmis /mechanics/nuclear-port-scaling, kur eksponentinė funkcija dokumentuojama kartu su kiekvienos slenkstinės vertės projektavimo motyvais. Dėl kelių įrankių žaidimų dizaino matematika pasiekiama nereikalaujant pažangaus statistinio mokymo. Tai yra tie, kurie veikia praktiškai. AnyDice (anydice.com) yra standartinė kauliukų tikimybės skaičiuoklė, skirta žaidimų kūrėjams. Jis priima natūralios kalbos kauliukų žymėjimą (2d6, d4+d8, 3d6 išlaikyti aukščiausią 2) ir pateikia tikimybių skirstinius, tikėtinas reikšmes ir kaupiamąsias tikimybes. Bet kuriam mechanikui, kuris naudoja kauliukus, pirmiausia reikia konsultuotis su AnyDice. Jo išvesties diagramos daro paskirstymus iš karto įskaitomus ir palyginamus – įklijuokite dvi skirtingas kauliukų išraiškas greta, kad iškart pamatytumėte, kuo skiriasi jų pasiskirstymas. Skaičiuoklės modeliavimas („Google“ skaičiuoklės, „Excel“) apdoroja skaičiavimus, kurių „AnyDice“ negali: išteklių kaupimas per kelis raundus, pajamos iš kelių šaltinių, numatoma žaidimo trukmė pagal skirtingas strategines prielaidas. Pagrindinis žaidimo ekonomikos skaičiuoklės modelis su stulpeliais kiekvienam ėjimui, eilutėmis kiekvienam išteklių tipui ir formulėmis, atspindinčiomis pagrindines žaidimo pajamas ir išlaidų mechaniką, užtrunka 2–3 valandas ir atskleidžia pusiausvyros problemas, kurias empiriškai aptikti prireiktų daugiau nei 20 žaidimo testų. Monte Karlo modeliavimas yra tiksliausias įrankis: žaidimo mechanika paleidžiama tūkstančius kartų skaičiavimo būdu, kad būtų sudarytas statistinis visų galimų rezultatų pasiskirstymas. Dizaineriams, turintiems programavimo žinių, Python su NumPy pakanka daugeliui žaidimų modeliavimo poreikių. Dizaineriams, neturintiems programavimo žinių, yra vaizdinių Monte Karlo įrankių ir net skaičiuoklėmis pagrįstų modeliavimų, kurie duoda prasmingus rezultatus turint ribotas technines žinias. Monte Karlas yra vertingiausias žaidimams su sudėtingomis tarpusavio priklausomybėmis, kur sudėtingas analitinis skaičiavimas – kai sąveikauja keli atsitiktiniai įvykiai, modeliuojant gaunami patikimesni pasiskirstymo įverčiai nei atliekant rankinį skaičiavimą. Kada pasitikėti matematika, o ne žaisti testą: prieš investuodami į žaidimo testavimą naudokite matematiką, kad patikrintumėte teorinę pusiausvyrą ir pastebėtumėte akivaizdžias dizaino klaidas. Pasinaudokite žaidimo testavimu, kad sužinotumėte, kaip žmogaus psichologija sąveikauja su matematika – vietose, kur optimali strategija skiriasi nuo to, ką iš tikrųjų daro žaidėjai, ir vietas, kur matematika numato pusiausvyrą, bet patirtis atrodo nesąžininga. Abu yra būtini. Nė vieno, nei vieno neužtenka. Neutronium: Parallel Wars pajamų skalė, koalicijos slenksčiai ir kauliukų sistema yra sukurti remiantis aiškia tikimybių matematika. Prisijunkite prie laukiančiųjų paleidimo naujinių sąrašo.Balanso tikrinimas naudojant matematiką
Tikimybių įrankiai dizaineriams
Dažniausiai užduodami klausimai
Žaidimas, kuriame matematika sukurta taip, kad būtų matoma