Add the days and sessions of a training week

Open
#46 2 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
55/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
python
Domain
data

Research direction

Start at training(), which the issue identifies as returning weeks, and read how its current training data is represented. Check the existing enum and CodedValue patterns before deciding how to represent days and their three sessions. Done means training weeks expose the days and stored session codes, including unnamed codes; the issue notes that some names and FM26 behavior remain unverified.

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

training() returns weeks, but not what happens on each day. The game shows three sessions a day, on a calendar.

How the results compare with the game

The comparisons below used a local build, because 0.8.0 refuses this on FM27. This table needs a change on either edition, but the check below was on FM27. I compared the first team's calendar on the 23 July save with the Training screen.

  • All 21 days from 13 July to 2 August match, for all three sessions of each day.
  • That includes rest, recovery, travel and match sessions.
Suggested approach

Add a days field to a training week, with each day holding its sessions, and a TrainingSession enum whose value is the stored code. CodedValue can then carry a session the enum does not name.

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.
  • Session names come from one screen, and some are cut off there, so a few member names may be incomplete.
  • Some sessions read UNKNOWN on later days, which are past the screen I have. I do not know which sessions those are.
  • The meaning of the day fields is unconfirmed on FM26, because I compared them on FM27 only.
Versions
  • fmsave 0.8.0 (main at 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

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from rhiever/fmsave

All issues in rhiever/fmsave

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.