Commit Graph

136 Commits

Author SHA1 Message Date
masterdraco ef69347c55 fix: Wait udløses også når AD stadig regner vognen som aflæssende ved fuldt trug; AD's aflæsning stoppes før omdirigering (v1.10.1.0) 2026-09-23 01:43:53 +02:00
masterdraco 12c25deac6 feat: overblik øverst i fanen — pr. run: status, hver traktors aktivitet (kører med læs/tom mod silo/venter), målets niveauer (v1.10.0.0) 2026-09-23 01:41:58 +02:00
masterdraco 064849c860 feat: traktorer i et andet run vises låst med run-navn i stedet for at kunne vælges (v1.9.7.0) 2026-09-23 01:38:05 +02:00
masterdraco 2a5236a52a fix: Start run starter via AD's mode:start(USER_PLAYER) som HUD'en — startAutoDrive alene lod traktoren stå (v1.9.6.0) 2026-09-23 01:25:45 +02:00
masterdraco ee230ae248 fix: guard vejnet-afstand (køretøjer uden getClosestWayPoint), kun motoriserede køretøjer i listen (v1.9.5.0) 2026-09-23 01:24:17 +02:00
masterdraco a97327e993 feat: Smart Pickup-fane — behovsrække (hvad hentes, målets niveauer), felter synkes fra modellen, run-ændringer logges (v1.9.4.0) 2026-09-23 01:19:24 +02:00
masterdraco f60f27340b fix: Smart Pickup-fane — synkron genopbygning ved run-/målskift (update() kaldes ikke i ESC-menuen), vogn + 'kan bære' vises for alle traktorer (v1.9.3.0) 2026-09-23 00:25:33 +02:00
masterdraco 3c22eae0eb fix: fane sidst i ESC-menuen (ingen omrokering), stald-foder via spec_husbandryFood/animalFoodSystem, mål = kun stalde+fabrikker, korte Wait-labels (v1.9.2.0) 2026-09-23 00:13:58 +02:00
masterdraco 90d86b22e9 fix: Smart Pickup-fane — layout som AD's egen side (ScrollingLayout + slider, rækkefarver), udskudt genopbygning, fokus på boxLayout (v1.9.1.0) 2026-09-22 23:49:58 +02:00
masterdraco 856b949749 fix: slut-review — pcall om start/dialoger, Auto-varer fra aktivt AD-mål, nil-guards, README 2026-09-22 23:35:47 +02:00
masterdraco b74d1325c6 feat: læs-bytte fra Wait (v1.9.0.0) 2026-09-22 23:23:39 +02:00
masterdraco 5414371f72 fix: læs-bytte — Wait-logik kun ved AD's aflæsningsmål; frisk rest ved bytte 2026-09-22 23:20:49 +02:00
masterdraco e9f8c57d60 feat: læs-bytte fra Wait — rest afleveres i silo når målet mangler en anden vare 2026-09-22 23:13:22 +02:00
masterdraco a2fcfaf4a7 feat: runs-UI i ESC-menuen (v1.8.0.0) 2026-09-22 23:08:45 +02:00
masterdraco 0176921603 fix: Smart Pickup-fane — ingen callbacks under opbygning, fokus-oprydning, pcall på alle klik, navn/ikon/status 2026-09-22 23:03:49 +02:00
masterdraco 254274f926 feat: ESC-fane 'Smart Pickup' (runs: mål, varer, Wait-pulje, ture, traktorer, Start/Stop) 2026-09-22 22:52:48 +02:00
masterdraco bd446f8add feat: controller-opslag til GUI (målets varer, køretøjs-label, Wait-reservationer) 2026-09-22 22:46:29 +02:00
masterdraco aa040d95ef feat: run-traktorer får ingredienser og Wait-pulje fra deres run 2026-09-22 22:39:31 +02:00
masterdraco 264a07c697 fix: runs-controller — ingen global fallback for køretøjs-indstilling; id-opslag via map 2026-09-22 22:35:30 +02:00
masterdraco c0d0edac69 feat: runs-controller (validering, Start/Stop, Auto-vareliste, gem/indlæs) 2026-09-22 22:30:20 +02:00
masterdraco 55cf137c51 refactor: eksponér stations- og niveau-opslag til runs-controller 2026-09-22 22:26:22 +02:00
masterdraco b9832a8af8 feat: runs gemmes i savegameN/ADSmartPickup_runs.xml 2026-09-22 22:21:30 +02:00
masterdraco e4d131b827 feat: run-model (rene funktioner) til runs-UI 2026-09-22 22:20:50 +02:00
masterdraco b8da94a254 fix: rute-tjek begge veje før Wait-omdirigering; hjem ved halv-tomt mål (v1.7.2.0)
In-game 2026-09-22 21:37: Fastrac omdirigeret til 'Cow Wait' uden vejnet dertil ->
AutoDrive 'cannot reach' + StopAndDisableADTask (AD slukket i stalden). Nu:
ADGraphManager:getPathTo + pathFromTo (rene opslag) skal ende i hhv. Wait-punkt og
mål, ellers næste punkt; intet nåeligt = som i dag + advarsel.

