I just had an idea that could be used in elemental. In order to make diplomacy easy to manage, easy to mod while having a lot of diplomatic options, I though that everything could be managed via treaties rather than trading things like in civ. By treaties I mean like in Master of Orion 2 Trade and research treaties.
The thing is that you could have a dozen of type of treaties for various type of resources, services and even spell effects (ex: our global spells won't affect each other). The treaty will generate extra income not taken from the player's resources. BUt like in MOO, it might take some time before the treaty yeild a positive output.
You could either always use reciprocal treaties: "both players gain the same thing". Or asymetrical treaties: "I will get gold from this treaty while you will get technology points". Various mix and match could be possible.
The idea of a treaty is that it's binding. So you can't simply do your trade and then abandon your opponent, you need to keep the treaty active to benefit from it.