So the issue is that football players in real life, most of the time they reach their full potential by their 4th-5th year as a pro, so I wanted to reflect that by making a flag that permits a player to have progress or not. If the player is older than that, they have reached their full potential unless they have a Dev Upgrade by having a good season. The way I decided how much a player can progress was by making a table in which normal dev players have 1% of chances to become a 95-99 overall rating player. Then when the range is decided, there´s another formula that randomizes their overall within the range, for example:
Player Austin Fort, Age 21, Dev Trait = Normal, Years pro = 0, OveralRating = 68
The first check is to have: YearsPro below or equal to 4, AND have a Projected Overall calculated = 0 AND ContractStatus = Signed
Projected overall = 0 if the player ContractStatus = "Draft" is equal to "0"
Projected range = 0-65 "1%", 65-75 "85%", 76-85 "10%", 86-95 "3%", 96-99 "1%"
So the projected overall for example is 76-85
Then comes Projected Overall calculation = Random (76,85)
Let´s say it gives him an 80 projected overall
So the player must progress in 4 years, from his 68 overall to his projected 80 overall
That gives the player 12 skill points in order to split them in 4 years, 2 progressions per year
Let´s say that the first year progression gives him 4 points, the normal thing is that the player progress from 68+4 = 72, but if the user prefers, maybe he can invest in other attributes that don´t raise the player overall to 72, instead of to 70
So the current formula that I have to calculate these skill points per progression (2 per year) is:
ProjectedOverall - OverallRating / (4 -YearsPro)
80 - 68 / ( 4 - 0 ) = 4 Skill points
The idea is that the player gradually receives fewer skill points, but I haven´t hit the sweet spot for balance, because free agent player that sign with teams and they are in their 4th year, the formula gives them a lot of points:
Player Case Stone, Age 24, Dev Trait = Normal, Years pro = 3 (YearsPro values start from 0), OveralRating = 72, ProjectedOverall = 80
80 - 72 / (4 - 3) = 8 Skill points
If someone has an idea how to balance this?