entitydefaults - OpenPerpetuum/OPDB GitHub Wiki

Description

This table contains the definitions of every single item in the game.

An Entity is a 'thing' in the game. It can be an item, a prop, a model, or even a group of objects (ie. a bot; a group of models and items).

Table Structure

ID Type Name Description Properties Links
1 Number definition This the unique ID for this item. It is essentially an enumerator. PRIMARY, UNIQUE Original
2 String definitionName The unique string ID for this item. UNIQUE ???
3 Number quantity What is the standard market unit for this item?
4 Number attributeflags Item flags. attributeFlags
5 Number categoryflags ??? categoryFlags
6 String options A string containing all the extra attributes about an item.
7 String note Internal notes for said item. It's not used in-game. Mostly in Hungarian.
8 Boolean enabled Is the item enabled for use?
9 Number volume The area of in-game space that this object takes. FOREIGN
10 Number mass The in-game mass of the item. FOREIGN
11 Boolean hidden Is this item hidden from all inventories?
12 Number health The health of the item. FOREIGN
13 String descriptiontoken The localisation entry ID (on client) that contains this item's description.
14 Boolean purchasable Is this item purchasable/sellable on the market? ???
15 Number tiertype What category of item does this belong to?
16 Number tierlevel The tech level of the item.
17 Object aggregatevalues ??? FOREIGN aggregatevalues
18 Object beamassignment ??? FOREIGN beamassignment

// todo the rest.

Notes

attributeflags

It is a byte array that is casted straight into a number.

Information retrieved from Perpetuum.ExportedTypes.AttributeFlags.
There also appears to be a duplicate in the [attributeFlags](attributeFlags) table.

Digit Value Enum Name Significance On State Off State
1 1 player ??? ??? ???
2 2 invulnerable ??? ??? ???
3 4 item ??? ??? ???
4 8 onePerRobot ??? ??? ???
5 16 activeModule ??? ??? ???
6 32 fittingCapacityModifier ??? ??? ???
7 64 offensive_module ??? ??? ???
8 128 engage_combat ??? ??? ???
9 256 self_effect ??? ??? ???
10 512 targetIsRobot ??? ??? ???
11 1024 nonStackable
12 2048 alwaysStackable
13 4096 gang_assist_module ??? ??? ???
14 8192 primary_locked_target ??? ??? ???
15 16384 self_target ??? ??? ???
16 32768 small ??? ??? ???
17 65536 medium ??? ??? ???
18 131072 large ??? ??? ???
19 262144 ammo_required ??? ??? ???
20 524288 passiveModule ??? ??? ???
21 1048576 gangEffect ??? ??? ???
22 2097152 forceOneCycle ??? ??? ???
23 4194304 nonrelocatable ??? ??? ???
24 8388608 deployable ??? ??? ???
25 16777216 consumable ??? ??? ???
26 33554432 delayed_modul ??? ???
27 67108864 pvp_support ??? ??? ???
28 134217728 nonlockable ??? ???
29 268435456 nonattackable ??? ??? ???
30 536870912 usable ??? ??? ???
31 1073741824 mainbase ??? ??? ???
32 2147483648 nonRecyclable ??? ??? ???

It appears to be a 32-bit byte array. Its maximum value is 4,294,967,295 It appears that in the code, it's defined as a 64-bit array.

Digit Value Enum Name Significance On State Off State
33 4294967296 instantActivate ??? ??? ???
34 8589934592 ??? ??? ??? ???
35 17179869184 ??? ??? ??? ???
36 34359738368 ??? ??? ??? ???
37 68719476736 ??? ??? ??? ???
38 137438953472 ??? ??? ??? ???
39 274877906944 ??? ??? ??? ???
40 549755813888 ??? ??? ??? ???
41 1099511627766 ??? ??? ??? ???
42 2199023255552 ??? ??? ??? ???
43 4398046511104 ??? ??? ??? ???
44 8796093022208 ??? ??? ??? ???
45 17592186044416 ??? ??? ??? ???
46 35184372088832 ??? ??? ??? ???
47 70368744177664 ??? ??? ??? ???
48 140737488355328 ??? ??? ??? ???
49 281474976710656 ??? ??? ??? ???
50 562949953421312 ??? ??? ??? ???
51 1125899906842624 ??? ??? ??? ???
52 2251799813685248 ??? ??? ??? ???
53 4503599627370496 ??? ??? ??? ???
54 9007199254740992 ??? ??? ??? ???
55 18014398509481984 ??? ??? ??? ???
56 36028797018963968 ??? ??? ??? ???
57 72057594037927936 ??? ??? ??? ???
58 144115188075855872 ??? ??? ??? ???
59 288230376151711744 ??? ??? ??? ???
60 576460752303423488 ??? ??? ??? ???
61 1152921504606846976 ??? ??? ??? ???
62 2305843009213693952 ??? ??? ??? ???
63 4611686018427387904 ??? ??? ??? ???
64 9223372036854775808 ??? ??? ??? ???

categoryflags

Could be stored as a byte array and the casted directly into a number, or be an enumerator?

Digit Value Significance On State Off State
1 1 ??? ??? ???
2 2 ??? ??? ???
3 4 ??? ??? ???
4 8 ??? ??? ???
5 16 ??? ??? ???
6 32 ??? ??? ???
7 64 ??? ??? ???
8 128 ??? ??? ???
9 256 ??? ??? ???
10 512 ??? ??? ???
11 1024 ??? ??? ???
12 2048 ??? ??? ???
13 4096 ??? ??? ???
14 8192 ??? ??? ???
15 16384 ??? ??? ???
16 32768 ??? ??? ???
17 65536 ??? ??? ???
18 131072 ??? ??? ???
19 262144 ??? ??? ???
20 524288 ??? ??? ???
21 1048576 ??? ??? ???
22 2097152 ??? ??? ???
23 4194304 ??? ??? ???
24 8388608 ??? ??? ???
25 16777216 ??? ??? ???
26 33554432 ??? ??? ???
27 67108864 ??? ??? ???
28 134217728 ??? ??? ???
29 268435456 ??? ??? ???
30 536870912 ??? ??? ???
31 1073741824 ??? ??? ???
32 2147483648 ??? ??? ???

options

This is an array of extra attributes, in the format of:

#<name>=<data type><value>

repeated for as many values as needed, for example:

#size=n20#dockRange=n40#spawnRange=n10#radiusTerraformProtection=n120#radiusSurface=n65

May also be using \n or line breaks in the definitions.

Letter Data Type Example
n Number (Integer) 12345
f Number (Float) 0.12345
s String Hello World!
c Color, in (R, G, B, A) 196,128,0,1.0

Options Types

Field Property Type Description
Bots head Integer EntityDefinition ID for the head object.
Bots chassis Integer EntityDefinition ID for the chassis object.
Bots leg Integer EntityDefinition ID for the leg object.
Head/Chassis/Leg slotFlags Integer Array ???
Head/Chassis/Leg height Float The height of the the model ???

tiertype

This is the type of item that this 'thing' is. It is the Perpetuum.ExportedTypes.TierType enumerator.

Value Description
0 Undefined
1 Normal
2 Prototype
3 Special

tierlevel

Should only be 0, 1, 2 or 3.

Value Description
0 Stock/Syndicate
1 Standard/Tier 1
2 Tier 2 (Epriton-based products)
3 Tier 3 (Colixum-based products)
⚠️ **GitHub.com Fallback** ⚠️