Remathilis
Legend
Rereads...Technically you can't use TWF with a rapier...as it is not a light weapon.
Huh. I thought only the off- hand weapon had to be light. So no rapier + dagger in basic.
I wager there's a feat for that.
Rereads...Technically you can't use TWF with a rapier...as it is not a light weapon.
TWF Rangers should be interesting too, I'm sure they'll be able to dual-wield scimitars and the like.
My guess is they'll get a fighting style like bonus at 3rd, similar to Fighters. TWF version will probably be that only the off-hand weapon must be light. But that's just a complete guess on my part.TWF Rangers should be interesting too, I'm sure they'll be able to dual-wield scimitars and the like.
TWF rogue
the extra attack is a bonus action? this would make it a costlier option for rogues, I think.
Rereads...
Huh. I thought only the off- hand weapon had to be light. So no rapier + dagger in basic.
I wager there's a feat for that.
That is a very good point actually, and I'm glad for it. Before, rogues would always go TWF as an optimal path. Now there is a trade off there, so I'm guessing you will see a rogue mix between the styles which is perfect imo.
That is a very good point actually, and I'm glad for it. Before, rogues would always go TWF as an optimal path. Now there is a trade off there, so I'm guessing you will see a rogue mix between the styles which is perfect imo.
Agree that it's a good design decision to open up more rogue alternatives. I just wish they'd defined sneak attack to work with all rogue weapons -- it would encourage more thuggish rogues to go the longsword route. As it stands, it would be foolish for a rogue to use a longsword, since you can't sneak attack with it, nor can you dual wield a second weapon that allows sneak attack.
Agree that it's a good design decision to open up more rogue alternatives. I just wish they'd defined sneak attack to work with all rogue weapons -- it would encourage more thuggish rogues to go the longsword route.
Agree that it's a good design decision to open up more rogue alternatives. I just wish they'd defined sneak attack to work with all rogue weapons -- it would encourage more thuggish rogues to go the longsword route. As it stands, it would be foolish for a rogue to use a longsword, since you can't sneak attack with it, nor can you dual wield a second weapon that allows sneak attack.
Sounds like a feat to me
import random
def dicesim_gwf(nrolls, apr, cn, pn, an, ac, ndice, dicetype):
t = 0
h = 0
for i in range(nrolls): # repeat N experiments
for j in range(apr):
att = 0
matt = 0
att = random.randint(1,20)
matt = att+pn+an
if matt >= ac:
h = h+1
t = t+an
if att >= cn:
for k in range(ndice): #critroll 1
r = random.randint(1, dicetype) # roll die dicetype
if r <= 2: # reroll 1 or 2
r = random.randint(1, dicetype)
t = t+r
for l in range(ndice): #critroll 2
r = random.randint(1, dicetype) # roll die dicetype
if r <= 2: # reroll 1 or 2
r = random.randint(1, dicetype)
t = t+r
else:
for m in range(ndice):
r = random.randint(1, dicetype) # roll die dicetype
if r <= 2: # reroll 1 or 2
r = random.randint(1, dicetype)
t = t+r
a = float(t)/nrolls # average dpr
return h,t,a
def dicesim_twf(nrolls, apr, cn, pn, an, ac, ndice, dicetype):
t = 0
h = 0
for i in range(nrolls): # repeat N experiments
for j in range(apr+1):
att = 0
matt = 0
att = random.randint(1,20)
matt = att+pn+an
if matt >= ac:
h = h+1
t = t+an
if att >= cn:
for k in range(ndice): #critroll 1
r = random.randint(1, dicetype) # roll die dicetype
t = t+r
for l in range(ndice): #critroll 2
r = random.randint(1, dicetype) # roll die dicetype
t = t+r
else:
for m in range(ndice):
r = random.randint(1, dicetype) # roll die dicetype
t = t+r
a = float(t)/nrolls # average dpr
return h,t,a
def dicesim_arch(nrolls, apr, cn, pn, an, ac, ndice, dicetype):
t = 0
h = 0
for i in range(nrolls): # repeat N experiments
for j in range(apr):
att = 0
matt = 0
att = random.randint(1,20)
matt = att+pn+an+2
if matt >= ac:
h = h+1
t = t+an
if att >= cn:
for k in range(ndice): #critroll 1
r = random.randint(1, dicetype) # roll die dicetype
t = t+r
for l in range(ndice): #critroll 2
r = random.randint(1, dicetype) # roll die dicetype
t = t+r
else:
for m in range(ndice):
r = random.randint(1, dicetype) # roll die dicetype
t = t+r
a = float(t)/nrolls # average dpr
return h,t,a
def dicesim_duel(nrolls, apr, cn, pn, an, ac, ndice, dicetype):
t = 0
h = 0
for i in range(nrolls): # repeat N experiments
for j in range(apr):
att = 0
matt = 0
att = random.randint(1,20)
matt = att+pn+an
if matt >= ac:
h = h+1
t = t+an+2
if att >= cn:
for k in range(ndice): #critroll 1
r = random.randint(1, dicetype) # roll die dicetype
t = t+r
for l in range(ndice): #critroll 2
r = random.randint(1, dicetype) # roll die dicetype
t = t+r
else:
for m in range(ndice):
r = random.randint(1, dicetype) # roll die dicetype
t = t+r
a = float(t)/nrolls # average dpr
return h,t,a
I was fiddling around and wrote a monte carlo sim for all 4 fighter fighting styles in Python.
<snip>
Python is free and easy to install if you want to play around with your own inputs or change the code.
TLDR: The Op is correct Fighter 1-4 does the most damage with TWF until 5th level where the fighter does the most damage with GWF. Outstanding wildcards that could change this recommendation are feats and magical weapons.