35 votes

Quelle est la méthode de création de personnage statistiquement supérieure, douze 3d6 ou six 4d6 ?

Le D&D 3.5 Manuel du joueur donne (entre autres) deux méthodes préférées pour obtenir des scores de capacité pour un nouveau personnage : a) lancer 3d6 douze fois et garder les six résultats préférés, ou b) lancer 4d6 et laisser tomber le dé le plus bas, six fois.

Quelle est la méthode statistiquement la meilleure en termes de nombre total de modificateurs ?

De plus, le livre de règles de base exclut les personnages dont le bonus total est inférieur à +3, car les aventuriers sont supposés être des personnes exceptionnelles.

6voto

user254 Points 657

Comme tout le monde l'a dit, 12 jets de 3d6, c'est mieux.

Vous, les gars, vous écrivez des centaines de lignes de code de dés... J'aime le outil en ligne para Troll pour le calcul des dés.

Voici le code de Troll pour les six meilleurs sur 12 jets de 3d6 :

sum (largest 6 12#(sum 3d6))

Cela donne un score total d'environ 76,4.

Et le code Troll pour six jets de 4d6 en gardant le meilleur 3d6 :

sum 6#(sum largest 3 4#d6)

Cela donne un score total d'environ 73,5.

3voto

MojoFilter Points 3730

L'écriture d'un programme de force brute semble indiquer que la différence est minime.

J'ai additionné les six attributs et compté le nombre de fois où ce total apparaît.

La méthode 3d6 six fois se regroupe autour d'un total de 72, la méthode 4d6 drop low se regroupe autour d'un total de 74.

Un jet direct de 3d6 donne un total de 63.

Le temps 6 de 3d6 est plus étroitement groupé et s'étend de 56 à 95 tandis que le temps 6 de 4d6 s'étend de 40 à 100.

Voici le code source pour Visual Basic

Option Explicit
Dim Result1(1 To 18 * 6) As Long
Dim Result2(1 To 18 * 6) As Long
Dim Result3(1 To 18 * 6) As Long

Private Sub Command1_Click()
    Dim I As Long
    Dim R1 As Long
    Dim R2 As Long
    Dim R3 As Long
    Cls
    For I = 1 To 100000
        R1 = RollStat6TimesTakeBest
        R2 = RollStat4
        R3 = RollStat
        Result1(R1) = Result1(R1) + 1
        Result2(R2) = Result2(R2) + 1
        Result3(R3) = Result3(R3) + 1
    Next I

    Dim F As FileSystemObject
    Set F = New FileSystemObject
    Dim T As TextStream
    Set T = F.CreateTextFile("C:\test.csv", True)
    T.WriteLine "Total,3d6 6 times , 4d6 drop one , straight 3d6"
    For I = 1 To 18 * 6
        T.WriteLine CStr(I) & "," & CStr(Result1(I)) & "," & CStr(Result2(I)) & "," & CStr(Result3(I))
    Next I
    T.Close
    MsgBox "Done"
End Sub

Private Function D(Roll As Integer) As Integer
    Dim Result As Long
    Dim Test As Double
    Result = Rnd * 1000000000
    D = Result Mod Roll + 1
End Function

Private Function Roll3D6() As Integer
    Roll3D6 = D(6) + D(6) + D(6)
End Function

Private Function RollStat() As Integer
    Dim Total As Integer
    Dim I As Long
    For I = 1 To 6
        Total = Total + Roll3D6
    Next I
    RollStat = Total
End Function

Private Function RollStat6TimesTakeBest() As Integer
    Dim Best As Integer
    Dim I As Long
    Dim Roll(1 To 6) As Integer
    For I = 1 To 6
        Roll(I) = RollStat
    Next I
    Best = Roll(1)
    For I = 2 To 6
        If Best < Roll(I) Then Best = Roll(I)
    Next I
    RollStat6TimesTakeBest = Best
End Function

Private Function Roll4D6DropLow() As Integer
    Dim Roll(1 To 4) As Integer
    Dim Low As Integer
    Dim I As Integer
    Dim Total As Integer
    Roll(1) = D(6)
    Roll(2) = D(6)
    Roll(3) = D(6)
    Roll(4) = D(6)
    Low = 1
    For I = 2 To 4
        If Roll(I) < Roll(Low) Then Low = I
    Next I
    For I = 1 To 4
        If I <> Low Then Total = Total + Roll(I)
    Next I
    Roll4D6DropLow = Total
End Function

Private Function RollStat4() As Integer
    Dim Total As Integer
    Dim I As Long
    For I = 1 To 6
        Total = Total + Roll4D6DropLow
    Next I
    RollStat4 = Total
End Function

1voto

johankj Points 255

Les joueurs de D&D sont rapides en maths. Je suis d'accord.

Si vous voulez beaucoup de 14-16, allez-y avec 4d6. Si vous voulez plus de 17 et 18, utilisez la méthode 3d6. Alors, vous construisez un moine ou un magicien ?

AlleGamers.com

AlleGamers est une communauté de gamers qui cherche à élargir la connaissance des jeux vidéo.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X