hey sorry for the delay in response... but since the new game engine we overhauled how substitutions worked I thought I'd pipe in here...
ok... so lets start with how subsitutions are made in general.. and then i'll explain how the subbing strategy works on top of that.
So first off every player gets a rating for each position... how good a PG he is vs SF etc...
Then those base ratings get modified with factors like how tired he is.. what his foul situation is... whether its a blowout or not (starters rest).. whether he's currently in the game or not (all else being equal people should stay in the game)...whether he's a foul shooter (obviously can't sub him out if he is)..etc...
ok.. then from those modified ratings they get further modified by the depth chart...
basically the different subbing options modify the strength of that modifier. Starters get the largest modifiers, followed by backups, and then reserves... if you aren't on the depth chart you don't get any modifier.
So there are two different strengths of the modifier.. the difference between someone on the depth chart and not.. and the difference between different spots on the depth chart. We are still playing around with the values.. but in general.. strict depth chart should make the difference between being on the depth chart and not HUGE. Coach decides should be a sort of normal/weak modifier... so that if you set your lineup totally screwy that the coach can override it. Moderate is somewhere in between those 2.. and strict till 4th is just what it sounds like.. strict depth chart till the 4th.. then coach decides.
So the final step.. is once you have all these ratings how do you figure out who should be in the game... well we have recently changed this approach to be one that is sort of stupid.. but we think more robust to some of the special cases you run into. Obviously we can't consider every possible combination of lineup cause that would be too many. So what the coach does is look at each position and look who he's got on the floor and who is on the bench.. and starts making substitutions where the best bench player is better (as determined by this modified rating).. starting from the spot with the biggest difference moving down. This obviously isn't guaranteed to be optimal.. but its also more realistic for how a coach makes decisions.
We are definitely open to making more options, or tweaking the values on the options we have. Some people have complained for instance that strict depth chart isn't strict enough.. but forgetting the bug that happened when we added the free throw shooter piece.. i think this seems to work a lot better than the old way we had going.
Forrest