ls-novinky.forumczech.com
 
PříjemPříjem  FAQFAQ  Pravidla fóra!Pravidla fóra!  RegistraceRegistrace  PřihlášeníPřihlášení  

Share | 
 

 How To make a mod washable

Zobrazit předchozí téma Zobrazit následující téma Goto down 
AutorZpráva
durman
Admin
Admin


Počet příspěvků : 459
Registrován : 30. 06. 11

PříspěvekPředmět: How To make a mod washable   Wed Jul 20, 2011 4:34 pm

Here is a small How To make a mod washable.

For the exersize i used the NHCR9090 by wohlstandskind & yekk1 and DUFF3RR:s skin he made for Dawn Valley map for it that i renamed dirt to make it easy.
Step 1/2: A short refresh in nodecount is important as it is one of the essential thing to make this modification to work.
[You must be registered and logged in to see this link.]
Step 1:
Make sure you have a dirtskin of mod or make one, the dirtshader-file and washable.lua file from the 380GTA or other place. I did it easy for me as i had the 380GTA in backupstorage to extract the files from and the link from the other short gudie did not work for me so thats why i did it this way.

Now we get starting here with the easyest part but yet the part that can make it unbuyable or not show up in store if made wrong.

In modDesc just before </specializations> add:

<specialization name="washable" className="Washable" filename="Washable.lua" />

here i just put the washable in same folder as moaddesc-file, some mods have it own folder named Specialization then the path should be Specializations/Washable.lua"

Just before:
</type>
</vehicleTypes>
add
<specialization name="washable" />

Now save modDesc file as it is done.

[You must be registered and logged in to see this image.]

Put the skinfile, dirtshader and washable.lua where they should be.

[You must be registered and logged in to see this image.]
[You must be registered and logged in to see this image.]

Step 2:

Open the mods i3d-file with notepad/notepad++ and locate the FileId part of the file, at the top.

Locate a number of free fileID, does not matter how low/high, just that they are free. Here i just use 25-27 as i know they are free and when save things in GE these will be altered by GE.

At the end of that section just before </Files> add:

<File fileId="25" filename="dirtShader.xml" relativePath="true"/>
<File fileId="26" filename="NH_CR9090_EVO_01dirt.png" relativePath="true"/>
<File fileId="27" filename="NH_CR9090_EVO_WHEELdirt.png" relativePath="true"/>

[You must be registered and logged in to see this image.]

Now we need to define what file replace what so from pic4 we see that wheel has FileId2 and body FileId4.

Search for <Materials> and look for all materials that use file 2 and 4.

[You must be registered and logged in to see this image.]

Now add customShaderId="25"> with one blankstep like in pic5 after the ambientcolr but before the > on that line. why 25 is because file nr 25 is the shaderfile we use here and it is important that it is the same as in fileID list, if fileID is 700, then shaderId is 700.

After <Texture fileId="XX"/> add:

<Custommap name="dirtTexture" fileId="XXX"/>
<CustomParameter name="dirtScale" value="0 0 0 0"/>

[You must be registered and logged in to see this image.]

Here it is important that both XX and XXX match, as in the "clean skin" file, lets say 4 for the body is replaced with its "dirty partner", in this case file 26. and file 2 for clean wheel is replaced with file 27.

Continue with all materials that uses any skinfile that you have a dirt-file of, it may be many so it takes patiens and it is essential to keep track of filenumber so you replace right file with its right counterpart.

Step3:
Open the XML-file in notepad/notepad++ and go to the end of that file and just before </vehicle> add:

<!-- dirtInterval(h); cleaningInterval(sec) -->
<dirt count="XXX" dirtInterval="1" cleaningInterval="15"> <! - 0.004 ->
<dirtComponent1 index="X" />
<dirtComponent2 index="X" />
and so on for each note that should be dirty and to find the node open the i3d-file in GE and start to count nodes

Remember it starts at 0 not 1.

[You must be registered and logged in to see this image.]

Every part that is gonna get dirty has to be accounted for here or it stays clean.
Save file and you are almost done.
Test it before rezip and if good then rezip and now you are done
This is what i came up with for an untouched 9090

