0.D-6156-gcb9471dd46-dirty
Will try bisecting it.
It was an intentional change (#31887). The UI not being updated however, is a bug.
Why can't we just wait longer while NPC is teaching? Like couple of hours. Right now, you are gaining about 1% at levels above 5, or something like that, and then you have to wait until he will want to teach you again. Does that really what was intended?
With followers, waiting for the next training session might be doable, but unless rebalanced, this makes teaching as quest reward worthless.
Referring to #33576. Something seems strange on the math for skill gain at higher levels, it moved my 3(9%) rifles skill to 3(9%) after the training. Based on "next level^2*100 " I would need 1600 training to level, so 100 should get me 6.25%. Factor in Pacifist (I'm guessing) to knock it down farther and round or floor to 0, but is it really 1/6th the training speed?
In my opinion, it might be better to have NPCs spend longer on training you or have reduced cooldowns on asked to train, when they have a high Trust score of the player. That value may be a decent gate to avoid picking up a follower and having them dump endgame skills on you immediately.
Read through some code, (nextlevel^2)*100 is accurate.
src/activity_handlers.cpp p->practice( sk, 100, old_skill_level ); is the most likely line candidate from the change to contain a bug.
void player::practice( const skill_id &id, int amount, int cap ) so the 3rd argument is the maximum skill it can train to, however that only seems to be used on line 10385 block, and wont trigger when equal. Thus the bug is probably that the learning is capped at the current skill. Will try to figure out github editing to submit a fix.
Fixed by #33577
No.
That didn't fix the UI not being updated, though that possibly should be a separate issue.
Most helpful comment
With followers, waiting for the next training session might be doable, but unless rebalanced, this makes teaching as quest reward worthless.