Writing from a purely technological analysis based on the real world, the only practical reason I know of for why dwarves can't make basic guns or canons right now is because it's not supported in the game. They have all the precursor technology needed for it, and all the materials, and the technology level of the world is plenty high enough. The reason it might seem "high tech" to us is merely because in the history of the world,
European alchemists were absolutely miserable at chemistry. Gunpowder was not invented by the Europeans, however; they imported it from people who weren't just obsessed with turning lead into gold and fabricating life. The Chinese have written references to experiments with combining sulfur and saltpeter to explosive effect as early as the 800s, and gunpowder saw military use by 900s. The earliest surviving record of a written gunpowder recipe is from 1044, and it has multiple recipes for military gunpowders, depending on the type of weapon the powder is developed for. By that time it was already important enough that they had export bans on saltpeter and sulfer to prevent other nations from copying their technology. If we were to set a "1300 cutoff", the Chinese already had hand guns, hand grenades, cannons, chemical weapon smoke bombs, and trebuchet-thrown bombs, and Muslim chemists was also developing gunpowder-based explosives for battle and refining the gunpowder recipe to modern standards. Meanwhile, European armies were still coming to the conclusion that, oh cool, bows are essentially obsolete next to the crossbow for military purposes. There's really no technological or in-world explanation for
dwarves being unable to develop gunpowder, and it doesn't break the sense of high fantasy for me at all, because
I know that fantasy can in fact be bigger than Europe. Gunpowder isn't steampunk, it's not even high tech or post-fantasy era technology for a lot of the world, it's just not
Tolkien. But the same can be said for crossbows and plate armor.
Electricity generation and use, on the other hand, is more out of reach for the dwarves. Although they technically have most or all the materials and manufacturing technology they would likely need to wire up the caves, string Christmas lights everywhere, and build a generator room, there is a large knowledge gap before they could know how to do that. They chiefly need to understand magnetism, electric charge, and electromagnetic induction first. Without magnetism in the game world in the first place, they aren't going to get very far with that. Even once they have it, there is so much they would need to understand before they could manage it. This is what makes electricity much more "steampunk" -- robust understanding of electricity didn't come around until very late in history, because it's complicated, and it's not just sitting around to be studied, like the understanding of mechanics that goes into the existing machines. Electromagnetic fields are invisible and it's very hard to figure that kind of thing out on accident -- it's a very big step to go to electricity, even if you're sitting on top of a mountain of magnetite and building mechanical steam defenses.
I wouldn't quite hate it if the dwarves had electricity, and I would probably leave it enabled if it was an init file option, but it is pretty implausible for them to know how to use it. Gunpowder on the other hand, from just looking at the game world, I'm almost surprised they don't have it.
[ November 04, 2007: Message edited by: Jonathan S. Fox ]