There are many reasons this game is messed up, but while scripting was evil in the beginning, it has become a benefit to the current state of the game.
Hackers/Dupers/Scripters in the beginning assisted in the degradation of the economy by inserting a lot of expensive items and gold where there was already imbalance.
The more money you allow to be printed, the less valuable it becomes. UO's idea on how to balance this is by making items hard to obtain, but such a model is unsustainable because time vs. reward in most rare-drops is ridiculous.
What you are seeing is the culmination of poor economic design from the beginning, a Dev Team that realizes there is no saving it, and an antiquated game whose population is dwindling.
I honestly don't care if people are scripting because they are, in fact, sustaining the economy by keeping the prices in the game from going to even more ridiculous levels.
This is a ship with holes, it is sinking, and the only thing the captain and his crew can do is patch it up before it inevitably sinks to the bottom.
Our only chance is that ship builder EA will build a new ship, sail it out to us, let us aboard, and keep this going - *laughs*.
EDIT: I would like to offer a creative solution.
I firmly believe this game is beyond saving BUT I would like to offer my thoughts on a fix. Since they don't want to legalize scripting, take the economic power away from the scripters by introducing vendors (gold sinks) that are priced just below the effort-to-cost ratio of scripting - easily calculated. In essence, it would be cheaper to just buy resources from the vendor rather than from players or any website. What this also does is get gold out of circulation. And if you're thinking this will destroy the ability to go get any resources and sell them yourself in an honest way, you're right, but let's be honest, it takes too much and you would need to price those ingots way too high anyway to make it even worth your time.
The problem you run into with this (which is also an existing problem) is that scripters will buy from this vendor and turn the purchased items into a given turn-in spot. To fix this, I propose making the ID properties of vendors privately accessible from the client-side. This will disable the ability to use Last Target on vendors but not in, say, combat. I would imagine that scripts rely heavily on this...