Robbie, I agree ours are similar (As a matter of fact it was your proposal that gave me the idea for mine)
A few points to clarify on mine
Mine is also assuming there is a long protracted over 1 turn bidding war... the question is then whether it is acceptable or not to both sides. If not, then it is rejected and another bidding war has to start
The issue I had with yours (leading me to design my own) was player Honesty with their values
If I want to sell something, I want the best Deal, so if saying
"I wont take it for less than 100" gives me a better price than
"I wont take it for less than 50"
without a risk of no deal
Then The player wants to put a value in as high as they think will make a deal.
I think i'll clearify mine as well, In my system you never could put it 'I'll sell for 100 or 50.'
With most clauses the choice is strictly binary,
Yes this is perhaps possible, no it is not at all possible.
With other things, such as clauses which are semi-variable peace treaty of 10 turns vrs 20 turns vrs 50 turns, one has want a lot, want a little, would avoid, veto.
and then with resources you have "willing to sell very low numbers, willing to sell low, willing to sell, and I've got plenty"(and their equivalents in the buying)
Now, if you said willing to sell very low numbers, that would limit the max number which could be used to balance. Net effect, the trade is significantly smaller (perhaps a tiny bit more profitable for you, but only the smallest amount, and only if we use non linear equations to solve the min-max curves).
First order approximation: setting those would only determine the magnitude of the trade not the profit per unit sold.
For example, you state you want lasers, and you see they want food.
you could click willing to give Lots of food, run the equation and get something like
Tech for 30 food.
changing to "I value my food very highly" would probably return failour, if not it would at best return
Tech for 29 food.(perhaps, but far more likely to return fail, unless you actually have a huge surplus of food. so that 'I'm saving my food' is mostly ignored by the equation)
But if you were trading foor for minerals it would look like this
30 minerals for 30 food. (low value of food)
7 minerals for 7 food (low excess food, or low need for minerals)
and if you demand lots of minerals for low food, well that's not very diplomatic of you is it, and probably will result in failour. (if not then 7 for 7 again, or 8 for 8 perhaps something like that).
Why would I not put "High Value" on everything I want to sell and "Low Value" on everything I want to buy?
Unless that risks no deal... in which case it is simply prerejecting a deal.
yup it risks no deal, which it turn means it risks [slight] political ramifications, (if we implement such[i would myself])
In my method if you want a good price you have to be willing to wait for it... If you really want Laser Tech this turn you will pay a worse price for it than if you held out (up to a certain point) Essentially the deals would get Better and better until they stopped showing up because now the Other side prerejects them.
Where as in my system that is all finished, there is no play room for holding out, the prices are set by the political situation on both sides of the table, although one *might* be able to weasel an additional 1% gain out of the system, it would hopefully not be worth it, and would significantly risk failour. (which I would have block talks for a few turns, and carry some loss of respect between the two nations).
RP is right about the reason for our plans, in Civ 3+4 theere was a more(in civ3) or less (in Civ4) complex way to find the AIs rejection point. (useful because when the AI is preparing to go to war they will reject going to war with someone else)
This lets me think that if we actually want barter systems
1. You can't ask any player (through the diplomacy system) "what it wants" if you suggest a deal, that means you only send a deal that you have already accepted, if they accept it, the deal comes in force.
2. Limited number of proposals made per turn, probably 1 proposal made per turn and one counter offer.
3. To simplfy this you should have some metric/advisor that helps you know if, based on what your empire knows about theirs, this seems like a deal that is good for them (likely to accept) or bad for them (likely to reject/counter offer).
The above is easy since it can simply be modeled after the AI we design (just an AI that has to deal with limited knowledge about the "empire" it is making a "decision" for). Also the AIs themselves will need them to make a decent proposal.
I would not use the same criteria.
I would have something like
1. A system for elegantly building complex 'real'esk diplomatic treaties.
2. Dynamically determined pricing, which reflects both sides production/consumption, both sides access to alternative sources, and to a lesser extent future plans of both sides.
3. Un-manipulatable results. (this is to make human-AI, AI-AI, and Human-Human trades on equal ground). Trying to build an AI which is able to 'guess' what your willing to sell something for or not, and
try to accept/refuse/play until it 'feels' like it's 'won' is probably beyond our scope.
If treaties are 'manipulatable' by refusing them, then two humans playing one against another will no longer be the same as an AI and a human.
4. A system which easily incorporates differences in diplomatic ability/skill/tech's for the empires in question. A non manipulatable system can force even human vrs human trades to be equally one sided as Human AI trades if one side has huge diplomatic ability and the other very little. The low diplomatic side knows it( s/he will always get the short end of the stick no matter who they trade with they will get less for their product because they chose/are a low diplomacy race.)
I would also have 'unlimited'*as long as you don't trigger a failed talks event by demanding too much* number of runs of the treaty talks/ turn. Since an un-manipulatable system means you never NEED to do more then one launch *and won't profit more by doing so. (I would although have the system have a higher chance to fail each time its re-launched in a turn to prevent too much spamming looking for that last half % gain)*.
That's how I'm looking at it . . . and those are my priorities.
Best wishes Robbie Price