All tests done with pcm 11 ; it matches the ones done here with pcm 12 and from my reading I understand no change have applied to pcm 13.
What for?
To optimise choices regarding training program and trainer selection.
Highlights:
1. Training program got a multiplication effect on the speed each rider’s attribute increase (exc. FTR that doesn’t change) according enclosed roster:
2. A trainer, if coaching 8 riders or less, gives a bonus linked to the note related to the chosen Training Program. If a trainer got a note of 10 for Time trial, the progression speed is increased by 10*10=100% for all rider’s attributes.
Example: X follow a TT training program and is coached by someone rated 10 for TT (who follows 7 riders). FL attribute progression is multiplied by 3 (program) and by 2 (100% coach bonus). In total the progression speed is multiplied by 6 (2x3).
MO attribute of this very same rider has no program bonus but still benefits from the trainer bonus, i.e. progression multiplied by 2.
TT is thus multiplied by 10 (the maximum factor any attribute might get).
3. Progression occurs only during Training period. « Fire » a Trainer end of October and hiring one (possibly the same) as at the 1st of Jan thus bears no cost. (We should pay the 2 months sign on that match the 2 months salary saving and no progression has been lost.)
I have enclosed an xls that allows comparing programs x trainers effects.
(cannot attach it so here is the link to the French forum where I posted it )
When “gene_i_day_progression“ (Cyclist table of the db) reaches 0, the “capital_f_XX“ value is compared to XX attribute note, if it is lower, XX doesn’t change, if it is superior to XX, the XX note increases by 1 and “capital_f_XX“ becomes “capital_f_XX“ - XX ; if “capital_f_XX“ > 2xXX + 1, XX increases by de 2 and “capital_f_XX“ becomes “capital_f_XX“ - XX – (XX+1) ; etc
Exemple: when “gene_i_day_progression“ reaches 0,
“capital_f_accele“ = 72.268, ACC = 65,
ACC increases to 66, remains 72.268 - 65 = 7.268 in “capital_f_accele“
“gene_i_day_progression“ decreases by 1 every training day from a random value. (I have done no test about it as it has very little impact on mid-term progression).
Variables “capital_f_XX“
Progression key factor thus is “capital_f_XX“. Every training day, it increases by:
FnTrainer[Base] x YearFactor x PotentialFactor x ProgramFactor.
Base
Base depends on the chosen game speed evolution and a random number. For the default 0.5 seep evolution parameter, Base is 0.1 on average with a random value between 0 and 0.2, different for each attribute and each day. Distribution is Uniform (same odds to get any value between 0 and 0.2).
FnTrainer
FnTrainer is first linked to the Trainer’s note related to the chosen training program : = Max (Note x 0.02 ; Base)
Example: if Trainer is noted 5 for the training program chosen by the rider and today random values are :
0.01254 for “delta_capital_f_FL“,
0.14568 for “delta_capital_f_MO“
and 0.098 for “delta_capital_f_CLM“,
FnTrainer[Base] returns :
0.1 for “delta_capital_f_FL“ and “delta_capital_f_CLM“
and 0.14568 for “delta_capital_f_MO“.
Remarks:
- Formula works if no trainer as well (note of 0), i.e. we just take the Base.
- Random effect is nil if the trainer’s note is 10 : Max (10 x 0.02 ; Base) = 0.2 whatever the random Base is.
- I let you re-do the math but bottom line means on average the bonus is 10*Trainer’s Note. Moreover the lower the Trainer’s note, the higher the random effect.
FnTrainer is then linked to numbers of riders the trainer is coaching: 8 or less equal no change, above 8 the note is reduced by 10% by extra rider.
Example: if the trainers are in charge of 10 riders and is rated 5 for the used training program, assuming a random value of 0.14568 for “delta_capital_f_MO“, the value used will be 0.14568 * 0.8 = 0.116544.
Warnings: I got some stupid values in my simulations, either I missed an effect or I made a mistake. The formula is however working for more than 98% of the simulated values.
I did not review the effect of number of riders per trainer, just copy/paste from this post. (I never train more than 8 riders per coach).
Year and Potential Factors
I group this as we cannot master it unless we “cheat“ and go to the database (I never do that except for this simulation game created just for the purpose of understanding all of this).
YearFactor is linked to “gene_i_year_progression“ (Cyclist table). This variable is defined per year and per rider and got a value between 1 and 5, providing multiplication effect of:
1 -> 1 (5% to get a value of 1 each year)
2 -> 2.5 (20% chance)
3 -> 5 (50% chance)
4 -> 7.5 (20% chance)
5 -> 15 (5% chance)
PotentialFactor gives a bonus equal to 20% x (XX LIM – XX) for each rider’s attribute.
Example: A rider is rated 60 in FL with a FL LIM at 70, he gets a bonus of (70 – 60) x 20% = 200% (multiply the Base by 3).
Remarks:
- YearFactor though unknown will dramatically impact the rider’s progression, a 5 in particular providing a real boost. In the tool I assumed an average factor of 3, that would be correct 50% of the time.
- A rider at full capacity will not increase his note despite the above formula (a capping is applied).
- The attribute limit is also unknown (if not looking in the db) but the number of * available in Potential allows a pretty good estimate.
ProgramFactor
Certainly the most known as the table circulates in all forum. I however complete and modify it to provide with the exact multiplication factors (c.f. 1st post).
To be kept in mind: PRL use same value as TT ; and a 3 actually provide a 400% bonus (1=100% bonus, 2=200% bonus)!
Edited by duxili on 04-11-2013 16:53