700.000 l-vogn i 300.000 l-stald kunne aldrig opfylde 'hele resten passer':
ADSupplyPlanner.canUnloadRest = fri >= min(rest, 50 % af kapacitet).
2026-09-22 21:44:55 +02:00
masterdraco a4a761fabc fix: Wait-pulje = mapper med 'Wait' i navnet, ikke markørnavne (v1.7.1.0)
Savegame viste eksisterende mark-ventepladser 'F91 Wait', 'F108 Wait' m.fl. i
mark-mapperne — de ville være røget i puljen med navne-reglen. Brugerens nye
punkter ligger i mappen 'Cow Wait' (6 markører med samme navn) -> mappen afgør.
Log viser markørnummer, da navne kan være ens.
2026-09-22 21:28:00 +02:00
masterdraco 39fccefa40 feat: Wait-punkter for rest-læs + læs der passer foretrækkes (v1.7.0.0)
Rest-læs ved fuldt mål: AutoDrive ventede ved aflæsningspunktet 'til tømt' og
spærrede køen. Nu omdirigeres den aktuelle UnloadAtDestinationTask (destinationID +
drivePathModule:setPathTo) til nærmeste ledige markør med 'Wait' i navnet / mappen
Wait (fælles pulje, reservationer pr. køretøj); tilbage når målet har plads til
hele resten. Ventende ser rotateTargets=RT_NONE så 'rotér aflæsning' ikke kører
videre fra Wait-punktet. Ingen ledige punkter = som i dag + én advarsel.

Rangering: varer hvor et fuldt læs (AutoDrive.getAllFillLevels-kapacitet) passer i
målet går forud; passer intet, mest trængende. Nyt modul adUnloadWait.lua;
ADSmartPickup.getTargetFreeCapacity delt hjælper.
2026-09-22 21:12:55 +02:00
masterdraco 2ff0b641b0 fix: en fabriks inputs stjæles aldrig som kilde; stalde læses via getHusbandry* (v1.6.1.0)
In-game 2026-09-22: fire Fastrac'er med halm+TMR til to kostalde kørte med
'Rotér mål: kun aflæsning' og fast pålæsning ved 'TMR Load' -> AutoDrive læssede
halm (fabrikkens input) dér uden at modden var i spil. Med modden i spil ville
'mindst fyldte først' have valgt samme lager.

- ADSupplyPlanner.isProductionInput: vare der er input (og ikke output) i en
  fabriks produktioner udelukkes som kilde i findBestSource (mappe + behov).
- Stald som mål: niveau/kapacitet/understøttelse fra placeable:getHusbandry*
  (stationen selv siger nej til halm) -> halm rangeres og hentes.
- README: to stalde = kun pålæsnings-rotation (AD vælger pickup FØR deliver roteres).
2026-09-22 20:45:43 +02:00
masterdraco 795c03663c feat: fabriksstyret forsyning — målets tændte produktioner styrer ingredienslisten (v1.6.0.0)
Er aflæsningsmålet et produktionspunkt, erstattes ingredienslisten af inputs fra
ønskede produktioner (tændte, eller auto-slukkede af kortet med status
MISSING_INPUTS — Dakotas ExtendedProductionPoint), begrænset til det vognen kan
bære. Brugerens multi-valg er kun tændknappen og gendannes ved stop som hidtil.

