As many of you know, any kind of damage to a shopkeeper makes him close shop in an instant. Accidents happen, and this can be very hard. Especially losing access to critical items such as a bag.
So here’s my suggestion, shopkeeper just gets angry and raise prices by x3 of his normal price. This will gradually drop down to his normal price range.
It gives you more options, feeling the punishment of getting really high prices, or sacrifice some turns (100-200 turns), coming back later. Either way it’s a lesson learned not to fight near the shopkeeper, but it’s at least still possible to get a critical item such as a bag.
IIRC it was recently changed to have shop give you a warning first before packing up. Edit: Do not fight in the shop. If you must fight in the shop, do not zap a wand of fireblast.
Our shopkeeper is a significant improvement from the original NetHack, where the shopkeeper would turn hostile and was among the more powerful creatures in the game.
Did he drop anything if you beat him?
His inventory, which I think included any gold you spent, if I recall correctly. His stuff stayed on the ground as loot too.
Now we’re talking.
An even worse one: Dungeons of Dredmor, where not only is the shopkeeper on the more powerful side (but beatable at higher levels); but if you manage to kill him or otherwise get away with stealing something, you’ll get hunted down by debt collectors. I’m not making this up.