Skip to content

NPC field work assigns player-owned land (Alex Chen plow on Field 48) #71

Description

@WizardlyPayload

Summary

Playtest (Wizard, 2026-08-02): Alex Chen, Agronomist (SeasonalCropStress + NPCFavor NPC) ran a tractor + plow on player-owned Field 48, then left the cab and kept wandering that field. Relationship label showed Neutral. Active Favors UI had unrelated NPC favors (Mrs. Henderson, Hans Bauer, etc.) — this was not a player-accepted plow favor.

Expected: NPC daily field work stays on NPC / neighbor fields, not the player's farm.
Actual: Agronomist treated player Field 48 as her work field.

Suspected root cause (local clone)

NPCSystem:findNearestField (src/NPCSystem.lua) picks the geographically nearest field from g_fieldManager.fields with no ownership filter (player vs NPC/unowned). Scheduler / NPCAI:startWorking then spawns fieldwork equipment via getFieldJobType + spawnFieldWorkVehicle / startNPCFieldWorkOwned.

Field UI at the time: owned by player, peas Harvested, weed growing, needs lime — so job type can read as open (till/plow) after cut/stubble.

Related design notes

Tracking notes already document temporary farmland ownership flips so AIJobFieldWork can run (borrow player farm id). That path assumes NPC fields; nearest-field assignment can land NPCs on land the player already owns.

Repro (as observed)

  1. Suite with NPCFavor + SeasonalCropStress (Alex Chen present).
  2. Be near / own Field 48 (or any player field that is nearest to Alex's spawn/path).
  3. Wait for her work schedule / vehicle mode hybrid|realistic.
  4. Observe plow combo on player land; after exit she continues wandering the same field.

Ask

  • Exclude player-owned farmland from findNearestField / assigned work fields (or only assign fields belonging to the NPC's intended neighbor farm).
  • Confirm she leaves player land when the job ends (still wandering after leaving the tractor).

Evidence

Wizard screenshot in session: floating name Alex Chen, Agronomist / Neutral, Fendt + red plow on Field 48, FIELD INFO Owned by: You.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingnpcNPC system

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions