FM27: support tactics and set pieces, and add a selections table
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
Research direction
Start by reading the existing tactics() and set_pieces() entry points, then inspect how tables are exported by the CLI and checked by validate_save. Use the FM27 save data and matching screens mentioned in the issue to verify the parsed records. Done means FM27 tactics and set pieces are supported, selections can be exported and validated, and the labels match the available evidence.
Written by the indexing model from the issue text.
Description
No save files or real data
- I have not attached or linked a save file, screenshot, or any real player data
What is missing
On FM27, fmsave 0.8.0 refuses tactics() and set_pieces(). There is also no table on either edition for a team's chosen starters and substitutes. Position and role labels are missing from tactic slots too.
How the results compare with the game
The comparisons below used a local build, because 0.8.0 refuses this on FM27. I compared the save from 23 July with the Tactics screen.
| Item | Compared with the game |
|---|---|
| Tactic name, style and mentality | Match |
| 11 in-possession positions and roles | All match |
| 11 out-of-possession positions and roles | All match |
| Starters | All 11 match |
| Substitutes | All 13 match, in screen order |
set_pieces(), 60 records |
Not compared |
Suggested approach
- Tactics and set pieces: FM27 stored records can be read with their own signatures.
- Labels: add positions and roles as
CodedValueenums. I used the on-screen abbreviations as member names, because a full name would be a guess. - Selections: add a
selections()table for the managed club, with its CLI export, and include it invalidate_save.
What remains uncertain
- I checked one career, from the start of the first season to early August. I will send the saves and matching screens by email.
- The role labels rest on one Tactics screen, so roles I have not used stay unlabelled.
- The team instructions stay raw. Naming them needs saves that change one instruction at a time. I have a screen of one set of instructions if a first mapping would help.
- A named set-piece routine is rejected for now, because I have no example.
- The starter slots only make sense for the tactic a team has selected, and I cannot identify that tactic in the save.
Versions
- fmsave 0.8.0 (
mainat 418c837), Python 3.13.13, macOS 27.2 - FM27 build
27.0.0+2486695
- Dominant language
- Python
- Stars
- 28
- Forks
- 8
- Avg merge
- 42m
- Merged PRs (30d)
- 33
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from rhiever/fmsave
-
good first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
Maintainers usually reply within 1 day
-
good first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
training_man: 27.0.1+2494687 writes a non-zero block trailer, training/mentoring readers fail closedOpen
Difficulty 4/5 1-2 days Newbie friendliness 49/100
rhiever/fmsave#82 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
rhiever/fmsave#77 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 43/100
rhiever/fmsave#75 · 2 comments ·
Maintainers usually reply within 1 day
Similar issues
-
needs-triage
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
gke-labs/kube-agents#5671 ·
Maintainers usually reply within 1 day
-
docs(auth): Method B step 4 should tell users to tick "Use this client for an AI-powered agent"Opendocumentation next-release v0.9.6
Difficulty 1/5 Under an hour Newbie friendliness 88/100
khuisman/mcp-gee-sweet#1446 ·
Maintainers usually reply within 1 day
-
model:sonnet runtime:claude security size:S
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
FootprintAI/Containarium#3671 ·
Maintainers usually reply within 1 day
-
HolidayBase: reassigning `language` does not re-initialize translations or re-populate holidaysPossibly taken @shikhabhadoria claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
vacanza/holidays#4116 · 1 comment ·
Maintainers usually reply within 1 day
-
bug CLI exec
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 1 day