The Royals and All-Star first baseman Eric Hosmer have agreed on a $12.25 million contract for next season, avoiding arbitration with a deal that could take him to free agency. General manager Dayton Moore has long been optimistic that the Royals will be able to sign their homegrown star to a long-term deal, but the price has risen considerably.