- Offizieller Beitrag
Hallo,
Hier möchte ich euch eine kleine Anleitung geben wie ihr die Anzahl der ab kippbaren Haufen in eurer Map erhöht. Als erstes konvertiert ihr die terrainDetailHeight_density.gdm zu einem PNG und packt diese in den gleiche Ordner wie die GDM wieder ab und löscht die Originale gdm.
dann ändert ihr bei den FileID in der map.i3d die terrainDetailHeight_density.gdm zu terrainDetailHeight_density.png
Beispiel:
<File fileId="251" filename="map/terrainDetailHeight_density.gdm"/>
ändern zu
<File fileId="251" filename="map/terrainDetailHeight_density.png"/> Map i3d anpassen, damit die terrainDetailHeight_density Map genügend Channel hat um die Daten zu speichern:
<DetailLayer name="terrainDetailHeight" numDensityMapChannels="11" ...
ändern zu
<DetailLayer name="terrainDetailHeight" numDensityMapChannels="12" ... Map i3d anpassen. In der gleichen Zeile wie im vorhergehenden Schritt, das Attribut
compressionChannels="5"
ändern zu
compressionChannels="6" Map i3d anpassen, damit der Shader die Daten des neuen Channels erhält. In der gleichen Zeile wie im vorhergehenden Schritt, das Attribut
combinedValuesChannels="0 5 0;5 6 0"
ändern zu
combinedValuesChannels="0 6 0;6 6 0" Map i3d anpassen. In der gleichen Zeile wie im vorhergehenden Schritt, das Attribut
heightFirstChannel="5"
ändern zu
heightFirstChannel="6" nun die Map im GE öffnen und speichern damit wieder eine GDM erzeugt wird. Nun kann man die PNG wieder aus dem Ordner löschen und in der MAP i3D wieder das PNG durch GDM ersetzen.
Beispiel:
<File fileId="251" filename="map/terrainDetailHeight_density.png"/>
ändern zu
<File fileId="251" filename="map/terrainDetailHeight_density.gdm"/> groundHeightShader.xml anpassen:
diese wird wahrscheinlich vom Originalpfad geladen. Diese in eure Map kopieren und den Pfad in der i3D anpassen.
Beispiel Eintrag in der Map.i3D
<File fileId="295" filename="$data/shaders/groundHeightShader.xml"/>
anpassen zu
<File fileId="295" filename="shaders/groundHeightShader.xml"/>
Die Zeile 11
defaultFilename = "../shared/groundHeightNoise.png"/>
anpassen zu
defaultFilename = "$data/shared/groundHeightNoise.png"/>
oder wenn ihr die in eure Map packen will entsprechend den Pfad ausgehend der XML.
Die Zeile 192
globals.groundType *= 31;
anpassen zu
globals.groundType *= 63; Map Lua (ModMap.lua) Script erstellen um die Script Variablen anzupassen:
Code: Select all
ModMap = {} local ModMap_mt = Class(ModMap, Mission00)
function ModMap:new(baseDirectory, customMt, missionCollaborators) local mt = customMt if mt == nil then mt = ModMap_mt end local self = ModMap:superClass():new(baseDirectory, mt, missionCollaborators)
self.terrainDetailHeightTypeNumChannels = self.terrainDetailHeightTypeNumChannels + 1;
return self
end
Wenn ihr bereits mehr Bodenwinkel verbaut habt müsst ihr nur "self.terrainDetailHeightTypeNumChannels = self.terrainDetailHeightTypeNumChannels + 1;" hinzufügen Die ModMap.lua in der modDesc.xml eintragen:
Die entsprechende Zeile der Map in der modDesc.xml anpassen. Z.b. folgende Zeile
<map id="SampleModMap" className="Mission00" filename="$dataS/scripts/missions/mission00.lua" configFilename="maps/mapDE.xml" defaultVehiclesXMLFilename="defaultVehicles.xml" defaultItemsXMLFilename="defaultItems.xml">
anpassen zu
<map id="SampleModMap" className="ModMap" filename="ModMap.lua" configFilename="maps/mapDE.xml" defaultVehiclesXMLFilename="defaultVehicles.xml" defaultItemsXMLFilename="defaultItems.xml">
Wenn bereits Bodenwinkel verbaut sind entfällt natürlich dieser Schritt
Ich habe dies getestet und bei den 1. Versuchen keinen Fehler feststellen können. Aber wenn wer einen Fehler findet kann er dies natürlich gerne posten.
Leider dürfte ein neues Savegame notwendig sein bzw. die terrainDetailHeight_density.gdm im Savegame muss gelöscht werden und durch die der Map ausgetauscht werden (sollte automatisch gehen wenn die fehlt aber sicher ist sicher) Damit sind dann alle auf den Boden gekippten Haufen weg (Fahrsilos, Loses Getreide, Stroh/Gras/Heu Schwaden etc.)
dank an derely für seinen Beitrag