Automobility config: prvni nacteni zavisi na poradi core a addonu #1

Open
opened 2026-09-30 22:58:40 +02:00 by RosenvikAdmin · 0 comments

Při společné kvalifikaci Powerworks dev.15 se stejnými přesnými P&P JARy vzniká v nových profilech různá výchozí konfigurace spalovací spotřeby podle pořadí inicializace core a Automobility addonu. Chyba existuje už v původním dev.8; elektrická politika pw1 tyto třídy nezměnila.

Reprodukce: přesné P&P core i addon 1.10.4-dev.8.pw1, Automobility 0.5.0-unofficial.36 a Powerworks dev.15. Ve dvou oddělených bězích měly stejné 26.2 JARy jednou survival ×50 a podruhé realistic ×1; 26.1.2 měla opačné výsledky. Nejde o rozdíl MC ani o přepis konfigurace testem. Fabric Loader 0.19.2/0.19.3 při fabric.development=true náhodně mění pořadí modů. Běžný launcher bez vývojového režimu nebyl v tomto průchodu ověřen.

Příčina: FuelConfig.get() vrací statický objekt před skutečným load(), s missingOnLoad=false a migrationEligible=true. Addon initializer ihned volá AutomobilityConfig.load(), které čte tento objekt. Výchozí survival ×50 volí pouze při wasMissingOnLoad=true. Core initializer volá FuelConfig.load() nezávisle; addon proto může mezitím uložit realistic defaults, případně migrovat statické hodnoty místo hráčova core nastavení. Platný existující addon config zůstává autoritativní.

Zdroj pro 26.2: commit API kandidáta. Odpovídající větev 26.1.2: 5782047c24. Konfigurační bytecode je shodný s původním sealed dev.8. Přesné JARy a runtime důkazy navazují na Powerworks #4.

  • Načíst core konfiguraci před první migrací addonu nezávisle na pořadí entrypointů, například společným idempotentním ensureLoaded().
  • Zachovat provenance prvního načtení. Prosté druhé load() nestačí: může už vidět právě vytvořený soubor a změnit missingOnLoad.
  • Test obou pořadí, čisté instalace, vlastní legacy konfigurace, nečitelné/budoucí core verze a existujícího platného addon configu.
  • Již uložený realistic režim automaticky nepřevádět na survival; zachovat hráčovu volbu.
  • Ověřit skutečný start obou podporovaných MC verzí a běžný launcher.

Elektrická politika a bilance P&P při tankování prošly v obou zaznamenaných režimech; tento issue není žádost o změnu EV spotřeby ani vyvážení spalovacích motorů.

<!-- powerworks-tracking:pp-addon-config-order --> Při společné kvalifikaci Powerworks dev.15 se stejnými přesnými P&P JARy vzniká v nových profilech různá výchozí konfigurace spalovací spotřeby podle pořadí inicializace core a Automobility addonu. Chyba existuje už v původním dev.8; elektrická politika pw1 tyto třídy nezměnila. Reprodukce: přesné P&P core i addon 1.10.4-dev.8.pw1, Automobility 0.5.0-unofficial.36 a Powerworks dev.15. Ve dvou oddělených bězích měly stejné 26.2 JARy jednou survival ×50 a podruhé realistic ×1; 26.1.2 měla opačné výsledky. Nejde o rozdíl MC ani o přepis konfigurace testem. Fabric Loader 0.19.2/0.19.3 při fabric.development=true náhodně mění pořadí modů. Běžný launcher bez vývojového režimu nebyl v tomto průchodu ověřen. Příčina: FuelConfig.get() vrací statický objekt před skutečným load(), s missingOnLoad=false a migrationEligible=true. Addon initializer ihned volá AutomobilityConfig.load(), které čte tento objekt. Výchozí survival ×50 volí pouze při wasMissingOnLoad=true. Core initializer volá FuelConfig.load() nezávisle; addon proto může mezitím uložit realistic defaults, případně migrovat statické hodnoty místo hráčova core nastavení. Platný existující addon config zůstává autoritativní. Zdroj pro 26.2: [commit API kandidáta](https://git.offchunk.com/Offchunk/pumps-and-pistons/commit/8287e2adb017bc799fd75666c7a92ece1055b896). Odpovídající větev 26.1.2: 5782047c24fa33c864b692818a96bc95b77889bb. Konfigurační bytecode je shodný s původním sealed dev.8. Přesné JARy a runtime důkazy navazují na [Powerworks #4](https://git.offchunk.com/Offchunk/powerworks/issues/4). - [ ] Načíst core konfiguraci před první migrací addonu nezávisle na pořadí entrypointů, například společným idempotentním ensureLoaded(). - [ ] Zachovat provenance prvního načtení. Prosté druhé load() nestačí: může už vidět právě vytvořený soubor a změnit missingOnLoad. - [ ] Test obou pořadí, čisté instalace, vlastní legacy konfigurace, nečitelné/budoucí core verze a existujícího platného addon configu. - [ ] Již uložený realistic režim automaticky nepřevádět na survival; zachovat hráčovu volbu. - [ ] Ověřit skutečný start obou podporovaných MC verzí a běžný launcher. Elektrická politika a bilance P&P při tankování prošly v obou zaznamenaných režimech; tento issue není žádost o změnu EV spotřeby ani vyvážení spalovacích motorů.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Offchunk/pumps-and-pistons#1
No description provided.