Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Black Desert
You last visited: Today at 15:17

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[Information] Structures

Discussion on [Information] Structures within the Black Desert forum part of the MMORPGs category.

Reply
 
Old   #1
 
Ustonovic's Avatar
 
elite*gold: 0
Join Date: Mar 2008
Posts: 89
Received Thanks: 48
[Information] Structures

Since I'm working on a new project I want to share some structures I've already reversed. Most of it I double-checked with the R3p repository to ensure it's correct.

Code:
// Created with ReClass.NET by KN4CK3R

class CharacterScene
{
public:
	char pad_0000[1084]; //0x0000
	float rotation; //0x043C
	char pad_0440[124]; //0x0440
	float animation_speed; //0x04BC
	char pad_04C0[136]; //0x04C0
}; //Size: 0x0548

class CharacterController
{
public:
	char pad_0000[16]; //0x0000
	class CharacterScene* character_scene; //0x0010
	char pad_0018[48]; //0x0018
}; //Size: 0x0048

class Item
{
public:
	char pad_0000[268]; //0x0000
	uint16_t key; //0x010C
	char pad_010E[1]; //0x010E
	uint8_t enchancement_level; //0x010F
	uint8_t type; //0x0110
	uint8_t classification; //0x0111
	char pad_0112[8]; //0x0112
	uint8_t equipment_slot_index; //0x011A
	char pad_011B[69]; //0x011B
	uint32_t weight; //0x0160
	uint8_t is_stackable; //0x0164
	char pad_0165[75]; //0x0165
	uint64_t vendor_sell_price; //0x01B0
	char pad_01B8[56]; //0x01B8
	uint16_t marketplace_register_amount_maximum; //0x01F0
}; //Size: 0x01F2

class InventoryItem
{
public:
	char pad_0000[8]; //0x0000
	class Item* item; //0x0008
	uint32_t amount; //0x0010
	char pad_0014[12]; //0x0014
	uint16_t durability; //0x0020
	uint16_t durability_maximum; //0x0022
	char pad_0024[92]; //0x0024
}; //Size: 0x0080

class InventoryInformation
{
public:
	char pad_0000[16]; //0x0000
	uint64_t money; //0x0010
	char pad_0018[232]; //0x0018
	InventoryItem inventory_items[192]; //0x0100
}; //Size: 0x6100

class Inventory
{
public:
	uint64_t weight; //0x0000
	class InventoryInformation* inventory_information; //0x0008
	char pad_0010[16]; //0x0010
	uint8_t slots_free; //0x0020
	uint8_t slots_total; //0x0021
	char pad_0022[94]; //0x0022
}; //Size: 0x0080

class EquipmentItem
{
public:
	class Item* item; //0x0000
	char pad_0008[16]; //0x0008
	uint16_t durability; //0x0018
	uint16_t durability_maximum; //0x001A
	char pad_001C[108]; //0x001C
}; //Size: 0x0088

class QuickslotInformation
{
public:
	uint8_t type; //0x0000
	char pad_0001[3]; //0x0001
	uint32_t skill_identifier; //0x0004
	char pad_0008[24]; //0x0008
}; //Size: 0x0020

class KnowledgeInformation
{
public:
	char pad_0000[72]; //0x0000
}; //Size: 0x0048

