Some achievement*.dbc research

This commit is contained in:
tomrus88 2008-10-29 16:47:56 +03:00
parent b3c7ffd633
commit 5a26f822ce
2 changed files with 34 additions and 8 deletions

View file

@ -36,6 +36,17 @@ enum AchievementFlags
{ {
}; };
enum AchievementCriteriaCondition
{
ACHIEVEMENT_CRITERIA_CONDITION_NONE = 0,
ACHIEVEMENT_CRITERIA_CONDITION_NO_DEATH = 1,
ACHIEVEMENT_CRITERIA_CONDITION_UNK1 = 2, // only used in "Complete a daily quest every day for five consecutive days"
ACHIEVEMENT_CRITERIA_CONDITION_MAP = 3, // requires you to be on specific map
ACHIEVEMENT_CRITERIA_CONDITION_NO_LOOSE = 4, // only used in "Win 10 arenas without losing"
ACHIEVEMENT_CRITERIA_CONDITION_UNK2 = 9, // unk
ACHIEVEMENT_CRITERIA_CONDITION_UNK3 = 13, // unk
};
enum AchievementCriteriaCompletionFlags enum AchievementCriteriaCompletionFlags
{ {
// some Achievements (like 698) have several criteria but only one has to be fulfilled. These are identified by this flag. // some Achievements (like 698) have several criteria but only one has to be fulfilled. These are identified by this flag.

View file

@ -40,15 +40,27 @@ struct AchievementEntry
uint32 ID; // 0 uint32 ID; // 0
uint32 factionFlag; // 1 -1=all, 0=horde, 1=alliance uint32 factionFlag; // 1 -1=all, 0=horde, 1=alliance
uint32 mapID; // 2 -1=none uint32 mapID; // 2 -1=none
//char *name[16]; // 3-19
//uint32 name_flags; // 20
//char *description[16]; // 21-36
//uint32 desc_flags; // 37
uint32 categoryId; // 38 uint32 categoryId; // 38
uint32 points; // 39 uint32 points; // 39 reward points
uint32 flags; // 42 //uint32 OrderInCategory; // 40
//uint32 Flags; // 41
uint32 flags; // 42 not flags, some unknown value...
//char *unk1[16]; // 43-58
//uint32 unk_flags; // 59
//uint32 count; // 60
//uint32 refAchievement; // 61
}; };
struct AchievementCategoryEntry struct AchievementCategoryEntry
{ {
uint32 ID; // 0 uint32 ID; // 0
uint32 parentCategory; // 1 -1 for main category uint32 parentCategory; // 1 -1 for main category
//char *name[16]; // 2-17
//uint32 name_flags; // 18
uint32 sortOrder; // 19 uint32 sortOrder; // 19
}; };
@ -433,17 +445,20 @@ struct AchievementCriteriaEntry
struct struct
{ {
uint32 field3; // 3 uint32 field3; // 3 main requirement
uint32 field4; // 4 uint32 field4; // 4 main requirement count
uint32 field5; // 5 uint32 field5; // 5 additional requirement 1 type
uint32 field6; // 6 uint32 field6; // 6 additional requirement 1 value
uint32 field7; // 7 uint32 field7; // 7 additional requirement 2 type
uint32 field8; // 8 uint32 field8; // 8 additional requirement 1 value
} raw; } raw;
}; };
//char* name[16]; // 9-24
//uint32 name_flags; // 25
uint32 completionFlag; // 26 uint32 completionFlag; // 26
uint32 groupFlag; // 27 uint32 groupFlag; // 27
uint32 timeLimit; // 29 time limit in seconds uint32 timeLimit; // 29 time limit in seconds
//uint32 unk1; // 30
}; };
struct AreaTableEntry struct AreaTableEntry