"I understand that it is a problem to invest in people and have them leave. But them's the breaks"
In reality it is easy to keep the people that you have invested in. Pay them significantly above market rate and treat them well.
If an employee who has been with you for 3+ years isn't worth 5x market rates to you then you haven't invested in them and trained them properly. If they are worth 5x market rates to you then pay them 2x market rates and most will stay.
I like what you're saying, and wish companies thought like that, but most lots of companies look at devs like fruit to be squeezed until dry, then discarded. This is particularly true in game dev. Granted, the devs are partly to blame for going along with this terrible plan, allowing themselves to be pushed to work 80 hour weeks, all-nighters, etc. A smart employer would actively prevent their employees from working like that, because you're right when you say that a dev can be worth a great deal more if they stick around a while.
In reality it is easy to keep the people that you have invested in. Pay them significantly above market rate and treat them well.
If an employee who has been with you for 3+ years isn't worth 5x market rates to you then you haven't invested in them and trained them properly. If they are worth 5x market rates to you then pay them 2x market rates and most will stay.