Improved contract negotiations

I would like to see a more comprehensive contract negotiation process implemented in the game.
Ideally the negotiation process take into account several factors prior to the beginning of negotiation and would impact several factors after the negotiation is complete such as airline happiness, number of flights committed, etc.

I know this is a ton of code work, building the decision logic and maintaining the data but a basic version of this feature was in the Mechwarrior game many years ago and it always impressed me. Every game since then with a contracting system has never really had an in-depth, semi-realistic negotiation system.

I think it would be good to have a regular negotiation timeline, similar to how it typically occurs in regular business deals. Contracts should come up for review every 5 years; I think that would be a good length of time.
There would need to be two different negotiation protocols, one for supplies and services and one for airline.
Airline negotiation
At the start of the negotiation process you would need to know several factors:

  • average number of flights for the airline annually over the last five years
  • total number of flights for the airline over the last five years
  • average number of flights for all airlines annually over the last five years
  • total number of flights for the airline over the last five years
  • cost to serve the airline:
    • cost of fuel and supplies
    • operations costs allocated to the airline (repairs, wages (admin staff, janitors, etc.)
  • revenue generated by the airline directly
    • landing/takeoff/pushback/repair revenue
    • revenue from fuel and supplies
  • profitability of the servicing the airline compared to other airlines, possibly based on aircraft size
    If the airline was more or less profitable than others then you can negotiate based on that information.
    You should also be able to negotiate the number of flights that are allocated to you by that airline and potentially “rumours” of offers that the airline is getting from other airports for their business. It would also be nice to negotiate a complete service “package” where the cost of services and supplies can all be individually moved up or down to create the package.
    When the contract is submitted for review, it would be good to have some kind of random likelihood that the contract is accepted. If the new contract is cheaper overall than the current contract (per flight?) then the probability of being accepted is high (over 90-95%). If the new contract is high, maybe the probability fluctuates with the percent it is over the current contract, 1-5% higher has a 90% probability, 5-10% has an 80% probability, etc.
    When the contract comes up for negotiation next time you would negotiate based on the current costs and services.

Supply/service negotiation
When negotiating supply and service contracts, similar information should be available:

  • total fuel, meals, de-icing, etc. used in last 5 years, with costs and revenue
  • average annual fuel, meals, de-icing, etc. used in last 5 years, with costs and revenue
  • negotiate price based on minimum amounts used (i.e. $0.15 per liter for A1 fuel if the airport uses a minimum of 100,000 liters, otherwise there’s a penalty).
    There could also be random occurrences where a new competitor comes on to the market and tries to get the CEO to break their current contract by offering limited-time deals like 50% off the first 100,000 liters of fuel or 5000 meals, etc.