struct RefineCost { item_id: uint; number: int; } struct Property { property: uint; value: int; } table WeaponTemplate { item_id: uint; weapon_name: string; unk_missing_field: int; base_property: Property; rand_property: Property; star_limit: uint; exp_recycle: int; weapon_script_config: string; weapon_ui_model: string; unk_1: int; unk_missing_field_2: int; unk_weapon_path: string; unk_missing_field_3: int; refine_initial: uint; refine_limit: uint; unk_missing_field_4: int; unk_missing_field_5: int; unk_string_with_values: string; unk_missing_field_6: int; unk_2: int; weapon_desc: string; weapon_release_tag: string; unk_empty_string: string; avatar_id: uint; weapon_comment: string; refine_costs: [RefineCost]; unk_3: int; } table WeaponTemplateTb { data: [WeaponTemplate]; }