Hit location systems are annoyingly complex, a bitch to code, and somewhat off-flavor I think. What I am suggesting is basically your first suggestion, except that I don't want extra damage. That would be crits, and I don't think we need crits here. I'll explain this with a simplified model, since I don't know the ins and outs of DoomRL's specific system.
Let's say that to determine whether you hit something or not, you roll a d20, and hit on 11 or better. If your weapon does 1-10 damage, then rolling an 11 always does one, rolling 12 always does two, and so on, until a perfect hit scores max damage. With a trait increasing your chance to hit, you basically bring up the floor. At +4, 7 or better counts as a hit, and you score max damage on 16 or higher.
Note that distance still affects shotguns in basically the same way it does now, since there is a distance penalty on to-hit rolls. It might be slightly less extreme unless damage for weak hits were scaled down quite sharply, though.