Entity (container)

From OuroDev
Revision as of 01:10, 19 May 2019 by Asuffield (talk | contribs) (Created page with "Entities are the container which represents a player character. == Storage and ownership == They are persisted in the dbserver database, but depending on the state of login...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Entities are the container which represents a player character.

Storage and ownership

They are persisted in the dbserver database, but depending on the state of login sessions, might be owned by dbserver or a MapServer. When an entity is loaded onto a MapServer, dbserver sends the current copy of the entity to the MapServer, and locks it to that MapServer connection. The entity is then owned by the MapServer until it is unlocked (when the character leaves the map) or the connection is lost. While an entity is owned by a MapServer, the only up-to-date copy of the entity is in ram of the MapServer, which will send updates back to dbserver for persistance to the database, but does not wait for responses.

If a MapServer connection is lost without sending back entities, data will be lost, and users will experience a rollback to the last point where a copy of the entity was successfully persisted.

Contents

Field name Description
TeamupsId Identifys which 8-player team the character is on. This is the container ID in the Teamups DbList. Teamups are not persisted in the database, so are wiped when dbserver restarts.
SupergroupsId Identifys which supergroup the character is in. This is the container ID in the Supergroup DbList.
TaskforcesId Identifys which task force group the character is in. This is the container ID in the Taskforce DbList.
AuthId Account id (from the auth server) for the owner of the character. This is the container ID in the ShardAccount DbList.
AuthName Account name (from the auth server) for the owner of the character.
Name Character name. Character names are maintained in an in-ram model in dbserver, so can only be modified via dbserver.
StaticMapId Map id - The last static map the player was on (usually a city zone). When they exit a mission, they will be sent to this zone. This is the container ID in the maps DbList.
MapId Map id - The ID of the map they are currently on. This is the container ID in the maps DbList.
PosX, PosY, PosZ Current location of the character in their current map.
OrientP, OrientY, OrientR Current orientation of the character.
TotalTime The number of seconds the character has been online. Only updated on map moves and log out.
LoginCount The number of times the character has been logged in.
LastActive The date and time of the last log in.
AccessLevel The command access level. Normal players are always 0. GMs have higher values.
ChatBanExpire The date and time when the character will be allowed to send chat again.
DbFlags Bitfield. Positions are:
0 DBFLAG_TELEPORT_XFER
1 DBFLAG_UNTARGETABLE
2 DBFLAG_INVINCIBLE
3 DBFLAG_DOOR_XFER
4 DBFLAG_MISSION_ENTER
5 DBFLAG_MISSION_EXIT
6 DBFLAG_INVISIBLE
7 DBFLAG_INTRO_TELEPORT
8 DBFLAG_MAPMOVE
9 DBFLAG_CLEARATTRIBS
10 DBFLAG_NOCOLL
11 DBFLAG_BASE_ENTER
12 DBFLAG_RENAMEABLE
13 DBFLAG_BASE_EXIT
14 DBFLAG_ALT_CONTACT
15 DBFLAG_ARCHITECT_EXIT
16 DBFLAG_PRAET_SG_JOIN
17 DBFLAG_HALF_MAX_HEALTH
18 DBFLAG_UNLOCK_HERO_EPICS
19 DBFLAG_UNLOCK_VILLAIN_EPICS
Locale Sets the language and other locale defaults
GurneyMapId Map id - The ID of the most recently visited static map which contains a hospital. If the character is defeated, they will get sent to this hospital.
TitleCommon The common title of the character, chosen at level 15
TitleOrigin The origin title of the character, chosen at level 20
MouseSpeed A multiplier for mouse speed (sensitivity). This is set in the options screen.
TurnSpeed A multiplier for mouse turning speed (sensitivity). This is set in the options screen.
TopChatFilter Bitfield - designates which types of chat appear in the top pane of the chat window.
BotChatFilter Bitfield - designates which types of chat appear in the bottom pane of the chat window.
ChatSendChannel The id of the output channel in the chat window
KeyProfile The name of the keybind profile the player has chosen on the options screen.
KeybindCount The number of keybinds currently in use
FriendCount The number of local friends
Rank The character's supergroup rank. 0 is member, 1 is lieutenant, 2 is captain, 3 is commander, 4 is leader.
TimePlayed The number of seconds the character has been in supergroup mode.
MemberSince The date and time when the character joined their supergroup
TaskForceMode If 1, the player is on a task force and in task force mode. If 0, they are not. 2 if its an architect taskforce
BodyType Gender and body type. 0 is male, 1 is female, 4 is huge.
BodyScale Overall body scale.
BoneScale Overall bone scale.
ColorSkin Color - skin color
Motto The character's battle cry (motto), entered on the ID screen
Description The character's description, entered on the ID screen