NHL 13: GM Brain
Along with the addition of GM Connected, the new online multiplayer fantasy league, EA SPORTS NHL 13 will feature a new AI that will drive how the computer handles trades, drafts and more in modes which feature multi-season leagues such as Be a Pro, GM Connected and our Be A GM mode.
The development team worked hard on this AI overhaul, called GM Brain, and the amount of changes to how things work is pretty impressive. Thus for our GM Brain Deep Dive blog we’ve turned to Brian Krause, the software engineer who lead the development of this new AI.
Since the features I’ll be discussing are common to all modes that require some kind of CPU GM functionality, we ended up calling our feature ‘GM Brain’.
The first ‘in-game’ problem we had to solve was our previous Player Growth model. Previous NHL titles set every player in the league off on a trajectory of offensive growth, defensive ability growth, and athletic skill growth. The main problem with that approach was that there was no way to control it once it began. If enough players grew too well, we’d have salary creep, leading to too many players asking for too much money. We had no real way to manage overall league growth within our old system, so the old Player Growth Model had to go.
Every player in the league has a growth potential between half a star and 5 full stars. The higher the number, the higher a player’s potential overall rating. Green, yellow, and red are used to track the possibility of reaching their potential. White means they’ve stopped growing.
In NHL 13,we are now able to control growth patterns that will basically fall within historical tendencies we want to model. Games Modes Producer Gurn Sumal (and hockey stats/history junkie) analyzed all kinds of source data to see how often draft picks selected in a specific round went on to achieve greatness in the NHL, and how often they never went beyond the AHL. We are able to model and test drive scenarios using a tool that we created.
We were able to simulate 25 years of growth in the league with a single button click.
We can look at any one of the thousands of players who were created, grew, and retired, and see what their growth model behaved like, all in seconds, rather than hours or days.
Team Trade Blocks: Understand Roster Weakness & Needs
Once we were able to create a manageable player progression model, we were able to move on. One of the major shortcomings of how all CPU ‘GM’s behaved in previous EA SPORTS NHL games was the inability to understand their roster in terms of , what its weakness are today, and what kind of team the CPU will be managing next year, or in Year 5 (for example) of the mode.
One of the most consistent criticisms we read about was that CPU GMs did not historically make the smartest decisions because there was no ability to think long term. It only knew what it weakness was today, and that weakness could then change on a dime after a single roster transaction, causing it to make decisions that seemingly contradicted its needs from a week earlier. Now, thanks to the accuracy of the new Player Progression model, the CPU GM knows exactly what roster it has today, and is able to ‘grow its players instantly to predict what its roster will be like in the future. The ability to predict that it will be a Cup Contender in X years based on the players it has now, allows a CPU GM to understand what assets are expendable, and which ones must be kept at all costs. We could never do that before now.
Los Angles believes that based on its roster ‘now’ it is a Champion quality level team, but it knows that various contracts are coming up for renewal, and some assets are likely to retire, and others may not re-sign. Because of this, it wants to address its perceived most important weakness by shoring up its Top 4 Defenders, and is open to any player of that role. It is willing to give up a minor league starting goalie, and some of its younger players and picks.
With the Trade Block/Roster Analysis teams have a much longer term perspective on what their roster is today, what it will be like next year, and will select a Trade Block approach to address their specific situation. One thing you may notice from the above picture is another important upgrade to our Game Modes
Player Roles: Better differentiation between Players
We’ve introduced the concept of Player Roles into NHL 13, and this allows all CPU GMs to make much more logical choices in many key areas. There are 25 different player roles in our game, ranging from ‘NHL First Forward Line’, to the previously mentioned ‘Top 4 D’ above, all the way to ‘AHL Backup Goalie’. Our new Player Role system allows CPU GMs to have a better understanding of their current roster and across the league.
Roles are also directly tied into salary negotiations this year, and players who are ‘Top 2’ D will ask between 5 - 7 million dollars (which is the current league range for the NHL caliber top pair defensemen). Furthermore, we’ve updated the free agency/resign player logic to be more aware of the rarity factor of competitive roles in the league. If there only happens to be a small handful of Top 2 Defenders in the free agent pool, they’ll know they don’t have to drop their demands if there is an overabundance of Top 6 or lower defenders, as they aren’t competing for the same jobs.
Player growth also factors in to Player Roles & salaries. No longer can you sign the ‘up and coming prospect’ to an 8 year deal at 650K a year, and lock him in to a long term contract as he becomes the next Claude Giroux or Steven Stamkos. Now, players understand (via their growth model) that they may be an ‘AHL first liner NOW and will accept that type of money for the current year, but in three years, they’ll be good enough to be a first liner in the NHL, where they’ll expect bigger bucks . Asking this player to commit to a 3 year deal will mean you’ll have to cough up a few million for that final year of the deal, rather than having to pay a token fee over and above what they expects to sign for the current year.
Roles directly tie into the Trading Block, and how Trading of players are evaluated. The greater the need to fill a need for a certain role, the more the CPU team might be willing to put on the table (or salary it will absorb) to fill that need.
Player Trading: Yes, we’ve re-written it AGAIN.
Given the advancements in player growth, the CPU analysis of its roster (and the ‘Trading Block’) and team’s awareness of what its surplus and deficient roles are, we again rewrote the Trade AI again to work with all of these new features in tandem. We’ve updated the Trade Player with all new responses and rejection messages, which reflect the new logic in GM Brain.
Trade Rejection messages are divided into two principle components.
First, the CPU will describe how well it feels you’ve met its trade block ‘surplus’. This is computed as a % of the total trade value you are asking it to give up, in relation to which assets it is WILLING to give up. The second part of the response will be related to part 1, AND how much you met the WANTS of the CPU team, in relation to how open it is to giving up its assets.
There will be no guesswork in making trades this year, the CPU will tell you exactly why it’s telling you to take a hike, if it is unhappy with your proposal
Lines / Roster Management
Discussing trading above brings us to another key part of how we’ve revamped our logic this year. In the past, if you offered a CPU a trade offer that even put the team ONE dollar over the maximum team cap, or under the minimum cap, the deal would be rejected by the league. Thanks to some serious refactoring of our logics, the CPU now can ‘test drive’ the trade results by adding the players to its roster, making the necessary roster moves to be cap compliant (including call ups or send downs) and then analyzing the resulting roster to determine whether the trade is worth it
This process outlined above allows us to radically curtail the amount of players going through waivers, and make much better decisions on which combinations of players are best to be cap compliant.
If a team is in a tough position, and has to free up cap space, it can decide to choose change roster size, test all possible player salary combinations and compare them against each other Whether a team is a ‘Rebuilder’ or ‘Playoff Hopeful’ or ‘Champion’ for example, also weigh in to the decision making process, as does the proximity to the Trade Deadline and offseason.
Scouting / Rookies
Our growth model and role updates have allowed us to make some changes to how we create rookies, and how often rookies grow into the next coming of Wayne Gretzky. Scouting plays a key role for finding the next big thing, so we’ve taken some time to revamp scouting visits as well this year.
Above is an example of our new scouting profile screen
We can generate any fictional draft class, plus any number of scouts with various grades in the different world zones, and then test what the results would look like after a single visit, two visits, and three or more visits.
Notice how we’ve now given you actual ratings (as colored estimates) rather than the old system of 7.5 and what not. The scout will provide more accurate info each time a player is viewed, and the margin of error will reduce as this occurs. If the Scout is good enough, the ‘red’ you see will convert over to green (fairly accurate), or white, if the number is considered exact.
We’ve also abandoned the ‘offense/defense/athleticism’ concepts and broken all skaters down into six basic hockey skills, which are: Shooting; Puck Skills; Senses; Skating; Physical; and Defense. Each of these six skills have a varying number of ratings contributing to that skill, which are then in turn represented (similar to ‘Potential’) from between one half star to five full stars.
On behalf of the Game Modes team, I wanted to thank you for your continued loyalty to the EA SPORTS NHL franchise. We feel we’ve given you the best AI logic yet with GM Brain and hope you’re excited for the all-new GM Connected.