View Single Post
Old 07-18-05, 04:11 PM   #1
THE_ORZEL
Seaman
 
Join Date: Mar 2005
Posts: 41
Downloads: 0
Uploads: 0
Default Tutorial on how to clone objects by Chris aka Orzel

Ok I will provide all the info that you need to successfully clone sh3 object. This maybe confusing but I will help you if you have any questions.

As an example I will use simple object such as Stuka dive bomber. Make an exact copy of ADB_JU87Stuka folder located in the default directory
C:\Program Files\Ubisoft\SilentHunterIII\data\Air\ADB_JU87Stu ka

and rename it to anything you want. For this example I will use my own copy that I’ve made to show you. I’m going t rename ADB_JU87Stuka to DBJU87.

So by now you should have folder named DBJU87 in it name everything as fallows:

DB_JU87.cfg
DB_JU87.dat
DB_JU87.dsd
DB_JU87.eqp
DB_JU87.sim
DB_JU87.sns
DB_JU87.zon
DB_JU87_en.log
DB_JU87_ge.log
DB_JU87_shp.tga

So far so good Now in hexeditor open DB_JU87.dat, DB_JU87.dsd, DBJU87.sim and DBJU87.zon.

To make things easy I will provide you all the necessary id strings that need to be changed. Now the key word here is sets of id what you probably did before was to replace all the id with unique number but this isn’t so.

You must replace sets of id with different number. For example you may have something like this JU87Stuka.tga inside the hexeditor this tga has 1 id in multiple places inside the dat file that needs to be replaced with a different id set. You may have 3 or 4 or more sets of the same id number string that needs to be changed. So you would change it all the sets of id with the same different id set. In hex editor select replace type the original string and then type replacement string (new id) and click replace all. All id string are in 8 byte format for example string 12 33 FF DD 19 55 88 AD with 3 or 4 sets of the same id will be changed to anything that is different and not the same string like to this 99 33 FF DD 19 55 88 FF Note I changed first an last numbers.

How do I find an id string in my object? Well I built for myself a little tool that allows me to find and replace id in objects and I‘m building more powerful dat editor. But what you can do is this. There are several ways of finding id strings using hexeditor. One way the most simple way but not the most accurate is to simply type in for this case we will use Stuka as an example.

In hexeditor go to find and type in stuka make sure that you select search entire file. Now you should arrive at JU87Stuka.tga to find the correct string may take you a little time and practice but you should look for separators like this 00 00 00 usually after this should be your id string. It is 8 byte strings you could use other ways to find it but I would just have to write a very long tutorial and I just can’t spend that much time. I will write more ways of finding id later on.

I will submit the strings that you need to find and replace. Note what not to do.

Don’t replace individual id with different id number you would only make a mess and nothing would work. They’re sets of id that need to be replaced and not individual. Although you may find single id but you don’t usually replace them.

Later you need to change certain id strings in sim, zon,dsd, and when needed val I have provided already info on what string should be changed below.

So in conclusion:

This is and example of an id in hexeditor 24 ED 21 8B 90 41 F1 75 there maybe as many as 4 or more such id that need to be replaced with a different id. Use find and replace in hexeditor to change them all. Do not individually replace them to a different id. Big no, no

You also need to edit class name in DB_JU87.cfg to whatever you want as long as this very same class name will be in roster air folder. Also you need to edit EnglishNames.cfg in air folder it will work without it but then you want the correct name etc.

Ok I did that now I’m tired you all owe me one thing please share more info among yourself that way sh3 would grow and not diminish. Sending secret pm’s and e-mails between few is not the way true mod community works.

Ok just to give you hands on experience I have submitted the strings you need to replace for ADB_JU87Stuka.

NO means this string isnot found in zon, sim or dsd etc.

A0699484AB20D29C TO New String NO

F836293DBF589F8A TO New String YES SIM,ZON,DSD

C0789484AB20D29C TO New String NO

CA15BDAF49EB0B4E TO New String YES ZON

FD3FC21854EC288A TO New String NO

3130D962ED2A7614 TO New String YES SIM

0AAB53B1A328162C TO New String NO

718744DDDFD33635 TO New String NO

085C7A06EB81B680 TO New String NO

5F56FCDDD2CE1FC2 TO New String NO

751EFC0C0B271556 TO New String YES SIM

B17A9B754F2AAC4E TO New String NO

5289683E9669C502 TO New String YES ZON

4E105E2CD38A05C6 TO New String YES ZON

718644DDDFD33635 TO New String NO

B18644DDDFD33635 TO New String NO

6B1EFC0C0B271556 TO New String YES SIM

6936289D54589D8A TO New String NO

37D3234A56EC288A TO New String NO

B0AA7245EF6BE2FE TO New String YES ZON

F18644DDDFD33635 TO New String NO

34D3234A56EC288A TO New String NO

0924A8DED7C4FD03 TO New String YES ZON

318744DDDFD33635 TO New String NO

FBBD64DACCD0A79B TO New String NO

FBBD6452CCD0A79B TO New String NO

FBBD64BACCD0A79B TO New String NO

36D3234A56EC288A TO New String NO

PS. If all else fails and you still can’t do it. To do this use my string sets above and in hex editor use replace type in first string and for replacement type different number that you come up with. For example 6936289D54589D8A TO EE36289DD4589D84 do the same for all but use diffrent 8 byte number for each string.

Lets see if you guys can do it now

Chris aka Orzel
THE_ORZEL is offline   Reply With Quote