用户工具

站点工具


数据库:characters数据库:characters

characters 表


<-返回:Characters 数据库

This table holds vital static information for each character. It is used to create the player objects in-game.

表结构

FieldTypeAttributesKeyNullDefaultextraComment
guidINTUNSIGNEDPRINO0UniqueGlobal Unique Identifier
accountINTUNSIGNED NO0 Account Identifier
nameVARCHAR(12)SIGNED NO
raceTINYINTUNSIGNED NO0
classTINYINTUNSIGNED NO0
genderTINYINTUNSIGNED NO0
levelTINYINTUNSIGNED NO0
xpINTUNSIGNED NO0
moneyINTUNSIGNED NO0
skinTINYINTUNSIGNED NO0
faceTINYINTUNSIGNED NO0
hairStyleTINYINTUNSIGNED NO0
hairColorTINYINTUNSIGNED NO0
facialStyleTINYINTUNSIGNED NO0
bankSlotsTINYINTUNSIGNED NO0
restStateTINYINTUNSIGNED NO0
playerflagsINTUNSIGNED NO0
position_xFLOATSIGNED NO0
position_yFLOATSIGNED NO0
position_zFLOATSIGNED NO0
mapSMALLINTUNSIGNED NO0 Map Identifier
instance_idINTUNSIGNED NO0
instance_mode_maskTINYINTUNSIGNED NO0
orientationFLOATSIGNED NO0
taximaskTEXTSIGNED NO
onlineTINYINTUNSIGNED NO0
cinematicTINYINTUNSIGNED NO0
totaltimeINTUNSIGNED NO0
leveltimeINTUNSIGNED NO0
logout_timeINTUNSIGNED NO0
is_logout_restingTINYINTUNSIGNED NO0
rest_bonusFLOATSIGNED NO0
resettalents_costINTUNSIGNED NO0
resettalents_timeINTUNSIGNED NO0
trans_xFLOATSIGNED NO0
trans_yFLOATSIGNED NO0
trans_zFLOATSIGNED NO0
trans_oFLOATSIGNED NO0
transguidMEDIUMINTSIGNED NO0
extra_flagsSMALLINTUNSIGNED NO0
stable_slotsTINYINTUNSIGNED NO0
at_loginSMALLINTUNSIGNED NO0
zoneSMALLINTUNSIGNED NO0
death_expire_timeINTUNSIGNED NO0
taxi_pathTEXTSIGNED YES
arenaPointsINTUNSIGNED NO0
totalHonorPointsINTUNSIGNED NO0
todayHonorPointsINTUNSIGNED NO0
yesterdayHonorPointsINTUNSIGNED NO0
totalKillsINTUNSIGNED NO0
todayKillsSMALLINTUNSIGNED NO0
yesterdayKillsSMALLINTUNSIGNED NO0
chosenTitleINTUNSIGNED NO0
knownCurrenciesBIGINTUNSIGNED NO0
watchedFactionINTUNSIGNED NO0
drunkTINYINTUNSIGNED NO0
healthINTUNSIGNED NO0
power1INTUNSIGNED NO0
power2INTUNSIGNED NO0
power3INTUNSIGNED NO0
power4INTUNSIGNED NO0
power5INTUNSIGNED NO0
power6INTUNSIGNED NO0
power7INTUNSIGNED NO0
latencyMEDIUMINTUNSIGNED NO0
talentGroupsCountTINYINTUNSIGNED NO1
activeTalentGroupTINYINTUNSIGNED NO0
exploredZonesLONGTEXTSIGNED YES
equipmentCacheLONGTEXTSIGNED YES
ammoIdINTUNSIGNED NO0
knownTitlesLONGTEXTSIGNED YES
actionBarsTINYINTUNSIGNED NO0
grantableLevelsTINYINTUNSIGNED NO0
orderTINYINTSIGNED YES
creation_dateTIMESTAMPSIGNED NOCURRENT_TIMESTAMP
deleteInfos_AccountINTUNSIGNED YES
deleteInfos_NameVARCHAR(12)SIGNED YES
deleteDateINTUNSIGNED YES

字段说明


guid

The character global unique identifier. This number must be unique and is the best way to identify separate characters.

account

The account ID in which this character resides. See account.id in the auth database.

name

The name of the character. Max length is 12 characters.

race

The race of the character. See ChrRaces.dbc.

class

The class of the character: ChrClasses.dbc.

gender

The gender of the character.

IdGender
0Male
1Female
2Unknown (?)

2 is seen in table creature_model_info notably.

level

The level of the character.

xp

The amount of experience this character has earned towards the next level.

money

The amount of copper this character has.

skin

Contains data about the skincolor of the character. skinColor = playerbytes % 256

face

Contains data about the facestyle of the character. faceStyle = (playerbytes » 8) % 256

hairStyle

Contains data about the hairStyle of the character. hairStyle = (playerbytes » 16) % 256

