Commit Graph

91 Commits

Author SHA1 Message Date
masterdraco 979b7f72d5 feat(kæde): advarsel når en fabrik gården er afhængig af slukkes
Slukker spilleren en produktion, hvis vare et tændt flow kører (manuel vare
eller målet tager den i auto), en stald æder eller en aktiv kæde bruger,
kommer én besked pr. slukning med brugere og lagerdage, og en rød post
'Slukket men nødvendig' i Kræver handling og statusvinduet så længe den er
slukket og nødvendig. Ingen advarsel når en anden tændt produktion dækker,
lageret rækker over 60 dage, kæden selv slukkede den eller den var slukket
ved indlæsning. Tjekket kører i kædens tick også uden kæder; ren logik i
adDependency.lua.
2026-09-30 15:08:28 +02:00
masterdraco ba2a3e94f1 feat(status): statusvindue på skærmen slås til med en tast 2026-09-30 14:52:35 +02:00
masterdraco 131b1ad10c fix(kæde): stald-mangel forklares rigtigt og beskeder nævner kæden
Køb af en rest efter gårdens stalde giver nu spu_chain_problem_barn (køb resten
eller flere dyr) i stedet for 'byg en fabrik'. Engangsbeskeden får kædens navn
foran, så to kæder der mangler samme vare kan skelnes.
2026-09-30 14:42:53 +02:00
masterdraco 19a10ab67c feat(kæde): manglende led forklares i Kræver handling, fanen og som besked
problemText giver årsag og råd for køb/flaskehals/kredsløb og 'slukket af dig'
(userOff-kopi på ADChain.last); modellens problemer får need. Fanen Kæder viser
teksten som rød tekstrække under varen (foldet ud). Kræver handling får én rød
post pr. kæde (højst 2, score 3500+alvor mellem rød tom og rød fuld); klik åbner
fanen med kæden foldet ud. Engangsbesked pr. nyt led (rod|vare|art) kun fra
tick, ikke i opstartsfristen eller på delvise data/ufærdig markscanning.
Manualer og CHANGELOG opdateret.
2026-09-30 14:40:29 +02:00
masterdraco 1e7b2ec699 docs(kæde): tydelig advarsel om tændte produktioner og manualen opdateret efter slutreview-rettelserne 2026-09-30 14:28:43 +02:00
masterdraco e394a77833 docs(kæde): produktionskæder i manual, changelog og README (v1.61.0.0) 2026-09-30 14:10:18 +02:00
masterdraco 4f676135ac fix(flow-vogne): husk kun redskaber med lastrum som flow-vogn (v1.60.21.0)
Sell Slurry 2 havde ploven husket som gyllevogn. Manualerne: fast sæt/bundet
omfatter nu også flowets vogne.
2026-09-30 12:34:39 +02:00
masterdraco 53346cc916 chore: tests ud af det offentlige repo (kun lokalt); feedback uden krav om konto 2026-09-29 21:32:19 +02:00
masterdraco 4e8e9aa350 chore: interne design-/plannoter og bench ud af repoet (kun lokalt) 2026-09-29 21:31:33 +02:00
masterdraco f8864e26c3 docs: fjern forældet testplan for markarbejde (v1.28) 2026-09-29 21:30:32 +02:00
masterdraco 5827143327 docs: manualer opdateret til v1.60.11, README kort + CHANGELOG
Brugermanualen (dansk) er omskrevet til v1.60.11: menuplacering, farvede
Flows/Fields-lister med redigeringsvindue, guiden Opsæt flow med
solo-traktorer og vognvalg, flow-vogne, AD-markørkonventioner (P, Connect,
Afkobl), maskinpulje, markarbejde, Måned, Marksiloer, Stop alt og parkér,
lagerfanernes Kræver handling, navne og konsolkommandoer samt Test og
feedback. USER_MANUAL.md er en tro engelsk oversættelse. Udviklernoterne
er flyttet fra README til CHANGELOG.md, og README er en kort præsentation.
2026-09-29 21:07:00 +02:00
masterdraco 1ca1a30b0e docs(plan): Flows/Fields liste + redigeringsvindue (8 opgaver, 2 etaper) 2026-09-29 17:37:55 +02:00
masterdraco 21f2e6fee6 docs(spec): Flows/Fields som farvet liste med Start/Stop pr. række + redigeringsvindue 2026-09-29 17:28:30 +02:00
masterdraco b0d22236b0 feat(flows): flow-vogne — flowets vogn huskes pr. traktor, solo-traktor henter sin vogn ved start (venter hvis den er lånt ud), stop/slet/bygning væk sætter vognen på plads og kører traktoren hjem; stoppede flows er ledige i maskinpuljen (v1.51.0.0) 2026-09-28 23:18:38 +02:00
masterdraco 4863e422ad docs: maskinpulje etape 1 — implementeringsplan (v1.48.0.0) 2026-09-28 18:02:01 +02:00
masterdraco 127f4cc9d9 docs: maskinpulje — design (traktorer og redskaber som fælles pulje, kø, hent/arbejd/parkér/hjem) 2026-09-28 17:56:12 +02:00
masterdraco 2e64ad537c docs(spec): marksilo-flow — flow-siloer udelades, vogne skal have parkering (fra review) 2026-09-27 10:50:55 +02:00
masterdraco 8a0d7f2489 docs(plan): marksilo-flow — 4 opgaver (planlægger, opsætning, spil-lag, fane) 2026-09-27 10:39:48 +02:00
masterdraco f93ae798e3 docs(spec): marksilo-flow — låner op til x ledige vogne og kører marksiloernes varer hjem til nærmeste gårdlager 2026-09-27 10:34:51 +02:00
masterdraco 50301b61b9 feat(markarbejde): genbrug Courseplay-kurser — markform-signatur + kursus-register pr. maskine; genbrug/kopi i stedet for ny beregning, glemmes ved ændret mark (v1.34.0.0) 2026-09-26 22:27:16 +02:00
masterdraco dde6f4b8eb fix(markarbejde): høsteren får lager ved høststart; korn i tanken efter høsten køres af AutoDrive til lageret, ellers tydelig besked (v1.32.2.0) 2026-09-26 21:19:07 +02:00
masterdraco 9b51a68731 feat(gui): guiden "Opsæt flow" — Flows-fanen får tavle + resumé (klik = ret ét trin, Navn = omdøb) og trin-for-trin-guide på samme ramme som markguiden; Nyt flow oprettes først ved Gem (v1.32.0.0) 2026-09-26 20:28:12 +02:00
masterdraco 92af260a79 feat(gui): guiden "Opsæt mark" — markfanen får oversigt med resumé (klik på en linje = ret ét trin), trin-for-trin-guide på fælles guide-ramme (ADGuide/ADFieldGuide) og egen markflåde-visning (v1.31.0.0) 2026-09-26 20:20:56 +02:00
masterdraco 7cbd8fb878 docs: spec — guider til opsætning af marker og flows (etape A+B) 2026-09-26 19:33:13 +02:00
masterdraco 455c9c7598 fix(markarbejde): tom sprøjte/spreder/såmaskine fyldes af AutoDrive (LOAD) før marken; uden påfyldning med AD-markør sendes den ikke ud; Courseplay startes aldrig med tom tank (sprøjten kørte F108 tom) (v1.29.2.0) 2026-09-26 15:08:47 +02:00
masterdraco 6138b6b874 feat(markarbejde): tom spreder/sprøjte kan bruges (roller efter hvad den kan tage; påfyldning med rollens vare); spreder med forkert vare tømmes først og vælges kun hvis ingen anden kan (v1.28.8.0) 2026-09-26 12:51:03 +02:00
masterdraco 6fd917caca perf: hak-audit — spredte timere, fælles cache (markør->station, salgssteder, identify, Wait-punkter, lagre, positioner), bygningsliste 10 s, profiler, simulering (v1.28.0.0)
Audit (2 reviewere) + simulering bench/bench_hak.lua: værste frame 124,7 ms -> 0,9 ms.
- Holdende vognes genplanlægning (5 s) spredes tilfældigt over hele intervallet (før: alle i samme frame).
- ADCache: korttids-cache m. spredt udløb (+0-50 %), kun aktiv i spillet; stationsopslag 30 s.
- Bygningsliste 10 s (før 1 s: bygninger x markører hvert sekund). Markarbejde-tick forskudt 0,5 s fra menuen.
- ADProfiler: logger top-6 langsomste indgange pr. minut ved > 2 ms.
2026-09-26 11:24:05 +02:00
masterdraco 0fca6e8a9a perf+fix: rutetjek gemmes 30 s (hak hvert 5. s); kilde der gav lidt hviler 3 min (æg-vognen til samme hønsehus 3x) (v1.27.3.0)
In-game 26/9: hak ca. hvert 5. s efter 1.27.2 = holdende vognes genplanlægning (ADOutbound/ADLoadSwap hvert
5 s) med AD-stifinding + reserve-BFS gennem 13.550 waypoints pr. kandidat. Rutesvar caches pr. mål og 10 m-
område i 30 s (max 2000 poster); langsomme rutetjek logges. Æg: 'ingen mere last' markerer nu kilden som
hvilende 3 min, så runden roterer mellem hønsehusene.
2026-09-26 11:07:16 +02:00
masterdraco 05832603e4 perf(marker): markscanning som arbejdskø — højst ét prøvepunkt pr. frame (v1.27.2.0)
In-game 26/9: hakket kom sjældnere da scanningen gik fra 1 s til 2 s -> scanningen af én mark i ét frame
var årsagen (opslag gennemgår alle ~40 afgrødetyper pr. punkt). Coroutines findes ikke i FS25 (Giants
fjernede dem, jf. Courseplays HybridAStar), derfor en eksplicit kø. Tidsmåling bruger netGetTime.
Test (test_adFieldsScan) beviser: færdig, korrekt resultat, <= 3 opslag pr. frame.
2026-09-26 10:38:51 +02:00
masterdraco c34a472b1c perf(marker): hak hvert sekund — ingen kopier når intet ændrer sig, passive marker i tiendedele, scan hvert 2. s, cachet markliste/markører, tick-tidsmåling i loggen (v1.27.1.0)
In-game 26/9: lille hak ca. hvert sekund. Markarbejdets tick kopierede alle markers data hvert sekund
(affald -> GC-pause), hentede alle kortets marker og alle AD-markører.
2026-09-26 02:03:31 +02:00
masterdraco 322f7b1c30 docs(marker): vælg og glem (mål-afgrøde), halm, alle ledige maskiner — manual + testplan; version 1.27.0.0 2026-09-26 01:27:19 +02:00
masterdraco 944e61d1a8 fix(marker): påfyldning finder selv læssestation m. varen og AD-markør (AD's automaticPickupTarget er slået fra); tom sæt = ikke færdig; 30 s backoff når sæt mangler
Review-fund 26/9 (CRITICAL): setAutomaticPickupTarget er no-op i AutoDrive (AutoDrive.automaticPickupTarget = false),
så LOAD-mode ville køre til F-markøren og hænge. (MEDIUM): ingen backoff ved manglende sæt.
2026-09-26 00:13:01 +02:00
masterdraco b1a65929a7 docs(marker): kapitel 10 for alle marker (da/en), testplan til test-session; version 1.26.0.0 2026-09-26 00:06:18 +02:00
masterdraco 03c05b7608 docs: spec etape 2-3 + multi-maskine (høst, roer, jordbehandling, såning) 2026-09-25 23:47:46 +02:00
masterdraco 7f83cc4d28 fix(marker): ensilage går til gæringssilo (produktion skår -> SILAGE) før almindelig silo; hø aldrig i gæringssilo (v1.25.0.0)
In-game 25/9: læssevognen aflæssede græs i en Farma-silo i stedet for en ensilage-silo.
2026-09-25 23:43:51 +02:00
masterdraco cf7a2a51e5 feat(marker): sideriver — mål hvor riven lægger skåret, forskyd læssevognen tilsvarende (v1.24.0.0)
Brugerkrav 25/9: alle river-typer skal virke. Nedlægningsområdet (runtime-felt eller riverens XML) måles
i traktorens ramme mens riven arbejder; læssevognen på rivens kursus får CP-toolOffsetX = egen -
skårets forskydning og får sin værdi tilbage når den slippes.
2026-09-25 23:35:42 +02:00
masterdraco ba88eb5f99 feat(marker): smalle standardmaskiner — vender/river i egen bredde, læssevogn følger rivens kursus; Riv også til ensilage (v1.23.0.0)
Brugerspørgsmål 25/9: få standardredskaber har 40,8 m. Vender og river kører hele marken i deres egen
bredde; efter riv ligger skåret midt i banen, så læssevognen kopierer rivens kursus uden breddekrav.
Uden riv kræver læssevognen stadig slåbredden (nu med hint 'sæt Riv til').
2026-09-25 23:31:46 +02:00
masterdraco 4c88118e56 feat(marker): vender/river/læssevogn genbruger slåmaskinens Courseplay-kursus (v1.22.0.0)
In-game 25/9: læssevognens nye CP-kursus lå forskudt i forhold til skårene -> ikke samlet korrekt.
Slåkurset gemmes pr. mark (kopi) og kopieres til næste trin med vehicle:cpCopyCourse; efter
genindlæsning hentes det fra slåmaskinen (mowVehicle gemt i ADSmartPickup_fields.xml).
2026-09-25 23:25:55 +02:00
masterdraco 048f5e6547 fix(marker): væk sovende køretøjer ved AD-start og under opfølgning (v1.21.6.0)
In-game 25/9: Fastrac'en stod stille ved AutoDrive-start til spilleren satte sig ind (parkerede
køretøjer kalder ikke onUpdate). Samme greb som flows' applyAndStart + raiseActive fra AI-Bonden.
2026-09-25 23:22:04 +02:00
masterdraco 52250dc35e fix(marker): slip kun et sæt når spilleren faktisk kører det (> 3 km/t uden AD/CP) (v1.21.5.0)
In-game 25/9: læssevognen blev sluppet ved ankomsten til F22, fordi spilleren sad stille i førersædet.
2026-09-25 23:11:50 +02:00
masterdraco 6f387c051f fix(marker): tag aldrig et sæt som AutoDrive/Courseplay allerede kører (v1.21.4.0)
In-game 25/9: spillerens parkeringstur kunne blive kapret af en ny udsendelse.
2026-09-25 23:03:06 +02:00
masterdraco b1f1aaa148 fix(marker): slip kun sæt spilleren selv kører; slået mark uden sæt går videre til opsamling (v1.21.3.0)
In-game 25/9: spilleren satte sig i BiG M'en for at se CP-HUD'en -> sættet blev sluppet, og da CP var
færdig, blev det aldrig sendt hjem; marken ville have sendt slåmaskinen ud igen til en slået mark.
2026-09-25 22:59:31 +02:00
masterdraco 716045a36b fix(marker): arbejdsbredde = Courseplays egen workWidth-indstilling når den findes (v1.21.2.0)
In-game 25/9: variabel bredde gav 20,8 m for BiG M 450, Courseplay-HUD'en viser 40,8 m.
2026-09-25 22:57:48 +02:00
masterdraco bade84129b fix(marker): arbejdsbredde læser variabel bredde (Unrealistic Pack) før AI-markører, som Courseplay (v1.21.1.0)
In-game 25/9: BiG M 450 læst som 10 m og læssevogn som 2,4 m, selv om begge står på 40,8 m.
2026-09-25 22:45:01 +02:00
masterdraco 61a32720ea docs(marker): note — flere maskiner pr. mark, maks 5 (Courseplay multi-tool) 2026-09-25 22:14:22 +02:00
masterdraco 6ffd78896a docs(marker): kapitel 10 Markarbejde i manualerne (da/en); version 1.21.0.0 2026-09-25 21:53:49 +02:00
masterdraco 5c912c524e feat(marker): job-løkke — AutoDrive til F-markør, Courseplay på marken, næste trin, gem
Afvigelser fra planen: starting-timeout 60 s og pause efter 'nåede ikke markøren' (undgår
genudsendelse hvert sekund); J2-testen bruger en slået mark (readyRatio 0).
2026-09-25 21:50:30 +02:00
masterdraco bf2817cf7b docs: implementeringsplan markarbejde etape 1 2026-09-25 21:49:29 +02:00
masterdraco bd47046ca8 docs: spec for markarbejde etape 1 (slåafgrøder via AutoDrive + Courseplay) 2026-09-25 21:43:17 +02:00
masterdraco cc35b157bd feat(oversigt): Start/Stop alle flows + klik på flow hopper til redigering; palleskure viser paller af pladser (v1.20.0.0)
- ADRunsController.startAllRuns/stopAllRuns/hasActiveRuns (kørende flows røres ikke ved Start alle)
- Oversigt: knapsæt Start alle / Stop alle / Nyt run, samlet status, klikbare rækker (hop via update)
- Palleskur-statistik: kapacitet = (egne + ledige pladser) x indhold; 24/4000 paller 1 % i stedet for 600 %
- Manualer da/en opdateret
2026-09-25 21:03:30 +02:00