AutopilotSBC is a browser extension for the EA SPORTS FC Ultimate Team Web App.
It started as a way to make SBC solving faster, less repetitive, and a lot more controllable.
Instead of rebuilding squads over and over by hand, the extension adds its own controls directly into the Web App so you can solve a single challenge, repeat a challenge multiple times, solve a full set, or run a saved multi-step sequence.
This repository is the extension itself.
AutopilotSBC has a few different solver flows depending on what you are trying to do:
Solve Squadfor a normal one-off challengeMultifor repeating the same SBC several timesSolve Entire Setfor working through an SBC groupSequence Solverfor saved multi-SBC runs with ordered steps and loops
On top of that, it gives you real control over the player pool the solver is allowed to use. That includes things like rating limits, storage-only solving, tradable filtering, special-card handling, and local exclusions when you want one solve to behave differently from your defaults.
The main install source is now the Chrome Web Store.
Install AutopilotSBC from the Chrome Web Store.
After installing, open the FC Web App and refresh the page if it was already open.
- Chrome or another Chromium-based browser
- access to the EA SPORTS FC Ultimate Team Web App
- Clone or download this repository.
- Open
chrome://extensions. - Enable
Developer mode. - Click
Load unpacked. - Select this repo folder.
- Open the FC Web App and refresh the page.
- Open an SBC challenge.
- Click
Solve Squad. - Review the result.
- Apply and submit if it looks right.
- Open a repeatable SBC.
- Click
Multi. - Pick the run count and options you want.
- Start the run.
- Open an SBC set page.
- Click
Solve Entire Set. - Choose which challenges should be included.
- Start the run.
- Open the SBC hub.
- Click
Sequence Solver. - Build or load a saved sequence.
- Start the execution run.
Most of the controls live inside the Web App under the extension's solver settings area.
Depending on the flow, you can work with:
- global defaults
- per-run overrides
- challenge-specific filters
- local league and nation exclusions
- rating limits and pool restrictions
The idea is that you should not have to keep changing your global setup just to make one challenge behave differently.
If you want to poke around in the code, these are the main places to start:
- manifest.json
extension metadata, permissions, and injected assets - background.js
background/service worker logic - content-script.js
bootstraps the extension into the Web App - page/ea-data-bridge.js
main injected page logic, UI wiring, automation, and app hooks - page/ea-data-bridge.css
extension UI stylesheet solver/
solver logic, chemistry helpers, worker entry, and GLPK assetsdata/
extension data files such as the built-in changelogicons/
extension icons and packaged assets
Feature ideas, feature requests, and pull requests are all welcome here.
If you have an idea that would make the extension better, open an issue for it. If you want to build it yourself, open a PR.
Good contribution areas:
- solver improvements
- new features or workflow ideas
- smarter player-pool handling
- UI cleanup and consistency
- regression coverage through replays
- stability when EA changes Web App behavior
If you open an issue or PR, it helps a lot if you include:
- a clear description of the idea or problem
- the user-facing effect
- screenshots for UI changes
- logs if the issue is solve/fetch/apply related
- any replay or manual validation you ran
Small, focused pull requests are easier to review and safer to merge than large mixed ones.
If you are not sure whether something fits the direction of the project, open the issue anyway. I would rather have people throw ideas out there than hold back because they assume it is out of scope.
If you have been enjoying my work and would like to support what I do, you can find me over on Ko-fi.
More contribution notes live in .github/CONTRIBUTING.md.
- This extension is tightly coupled to the EA FC Web App DOM and controllers, so upstream UI changes can break hooks or selectors.
- The page bridge is still a very large file, and I am cleaning it up over time.
- preferences are stored locally in extension/browser storage
- solving does not require a hosted backend
- the extension operates against your active Web App session in the browser
This is an unofficial automation tool for the EA SPORTS FC Web App.
It is not affiliated with or endorsed by EA.
Use it at your own risk.
This project is licensed under the GNU General Public License v3.0.