<!-- dirtIntveral(h); cleaningInterval(sec) -->
<dirt count="27" dirtInterval="1" cleaningInterval="15"> <! - 0.004 ->
<dirtComponent1 index="0" />
<dirtComponent2 index="0|0" />
<dirtComponent3 index="1" />
<dirtComponent4 index="1|0" />
<dirtComponent5 index="2" />
<dirtComponent6 index="2|0" />
<dirtComponent7 index="3" />
<dirtComponent8 index="3|0" />
<dirtComponent9 index="12" />
<dirtComponent10 index="12|0" />
<dirtComponent11 index="12|0|0" />
<dirtComponent12 index="22" />
<dirtComponent13 index="22|0" />
<dirtComponent14 index="22|1" />
<dirtComponent15 index="25" />
<dirtComponent16 index="25|0" />
<dirtComponent17 index="31|0" />
<dirtComponent18 index="32" />
<dirtComponent19 index="32|0" />
<dirtComponent20 index="33" />
<dirtComponent21 index="33|0" />
<dirtComponent22 index="34" />
<dirtComponent23 index="34|0" />
<dirtComponent24 index="35" />
<dirtComponent25 index="35|0" />
<dirtComponent26 index="44" />
<dirtComponent27 index="44|0" />
</dirt>

[You must be registered and logged in to see this image.]

[EDIT]
Missed one small node so correct is:
<!-- dirtIntveral(h); cleaningInterval(sec) -->
<dirt count="28" dirtInterval="1" cleaningInterval="15"> <! - 0.004 ->
<dirtComponent1 index="0" />
<dirtComponent2 index="0|0" />
<dirtComponent3 index="1" />
<dirtComponent4 index="1|0" />
<dirtComponent5 index="2" />
<dirtComponent6 index="2|0" />
<dirtComponent7 index="3" />
<dirtComponent8 index="3|0" />
<dirtComponent9 index="10|0" />
<dirtComponent10 index="12" />
<dirtComponent11 index="12|0" />
<dirtComponent12 index="12|0|0" />
<dirtComponent13 index="22" />
<dirtComponent14 index="22|0" />
<dirtComponent15 index="22|1" />
<dirtComponent16 index="25" />
<dirtComponent17 index="25|0" />
<dirtComponent18 index="31|0" />
<dirtComponent19 index="32" />
<dirtComponent20 index="32|0" />
<dirtComponent21 index="33" />
<dirtComponent22 index="33|0" />
<dirtComponent23 index="34" />
<dirtComponent24 index="34|0" />
<dirtComponent25 index="35" />
<dirtComponent26 index="35|0" />
<dirtComponent27 index="44" />
<dirtComponent28 index="44|0" />
</dirt>
/EDIT]
As you can see dirtComponentnr increase by 1 for every node and dirt count is the total number of dirtcomponentent.

dirtInteval=time to get dirty and it become dirty gradualy and sadly rain cleans it off.

As a bonus i have a little tweak of the washer as i may not be the only one that notised that the "hose" is way to short so heres how to extend it.
In PressureWasher.XML there is a line that say actionDistance="XX", rise the XX to a number that fit your likings, i have 30 so the washer and pallet can be inside the shed but it reach all around big tools placed outside that shed.

Thats the way i did it and it works just fine on both tractor/combine and tools/trailers but i am sure there is other way to dit as well.

(neznamemu autorovi dekuji!)
link na stazeni v docx [You must be registered and logged in to see this link.]

_________________________
Tlačítko [You must be registered and logged in to see this link.] má svůj význam!
[You must be registered and logged in to see this image.] [You must be registered and logged in to see this image.] [You must be registered and logged in to see this image.]
Návrat nahoru Goto down
http://ls-novinky.forumczech.com
 
How To make a mod washable
Zobrazit předchozí téma Zobrazit následující téma Návrat nahoru 
Strana 1 z 1

Povolení tohoto fóra:Nemůžete odpovídat na témata v tomto fóru
ls-novinky.forumczech.com :: Landwirtschafts Simulator 2011 :: Návody-
Přejdi na: