Показать сообщение отдельно
Непрочитано 06.03.2014, 17:43   #1
Пользователь

Автор темы (Топик Стартер) Weapongrp.dat data structure

Hi Everyone~

First I have to apologize for writing in English.

Recently I try to decode WeaponGrp.dat for GoD:Stranger (Korean Client), I do it as usual, compare new and old DAT :



Good, it looks like that new DAT added two 4bytes of DATA:

===============Begin of My DDF definition======================
UINT tag;
UINT id;
UINT drop_type;
UINT drop_anim_type;
UINT drop_radius;
UINT drop_height;
UINT UNK_0;
UNICODE drop_mesh1;
UNICODE drop_mesh2;
UNICODE drop_mesh3;
UNICODE drop_tex1;
UNICODE drop_tex2;
UNICODE drop_tex3;
UNICODE drop_extratex1;
UINT newdata[8];
UNICODE icon[5];
INT durability;
UINT weight;
UINT material;
UINT crystallizable;
UINT UNK_1;
UINT UNK_2_cnt;
UINT UNK_2_tab[UNK_2_cnt];
UINT UNK_3[3];
UNICODE timetab_1;
UNICODE Unknown_Item; <==First one
ASCF drop_sound;
UINT UNK_4;
UINT body_part;
UINT handness;
UINT wpn_mesh_cnt;
UNICODE wpn_mesh[wpn_mesh_cnt];
UINT wpn_unkval[wpn_mesh_cnt];
UINT wpn_tex_cnt;
UNICODE wpn_tex[wpn_tex_cnt];
UINT item_sound_cnt;
UNICODE item_sound[item_sound_cnt];
UNICODE drop_sound;
UNICODE equip_sound;
UNICODE effect;
UINT random_damage;
UINT weapon_type;
UINT crystal_type;
UINT mp_consume;
UINT SS_count;
UINT SPS_count;
UINT curvature;
UINT UNK_5;
INT is_hero;
UINT UNK_6; <==This one must be INT
FLOAT UNK_7; <== Second one
=====================End of My DDF Definition================

After modified I am still unable to decode the DDF therefore I look for other available DDF from Internet.

A workable DDF shows that the data type of UNK_6 MUST BE INT, not UINT.

This confuses me because they are both 32bits in length, the difference is sign.
I don't understand how it work.

Could anyone give me a hint?

Also, how do you handle this extremely large DAT file with lots of items?
It is impossible to look all the DAT structure and write down the DDF definition.
Syncia_Lin вне форума Ответить с цитированием