Hur kan jag skriva Anydice för att rerollera det lägsta resultatet, men behåll det nya resultatet , även om det är lägre än originalet?
Hittills använde jag output [highest 2 of 3d12]
, vilket är mycket lika när du tänker på det, men det här håller det högsta resultatet bland de omvända tärningarna.
Jag försöker modellera en situation som ofta händer i vårt hemlagade system som använder en mekaniker som liknar Rogue Games 2d12. Ett tecken vill ha en förmåga som gör det möjligt att rerollera en av d12, men han måste hålla sig till det nya resultatet, även om det är sämre än originalet. Jag förväntar mig det för att öka medellången, men inte lika mycket som en D & D5-fördel (högst 1 av 2d20 där, högst 2 av 3d12 för oss).
Doppelgreeners svar är bra om spelaren måste alltid omdirigera sin lägsta dö, oavsett vilket spel vad de ursprungligen rullade. Om du använder möjligheten är det dock frivilligt att spelaren sannolikt väljer att inte använda den om de rullar, säger två tolv på deras första 2d12-rulle.
Generellt är det svårt att modellera sådana valfria beslutsprocesser matematiskt, eftersom det rationellt optimala beslutet kan bero på vad spelarens specifika mål är (för att inte tala om att spelare är mänskliga och så ofta inte handlar rationellt! ). Men i det här fallet är en ganska rimlig klass av beslutsregler att överväga de där spelaren omdirigerar den lägsta dömen endast när den är mindre än en viss fast tröskel. Om spelarens mål bara är att maximera det förväntade genomsnittliga resultatet av deras roll, är deras optimala strategi att omdirigera en dö endast när det ursprungliga värdet av döden är mindre än det förväntade genomsnittet av rerollen (vilket för en d12 , är (1 + 12) / 2 = 6,5).
Här är ett grundläggande AnyDice-skript för att modellera den beslutsfattande strategin:
391.133Observera att funktionen i koden ovan är generisk nog för att tillåta godtyckliga initialt tärningspoolstorlekar (fastän endast den lägsta dysen någonsin omkods) och tröskelvärden och ger även möjlighet att omdollera med en annan dö än den ursprungliga poolen hade , skulle det vara önskvärt.
När vi tittar på skriptets resultat kan vi se att denna "reroll lägsta om mindre än 7" -strategin överträffar både "alltid reroll" och "never reroll":
Vikannaturligtvisockså betrakta trösklar andra än 7 (& ca; 6.5) . Sammanfattningsstatistiken visar emellertid att, åtminstone så mycket som det förväntade genomsnittliga resultatet, är 7 verkligen det optimala tröskelvärdet för omdollering av en d12.
Allt sagt, andra beslutsregler kan fortfarande göra ännu bättre under särskilda omständigheter. Om spelaren försöker rulle för att möta eller överträffa ett visst målnummer, så är den naturliga och troligen optimala regeln bara omdirigering om summan av deras ursprungliga rulle är mindre än målet och låt originalrullen stå annars.
Vi kan givetvis modell som i AnyDice samt :
391.133I det här fallet får vi tyvärr inte så fina grafer, eftersom varje jämförelse mot mållantalet bara matar ut 0 om rullen misslyckas och 1 om den lyckas. Fortfarande ser vi på "transposed" -vyn (som jag har länkat direkt till ovan), så kan vi se att tillåta reroll lite bättre än att ge spelaren +3 till sin roll . Till exempel har en omodifierad 2d12-rulle en 61,81% chans att träffa ett mål på 12 medan 2d12 med en valfri reroll har 64,53% chans att möta ett mål på 15 och en 56,71% chans att träffa ett mål på 16.
Det låter som om du vill rulla 2d12 och ersätta det lägsta baserat på ditt Rogue Games-exempel. Du vill använda det här programmet för att göra det:
391.133Funktionellt gör du vad du gör:
... så det är vad det ovanstående programmet gör.
Detta resulterar fortfarande i att 13 blir det vanligaste resultatet, men du har en högre chans att bli över genomsnittet än lägre. Du kan jämföra och visualisera de två metoderna här: länk
Läs andra frågor om taggar anydice Kärlek och kompatibilitet Skor Gear 12 Stjärntecken Grunderna