class ActorProxy
{
public:
	char pad_0008[80]; //0x0008
	uint32_t actor_key; //0x0058
	char pad_005C[136]; //0x005C
	uint32_t mana_maximum; //0x00E4
	char pad_00E8[664]; //0x00E8
	class CharacterController* character_controller; //0x0380
	char pad_0388[2136]; //0x0388
	uint16_t dialog_index; //0x0BE0
	char pad_0BE2[1126]; //0x0BE2
	uint32_t critical_hit_rate; //0x1048
	char pad_104C[4]; //0x104C
	uint64_t weight_maximum; //0x1050
	uint64_t experience; //0x1058
	char pad_1060[8]; //0x1060
	uint64_t experience_needed; //0x1068
	float health_regeneration; //0x1070
	uint32_t mana_regeneration; //0x1074
	char pad_1078[144]; //0x1078
	uint8_t level; //0x1108
	char pad_1109[855]; //0x1109
	uint8_t is_pvp_possible; //0x1460
	uint8_t is_pvp_enabled; //0x1461
	char pad_1462[310]; //0x1462
	uint8_t is_tutorial_completed; //0x1598
	char pad_1599[1879]; //0x1599
	Inventory inventory; //0x1CF0
	Inventory inventory_pearl; //0x1D70
	uint64_t weight_equipment; //0x1DF0
	char pad_1DF8[8]; //0x1DF8
	EquipmentItem equipment_items[32]; //0x1E00
	char pad_2F00[64]; //0x2F00
	QuickslotInformation qickslot_informations[20]; //0x2F40
	char pad_31C0[3216]; //0x31C0
	uint16_t energy_maximum_p1; //0x3E50
	char pad_3E52[6]; //0x3E52
	uint16_t energy_maximum_p2; //0x3E58
	uint16_t energy; //0x3E5A
	char pad_3E5C[3212]; //0x3E5C
	class KnowledgeInformation* knowledge_information; //0x4AE8
	char pad_4AF0[944]; //0x4AF0
	uint32_t failstacks; //0x4EA0
	char pad_4EA4[2556]; //0x4EA4
	uint32_t combat_fame; //0x58A0
	uint32_t life_fame; //0x58A4
	uint32_t special_fame; //0x58A8
	char pad_58AC[4256]; //0x58AC

	virtual void Function0();
	virtual void is_character();
	virtual void is_player();
	virtual void is_self_player();
	virtual void Function4();
	virtual void Function5();
	virtual void is_monster();
	virtual void is_npc();
	virtual void is_dead_body();
	virtual void is_vehicle();
	virtual void Function10();
	virtual void is_instance_object();
	virtual void is_house_hold();
	virtual void is_installation_actor();
	virtual void is_collectable();
	virtual void Function15();
	virtual void Function16();
	virtual void Function17();
	virtual void Function18();
	virtual void Function19();
	virtual void is_dark_spirit_monster();
	virtual void Function21();
	virtual void Function22();
	virtual void Function23();
	virtual void Function24();
	virtual void Function25();
	virtual void Function26();
	virtual void Function27();
	virtual void Function28();
	virtual void Function29();
	virtual void Function30();
	virtual void get_position_x();
	virtual void get_position_y_();
	virtual void get_position_z();
	virtual void get_position();
	virtual void Function35();
	virtual void Function36();
	virtual void Function37();
	virtual void Function38();
	virtual void Function39();
	virtual void get_rotation();
	virtual void Function41();
	virtual void Function42();
	virtual void Function43();
	virtual void Function44();
	virtual void Function45();
	virtual void Function46();
	virtual void Function47();
	virtual void Function48();
	virtual void Function49();
	virtual void Function50();
	virtual void Function51();
	virtual void Function52();
	virtual void Function53();
	virtual void Function54();
	virtual void Function55();
	virtual void Function56();
	virtual void Function57();
	virtual void Function58();
	virtual void Function59();
	virtual void get_mana();
	virtual void Function61();
	virtual void Function62();
	virtual void Function63();
	virtual void Function64();
	virtual void Function65();
	virtual void Function66();
	virtual void Function67();
	virtual void Function68();
	virtual void Function69();
	virtual void Function70();
	virtual void Function71();
	virtual void Function72();
	virtual void Function73();
	virtual void Function74();
	virtual void Function75();
	virtual void Function76();
	virtual void Function77();
	virtual void Function78();
	virtual void Function79();
	virtual void Function80();
	virtual void Function81();
	virtual void Function82();
	virtual void Function83();
	virtual void Function84();
	virtual void Function85();
	virtual void Function86();
	virtual void Function87();
	virtual void Function88();
	virtual void Function89();
	virtual void Function90();
	virtual void Function91();
	virtual void Function92();
	virtual void Function93();
	virtual void Function94();
	virtual void Function95();
	virtual void Function96();
	virtual void Function97();
	virtual void Function98();
	virtual void Function99();
	virtual void Function100();
	virtual void Function101();
	virtual void Function102();
	virtual void Function103();
	virtual void Function104();
	virtual void Function105();
	virtual void Function106();
	virtual void Function107();
	virtual void Function108();
	virtual void Function109();
	virtual void Function110();
	virtual void Function111();
	virtual void Function112();
	virtual void Function113();
	virtual void Function114();
	virtual void Function115();
	virtual void Function116();
	virtual void Function117();
	virtual void Function118();
	virtual void Function119();
	virtual void Function120();
	virtual void Function121();
	virtual void Function122();
	virtual void Function123();
	virtual void Function124();
	virtual void Function125();
	virtual void Function126();
	virtual void Function127();
	virtual void Function128();
	virtual void Function129();
	virtual void Function130();
	virtual void Function131();
	virtual void Function132();
	virtual void Function133();
	virtual void Function134();
	virtual void Function135();
	virtual void Function136();
	virtual void Function137();
	virtual void Function138();
	virtual void Function139();
	virtual void Function140();
	virtual void Function141();
	virtual void Function142();
	virtual void Function143();
	virtual void Function144();
	virtual void Function145();
	virtual void Function146();
	virtual void Function147();
	virtual void Function148();
	virtual void Function149();
	virtual void Function150();
	virtual void Function151();
	virtual void Function152();
	virtual void Function153();
	virtual void Function154();
	virtual void Function155();
	virtual void Function156();
	virtual void Function157();
	virtual void Function158();
	virtual void Function159();
	virtual void Function160();
	virtual void Function161();
	virtual void Function162();
	virtual void Function163();
	virtual void Function164();
	virtual void Function165();
	virtual void Function166();
	virtual void Function167();
	virtual void Function168();
	virtual void Function169();
	virtual void Function170();
	virtual void Function171();
	virtual void Function172();
	virtual void Function173();
	virtual void Function174();
	virtual void Function175();
}; //Size: 0x694C

