It would be nice to have the ability to give an alternate price to an object, depending on whatever circumstances you wish to apply to it via your scripts.
Just off the top of my head:
"Exceptional" items could cost more than items of poor quality.
Supply/Demand (The less of the item the npc is carrying, the more they charge you for it.)
Prices varying by region (Bananas cost less in Delucia than in Britain.)
I don't know how difficult this would be, but I can't think of a way to do this with scripts without losing the current "Sell Scroll" in its entirety.
First, it would seem like such an 'override' would have to be an item member. Considering there are already sell/buy price members, it seems a bit redundant and possibly a waste of memory.
Second, though, I'm not sure how you intend to trigger such an 'override', except by script. All of which leads me here:
Why not just script it? Use an OnInsert script on the sell container of the vendors to check for item quality or the 'region' of the vendor, and modify the sell price member.
Then have a periodic script running (perhaps when your vendor restocks, or any time periodically that you wish) that checks any supply/demand criteria you wish.
Any 'override' property would have to be altered in the above ways anyway, because you aren't really talking about something that the core can just automatically do; So it needs to be scripted anyway. So, I really don't see how anything beyond the existing sell price member would help.
I've only worked with POL from 092, and maybe it'd been so long I'm forgetting things, but has it not always been item.buyprice and item.sellprice, and have they not always been read/write?
Or are you perhaps thinking of the itemdesc.cfg element properties VendorSellsFor and VendorBuysFor? Since those are Config file element properties, they are of course 'read-only'. I don't recall item members by those names, though.
I was thinking when referencing "exceptional" and "poor" that the reference was the same thing I have in my crafting system. Things made from different ores cost different and exceptional/poor affects cost likewise. This is all by modding the .buyprice of the items as they're created. And this does override VendorBuysFor and VendorSellsFor.
Yes Marilla, I was thinking of the itemdesc.cfg members. I kep forgetting that there are more members than just those even though I use them all the time.
Must be getting old. Either that or I need a bio-memory upgrade.