Achievement criteria data 548: Difference between revisions

From Project Skyfire
Jump to navigation Jump to search
(Add content)
 
(Update structure and add DB structure.)
 
Line 66: Line 66:
|
|
|}
|}
 
<br> <big>'''DB Structure'''</big>
<br>
{| border="1"<br>
<pre style="color: red">
CREATE TABLE `achievement_criteria_data` (
`criteria_id` MEDIUMINT NOT NULL,
`type` TINYINT NOT NULL DEFAULT '0',
`value1` MEDIUMINT NOT NULL DEFAULT '0',
`value2` MEDIUMINT NOT NULL DEFAULT '0',
`ScriptName` CHAR(64) NOT NULL DEFAULT '' COLLATE 'utf8_general_ci',
PRIMARY KEY (`criteria_id`, `type`) USING BTREE
)
COMMENT='Achievment system'
COLLATE='utf8_general_ci'
ENGINE=MyISAM
ROW_FORMAT=FIXED
;
</pre>
<br>


<big>'''Description of the fields'''</big>
<big>'''Description of the fields'''</big>

Latest revision as of 18:06, 8 August 2021

Back to world database list of tables.


The `achievement_criteria_data` table

This table contains the data that a player needs to obtain / complete in order to receive a given achievement.


Structure

Field Type Attributes Key Null Default Extra Comment
criteria_id mediumint(8) signed PRI NO NULL
type tinyint(3) unsigned PRI NO 0
value1 medium(8) unsigned NO 0
value2 medium(8) unsigned NO 0
ScriptName char(64) signed NO


DB Structure

CREATE TABLE `achievement_criteria_data` (
	`criteria_id` MEDIUMINT NOT NULL,
	`type` TINYINT NOT NULL DEFAULT '0',
	`value1` MEDIUMINT NOT NULL DEFAULT '0',
	`value2` MEDIUMINT NOT NULL DEFAULT '0',
	`ScriptName` CHAR(64) NOT NULL DEFAULT '' COLLATE 'utf8_general_ci',
	PRIMARY KEY (`criteria_id`, `type`) USING BTREE
)
COMMENT='Achievment system'
COLLATE='utf8_general_ci'
ENGINE=MyISAM
ROW_FORMAT=FIXED
;


Description of the fields

criteria_id

This is the ID from Achievement_Criteria.dbc.

type

Depending on this value, it will determine how value1 and value2 are used.

Type Name
0 TYPE_NONE
1 TYPE_T_CREATURE
2 TYPE_T_PLAYER_CLASS_RACE
3 TYPE_T_PLAYER_LESS_HEALTH
4 TYPE_T_PLAYER_DEAD
5 TYPE_S_AURA
6 TYPE_S_AREA
7 TYPE_T_AURA
8 TYPE_VALUE
9 TYPE_T_LEVEL
10 TYPE_T_GENDER
11 TYPE_SCRIPT
12 TYPE_MAP_DIFFICULTY
13 TYPE_MAP_PLAYER_COUNT
14 TYPE_T_TEAM
15 TYPE_S_DRUNK
16 TYPE_HOLIDAY
17 TYPE_BG_LOSS_TEAM_SCORE
18 INSTANCE_SCRIPT
19 TYPE_S_EQUIPED_ITEM
20 TYPE_MAP_ID
21 TYPE_S_PLAYER_CLASS_RACE

value1


  • TYPE_T_PLAYER_CLASS_RACE
    • The target here is a valid class (paste class list). value2 must also be set


  • TYPE_T_PLAYER_LESS_HEALTH
    • The percentage of health that the target must reach.


  • TYPE_T_PLAYER_DEAD
    • The faction of the target player (must match player attempting achievement).


  • TYPE_S_AURA
    • The spell ID of the aura that must be on the player. value2 must also be set.



  • TYPE_T_AURA
    • The spell ID of the aura that must be on the target. value2 must also be set.


  • TYPE_VALUE
    • Minimum value needed to attain achievement. This value is used in conjunction with another type.


  • TYPE_T_LEVEL
    • The minimum level that the target can be.


  • TYPE_T_GENDER
    • Gender: 0=Male, 1=Female


  • TYPE_SCRIPT
    • Used to disable an achievement if all requirements are not defined. Would usually be used if not all are known.


  • TYPE_MAP_DIFFICULTY
    • Map difficulty: (for dungeons)
      • Normal = 0
      • Heroic = 1
    • Map difficulty: (for raids)
      • 10 Man Normal = 0
      • 25 Man Normal = 1
      • 10 Man Heroic = 2
      • 25 Man Heroic = 3


  • TYPE_MAP_PLAYER_COUNT
    • The number of other players that must be in the zone. (not sure if it is minimum or maximum).


  • TYPE_T_TEAM
    • The target must be on this team: Alliance = 469, Horde = 67


  • TYPE_S_DRUNK
    • How drunk the player must be:
      • DRUNKEN_SOBER = 0
      • DRUNKEN_TIPSY = 1
      • DRUNKEN_DRUNK = 2
      • DRUNKEN_SMASHED = 3



  • TYPE_BG_LOSS_TEAM_SCORE
    • Player's team win bg and opposition team have team score in range. // Min. score


  • INSTANCE_SCRIPT
    • Make instance script call for check current criteria requirements fit.



  • TYPE_MAP_ID


  • TYPE_S_PLAYER_CLASS_RACE
    • The Source here is a valid class (paste class list). value2 must also be set

value2

  • TYPE_T_PLAYER_CLASS_RACE
  • TYPE_S_PLAYER_CLASS_RACE


  • TYPE_S_AURA
    • Effect Index of the aura


  • TYPE_T_AURA
    • Effect Index of the aura


  • TYPE_BG_LOSS_TEAM_SCORE
    • Max. score