class LocalPlayerActor
{
public:
	char pad_0000[56]; //0x0000
	class ActorProxy* actor_proxy; //0x0038
	char pad_0040[256]; //0x0040
}; //Size: 0x0140

class DialogData
{
public:
	char pad_0000[44]; //0x0000
	uint32_t state; //0x002C
	char pad_0030[336]; //0x0030
}; //Size: 0x0180
It's far from complete but it's a start and you can use it to write your SDK/whatever.
I've also attached the ReClass.Net project file so you can continue there.
Attached Files
File Type: rar struct.rar (4.9 KB, 23 views)
Ustonovic is offline  
Thanks
8 Users
Reply


Similar Threads Similar Threads
WDB-Extractor & DBC Structures
01/06/2012 - CO2 Programming - 17 Replies
WDB-Extractor I have made a little program for extracting all files of a WDB package, because there is no public extractor. If you have some request or some problems, just post on this thread. Download WDB-Packer When I posted this thread, I was not sure about this part. If you want to repack the package, just put your edited DBC files in the INI folder. When you will execute Conquer, the DBC files will be merged in the WDB package.
[Q]Packet Structures
06/18/2010 - Kal Online - 10 Replies
any1 can help me with packet structures..? like When I have packet like 0x11 or any other type. Data is for example: 11 00 00 00 4A 58 9A 4A 32 ... Where 4A 58 represents some WORD (coord, playerid, whatever) etc. thanks......
Few hacks and a load of information about memory structures
01/09/2010 - General Gaming Discussion - 15 Replies
Hey, I started playing RoM a few weeks ago and within a few days I felt the urge to attach my debugger and spend more time there than in the actual game itself. I have gathered quite some information about the memory structures and I keep an SVN repository with them somewhat updated. (Apart from the pointers to all nearby NPC's which I just found today, Ill post them as soon as possible). I'm sure most of this is general knowledge around here but I wanted to share this here anyway. I'd...
[Request] Packet Structures
04/12/2009 - CO2 Private Server - 0 Replies
Hello, Could anyone provide me with an adequet resource for looking up packet structures, or provide me on information about where I could find them? I have searched through about 3 CO server sources - they have been a great help but I need more.. Thanks, Leo (null)



All times are GMT +1. The time now is 15:17.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.