Starting with version 3.1.x, nethack added in a weapon skill system, where you are penalized for lack of skill with weapons, and can gain skill in some weapons as you play. The skills penalty/bonus is added to your other to-hit factors to affect the odds of hitting your opponent. Another penalty/bonus is added to the damage you inflict.
The first part, the "to-hit" value is based on a large and complicated number of different factors, but they are all turned into a single number, x, which is the number of chances in 20 of hitting your opponent.
This number is calculated as follows - your experience level, your luck, and your opponent's armor class are all added together, along with one free point. There are many other factors that somtimes come into play, but this is the heart of the calculation.
Also added in is the enchantment of your weapon, and its intrinsic to-hit value (the dwarvish mattock is "clumsy" with a -1 to-hit, whereas a crysknife is easy to use with a builtin +3 to-hit, but most weapons are +0). There are penalties if you are weak or lack dexterity, and bonuses if you are strong or you have good dexterity. There are also penalties if you are stunned, trapped, sick, etc. And similarly, there are bonuses if the monster you are attacking is asleep, fleeing, scared, trapped, etc.
Added to this mix is your weapon skill for your current weapon.
The skill system assigns four skill levels to different types of weapons, Unskilled gives you a -4 to-hit penalty. Basic give no penalty or bonus. Skilled gives a +2 to-hit bonus, and Expert gives a +3 bonus. So if everything else adds up to 10 to-hit points, the skill system can change this down to 6 chances in 20, or up to 13 chances in 20 to hit.
Once you do hit your opponent, the damage (hit points) done is calculated. Again, there are several factors involved, although it is less complicated that to-hit values. Damage is based on weapon type, which gives a range of possible damages based on different equations for each weapon, and is modified by some special bonuses and penalties specific to your weapon and your character and your alignment and your opponent.
The skill system also modifies the damage you do. If you hit the monster, you lose 2 damage points if you are Unskilled, you gain 1 point if you are Skilled, and 2 points if you are Expert.
This means that weapon selection can lead you to very different choices than prior to the skill system. And these choices can vary, depending on your experience and luck.
To advance with any weapon, you need to practice. Use the weapon a lot. and a + will show up in the list of weapon skills when you can advance. You have to manually advance the weapons you've practiced with. There's a very important reason why this doesn't happen automatically. The reason is "skill slots". The skill slots are designed to keep you from mastering all of your possible weapons. If you have no available slots, it doesn't matter how much you practice, you still can't advance.
The number of slots you have is identical to your experience level. However, you use one slot to reach Basic (except for starting weapons), two MORE slots to reach Skilled, and three MORE slots to reach Expert. So by experience level 12 you can only become Expert in two weapon types.
The results are as interesting as they are complicated. A weapon that is great for one class may be worthless for another. Even artifacts are affected by this system, although it is hard to figure in artifacts with special features.
Because it is so complicated you can't really use a table to lookup the best weapon. I have a damage calculator, which will rank all of the weapons, based on your character, and base "to-hit" value (remember this is 1 plus experience level + opponent's armor class + your luck). You can then select weapons for advancement and see how their ranking changes. One important caveat - the program ranks artifacts as if they were doing their special damage. Most artifacts only do special damage against a small subset of monsters, so this is a bad measure. For more information on artifacts, see my article What is the best artifact weapon?.
I have used this calculator (and a little actual gameplay) to come up with some recommendations for some of the characters: Healer, Samurai, Archaeologist, Knight, Elf, and Tourist.
I was better off with the halberd, the best (if heavy) polearm, and Basic skills (no bonus or penalty). But what are the ideal choices? A healer can be an expert on four weapons: Knife (e.g. scalpal), quarterstaff, darts, and unicorn horns. Darts and quarterstaffs are pretty wimpy, but unicorn horns are powerful, and have magical properties to boot. Knives gives you access to the crysknife. The crysknife is not quite as powerful as a unicorn horn, but it has a +3 intrinsic to hit which will combine nicely with Expert skills (also +3).
Even being granted an artifact through offering (and getting basic skills) may not be such a great deal. Just to make my point, lets compare the Vorpal Blade, the crysknife, and the unicorn horn.
|Weapon||intrinsic to hit||skills maximum to hit||artifact to hit||small monster damage||large monster damage||skill damage bonus||weight|
|Vorpal Blade||+0||+0 if sacrifice gift||+1 to +5||8+1||12+1||0||40|
|unicorn horn||+1 *||+3||+0||12||12||2||20|
- restricted (unskilled)
|two weapon c.||b||b||-||b||-||s||-||E||E||s||s||-|
|My Home||Professional Home||TomSaraZac Home||Work Email|