Schritt-fĂŒr-Schritt Tutorial: Wie du fĂŒr LS25 neue Fruchtarten (z. B. Rye, Hops) mit fruitTypes.xml, Frucht-XMLs, fillTypes und i3d-Modellen hinzufĂŒgst.
Inkl. Debug-Tipps, Beispielen und nĂŒtzlichen Links zur Forbidden-Mods Filebase und GIANTS Forum.
1) Kurzer Ăberblick â was muss wohin
- fruitTypes.xml (oder in der Map-Ordnerstruktur referenziert) listet die verwendeten FrĂŒchte fĂŒr eine Map.
- Jede Frucht bekommt eine eigene Frucht-XML unter $data/foliage/<fruchtname>/<fruchtname>.xml mit Definitionen (Name, growth, fillType usw.).
- fillTypes.xml / fillTypes mĂŒssen die neue FĂŒllart (z. B. âryeâ, âhopsâ) kennen â viele Maps registrieren FillTypes global oder per Map-XML. Developer Network
- i3d: die Visual-/Foliage-Modelle (Texturen, foliage maps) werden im i3d platziert und mit den Frucht-Definitions-XMLs verknĂŒpft (z. B. foliage-map/foliageDensity). GIANTS Developer Network
2) Minimal-Beispiel: Struktur (Ordner)
myMap/
ââ map.xml
ââ fruitTypes.xml
ââ foliage/
ââ rye/
ââ rye.xml
ââ rye.i3d
Die Map verweist auf fruitTypes.xml oder listet die <fruitType filename="..."/> direkt in map.xml.
3) Beispiel: fruitTypes.xml
<?xml version="1.0" encoding="utf-8"?>
<fruitTypes>
<!-- relative oder $data Pfade -->
<fruitType filename="$data/foliage/rye/rye.xml"/>
<fruitType filename="$data/foliage/hops/hops.xml"/>
</fruitTypes>
Hinweis: Wenn du Fehler wie Fruit with name "rye" does not exist siehst, stimmt der Pfad oder der name in der Frucht-XML nicht. ĂberprĂŒfe beide.
4) Beispiel: rye.xml (Frucht-Definition, vereinfachte Version)
<?xml version="1.0" encoding="utf-8"?>
<fruit name="rye" title="Rye" fillTypeIndex="-1">
<growth>
<growthState speed="1.0" duration="6" season="2"/>
<!-- growthState EintrÀge variieren je nach Spielversion -->
</growth>
<fillType name="rye" pricePerLiter="0.03" isSellable="true"/>
<harvestedBy>
<vehicleType name="combine"/>
</harvestedBy>
<cultivation>
<seedNeeded value="true" seedFillType="ryeSeed"/>
</cultivation>
<animation>
<!-- falls nötig, z.B. fĂŒr special harvester oder converters -->
</animation>
</fruit>
Name muss eindeutig sein und mit Verweisen (z. B. in implement-XMLs, HUD, growth) ĂŒbereinstimmen.
Fehlerhafte Einstellungen erzeugen Konsolen/Log-Errors.
5) Beispiel: fillTypes.xml ErgÀnzung (falls Map/Mod FillTypes selbst registriert)
<fillTypes>
<fillType name="rye" category="crop" defaultPricePerLiter="0.03" unit="l" />
<fillType name="ryeSeed" category="seed" defaultPricePerLiter="0.005" unit="l" />
</fillTypes>
Viele Maps nutzen bereits zentrale FillTypes â du musst nur sicherstellen, dass die Namen ĂŒbereinstimmen.
6) i3d: Was muss drinstehen? (Kurz)
- Modelle/foliageNodes: FĂŒr sichtbare Pflanzen brauchst du i3d-Geometrie/foliage-Layer oder Du verwendest die Map-Foliage (Blended foliage maps).
- Transform/Root Node: exportiere aus dem Editor (GIANTS Editor) und verlinke in der Frucht-XML (falls nötig).
Praktisch arbeiten viele Modder mit fertigen foliage-Plugins/meshes oder mit den Map-Foliage (Terrain-foliage) â die genaue Implementation hĂ€ngt davon ab, ob die Frucht Boden-foliage (meadow style) oder eigenstĂ€ndige Objekte ist.
Mini-i3d-Beispiel (sehr reduziert):
<i3d>
<nodes>
<node name="ryeRoot" class="Transform">
<mesh filename="rye_mesh.i3d"/>
<!-- foliage settings, collisions, etc. -->
</node>
</nodes>
</i3d>
(Reality: i3d ist komplexer â nutze GIANTS Editor und exportiere korrekt; viele Tutorials im Videoformat zeigen das praktisch.)
7) Map.xml â Integration
In map.xml entweder:
<fruitTypes>
<fruitType filename="$data/foliage/rye/rye.xml"/>
</fruitTypes>
oder ein Verweis auf fruitTypes.xml:
<include filename="fruitTypes.xml"/>
Achte darauf, dass keine doppelten EintrĂ€ge fĂŒr dieselbe Frucht vorkommen (kann zu doppelten Frucht-EintrĂ€gen fĂŒhren).
Typische Probleme & Debugging
- Fehler in Log.txt: Lies log.txt nach ERROR: Fruit with name ... does not exist oder Pfad-Fehlern.
- Das sagt dir genau, welche Datei/Name fehlt. GIANTS Software Forum
- Doppelte FrĂŒchte: passiert, wenn dieselbe Frucht in mehreren files registriert wird â entferne Duplikate oder benutze <remove/>/<set/> via parentFile in map.xml.
- Visualisierung fehlt: meist i3d/foliage-Layer falsch exportiert oder nicht in map Foliage integriert.
- PrĂŒfe GIANTS Editor Export.
9) NĂŒtzliche Ressourcen / Links
(Die oben zitierten Seiten kannst du in den Links öffnen â ich habe die relevanten Quellen geprĂŒft und verlinkt.)
_______________________________________________________________________________________________________________________________________________________
â
1) Komplettes Beispiel-Modpaket (Struktur + Dateien)
Ordnerstruktur:
myExtraFruitPack/
ââ modDesc.xml
ââ fruitTypes.xml
ââ fillTypes.xml
ââ foliage/
ââ rye/
ââ rye.xml
ââ rye.i3d
modDesc.xml
<?xml version="1.0" encoding="utf-8"?>
<modDesc descVersion="82">
<title>Extra Fruits Pack</title>
<description>Adds extra fruit types (rye) to your LS25 map.</description>
<author>YourName</author>
<version>1.0.0.0</version>
<extraContent>
<extraContentCategory name="fruitTypes" filename="fruitTypes.xml"/>
<extraContentCategory name="fillTypes" filename="fillTypes.xml"/>
</extraContent>
</modDesc>
fruitTypes.xml
<?xml version="1.0" encoding="utf-8"?>
<fruitTypes>
<fruitType filename="foliage/rye/rye.xml"/>
</fruitTypes>
foliage/rye/rye.xml
<?xml version="1.0" encoding="utf-8"?>
<fruit name="rye" title="Rye" fillTypeIndex="-1">
<growth>
<growthState speed="1.0" duration="6" season="2"/>
<growthState speed="1.0" duration="6" season="3"/>
</growth>
<fillType name="rye" pricePerLiter="0.03" isSellable="true"/>
<harvestedBy>
<vehicleType name="combine"/>
</harvestedBy>
<cultivation>
<seedNeeded value="true" seedFillType="ryeSeed"/>
</cultivation>
</fruit>
foliage/rye/rye.i3d (Platzhalter fĂŒr den GIANTS Editor Export)
<i3d version="1.10" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Scene>
<TransformGroup name="ryeRoot" />
</Scene>
</i3d>
đ Integration in eine Map:
- Entweder packst du dieses Modpaket in den Mods-Ordner und verweist in map.xml via <include filename="fruitTypes.xml"/> und <include filename="fillTypes.xml"/>.
- Oder du kopierst die Dateien direkt in die Map-Struktur.
â
2) Typische Log-Fehlermeldungen + Lösungen
Fehler 1:
Error: 'fruitType rye' not found
Ursache: Pfad in fruitTypes.xml falsch oder rye.xml fehlt.
â
Lösung: PrĂŒfe Schreibweise, Pfad (z. B. foliage/rye/rye.xml) und Namen.
Fehler 2:
Error: Multiple registrations of fruitType 'rye'
Ursache: Die gleiche Frucht ist mehrfach registriert (z. B. in Map und Mod).
â
Lösung: Entferne eine der Registrierungen oder nutze <remove/> im map.xml.
Fehler 3:
Warning: FillType 'rye' not registered
Ursache: FillType fehlt oder wird zu spÀt geladen.
â
Lösung: fillTypes.xml einbinden oder fruit.xml enthÀlt <fillType name="rye"/>.
Fehler 4:
Error: Could not load foliage for fruitType rye
Ursache: i3d-Datei fehlt oder falscher Pfad in der Frucht-XML.
â
Lösung: Exportiere i3d korrekt im GIANTS Editor, ĂŒberprĂŒfe Referenzen in rye.xml.
Fehler 5:
Error: Missing texture for rye in rye.i3d
Ursache: Textur-Dateien nicht gefunden.
â
Lösung: Texturen (.dds) in den richtigen Ordner kopieren und Pfade in i3d aktualisieren.
Extra-Tipp: Debugging
- Immer log.txt prĂŒfen (Ordner Dokumente/My Games/FarmingSimulator2025/log.txt).
- Mit -cheats Startparameter die Konsole aktivieren (F2) und gsFruitTypes ausfĂŒhren â zeigt registrierte FrĂŒchte.
â
Kurzanleitung: i3d fĂŒr neue Fruchtarten erstellen
1. GIANTS Editor öffnen
- Starte den GIANTS Editor in der Version, die zu LS25 passt (Editor 10.x fĂŒr LS25).
2. Basis-Geometrie laden oder neu erstellen
- Importiere ein bestehendes Foliage-Set aus $data/foliage/ (z. B. Weizen) oder erzeuge ein neues Mesh.
- Dupliziere es und benenne es ryeRoot oder Àhnlich.
3. Materialien & Texturen anlegen
- Weise Material fĂŒr den Frucht-Layer zu (Texturen in DDS-Format: diffuse, normal, specular).
- Passe die Shader-Einstellungen an (z. B. foliageShader.xml).
4. TransformGroup setzen
- Stelle sicher, dass der Root-Node heiĂt wie in deiner Frucht-XML (<fruit name="rye"> â Node âryeRootâ).
- Skaliere und positioniere das Modell (normalerweise 1:1, Position 0,0,0).
5. Foliage-Layer konfigurieren
- Erstelle unter âTerrain Info Layer Paintâ eine neue Layer-Maske fĂŒr âryeâ.
- Setze die Density Maps (fruit_density.gdm) fĂŒr die neue Frucht in den Map-Layer.
6. i3d exportieren
- Datei speichern unter foliage/rye/rye.i3d in deinem Mod-Ordner.
- Im Export-Dialog Pfade kontrollieren (Texturen relativ zum Mod-Ordner).
7. In XML referenzieren
- In rye.xml muss das Attribut filename zum i3d passen (falls foliage visuell referenziert wird).
- PrĂŒfe Pfade mit / statt \ fĂŒr LS-KompatibilitĂ€t.
đĄ Tipp:
Wenn du die Frucht nicht selbst modellieren willst, kannst du ein bestehendes Foliage-Modell als Vorlage nehmen
(z. B. Weizen oder Gerste), kopieren und nur die Texturen und Namen anpassen.
Dieser Beitrag wurde mit Hilfe von KI erstellt.
Haftungsausschluss laut Nutzungsbedingungen.