hairColor

Contains data about the haircolor of the character. hairColor = (playerbytes » 24) % 256

facialStyle

Contains data about facial hair of the character. facialHair = playerBytes2 % 256

bankSlots

field-no-description|15

restState

field-no-description|16

playerFlags

A bitmask that represents what Player flags the player has. Each bit controls a different flag and to combine flags, you can add each flag that you want, in effect activating the respective bits.

Flag NameComment
10x00000001PLAYER_FLAGS_GROUP_LEADER
20x00000002PLAYER_FLAGS_AFK
40x00000004PLAYER_FLAGS_DND
80x00000008PLAYER_FLAGS_GM
160x00000010PLAYER_FLAGS_GHOST
320x00000020PLAYER_FLAGS_RESTING
640x00000040PLAYER_FLAGS_UNK7
1280x00000080PLAYER_FLAGS_UNK8pre-3.0.3 PLAYER_FLAGS_FFA_PVP flag for FFA PVP state
2560x00000100PLAYER_FLAGS_CONTESTED_PVPPlayer has been involved in a PvP combat and will be attacked by contested guards
5120x00000200PLAYER_FLAGS_IN_PVP
10240x00000400PLAYER_FLAGS_HIDE_HELM
20480x00000800PLAYER_FLAGS_HIDE_CLOAK
40960x00001000PLAYER_FLAGS_PLAYED_LONG_TIMEplayed long time
81920x00002000PLAYER_FLAGS_TOO_LONGplayed too long time
163840x00004000PLAYER_FLAGS_IS_OUT_OF_BOUNDS
327680x00008000PLAYER_FLAGS_DEVELOPERprefix for something?
655360x00010000PLAYER_FLAGS_UNK17pre-3.0.3 PLAYER_FLAGS_SANCTUARY flag for player entered sanctuary
1310720x00020000PLAYER_FLAGS_TAXI_BENCHMARKtaxi benchmark mode (on/off) (2.0.1)
2621440x00040000PLAYER_FLAGS_PVP_TIMER3.0.2, pvp timer active (after you disable pvp manually)
5242880x00080000PLAYER_FLAGS_UNK20
10485760x00100000PLAYER_FLAGS_UNK21
20971520x00200000PLAYER_FLAGS_UNK22
41943040x00400000PLAYER_FLAGS_COMMENTATOR2
83886080x00800000PLAYER_ALLOW_ONLY_ABILITYused by bladestorm and killing spree
167772160x01000000PLAYER_FLAGS_UNK25disabled all melee ability on tab include autoattack
335544320x02000000PLAYER_FLAGS_NO_XP_GAIN

position_x

The x position of the character's location.

position_y

The y position of the character's location.

position_z

The z position of the character's location.

map

The map ID the character is in.

instance_id

The instance ID the character is currently in and bound to.

instance_mode_mask

The current dungeon difficulty that the player is in. This field is bitmask. Values are put together, however, only two of four should be used at once. This description may not be 100% correct.

FlagComment
0Normal
1Heroic
1610 man
3225 man

orientation

The orientation the character is facing. (North = 0.0, South = 3.14159)

taximask

Known taxi nodes separated with space.

online

Records whether the character is online (1) or offline (0).

cinematic

Boolean 1 or 0 controlling whether the start cinematic has been shown or not.

totaltime

The total time that the character has been active in the world, measured in seconds.

leveltime

The total time the character has spent in the world at the current level, measured in seconds.

logout_time

The time when the character last logged out, measured in Unix time.

is_logout_resting

Boolean 1 or 0 controlling if the character is currently in a resting zone or not.

rest_bonus

The cumulated bonus of rested rate for gaining experience.

resettalents_cost

The cost for the character to reset its talents, measured in copper.

resettalents_time

field-no-description|34

trans_x

The x position of the transport this character was on when they were last saved.

trans_y

The y position of the transport this character was on when they were last saved.

trans_z

The z position of the transport this character was on when they were last saved.

trans_o

The orientation of the transport this character was on when they were last saved.

transguid

The global unique identifier of the transport this character was on when they were last saved.

extra_flags

These flags control certain player specific attributes, mostly GM features.

Flag NameDescription
10x00000001PLAYER_EXTRA_GM_ONDefines GM state
20x00000002PLAYER_EXTRA_GM_ACCEPT_TICKETSNO LONGER USED Defines if tickets are accepted
40x00000004PLAYER_EXTRA_ACCEPT_WHISPERSDefines if whispers are accepted
80x00000008PLAYER_EXTRA_TAXICHEATSets taxicheat
160x00000010PLAYER_EXTRA_GM_INVISIBLEDefines GM visibility
320x00000020PLAYER_EXTRA_GM_CHATShow GM badge in chat messages
640x00000040PLAYER_EXTRA_HAS_310_FLYERMarks if player already has 310% speed flying mount
2560x00000100PLAYER_EXTRA_PVP_DEATHStore PvP death status until corpse creating

