Commit Graph

55 Commits

Author SHA1 Message Date
masterdraco 448af2bbea fix: ventende traktorer genoptages efter genindlæsning (AD's mål = Wait-punkt, ventetilstand tabt) (v1.12.9.0) 2026-09-23 11:51:48 +02:00
masterdraco 196c2cd847 fix: autoload-køretøjer måles i paller, ikke liter — en tom pallebil er ikke 'ingen vogn' (v1.12.8.0) 2026-09-23 11:49:33 +02:00
masterdraco 058795d4c3 feat: diagnose i loggen når ingen autoload findes på traktorens enheder (v1.12.7.0) 2026-09-23 11:44:45 +02:00
masterdraco e870c446d8 fix: fabrik fundet på afstand får produktionspunktets læssestation; bulk-outputs regnes ikke som paller når markøren ikke rammer triggeren (v1.12.5.0) 2026-09-23 11:32:01 +02:00
masterdraco 27095ec6ff feat: bulk-vare der også står på paller (sukkerfabrik) tages som paller af en UAL-vogn, som bulk af en tipvogn (v1.12.3.0) 2026-09-23 11:28:14 +02:00
masterdraco 2ff8e46306 fix(gui): Start starter altid (kørende AD-traktor stoppes og startes på run'et), Stop-knap kun for runs vi har startet, sprungne traktorer med årsag i status/log, kapacitet <100 l = ingen vogn, ASCII-tegn (v1.12.2.0) 2026-09-23 11:18:55 +02:00
masterdraco 2d6e6dd7bf feat: v1.12.1.0 — prisregel via sæsonkurven, reserve til gårdens eget forbrug, paller til palleskur, fanen Lagre (idéer fra Distribution Redux) 2026-09-23 10:34:41 +02:00
masterdraco 43483bda76 fix(review): palle/bulk pr. kilde, pallefabrikker uden læssestation, hold-omdirigering, last ved Start, tomme kilder udelukkes, færre rutetjek, advarsler huskes, paller kun Fra/Salg 2026-09-23 10:18:36 +02:00
masterdraco cb115f9588 feat: udkørsel koblet på AutoDrive-hooks; Wait-logik springer udkørsels-traktorer over; v1.12.0.0 2026-09-23 09:59:10 +02:00
masterdraco de36abe1fa feat: controller — udkørsels-runs: start, validering, produkter, kilder, status 2026-09-23 09:57:59 +02:00
masterdraco deb89b8c57 feat: adOutbound — udkørsels-hooks: turvalg, hold ved Wait, objektlager-udtag, opsamlingsrunde, advarsler på skærm 2026-09-23 09:56:28 +02:00
masterdraco d31fbbec37 feat: adSources — fabrik, silo og objektlager som kilder; paller ved spawner; salgssteder 2026-09-23 09:51:40 +02:00
masterdraco fa3faba18b feat: adOutboundPlanner — turvurdering, prisregel, politikker, opsamlingsrunde (ren) 2026-09-23 09:49:47 +02:00
masterdraco 1410ca6ff3 feat: adPrices — toppris fra årets prisforløb og pris-% pr. salgssted 2026-09-23 09:48:32 +02:00
masterdraco def054ca43 refactor: Wait-puljen udskilt i adWaitPool (reservationer, rutetjek, redirect) til deling med udkørsel 2026-09-23 09:47:47 +02:00
masterdraco 68ad63ce1f feat: run-model v2 — retning, kilder, varepolitik, tærskler, runde (XML v2 + v1-migration) 2026-09-23 09:46:08 +02:00
masterdraco 33f69cc6c8 fix: under Wait peger AD's mål på Wait-punktet (AD tippede ellers i småportioner og holdt vognen); behov/bytte måles mod hjem-målet; mål gendannes ved hjemkørsel (v1.11.13.0) 2026-09-23 03:10:52 +02:00
masterdraco 827010ca99 fix: Wait udløses også når AD stopper vognen i triggeren før markøren (isTargetReached aldrig sand) — 'fremme' = markør nået, inden for AD's trigger-afstand, eller AD tipper (v1.11.12.0) 2026-09-23 03:06:33 +02:00
masterdraco 0821353b54 fix: silo-mål ved Start holdes indtil aflæsningen er færdig (mål-gendannelse venter), så forkert last ikke kører i ring (v1.11.10.0) 2026-09-23 02:36:46 +02:00
masterdraco 59b32b4d84 fix: læs-bytte — AD's 2. markør skiftes midlertidigt til siloen (AD tipper kun nær sit eget mål) og gendannes efter aflæsning (v1.11.9.0) 2026-09-23 02:33:04 +02:00
masterdraco 0abf282877 fix: silo til forkert last kræver kun vejnet fra traktoren (ikke silo→mål); advarsel forklarer hvorfor ingen silo (v1.11.8.0) 2026-09-23 02:30:51 +02:00
masterdraco ce32eb8e44 fix: forkert last midt i et run — pålæsning afsluttes straks, målet der ikke tager varen regnes som fuldt (Wait), og resten læsses af i silo fra Wait (v1.11.7.0) 2026-09-23 02:24:16 +02:00
masterdraco 91c724b9f4 feat: forkert last ved Start læsses af i nærmeste silo før run'et fortsætter; run-mål gendannes ved næste tur (v1.11.6.0) 2026-09-23 02:19:22 +02:00
masterdraco 3f29c8cebe fix: kørende traktor stoppes når den fjernes fra run / run slettes; stop logges (v1.11.1.0) 2026-09-23 02:04:31 +02:00
masterdraco bcd7de8344 feat: flere mål pr. run (afkrydsning; den stald der mangler mest får turen, AD's mål skiftes ved turstart) + under-faner Overblik/Runs (v1.11.0.0) 2026-09-23 01:56:47 +02:00
masterdraco 69a98984bb feat: foderprioritering — trug som én trang, spillets fodervægt (TMR 1,0 > hø/ensilage 0,8 > græs 0,4) afgør rækkefølgen i truget; fanen viser samme rangering (v1.10.3.0) 2026-09-23 01:49:19 +02:00
masterdraco 231d6a41d6 feat: run-indstilling 'Kør hjem fra Wait under X %' (10–90, standard 50) i model, XML, Wait-regel og fane (v1.10.2.0) 2026-09-23 01:47:42 +02:00
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 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 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 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 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 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