One of the things I need to do is manage our talent pool. It doesn't make sense to have every minor leaguer in MiLB in our league. Too much fodder.
With that in mind, I'm handling things this way.
*Add Players to our Free Agent Pool*
AFTER THE WORLD SERIES: Players on MLB Pipeline's Top 30 lists at mid-season get added at the end of the year. Anyone who played in the majors during the season also gets added after the World Series.
WHEN MLB SEASON BEGINS: Players on preseason Top 100 lists get added to our league when MLB's season starts. I will announce their availability before adding them. (Although I have to double check, I believe we have two of those guys in 2019.)
AMATEUR DRAFT: We draft 25 Amateurs during the draft in June. I generate a draft pool of the top 540 amateurs available in OOTP's list.
*Remove Players from our League*
At the end of the year, after updating the ratings, I retire any free agent who is a true 20/20 player (with scouting set to 100% accurate) in the game. I also retire anyone who doesn't exist in the OOTP end of season roster.
After the MLB Draft is completed and the signing deadline passes, I delete any player who didn't sign in MLB. If the deleted player was picked in the first five rounds, teams will get a compensation pick in the following year's draft, one spot after the previous year's pick. (Compensation round picks are ignored. So, if your 2/15 pick doesn't sign, your pick will be between 2/15 and 2/16 the next draft.)