stable_slots

The Stable Slots available (bought) at the Stable Master.

at_login

This field is a bitmask controlling different actions taken once a player logs in with the character.

Flag NameDescription
10x01AT_LOGIN_RENAMEForce character to change name
20x02AT_LOGIN_RESET_SPELLSReset spells (professions as well)
40x04AT_LOGIN_RESET_TALENTSReset talents
80x08AT_LOGIN_CUSTOMIZECustomize Characters
160x10AT_LOGIN_RESET_PET_TALENTSReset pet talents
320x20AT_LOGIN_FIRSTSet at and removed after first login
640x40AT_LOGIN_CHANGE_FACTIONFaction change
1280x80AT_LOGIN_CHANGE_RACERace change

zone

The zone ID the character is in.

death_expire_time

Time when a character can be resurrected in case of a server crash or client exit while in ghost form, measured in Unix time.

taxi_path

Stores the players current taxi path (TaxiPath.dbc) if logged off while on one.

arenaPoints

The amount of arena points this character has stored up, and will receive next time arena points are distributed.

totalHonorPoints

The amount of honor points this character has got.

todayHonorPoints

The amount of honor points this character has gotten today.

yesterdayHonorPoints

The amount of honor points this character got yesterday.

totalKills

The amount of players this character has killed.

todayKills

The amount of players this character has killed today.

yesterdayKills

The amount of players this character killed yesterday.

chosenTitle

Current title, using the bit_index field (InGameOrder in CharTitles.dbc).

knownCurrencies

Known currencies (what to be listed in the Currency tab), bitmask of BitIndexes, see CurrencyTypes.dbc.

watchedFaction

Tracked faction at experience bar (using reputation ID, see Faction.dbc).

drunk

Character's drunk state, 0-100

  • 0 = Sober
  • 1-49 = Tipsy
  • 50-89 = Drunk
  • 90-100 = Smashed

health

The characters current health.

power

Current character powers (snapshot from when the character was saved).

FieldPower name
power1Mana
power2Rage
power3Focus
power4Energy
power5Happiness
power6Runes
power7Runic Power

latency

This characters latency, or ping, in milliseconds, as of the last update.

talentGroupsCount

The number of specs this character has access to. Default value is 1. Maximum currently supported value is 2. Should never be 0 (this is a sign of a character created before the dual spec system).

activeTalentGroup

The currently activated spec for this character, spec = 0 is the first spec, spec = 1 is the second spec.

exploredZones

Bitmasks of explored zones (1 bit for explored, 0 bit for unexplored).

equipmentCache

Character's equipment and bag cache.

ammoId

Template ID of the ammo item.

knownTitles

Contains data about known Titles stored in 6 x 16bit integers. To calculate where a knownTitle is in one of those 6 integers you do the following: We select one of the titles from CharTitles.dbc, take Archmage title for example:

TitleIDUnkRef?MaleTitleFemaleTitleInGameOrder
930Archmage %sArchmage %s61

We use the InGameOrder to calculate in which one of the 6 (16bit) integer is the title stored:

InGameOrder / 32 = X
61 / 32 = **1,90625** (1 - Do **NOT** round the value!)

so the 1st integer stores the title. Because counting starts from 0 to 5, it would be “0 TITLE_BIT 0 0 0 0”.

Now which bit stores the title? We use modulo to calculate this.

InGameOrder Modulo 32 = X
61 Mod 32 = **29**

so the 29bit stores the title. This would be 2 ^ 29 = 536870912. This bit stores the Archmage title. This would mean if you only have the Archmage title, characters.knownTitles would be “0 536870912 0 0 0 0”.

actionBars

A bitmask that contains visible actionbars for the player.

Flag Comment
10x00000001Bottom Left Bar
20x00000002Bottom Right Bar
40x00000004Rigth Bar
80x00000008Right Bar 2

grantableLevels

Recruit A Friend stuff.

order

A field used to change the order in which the characters appear in the character selection screen. The order field is used first, then the characters.guid, which means that if the order column is NULL for every character of an account, they will be sorted by characters.guid by default.

creation_date

Character's creation date and time. Format YYY-MM-DD HH:MM:SS according to server's time.

deleteInfos_Account

Stores the account id if the character is deleted and CharDelete.Method in worldserver.conf is set to 1.

deleteInfos_Name

Stores the name of character if the character is deleted and CharDelete.Method in worldserver.conf is set to 1.

deleteDate

Stores the date when the character was deleted and CharDelete.Method in worldserver.conf.dist is set to 1. Will be checked by worldserver against CharDelete.KeepDays in worldserver.conf.dist. If this value is lower than deleteDate + CharDelete.KeepDays the character will be purged.

数据库/characters数据库/characters.txt · 最后更改: 2023/09/24 12:19 由 admin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki