Bonjour,
Comme expliqué dans le titre du sujet, je cherche à modéliser un MCD à partir de la structure d'un fichier XML.
Mon objectif à terme est de modifier avec XSLT le document XML afin de pouvoir l'importer dans une base de donnée qui sera basé sur le MCD.
Pour chaque MCD que je vais vous présenter, je vais fournir un extrait du XML associé, et en expliqué les <élément> pour avoir une idée globale du sujet sur lequel porte le MCD.
De façon générale, il s'agit d'un jeu vidéo qui contient donc des personnages. Ces personnages peuvent utiliser des items. Ces items ont différentes caractéristiques et on peut les modifier de plusieurs façon. J'expliquerais plus en détails au fur et à mesure.
1 - fichier setitem.xml et MCD associé
1-1 - Extrait du fichier XML
Ce fichier contient l'ensemble des sets d'équipement disponible dans le jeu.
Un set d'équipement est un ensemble d'objet "liés" les uns aux autres. On peut considérer qu'ils sont assortis. Ces objets vont ensemble comme vos couteaux et vos fourchettes vont ensemble dans votre argenterie.
Si nous portons plusieurs pièces du même set, voire le set entier, nous allons débloquer des stats supplémentaires qui iront s'ajouter aux stats de bases. Les stats sont les caractéristiques de l'item (votre couteau est en argent, il mesure Xcm etc.)
Pour chaque Setitem nous allons avoir l'id du set ainsi que le nom du set.
Ensuite nous avons la liste des items (nom de l'item) contenu dans le set. Le nombre d'item dans un set peut varier.
Ensuite, nous avons, pour un nombre de pièce porté, les statistiques associées. Donc si je porte 2 parties du set, je débloque la stat "phyAttack" qui aura pour valeur 5....
Enfin, nous avons les statistiques qui seront débloqué si nous portons le set entièrement.
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 <client_setitem> <id>338</id> <name>pl_runeweapon_fighter_e_01</name> <desc>STR_PL_RUNEWEAPON_FIGHTER_E_01</desc> <item1>polearm_n_e_idruneweapon_fi</item1> <item3>pl_torso_n_e_idruneweapon_fi</item3> <item4>pl_pants_n_e_idruneweapon_fi</item4> <item5>pl_glove_n_e_idruneweapon_fi</item5> <item6>pl_shoes_n_e_idruneweapon_fi</item6> <item7>pl_shoulder_n_e_idruneweapon_fi</item7> <piece_bonus2>phyAttack 5;hitAccuracy 5;PhysicalDefend 18;magicalskillboostresist 15</piece_bonus2> <piece_bonus4>phyAttack 5;hitAccuracy 5;PhysicalDefend 18;magicalskillboostresist 15</piece_bonus4> <piece_bonus6>phyAttack 42;hitAccuracy 40;PhysicalDefend 81;magicalskillboostresist 48</piece_bonus6> <fullset_bonus>Critical 45;pvpattackratio 12;Pvpdefendratio 40;maxFp 42</fullset_bonus> </client_setitem> <client_setitem> <id>339</id> <name>pl_runeweapon_fighter_m_01</name> <desc>STR_PL_RUNEWEAPON_FIGHTER_M_01</desc> <item1>sword_n_m_idruneweapon_fi_a</item1> <item3>pl_torso_n_m_idruneweapon_fi_a</item3> <item4>pl_pants_n_m_idruneweapon_fi_a</item4> <item5>pl_glove_n_m_idruneweapon_fi_a</item5> <item6>pl_shoes_n_m_idruneweapon_fi_a</item6> <item7>pl_shoulder_n_m_idruneweapon_fi_a</item7> <piece_bonus2>phyAttack 5;hitAccuracy 5;PhysicalDefend 27;magicalskillboostresist 18</piece_bonus2> <piece_bonus4>phyAttack 5;hitAccuracy 5;PhysicalDefend 27;magicalskillboostresist 18</piece_bonus4> <piece_bonus6>phyAttack 42;hitAccuracy 40;PhysicalDefend 108;magicalskillboostresist 57</piece_bonus6> <fullset_bonus>Critical 50;pvpattackratio 13;Pvpdefendratio 45;maxFp 44</fullset_bonus> </client_setitem>
2-1 - MCD associé
Détails: desc_item et desc_set correspondent à la description des objets. C'est un texte verbeux donnant des informations sur les objets. str_stat est un code permettant ensuite d'internationaliser le nom de la stat.
2 - fichier item_random_option.xml et MCD associé
2-1 - Extrait du fichier XML
Ce fichier contient la liste des statistiques aléatoire d'un objet.
Un objet, lorsqu'il est ramassé par le joueur n'est pas "identifié". Donc on sait que l'on a ramassé un arc mais ses statistiques sont masquées et on doit cliquer dessus pour afficher ses statistiques. Les statistiques que l'objet aura une fois que nous l'aurons identifié font partie d'un ensemble de groupe de statistiques concerné uniquement par cet objet. Chaque groupe de statistiques possède une probabilité d'apparaître sur l'arme lors de son identification.
Nous aurons donc, pour chaque objet qui peut être identifié (il n'est pas obligatoire qu'un item soit identifiable), un ID, et le nom de l'item. ensuite, nous avons une liste de "groupe de stats". Chaque groupe de stats possède un id, une probabilité d'apparaître sur l'arme lors de l'identification, et ensuite un ensemble de statistiques.
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84 <id>130</id> <name>bow_n_m_idunderrune_65a</name> <random_attr_group_list> <data> <attr_group_id>1</attr_group_id> <prob>700</prob> <random_attr1>hitaccuracy 40</random_attr1> <random_attr2>critical 30</random_attr2> <random_attr3>phyattack 20</random_attr3> <random_attr4>attackdelay 2%</random_attr4> </data> <data> <attr_group_id>2</attr_group_id> <prob>400</prob> <random_attr1>hitaccuracy 37</random_attr1> <random_attr2>critical 27</random_attr2> <random_attr3>phyattack 20</random_attr3> <random_attr4>attackdelay 2%</random_attr4> </data> <data> <attr_group_id>3</attr_group_id> <prob>400</prob> <random_attr1>hitaccuracy 33</random_attr1> <random_attr2>critical 30</random_attr2> <random_attr3>phyattack 18</random_attr3> <random_attr4>attackdelay 2%</random_attr4> </data> <data> <attr_group_id>4</attr_group_id> <prob>1400</prob> <random_attr1>hitaccuracy 22</random_attr1> <random_attr2>critical 24</random_attr2> <random_attr3>phyattack 13</random_attr3> </data> <data> <attr_group_id>5</attr_group_id> <prob>1500</prob> <random_attr1>hitaccuracy 26</random_attr1> <random_attr2>critical 20</random_attr2> <random_attr3>phyattack 11</random_attr3> <random_attr4>attackdelay 2%</random_attr4> </data> <data> <attr_group_id>6</attr_group_id> <prob>1400</prob> <random_attr1>hitaccuracy 30</random_attr1> <random_attr2>critical 14</random_attr2> <random_attr3>phyattack 9</random_attr3> <random_attr4>attackdelay 2%</random_attr4> </data> <data> <attr_group_id>7</attr_group_id> <prob>1200</prob> <random_attr1>hitaccuracy 18</random_attr1> <random_attr2>critical 17</random_attr2> <random_attr3>phyattack 15</random_attr3> <random_attr4>attackdelay 2%</random_attr4> </data> <data> <attr_group_id>8</attr_group_id> <prob>1000</prob> <random_attr1>hitaccuracy 14</random_attr1> <random_attr2>critical 10</random_attr2> <random_attr3>phyattack 4</random_attr3> <random_attr4>attackdelay 2%</random_attr4> </data> <data> <attr_group_id>9</attr_group_id> <prob>1000</prob> <random_attr1>hitaccuracy 10</random_attr1> <random_attr2>critical 5</random_attr2> <random_attr3>phyattack 3</random_attr3> </data> <data> <attr_group_id>10</attr_group_id> <prob>1000</prob> <random_attr1>hitaccuracy 2</random_attr1> <random_attr2>critical 2</random_attr2> <random_attr3>phyattack 1</random_attr3> <random_attr4>attackdelay 2%</random_attr4> </data> </random_attr_group_list> </item_random_option> <item_random_option>
2-2 - MCD associé
Vu que ça fait une boucle fermé, j'ai peur que ce ne soit pas bon, mais je ne sais pas comment faire autrement. En effet, un item possède des stats de base mais va également posséder des stats supplémentaires lorsque il sera identifié.
3 - fichier polish_bonus_setlist.xml et MCD associé
3-1 - Extrait du fichier XML
Avant de décrire le contenu du fichier, il faut faire une petite aparté sur comment fonctionne un item. Un item, peut être une arme, une pièce d'équipement, ou plein d'autre chose. Les armes et autres équipements possèdes des statistiques. Ces stats peuvent ensuite être maximiser en faisant interagir notre item de base avec divers autres items. Ici nous allons parler du fait de pouvoir "polir" notre objet. Si nous faisons sur notre item une action de "polissage", nous allons ajouter à notre item des stats liées à la pierre à polir que nous avons utilisé.
Ici, le but de ce fichier XML, c'est de regrouper, les statistiques qu'il sera possible d'avoir en fonction des différentes pierre à polir. Un détail supplémentaire, le fichier contient le nom du "bonus de polissage". Nous pouvons avoir plusieurs pierre à polir qui possède le même "bonus de polissage".
Un "bonus de polissage" possède plusieurs groupes de stats qui seront appliqués de façon aléatoire, selon une probabilité, à l'item sur lequel on appliquera la pierre à polir.
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76 <polish_bonus_setlist> <id>51</id> <name>cash_magatt_e_polish_set_01</name> <random_attr_group_list> <data> <attr_group_id>1</attr_group_id> <prob>1000</prob> <random_attr1>magicalskillboost 46</random_attr1> <random_attr2>magicalcritical 13</random_attr2> <random_attr3>PhysicalCriticalReduceRate 26</random_attr3> </data> <data> <attr_group_id>2</attr_group_id> <prob>1000</prob> <random_attr1>magicalskillboost 46</random_attr1> <random_attr2>magicalcritical 13</random_attr2> <random_attr3>magicalskillboostresist 55</random_attr3> </data> <data> <attr_group_id>3</attr_group_id> <prob>1250</prob> <random_attr1>magicalskillboost 46</random_attr1> <random_attr2>magicalhitaccuracy 26</random_attr2> <random_attr3>PhysicalCriticalReduceRate 26</random_attr3> </data> <data> <attr_group_id>4</attr_group_id> <prob>1250</prob> <random_attr1>magicalskillboost 46</random_attr1> <random_attr2>magicalhitaccuracy 26</random_attr2> <random_attr3>magicalskillboostresist 55</random_attr3> </data> <data> <attr_group_id>5</attr_group_id> <prob>1000</prob> <random_attr1>magicalskillboost 46</random_attr1> <random_attr2>Pvpattackratio 2</random_attr2> <random_attr3>PhysicalCriticalReduceRate 26</random_attr3> </data> <data> <attr_group_id>6</attr_group_id> <prob>500</prob> <random_attr1>magicalskillboost 46</random_attr1> <random_attr2>Pvpattackratio 5</random_attr2> <random_attr3>magicalskillboostresist 55</random_attr3> </data> <data> <attr_group_id>7</attr_group_id> <prob>1250</prob> <random_attr1>magicalcritical 13</random_attr1> <random_attr2>magicalhitaccuracy 26</random_attr2> <random_attr3>PhysicalCriticalReduceRate 26</random_attr3> </data> <data> <attr_group_id>8</attr_group_id> <prob>1250</prob> <random_attr1>magicalcritical 13</random_attr1> <random_attr2>magicalhitaccuracy 26</random_attr2> <random_attr3>magicalskillboostresist 55</random_attr3> </data> <data> <attr_group_id>9</attr_group_id> <prob>1000</prob> <random_attr1>magicalcritical 13</random_attr1> <random_attr2>Pvpattackratio 2</random_attr2> <random_attr3>PhysicalCriticalReduceRate 26</random_attr3> </data> <data> <attr_group_id>10</attr_group_id> <prob>500</prob> <random_attr1>magicalcritical 13</random_attr1> <random_attr2>Pvpattackratio 5</random_attr2> <random_attr3>magicalskillboostresist 55</random_attr3> </data> </random_attr_group_list> </polish_bonus_setlist>
3-2 - MCD associé
4 - fichier item_upgrade.xml et MCD associé
4-1 - Extrait du fichier XML
Ici, nous partons sur une nouvelle notion relativement simple. Imaginons un item A, et un item B. L'item A est moins bien que l'item B. Nous décidons donc d'upgrader notre item A en item B. Mais pour faire cela il y a des restrictions, et un coût. La restriction concerne une autre notion que nous verrons après, il s'agit du niveau d'enchantement de notre objet. Notre objet, pour être upgrader, doit avoir un certain niveau d'enchantement. Ensuite, il faut payer pour upgrade l'item A en item B.
nous aurons donc dans le fichier XML, pour l'item que nous souhaitons upgrader, un ID "d'upgrade" et le nom de l'item que l'on souhaite upgrade.
Ensuite, nous avons la liste des upgrade possible contenant:
- Le nom de l'item upgrade. Donc le nom de l'item B que l'on va acquérir une fois l'upgrade terminé. (car il est possible d'upgrade l'item A en différents items, item B ou C ou....)
- la restriction d'enchantement: dans notre extrait XML l'item doit être enchanté +10
- Objet1 requis: nom de l'objet en question (ici des médailles) (fait partie de la liste des items)
- Qté de l'objet1 requis:
- Objet 2 requis: un autre item (fait partie de la liste des items)
- Qté de l'objet 2 requis:
- Cout (en Qté) en points abyssaux (on peut considérer cela comme un type de monnaie)
nous pouvons également avoir un Coût (en Qté) en kinahs (autre monnaie).
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 <client_item_upgrade> <id>136</id> <name>keyblade_d_a_em_65a_li</name> <upgrade_list> <data> <upgrade_item>keyblade_d_a_m2_65a_hi</upgrade_item> <check_enchant_count>10</check_enchant_count> <sub_material_item1>medal_05</sub_material_item1> <sub_material_item_count1>286</sub_material_item_count1> <sub_material_item2>up_mid_weapon_abyss_r2</sub_material_item2> <sub_material_item_count2>1</sub_material_item_count2> <need_abyss_point>2748011</need_abyss_point> </data> <data> <upgrade_item>keyblade_d_a_em_65e_li</upgrade_item> <check_enchant_count>10</check_enchant_count> <sub_material_item1>medal_05</sub_material_item1> <sub_material_item_count1>286</sub_material_item_count1> <sub_material_item2>item_exp_extraction_65a</sub_material_item2> <sub_material_item_count2>35</sub_material_item_count2> <need_abyss_point>2748012</need_abyss_point> </data> </upgrade_list> </client_item_upgrade>
4-2 - MCD associé
5 - fichier item_enchanttable.xml et MCD associé
5-1 - Extrait du fichier XML
Ici, nous allons voir l'enchantement d'un objet. Enchanter un objet consiste à lui faire gagner différents niveau de puissance afin d'augmenter ses statistiques. on pourra donc avoir une arme ou une armure +10 (sous entendu +10 niveau de puissance). Cet enchantement, permet de gagner différentes statistiques par niveau d'enchantement et par type d'item enchanté. C'est ce que stocke ce fichier.
Pour chaque "item_enchant" (qui ne correspond pas a un item particulier mais plus à une catégorie d'item. De ce fait, on peut avoir plusieurs items concerné par le même "item_enchant") nous allons avoir l'id de l'item enchant ainsi que son nom. Ensuite nous avons une liste contenant à chaque fois le niveau d'enchantement et l'ensemble de stats associé à ce niveau d'enchantement.
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153 <item_enchant> <id>17</id> <name>rb_torso</name> <enchant_attr_list> <data> <level>1</level> <attr1>max_hp 14</attr1> <attr2>physical_defend 3</attr2> <attr3>Physical_Critical_Reduce_Rate 4</attr3> <attr4>magical_defend 3</attr4> </data> <data> <level>2</level> <attr1>max_hp 28</attr1> <attr2>physical_defend 6</attr2> <attr3>Physical_Critical_Reduce_Rate 8</attr3> <attr4>magical_defend 6</attr4> </data> <data> <level>3</level> <attr1>max_hp 42</attr1> <attr2>physical_defend 9</attr2> <attr3>Physical_Critical_Reduce_Rate 12</attr3> <attr4>magical_defend 9</attr4> </data> <data> <level>4</level> <attr1>max_hp 56</attr1> <attr2>physical_defend 12</attr2> <attr3>Physical_Critical_Reduce_Rate 16</attr3> <attr4>magical_defend 12</attr4> </data> <data> <level>5</level> <attr1>max_hp 70</attr1> <attr2>physical_defend 15</attr2> <attr3>Physical_Critical_Reduce_Rate 20</attr3> <attr4>magical_defend 15</attr4> </data> <data> <level>6</level> <attr1>max_hp 84</attr1> <attr2>physical_defend 18</attr2> <attr3>Physical_Critical_Reduce_Rate 24</attr3> <attr4>magical_defend 18</attr4> </data> <data> <level>7</level> <attr1>max_hp 98</attr1> <attr2>physical_defend 21</attr2> <attr3>Physical_Critical_Reduce_Rate 28</attr3> <attr4>magical_defend 21</attr4> </data> <data> <level>8</level> <attr1>max_hp 112</attr1> <attr2>physical_defend 24</attr2> <attr3>Physical_Critical_Reduce_Rate 32</attr3> <attr4>magical_defend 24</attr4> </data> <data> <level>9</level> <attr1>max_hp 126</attr1> <attr2>physical_defend 27</attr2> <attr3>Physical_Critical_Reduce_Rate 36</attr3> <attr4>magical_defend 27</attr4> </data> <data> <level>10</level> <attr1>max_hp 140</attr1> <attr2>physical_defend 30</attr2> <attr3>Physical_Critical_Reduce_Rate 40</attr3> <attr4>magical_defend 30</attr4> </data> <data> <level>11</level> <attr1>max_hp 154</attr1> <attr2>physical_defend 33</attr2> <attr3>Physical_Critical_Reduce_Rate 44</attr3> <attr4>magical_defend 33</attr4> </data> <data> <level>12</level> <attr1>max_hp 168</attr1> <attr2>physical_defend 36</attr2> <attr3>Physical_Critical_Reduce_Rate 48</attr3> <attr4>magical_defend 36</attr4> </data> <data> <level>13</level> <attr1>max_hp 182</attr1> <attr2>physical_defend 39</attr2> <attr3>Physical_Critical_Reduce_Rate 52</attr3> <attr4>magical_defend 39</attr4> </data> <data> <level>14</level> <attr1>max_hp 196</attr1> <attr2>physical_defend 42</attr2> <attr3>Physical_Critical_Reduce_Rate 56</attr3> <attr4>magical_defend 42</attr4> </data> <data> <level>15</level> <attr1>max_hp 210</attr1> <attr2>physical_defend 45</attr2> <attr3>Physical_Critical_Reduce_Rate 60</attr3> <attr4>magical_defend 45</attr4> </data> <data> <level>16</level> <attr1>max_hp 224</attr1> <attr2>physical_defend 48</attr2> <attr3>Physical_Critical_Reduce_Rate 64</attr3> <attr4>magical_defend 48</attr4> </data> <data> <level>17</level> <attr1>max_hp 238</attr1> <attr2>physical_defend 51</attr2> <attr3>Physical_Critical_Reduce_Rate 68</attr3> <attr4>magical_defend 51</attr4> </data> <data> <level>18</level> <attr1>max_hp 252</attr1> <attr2>physical_defend 54</attr2> <attr3>Physical_Critical_Reduce_Rate 72</attr3> <attr4>magical_defend 54</attr4> </data> <data> <level>19</level> <attr1>max_hp 266</attr1> <attr2>physical_defend 57</attr2> <attr3>Physical_Critical_Reduce_Rate 76</attr3> <attr4>magical_defend 57</attr4> </data> <data> <level>20</level> <attr1>max_hp 280</attr1> <attr2>physical_defend 60</attr2> <attr3>Physical_Critical_Reduce_Rate 80</attr3> <attr4>magical_defend 60</attr4> </data> <data> <level>21</level> <attr1>max_hp 14</attr1> <attr2>physical_defend 3</attr2> <attr3>Physical_Critical_Reduce_Rate 4</attr3> <attr4>magical_defend 3</attr4> </data> </enchant_attr_list> </item_enchant>
5-2 - MCD associé
6 - fichier item_authorizetable.xml et MCD associé
6-1 - Extrait du fichier XML
En restant toujours dans la même idée d'amélioration d'un item, il y a le principe de réévaluation (=authorize). Cela fonctionne exactement de la même manière que l'enchantement. Nous augmentons le niveau de puissance de l'objet pour accroître ses statistiques. Certains objets (les accessoires tel que collier, boucle d'oreille, ceinture) ne peuvent pas être enchantés, mais ils peuvent être réévalués. Voilà pourquoi il y a différenciation des 2.
Tout comme l'enchantement, plusieurs objets peuvent être liés au même tableau de réévaluation. Pour chaque item_authorize nous aurons un id et un nom. Ensuite, nous aurons pour chaque level de réévaluation, l'ensemble des statistiques qui y seront débloquées.
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76 <item_authorize> <id>46</id> <name>test_option_authorize03</name> <enchant_attr_list> <data> <level>1</level> <attr1>PvPAttackRatio_Physical 100</attr1> <attr2>PvPAttackRatio_Physical_O 20</attr2> <attr3>PvPAttackRatio_Magical 20</attr3> <attr4>PvPAttackRatio_Magical_O 30</attr4> </data> <data> <level>2</level> <attr1>PvPAttackRatio_Physical 20</attr1> <attr2>PvPAttackRatio_Magical 25</attr2> <attr3>PvPDefendRatio_Physical 30</attr3> <attr4>PvPDefendRatio_Magical 35</attr4> </data> <data> <level>3</level> <attr1>PvPAttackRatio_Physical_O 50</attr1> <attr2>PvPAttackRatio_Magical_O 60</attr2> <attr3>PvPDefendRatio_Physical_O 70</attr3> <attr4>PvPDefendRatio_Magical_O 80</attr4> </data> <data> <level>4</level> <attr1>max_hp 50</attr1> <attr2>Critical_Physical_O 70</attr2> <attr3>critical_physical 20</attr3> <attr4>magical_hit_accuracy 30</attr4> </data> <data> <level>5</level> <attr1>Magical_Skill_Boost_O 80</attr1> <attr2>magical_skill_boost 160</attr2> <attr3>max_hp 112</attr3> <attr4>max_hp_O 800</attr4> </data> <data> <level>6</level> <attr1>block 100</attr1> <attr2>parry_O 90</attr2> <attr3>parry 100</attr3> <attr4>speed_O 9%</attr4> </data> <data> <level>7</level> <attr1>Attack_Delay_O 9%</attr1> <attr2>attack_delay 200</attr2> <attr3>Physical_Critical_Reduce_Rate 20</attr3> <attr4>Physical_Critical_Reduce_Rate_O 50</attr4> </data> <data> <level>8</level> <attr1>damage_magical 32</attr1> <attr2>damage_physical 16</attr2> <attr3>Damage_Physical_O 20</attr3> <attr4>Damage_Magical_O 70</attr4> </data> <data> <level>9</level> <attr1>magical_hit_accuracy 20</attr1> <attr2>Physical_Critical_Reduce_Rate 10</attr2> <attr3>Snare_Arp_O 40</attr3> <attr4>PvPMagicalResist_O 50</attr4> </data> <data> <level>10</level> <attr1>ArParalyze_O 20</attr1> <attr2>PvPDefendRatio_Magical_O 103</attr2> <attr3>parry 20</attr3> <attr4>Max_Fp_O 200</attr4> </data> </enchant_attr_list> </item_authorize>
6-2 - MCD associé
(désolé, mais limitation des pièces jointes oblige).
Je vous ai fournis 6 MCD différents car il s'agit à chaque fois d'un fichier XML différents. Cependant, l'ensemble de ces MCD sont voués à être regroupés dans le même modèle pour ensuite créer ma base de données.
Merci par avance pour toute l'aide que vous pourrez mapporter en espérant que je n'aurais pas fait de trop grosses erreurs.
Merci par avance.
cordialement,
AutoDiDev
Partager