Mod realistico per terreno e fertilizzanti per Farming Simulator 25
Aggiunge profondità e realismo alla gestione del suolo e alla fertilizzazione in FS25. Questa mod introduce la fertilità dinamica del suolo, i cicli dei nutrienti e un'economia realistica dei fertilizzanti, rendendo l'agricoltura più impegnativa e strategica.
Caratteristiche principali:
• FERTILITÀ DINAMICA DEL TERRENO: tiene traccia dei livelli di azoto, fosforo e potassio per ciascun campo. I nutrienti del suolo si esauriscono man mano che i raccolti crescono e si riprendono quando i campi sono incolti.
• CICLI NUTRIENTI REALISTICI: colture diverse estraggono nutrienti diversi. Il contenuto di materia organica influisce sulla fertilità a lungo termine. I livelli di pH influiscono sulla disponibilità dei nutrienti.
• ECONOMIA DEI FERTILIZZANTI: tre tipi di fertilizzanti con costi ed efficacia variabili:
- Fertilizzante liquido: nutrienti bilanciati, costo moderato
- Fertilizzante solido: Fosforo più alto, costo standard
- Letame: migliora la materia organica, riducendo i costi
• DIFFICOLTÀ PERSONALIZZABILE:
- Semplice: ridotto esaurimento dei nutrienti, costi inferiori
- Realistico: gameplay bilanciato, impostazioni standard
-Hardcore: rapido esaurimento dei nutrienti, costi più elevati
• INTERFACCIA FACILE DA USARE:
- Integrato nel menu delle impostazioni di gioco
- Comandi della console per il controllo avanzato
- Notifiche in tempo reale per i nutrienti bassi
- Informazioni sul suolo specifiche del campo
• COMPLETAMENTE COMPATIBILE:
- Supporto multigiocatore
- Funziona con tutte le mappe
- Nessun conflitto con altre mod
- Salva gioco compatibile
Impatto sul gioco:
- Rende più importante la gestione dei fertilizzanti
- Incoraggia le strategie di rotazione delle colture
- Aggiunge elemento di pianificazione economica
- Aumenta il realismo senza eccessiva complessità
Comandi della console disponibili:
- fertilità del suolo (mostra tutti i comandi)
- SuoloAbilita/Disabilita
- Difficoltà SoilSet 1/2/3
- SoilFieldInfo <fieldId>
- Impostazioni dello spettacolo del suolo
- Impostazioni di ripristino del suolo
Installazione: estrai nella cartella mods. Configura le impostazioni di gioco nella sezione "Suolo e fertilizzante".
Questa mod è perfetta per i giocatori che desiderano una maggiore profondità dalla loro esperienza agricola senza una complessità schiacciante. Trova un equilibrio tra realismo e giocabilità, rendendo la gestione del suolo una parte significativa della tua strategia agricola.
Nota: questa mod non influisce direttamente sui tassi di crescita delle colture: aggiunge livelli di gestione relativi alla salute del suolo e all'economia dei fertilizzanti.
Goditi un'agricoltura più realistica!
===================================================================
Repository GitHub:
https://github.com/TheCodingDad-TisonK/FS25_SoilFertilizer
===================================================================
AVVISO SUL COPYRIGHT:
Tutti i diritti riservati. Ridistribuzione, copia,
è severamente vietato apportare modifiche o rivendicare questa mod come propria.
Autore originale: TisonK
===================================================================
In precedenza, trascinare l'HUD in una nuova posizione funzionava durante la sessione, ma il menu a discesa delle impostazioni della posizione non aveva modo di rifletterlo e la selezione di qualsiasi preimpostazione riportava indietro l'HUD.
Novità:
- Nuova opzione personalizzata nell'impostazione Posizione HUD
- Trascina o ridimensiona l'HUD nel gioco → l'impostazione passa automaticamente a Personalizzata
- La tua posizione personalizzata viene salvata e ripristinata ad ogni ricarica
- Selezionando un preset dal menu a discesa, l'HUD si blocca comunque in quella posizione come prima
Non è necessaria la migrazione dei salvataggi: i salvataggi esistenti funzionano così come sono.
La posizione, la scala e la visibilità dell'HUD del suolo venivano perse ogni volta che ricaricavi il salvataggio. L'HUD tornerà alla sua posizione predefinita e riapparirà anche se lo avessi nascosto con il tasto J.
Cosa è stato risolto:
- La posizione e la scala dell'HUD ora vengono salvate ad ogni salvataggio del gioco e all'uscita dal gioco
- Nascondere l'HUD con il tasto J ora persiste durante le ricariche
Non è necessaria la migrazione di salvataggio.
Due bug causavano silenziosamente l'applicazione di fertilizzanti e il monitoraggio del raccolto per produrre risultati errati senza errori evidenti nel gioco. Questo aggiornamento garantisce che il tuo lavoro sul campo venga effettivamente conteggiato.
Cosa è stato risolto:
- Gli spandiconcime secchi (letame pellettizzato, ecc.) ora aggiornano correttamente i valori del terreno: in precedenza il mod non riusciva silenziosamente a registrare l'applicazione
- Il rilevamento del raccolto ora riflette sempre ciò che sta crescendo attualmente in un campo, non ciò che c'era la scorsa stagione
Non è necessaria la migrazione dei salvataggi: i salvataggi esistenti vengono caricati normalmente.
L'HUD e il Rapporto sul suolo mostravano sempre l'ultimo raccolto raccolto invece di quello che sta attualmente crescendo sul campo. Pianta il grano dopo il mais ed entrambi i pannelli dicevano ancora "Mais" - ora il problema è stato risolto.
Cosa è stato risolto:
- L'HUD e il Rapporto sul suolo ora mostrano correttamente il raccolto attualmente in crescita nel campo - I campi incolti mostrano ancora "Incolto" come previsto
Non è necessaria la migrazione dei salvataggi: i salvataggi esistenti funzionano senza modifiche.
Registro delle modifiche completo -> https://github.com/TheCodingDad-TisonK/FS25_SoilFertilizer/releases/tag/v1.1.0.0
v1.0.9.0 -> v1.0.10.0 (ma KM non consente il numero 10)
L'HUD è stato completamente ricostruito. Ora mostra i dati del campo in tempo reale per qualunque campo ti trovi: niente più legende statiche che non ti dicono nulla di utile.
Novità:
- L'HUD ora mostra i livelli N/P/K in tempo reale, pH e materia organica per il tuo campo attuale, con barre di stato codificate a colori (Buono/Basso/Critico)
- Mostra il nome del campo, il raccolto attuale e se è stato applicato il fertilizzante
- L'HUD ora è spostabile e ridimensionabile: fai clic con il pulsante destro del mouse per accedere alla modalità di modifica, trascina per riposizionare, trascina un angolo per ridimensionare, fai nuovamente clic con il pulsante destro del mouse per salvare
- Controllo della dose di applicazione del fertilizzante per veicolo: regola la quantità applicata da ciascun irroratore direttamente dalla cabina (nuovi collegamenti dei tasti)
- Libreria ampliata di profili di fertilizzanti con tipologie agronomiche reali (urea, DAP, MAP, potassa, dolomite, digestato e altro)
- Risolto un problema di arresto anomalo durante l'utilizzo dei tasti di velocità dell'irroratore
- Risolti i nuovi campi che iniziavano con valori del terreno errati (ora corrisponde al gioco base)
Non è necessaria la migrazione dei salvataggi: i salvataggi esistenti vengono caricati normalmente.
La mod mostrava valori salutari del suolo fin dall'inizio di un nuovo gioco, mentre il gioco base ti diceva contemporaneamente che i tuoi campi avevano bisogno di calcinazione e fertilizzazione. Entrambi i sistemi avevano ragione: semplicemente non partivano dallo stesso posto. Questo aggiornamento risolve il problema.
Cosa è stato risolto:
- I campi ora iniziano leggermente acidi (pH ~6,0) e con nutrienti moderati, corrispondenti allo stato iniziale "necessita di calce/necessita di concimazione" del gioco base
- L'applicazione di calce o fertilizzante ora mette in accordo entrambi i sistemi contemporaneamente
- Aggiunta la licenza CC BY-NC-ND 4.0
- README aggiornato con istruzioni e descrizioni delle funzionalità più chiare
I tuoi salvataggi esistenti non sono interessati. I campi già tracciati nel tuo salvataggio mantengono i loro valori correnti: solo i campi nuovi o non tracciati utilizzano i valori iniziali aggiornati.
- Risolto un bug silenzioso in cui i campi non venivano tracciati correttamente.
Gli oggetti campo FS25 non espongono direttamente un ID campo numerico: il mod cercava nel posto sbagliato, quindi i dati sulla fertilità del campo non sono mai stati inizializzati e gli eventi dell'aratro sono stati silenziosamente ignorati.
Cosa è stato risolto:
- La fertilità del campo ora viene inizializzata correttamente per tutti i campi al caricamento del gioco
- L'aratura ora viene registrata correttamente sul campo corretto, applicando i bonus alla materia organica del suolo come previsto
- Non è necessaria la migrazione del salvataggio: i dati verranno reinizializzati automaticamente
Se vedevi dati sulla fertilità che non sono mai cambiati o un'aratura che sembrava non avere alcun effetto, questo aggiornamento
risolve entrambi i problemi.
[Correzione multigiocatore]
Bug 1 - Impostazioni permanentemente bloccate sul server dedicato:
L'interfaccia utente delle impostazioni ha acquisito lo stato di amministratore solo una volta (alla prima apertura), protetto da "soilFertilizer_initDone". Se il database degli utenti non era ancora stato popolato al momento dell'accesso, tutti i controlli rimanevano disabilitati per la sessione. Ora `updateAdminState()` viene chiamato su ogni frame aperto in modo che lo stato dell'amministratore sia sempre aggiornato.
Bug 2: le modifiche alle impostazioni dell'HUD hanno interessato tutti i giocatori:
`hudPosition`, `hudColorTheme`, `hudFontSize`, `hudTransparency`, `hudCompactMode` e `showHUD` sono stati instradati attraverso il server e trasmessi a ogni client. Spostare il tuo HUD ha spostato anche l'HUD di tutti gli altri. Queste impostazioni sono ora contrassegnate come "localOnly = true" nello schema: ignorano la rete a tutti e tre i livelli (invio client, applicazione/trasmissione server, ricezione sincronizzazione). Ogni giocatore controlla il proprio HUD in modo indipendente, non è richiesto alcun amministratore.
Il carattere segno di spunta ✓ (Unicode U+2713 / decimale 10003) è stato utilizzato in cinque messaggi di registro HookManager.lua stampati quando gli hook vengono installati all'avvio. Il carattere bitmap di FS25 non include questo glifo: il motore si bloccava durante la ricerca di caratteri mancanti ogni volta che il registro veniva scaricato sullo schermo, causando un notevole blocco subito dopo il caricamento della mod.
Tutte e cinque le occorrenze sostituite con un semplice ASCII [OK]. L'avviso "Carattere '10003' non trovato nel carattere texture" è scomparso, così come il blocco.
L'HUD (tasto J) è stato riproposto da visualizzazione di dati in tempo reale per campo in una legenda di riferimento rapido. I dati completi del campo ora vengono forniti correttamente dalla finestra di dialogo Rapporto sul suolo.
- Risolto il problema con l'inserimento della pagina delle impostazioni che faceva apparire bianche/vuote le pagine delle impostazioni di altre mod (grafica, contratti migliori, ecc.) quando veniva caricato SoilFertilizer
- Risolto un errore di runtime latente nell'HUD in cui veniva chiamato self:getActionName() ma il metodo non esisteva su SoilHUD
- Aggiunto g_fieldManager:getFieldAtWorldPosition() come ricerca del campo primario (Livello 0): l'API FS25 più accurata, che risolve le mancate corrispondenze su mappe complesse o dense
- Aggiunto codice colore per N/P/K
- Aggiunta la conversione di stringhe sicure per fieldId nulli
- Implementato il modello RVB (Register-Validate-Bind) corretto con tutti i parametri richiesti
- Aggiunta la dichiarazione <actions> mancante in modDesc.xml
- Implementato il collaudato modello di rilevamento sul campo di NPCFavor con fallback di 500 m
- Aggiunta variazione naturale del terreno (±10% nutrienti, ±0,5 pH, ±0,5% OM) con semina deterministica
- Aggiunta protezione di sicurezza multiplayer: solo il server crea campi, i client attendono la sincronizzazione
- Aggiunte funzioni di convalida del modello per tutti i tipi di elementi
- Implementata la memorizzazione nella cache dei modelli per garantire la coerenza
- Aggiunta la scansione dei candidati con convalida prima di accettare i modelli
- Aggiunta la convalida post-clone per individuare problemi strutturali
- La cache si reimposta al nuovo tentativo per gestire le modifiche dell'ordine di caricamento delle mod
- Messaggi di errore migliorati per il debug degli errori dei modelli
Questa versione risolve i problemi critici di inserimento e convalida della GUI che impedivano la visualizzazione affidabile del menu delle impostazioni. La mod ora funziona correttamente sia in modalità giocatore singolo che multiplayer, anche quando sono installate altre mod.
- Risolto il problema con il menu delle impostazioni che non veniva visualizzato nel gioco
- Risolti errori nelle impostazioni di rete in multiplayer
- Risolti errori di caricamento del modulo (NetworkEvents.lua)
Miglioramenti al refactoring dell'architettura e al multiplayer
Nuovi moduli:
- HookManager: gestione corretta del ciclo di vita degli hook (installazione/disinstallazione) per tutti gli hook del gioco
- SettingsSchema: un'unica fonte attendibile per tutte le definizioni delle impostazioni, riducendo i punti di contatto per le nuove impostazioni da ~10 a 1
- Costanti (SoilConstants): tutti i numeri magici estratti in una configurazione centralizzata (tassi di raccolto, profili di fertilizzanti, tassi di recupero, soglie, tempistiche, moltiplicatori di difficoltà)
- Logger (SoilLogger): prefisso di registro [SoilFertilizer] coerente in tutti i file
Multigiocatore:
- Aggiunto SoilFieldUpdateEvent: sincronizzazione dei dati del suolo per campo autorevole del server durante il raccolto/fertilizzazione
- I dati del campo ora sono inclusi nell'evento di sincronizzazione completa per l'adesione dei giocatori
- Logica dei tentativi di sincronizzazione di rete (3 tentativi, intervalli di 5 secondi) per richieste di sincronizzazione completa
Correzioni di bug:
- Sostituzioni di funzioni dirette non sicure convertite (Sprayer.spray, Environment.update) in Utils.appendedFunction per una migliore compatibilità mod
- Aggiunta la pulizia dei dati dei campi al cambio di proprietà (correzione della perdita di memoria)
Qualità del codice:
- SoilFertilitySystem rifattorizzato con metodi delegati puliti (onHarvest, onFertilizerApplied, onFieldOwnershipChanged, onEnvironmentUpdate)
- SettingsManager, Impostazioni e SoilSettingsUI semplificati guidandoli dallo schema
- Aggiornato il descrittore della versione modDesc da 92 a 105
- Aggiunti miglioramenti alla localizzazione della community (PR n. 9)
- Aggiunte 6 funzioni mancanti
- Migliorata la gestione degli errori con pcall()
- Sistema di registrazione coerente migliorato
- Aggiunti controlli di sicurezza pari a zero
- Migliorata la gestione dei hook per evitare duplicati
- Aggiunte 3 nuove impostazioni (Effetti stagionali, Effetti pioggia e Bonus aratura)
- Inizializzazione della GUI migliorata
- Migliorati i controlli di compatibilità
Registro delle modifiche:
- Risolto il problema con il comando "SoilFieldInfo" che ora inizializza e restituisce correttamente i dati del campo
- Aggiornamenti giornalieri del suolo migliorati con effetti meteorologici/stagionali
- Risolto piccolo bug nell'interfaccia utente delle impostazioni
Non funziona:
- Indicatori visivi del suolo sulla mappa (ancora nessun cambiamento di colore)
- Effetti sulla resa del raccolto (non modifica le quantità del raccolto)
- Adeguamenti dei costi dei fertilizzanti (l'impostazione esiste ma non è implementata)
- Usura/rottura dell'attrezzatura dovuta alle condizioni del terreno
- Tessitura del terreno/effetti di sabbia/argilla
Pianificato:
- Bonus di rotazione delle colture: non fornisce bonus di rendimento per rotazioni buone
- Effetti delle colture di copertura: non riconosce le colture di copertura
- Compattazione del terreno - da attrezzature pesanti
- Effetti dell'irrigazione - sulla disponibilità dei nutrienti
- I campi possono essere scansionati, ma per ora forniranno valori predefiniti
- L'agricoltura di precisione ora viene rilevata correttamente e imposta la modalità di sola lettura.
- Risolto il problema con la scheda delle impostazioni (se si verificano problemi con FS25_WorkerCosts, nel gioco verranno visualizzati)*
- Aggiunta l'inizializzazione pigra per prevenire arresti anomali su server/client.
*Verrà risolto presto!
!!! Si prega di leggere attentamente!!!
Quando la mod viene utilizzata insieme a mod come Precision Farming, le impostazioni non sono per ora disponibili nel menu di pausa. Puoi configurarlo utilizzando la console. Sto lavorando a una soluzione adeguata per questo.
Puoi comunque utilizzare la mod con altre mod, ma non ci sarà una scheda delle impostazioni nel menu di pausa. Tienilo a mente.
Potrebbero esserci ancora problemi, ma l'ho testato sul mio computer e non ho riscontrato errori dopo le modifiche. Per questo motivo ho spinto questa versione.
Crea un problema sul repository GitHub se ricevi errori dopo questo registro delle modifiche!
- Risolto il problema con la scheda delle impostazioni che si sovrapponeva ad altre mod nel menu di pausa
- Risolto il problema relativo al crash del gioco durante l'aggiornamento prima che i campi venissero scansionati
- Risolto il problema con l'errore "tabella coppie() prevista, ottenuto nil" in SoilFertilitySystem
- Risolta la compatibilità multiplayer e server dedicati
- Risolti errori di iniezione della GUI che causavano problemi nel menu delle impostazioni
- Aggiunta la piena compatibilità con il mod Precision Farming
- Aggiunta compatibilità mod pneumatici usati (GUI disabilitata, i comandi della console funzionano)
- Aggiunto supporto server dedicato con disabilitazione automatica della GUI
- Aggiunto file di configurazione per le opzioni di personalizzazione dell'utente
- Aggiunto il rilevamento dei conflitti tra mod e la modalità di compatibilità automatica
- Aggiunta la modalità solo console per ambienti server
- Spaziatura della GUI migliorata per evitare sovrapposizioni con altre mod
- Scansione sul campo migliorata con controlli di sicurezza pari a zero
- Migliorata la gestione degli errori in tutta la mod
- Stabilità multiplayer migliorata e rilevamento server/client
- Migliorate le informazioni di registrazione e debug
- Layout del menu delle impostazioni e persistenza dei pulsanti migliorati
- Garantito che fieldData venga sempre inizializzato come tabella (non nil)
- Modificato l'ordine di inizializzazione per evitare aggiornamenti prematuri
- Modificata l'iniezione della GUI per evitare conflitti con altri mod
- Risolto un problema importante con la schermata del negozio e la mappa di gioco
- Impostazioni temporaneamente disabilitate tramite il menu di pausa a causa di conflitti in corso
- Aggiunta compatibilità per l'agricoltura di precisione
- Garantito che `self.fieldData` sia sempre inizializzato come tabella (non `nil`)
- Aggiunto il controllo del tipo prima di utilizzare `pairs()` per iterare
- Aggiunta una migliore registrazione degli errori per il debug
- Risolto un crash del gioco quando la mod tentava di aggiornarsi prima che i campi venissero scansionati