Prioritet: tid til tom = lager / (Σ amount × cyclesPerMinute); varer med kendt
forbrug scorer i ]1,2] og går altid forud for relativ tomhed [0,1]. Loggen viser
forbrug og minutter; fabrik uden ønskede produktioner logges én gang.

API-navne verificeret mod EasyDevControls + Dakota16x ExtendedProductionPoint.
2026-09-22 20:04:08 +02:00
masterdraco 8c76790ece feat: fyldeste kilde først for mælk/gylle/digestat (v1.5.0.0)
Lagervarer tømmes stadig mindst-fyldte-først; varer hvis tanke løber fulde og
stopper produktionen hentes fyldest-først (ADSupplyPlanner.FULLEST_FIRST_FILL_TYPES).
Strategien vises i loggen.

fix: en trigger foran næsen tæller aldrig som markørens egen (tolerance 2 -> 0).
Markør-drift i ensilage-rækken lod næste tanks rør (1,9 m foran) vinde.
Verificeret mod savegame: 40/40 siloer, 7/7 ensilage-tanke, 0 dropof.
2026-09-21 16:34:19 +02:00
masterdraco e6412d78e4 fix: spor-regel, vent kun ved målet, sikkerhedsventil (v1.4.0.0)
In-game-fund 2026-09-21:
- 'Dropof'-markøren vandt over 'Pickup' ved ensilage-tankene (samme tank, modsat
  side): triggeren skal nu ligge i trækkerens spor (<= 6 m til siden); nødløsning
  uden spor-træf kun inden for 12 m når retningen kendes.
- Rotationen blev skjult under hele pålæsningsopgaven, så traktoren ventede ved
  nabosiloens tomme trigger på vej til målet: skjules nu først når målet er nået.
- Sikkerhedsventil: 30 s ved markøren uden læsning -> grebet slippes.
Verificeret mod savegame: 40/40 silo-markører, 7 pickup koblet, 0 dropof.
2026-09-21 16:15:55 +02:00
masterdraco e414c99b58 fix: markørens silo er den bag traktorens næse, ikke nærmeste trigger (v1.3.0.0)
I tætte silo-rækker står markøren ved NÆSTE silos rist (næsen stopper dér, vognen
holder et vogntog bagved). Nærmeste-trigger-koblingen ramte derfor nabosiloen og
forskød alle 40 markører én silo: roer i silo 2 blev til '1 Silo Storage'.
Koblingen bruger nu ankomstretningen fra forrige waypoint og vælger nærmeste
trigger bag næsen (højst 2 m foran); ellers nærmeste trigger som før.
Verificeret mod savegame: 40 markører -> 40 forskellige siloer, TMR Unload -> TMR.
2026-09-21 16:00:53 +02:00
masterdraco bcc245863e fix: stå og læs ved den valgte silo — AutoDrive kørte tom videre (v1.2.0.0)
Med rotateTargets + mapper afslutter AutoDrives LoadAtDestinationTask pålæsningen
i det øjeblik markøren nås; traktoren kørte derfor lige igennem silo-markøren og
tom til aflæsning. Når moden har valgt siloen, ses rotationen som slået fra for
netop det køretøj under opgavens update, så AutoDrive står og læsser. Grebet
slippes når kilden er tom eller AD stopper.

Desuden: samme valg logges kun én gang, og loggen viser eget/nabo-lager.
2026-09-21 15:55:07 +02:00
masterdraco 95615253b0 fix: læs lager direkte fra produktionspunktet når targetStorages mangler (v1.1.0.0)
Genskabt efter disk-crash 2026-09-21: det oprindelige commit (d38366e) gik tabt
som tomt objekt; indholdet er gendannet fra arbejdskopien. README udvidet med
behovsstyret forsyning, test S10 dækker produktionspunkt-lageret.
2026-09-21 15:18:02 +02:00
masterdraco fb87dc4d37 feat: behovsstyret forsyning — én traktor holder alle input fyldt 2026-09-21 12:52:46 +02:00
masterdraco a7d7d7815f feat: ADSupplyPlanner — behovsrangering og ingrediensliste-tilstand 2026-09-21 12:51:04 +02:00
masterdraco 63afbba1f8 feat: AD Smart Pickup — vare-bevidst mappe-rotation (mindst fyldte silo først) 2026-09-21 00:32:59 +02:00