Goal
Provide a small, stable CCO integration surface for the planned Windows Farm Sim Manager / save-game generator.
The desktop application should only define the initial crop rules for a new career. CCO remains authoritative for crop control throughout the save lifecycle.
Intended flow
- Farm Sim Manager creates/configures a new FS25 save.
- It writes the initial CCO crop policy/configuration for that save.
- On the first map load, a lightweight bootstrap request tells CCO to regenerate NPC fields using the configured CCO rules.
- The request is marked complete and is not repeated on subsequent loads.
- From that point onward, the player manages crop rules normally through CCO.
Scope
- Expose a stable API entry point for a first-run whole-map/NPC-field regeneration using CCO's current rules.
- Reuse the existing reset/reseed engine rather than duplicating crop-generation logic in the launcher or bootstrap mod.
- Support the existing seasonal reseed behaviour.
- Return a clear success/failure result so the bootstrap can mark initialisation complete safely.
- Keep field ownership independent from crop-policy regeneration; the launcher does not need to infer the player's starting fields.
- Add a versioned API contract so future CCO releases can evolve without silently breaking Farm Sim Manager.
Non-goals
- Reproduce the full CCO UI in the desktop application.
- Per-field hand-authoring of the initial map state.
- Move ongoing crop-control responsibility into the desktop launcher.
Candidate API shape
Conceptually only; final naming/arguments should follow CCO conventions:
CropControlOverrideAPI = CropControlOverrideAPI or {}
CropControlOverrideAPI.apiVersion = 1
function CropControlOverrideAPI.regenerateInitialMap(options)
-- Uses the currently loaded per-save CCO rules.
-- Returns success, summaryOrError.
end
The implementation should wrap/refactor the existing NPC reset/reseed functionality so there is one crop-regeneration engine shared by the GUI/console/API paths.
Acceptance criteria
- A newly generated save can request regeneration once after map systems are ready.
- Enabled/NPC-allowed crop rules are respected.
- Seasonal reseed rules are respected when requested.
- Invalid/missing configuration fails safely without partially marking initialisation complete.
- API reports completion plus useful counts/errors.
- Existing CCO in-game behaviour remains unchanged for normal saves.
Goal
Provide a small, stable CCO integration surface for the planned Windows Farm Sim Manager / save-game generator.
The desktop application should only define the initial crop rules for a new career. CCO remains authoritative for crop control throughout the save lifecycle.
Intended flow
Scope
Non-goals
Candidate API shape
Conceptually only; final naming/arguments should follow CCO conventions:
The implementation should wrap/refactor the existing NPC reset/reseed functionality so there is one crop-regeneration engine shared by the GUI/console/API paths.
Acceptance criteria