Posts tagged "Contracts"
Improved identification of rookie contracts in real players leagues
The new player mood system introduced last year is working pretty well overall, but there are some small issues with it. One is related to a mood bonus given to players on rookie contracts, where it says "Eager to sign first non-rookie contract" and gives a big +8 bonus. This gives BBGM something like the NBA's restricted free agency, because it results in your drafted players being less likely to refuse to re-sign. (For FBGM and ZGMH, it only applies if you diasble the hard cap setting.)
Some people have noticed that the bonus was not correctly applied for some real players in historical leagues. Why? Because it was kind of hacky code. It identified "rookie contract" by comparing a player's draft year, the expiration year of their contract, and the length of a default rookie contract for their draft round.
This works fine for random players, since their rookie contracts all are generated by the game and all follow that same formula for length. But it's a bit tricky for real players leagues, or for custom league files, because they may have different length rookie contracts.
Today I have changed how rookie contracts are stored in the game. There is now an explicit rookie
flag in the contract, so a player contract looks like this internally if it is a rookie contract:
Smarter contract generation
Generating player contracts is tricky.
In the past, contracts were generated from a simple formula based on factors such as age and player ratings. That works pretty well, at first glance. Good young player? Big contract. Bad old player? Small contract.
The problem is, that's simply not how contracts are set in reality, and for good reason. It lacks a global perspective. Like if no team has max cap space, or if there are better free agents they'd rather spend it on, then it doesn't matter if a player thinks he "deserves" a big contract. This resulted in situations where sometimes good players would go unsigned in free agency, because no team had enough money to meet their demands.
Today, there is a new contract generation system in BBGM that solves this problem by incorporating a global perspective. Contracts are generated with knowledge of how much cap space teams have and what other players are on the market. So if, due to some random fluke, you find yourself with a very good free agent class in a league without much cap space, players will ask for less money. Or if you find the opposite, a poor free agent class in a league where teams have tons of money, players will ask for more money.
Give it a try and let me know what you think. Or read on for more details about how it works, which is pretty cool.