Komentarze: (0)
Oceny:
Autor: dhg
Dodane przez:: dhg   Data: 10-12-2010 14:26
 
O rpk słów kilka

Przy dodawaniu nowego samochodu czy też części, każdy moder musi zająć się edycją pliku RPK.
Ale pliku rpk edytować nie można.
Należy najpierw przekonwertować go do postaci pliku rdb, który ma strukturę, powiedzmy, blokową, możliwą do edycji zwykłym edytorem tekstu. Ja używam notatnika ;)
Do konwersji pliku rpk do rdb używamy programu resdecode.exe.
Jest to aplikacja konsolowa, i dosyć nieporęcznie się nią posługiwać z poziomu CMD,
więc tworzymi plik wsadowy dekoduj.bat o treści
resdecode nazwa_samochodu_albo_części np. resdecode Einvagen
i kopiujemy oba (resdecode.exe i dekoduj.bat) do \Activision Value\Street Legal Racing\cars\racers
Dwuklik na dekoduj.bat i pojawia się einvagen.rdb, który można edytować ;)

Struktura rdb wygląda tak:


<FILE external_links >
system\
cars\
cars\racers\
parts\
sound\
particles\
parts\engines\Einvagen_Duhen_Ishima_Focer\
</FILE>

Jest to sekcja linków do poszczególnych folderów gry, w zasadzie nas nie interesuje co tu się znajduje :D .
W dawnych czasach, zanim Sparky napisał swój edytor, moderzy w tej sekcji dodawali silniki które można zamontować w samochodzie.Wyglądało to tak :

<FILE external_links >
system\
cars\
cars\racers\
parts\
sound\
particles\
parts\engines\Einvagen_Duhen_Ishima_Focer\
parts\engines\Baiern_Emer\
parts\engines\DEXTERV8s\
parts\engines\Dodge_BMW_Racing_V10\
parts\engines\GMC_Nissan_Honda_Hyundai_Opel\
parts\engines\MC_Prime_SuperDuty\
parts\engines\Mopar\
parts\engines\Nissan_Engine_Pack\
parts\engines\BMW5_engine\
</FILE>

Każda część ma zapis w podwojnym recordzie:

<FILE XXXXXXXX.res >
</FILE>
<FILE XXXXXXXX.rsd >
</FILE>

W piku Rdb wyróżniamy kilka ważnych sekcji, tzw typeof

typeof 9 - odpowiada za meshe *.scx czyli przypisuje pliki modeli i fizyki

np:

<FILE 00000016.res >
typeof 9
superid 0x00000001
typeid 0x000000CC
alias click
isparentcompatible 1.00
</FILE>
<FILE 00000016.rsd >
shape cars\racers\Einvagen_data\meshes\chassis.scx
</FILE>

typeof 7 - odpowiada za tekstury
np:

<FILE 00000187.res >
typeof 7
superid 0x00000004
typeid 0x0000004A
alias Einvagen_chassis.ptx
isparentcompatible 1.00
</FILE>
<FILE 00000187.rsd >
sourcefile cars\racers\Einvagen_data\textures\Einvagen_chassis.dds
</FILE>

typeof 14 - przypisuje texture do mesh'a

np:

<FILE 00000230.res >
typeof 14
superid 0x00000005
typeid 0x00000048
alias chassis
isparentcompatible 1.00
</FILE>
<FILE 00000230.rsd >
mesh 0x00000049
flags 8.000
shd_center 0.000 0.000 0.000
shd_diru 0.000 0.000 0.000
shd_dirv 0.000 0.000 0.000
shd_vbase 0.000 0.000 0.000
shd_vup 0.000 0.000 0.000
texture 0x0000004C
texture 0x0000004B
texture 0x00020025
texture 0x0000004A
</FILE>

typeof 8 - przypisanie java(class) i cfg dla poszczególnych części

np:

<FILE 00000276.res >
typeof 8
superid 0x00020101
typeid 0x00000006
alias Einvagen_110_GT
isparentcompatible 1.00
</FILE>
<FILE 00000276.rsd >
script cars\racers\Einvagen_data\scripts\Einvagen_110_GT.class
native car cars\racers\Einvagen_data\scripts\_main_110_GT.cfg
</FILE>

typeof 5 - odpowiada za click w część

np:

<FILE 00000111.res >
typeof 5
superid 0x00030003
typeid 0x00000183
alias Einvagen
isparentcompatible 1.00
</FILE>
<FILE 00000111.rsd >
</FILE>

Pozostałe ważne informacje na temat plików rpk/rdb:

W każdym rekordzie występują dwa bardzo wazne wskażniki:

superid - odpowiada za połozenie częsci w katalogu
typeid - indywidualny nr każdej części (Zapamiętajcie bo bedzie potrzebne później ;) )

Zeby plik rdb mógł być używany przez grę, należy go skonwertować z powrotem do pliku rpk programem resconvert.exe. Tak jak w przypadku resdecode tworzymy koduj.bat o treści:
resconvert nazwa_samochodu_albo_części np. resconvert Einvagen
i kopiujemy oba (resconvert.exe i koduj.bat) do \Activision Value\Street Legal Racing\cars\racers
Dwuklik na koduj.bat i pojawia się einvagen.rpk gotowy do użycia przez gre.