Merge branch 'fixes' into main/gingo-test
[ryzomcore.git] / ryzom / common / data_common / database.xml
blob1c83f5fab93e149c9cec9103a41f472d04d0e651
1 <database_description>
2   <!-- Define bank superclass -->
3   <bank_superclass>
4     <bank name="PLR"
5           class="CCDBSynchronised" />
6     <bank name="GUILD"
7           class="CCDBGroup"
8           dbAccessor=".Database">
9       <include file="game_share/far_position.h" />
10       <verbatime>inline void _setProp(CCDBSynchronised &amp;db,
11       ICDBStructNode *node, TCharConnectionState value, bool
12       forceSending = false) { db.x_setProp(node, uint64(value),
13       forceSending); } inline void _getProp(const CCDBSynchronised
14       &amp;db, ICDBStructNode *node, TCharConnectionState
15       &amp;value) { value =
16       (TCharConnectionState)db.x_getProp(node); }</verbatime>
17     </bank>
18     <bank name="OUTPOST"
19           class="CCDBGroup"
20           dbAccessor=".Database" />
21   </bank_superclass>
22   <!-- Bank must be set for all and only first-level branches -->
23   <!-- For the client to work, this branch MUST remain at the top -->
24   <branch name="Entities"
25           bank="PLR"
26           clientonly="1">
27     <branch name="E"
28             count="256">
29       <leaf name="P"
30             count="28"
31             type="I64" />
32     </branch>
33   </branch>
34   <branch name="GameTime"
35           bank="PLR">
36     <leaf name="Hours"
37           type="I16" />
38   </branch>
39   <branch name="INTERFACES"
40           bank="PLR">
41     <leaf name="FLAGS"
42           type="I64" />
43     <leaf name="NB_BONUS_LANDMARKS"
44           type="I16" />
45   </branch>
46   <branch name="USER"
47           bank="PLR"
48           atom="1">
49     <leaf name="HAIR_TYPE"
50           type="I8" />
51     <leaf name="HAIR_COLOR"
52           type="I3" />
53     <leaf name="DEATH_XP_MALUS"
54           type="I8" />
55     <leaf name="IN_DUEL"
56           type="I1" />
57     <leaf name="IN_PVP_CHALLENGE"
58           type="I1" />
59     <leaf name="MOUNT_WALK_SPEED"
60           type="I16" />
61     <leaf name="MOUNT_RUN_SPEED"
62           type="I16" />
63     <leaf name="TEAM_MEMBER"
64           type="I1" />
65     <leaf name="TEAM_LEADER"
66           type="I1" />
67     <leaf name="OUTPOST_ADMIN"
68           type="I1" />
69     <leaf name="BERSERK"
70           type="I1" />
71     <leaf name="ACT_TSTART"
72           type="I32" />
73     <leaf name="ACT_TEND"
74           type="I32" />
75     <leaf name="ACT_TYPE"
76           type="I4" />
77     <leaf name="ACT_NUMBER"
78           type="I8" />
79     <leaf name="ACT_REFUSED_NUM"
80           type="I8" />
81     <leaf name="ACT_CANCELED_NUM"
82           type="I8" />
83     <leaf name="SPEED_FACTOR"
84           type="I8" />
85     <leaf name="SKILL_POINTS"
86           type="I32" />
87     <branch name="SKILL_POINTS_"
88             count="4">
89       <leaf name="VALUE"
90             type="I32" />
91     </branch>
92     <branch name="FACTION_POINTS_"
93             count="7">
94       <!-- game_share/pvp_clan.h (0 is BeginClans and size is EndClans-BeginClans+1 -->
95       <leaf name="VALUE"
96             type="I32" />
97     </branch>
98     <leaf name="IS_NEWBIE"
99           type="I1" />
100     <leaf name="IS_TRIAL"
101           type="I1" />
102     <branch name="RRPS_LEVELS"
103             count="6">
104       <leaf name="VALUE"
105             type="I32" />
106     </branch>
107     <branch name="NPC_CONTROL"
108             bank="PLR">
109       <leaf name="SHEET"
110             type="I32"
111             cppType="NLMISC::CSheetId" />
112       <leaf name="RUN"
113             type="I32" />
114       <leaf name="WALK"
115             type="I32" />
116     </branch>
117     <leaf name="DEFAULT_WEIGHT_HANDS"
118           type="I32" />
119     <leaf name="IS_INVISIBLE"
120           type="I1" />
121     <!-- Syncrhonisation COUNTER. must be at END of an atomic branch -->
122     <leaf name="COUNTER"
123           type="I4" />
124   </branch>
125   <branch name="DEFENSE"
126           bank="PLR">
127     <leaf name="DEFENSE_MODE"
128           type="I1" />
129     <!-- 0 = dodge, 1 = parry-->
130     <leaf name="PROTECTED_SLOT"
131           type="I3" />
132     <!-- 0=All, 1=head, 2=chest, 3=arms, 4=hands, 5=legs, 6=feet-->
133     <branch name="SLOTS">
134       <branch name=""
135               count="6">
136         <!-- 0=head, 1=chest, 2=arms, 3=hands, 4=legs, 5=feet-->
137         <leaf name="MODIFIER"
138               type="S8" />
139         <!-- modifier on defense (dodge or parry) on given slot (+-127)-->
140       </branch>
141     </branch>
142   </branch>
143   <branch name="FLAGS"
144           bank="PLR"
145           atom="1">
147     <branch name="BRICK_TICK_RANGE">
148       <!-- tick range for each power -->
149       <branch name=""
150               count="64">
151         <leaf name="TICK_RANGE"
152               type="I64" />
153         <!-- 32b for start tick and 32b for end tick -->
154       </branch>
155     </branch>
157     <leaf name="CRITICAL"
158           type="I8" />
159     <!-- counter to display flying texts : critical hit -->
160     <leaf name="PARRY"
161           type="I8" />
162     <!-- counter to display flying texts : parry -->
163     <leaf name="DODGE"
164           type="I8" />
165     <!-- counter to display flying texts : dodge -->
166   </branch>
167   <branch name="TARGET"
168           bank="PLR">
169     <!-- Don't put the whole TARGET branch atomic, because it will takes 34 extra bits each time a bar value change -->
170     <branch name="BARS"
171             atom="1">
172       <!-- Entity Unique Identifier. Put in the atomic branch for consistency -->
173       <!-- NB a UID invalid doesn't mean no target. It may be a Forage source -->
174       <leaf name="UID"
175             type="I20" />
176       <leaf name="HP"
177             type="S8" />
178       <leaf name="SAP"
179             type="I7" />
180       <leaf name="STA"
181             type="I7" />
182       <leaf name="FOCUS"
183             type="I7" />
184       <leaf name="PLAYER_LEVEL"
185             type="I8" />
186       <!-- for target players only (PVP) -->
187     </branch>
188     <!-- ContextMenu (Bot options etc...) -->
189     <branch name="CONTEXT_MENU"
190             atom="1">
191       <leaf name="PROGRAMMES"
192             type="I32" />
193       <!-- options for missions in the context menu -->
194       <branch name="MISSIONS_OPTIONS">
195         <branch name=""
196                 count="8">
197           <leaf name="TITLE"
198                 type="I32" />
199           <!-- a text ID of 0 means there's no action. Text ID are reseted when a new character is targeted -->
200           <leaf name="PLAYER_GIFT_NEEDED"
201                 type="I1" />
202           <!-- want a player gift ? -->
203           <leaf name="PRIORITY"
204                 type="I2" />
205           <!-- priority of the option : the higher it is, the higher the option will be displayed in the menu -->
206         </branch>
207       </branch>
208       <!-- A NPC may offer to view a webpage -->
209       <leaf name="WEB_PAGE_TITLE"
210             type="I32" />
211       <!-- a text ID of 0 means there's no WebPage -->
212       <leaf name="WEB_PAGE_URL"
213             type="I32" />
214       <!-- the URL text ID of the web page -->
215       <leaf name="OUTPOST"
216             type="I32"
217             cppType="NLMISC::CSheetId" />
218       <!-- outpost this bot give access to (sheet id inside) -->
219       <!-- Mission rings -->
220       <branch name="MISSION_RING">
221         <branch name=""
222                 count="4">
223           <leaf name="TITLE"
224                 type="I32" />
225           <!-- a text ID of 0 means there's no action. Text ID are reseted when a new character is targeted -->
226           <leaf name="ID"
227                 type="I32" />
228           <!-- the id of the action if selected -->
229         </branch>
230       </branch>
231       <!-- Syncrhonisation COUNTER. must be at END of an atomic branch -->
232       <leaf name="COUNTER"
233             type="I4" />
234     </branch>
235     <leaf name="CONTEXT_VAL"
236           type="I16" />
237     <leaf name="AGGRESSIVE"
238           type="I3" />
239     <leaf name="FORCE_RATIO"
240           type="I4" />
241     <!-- TODO: remove this, use ForceRegion/ForceLevel in client creature sheets instead -->
242   </branch>
243   <branch name="GROUP"
244           bank="PLR">
245     <branch name=""
246             count="8"
247             atom="1">
248       <!-- Atomic, for correct Bar Management on client -->
249       <leaf name="PRESENT"
250             type="I1" />
251       <leaf name="UID"
252             type="I20" />
253       <!-- Entity Unique Identifier -->
254       <leaf name="NAME"
255             type="I32" />
256       <leaf name="HP"
257             type="S8" />
258       <leaf name="SAP"
259             type="I7" />
260       <leaf name="STA"
261             type="I7" />
262       <leaf name="POS"
263             type="I64" />
264     </branch>
265     <leaf name="LEADER_INDEX"
266           type="I4" />
267     <leaf name="SUCCESSOR_INDEX"
268           type="I4" />
269     <branch name="MISSIONS"
270             bank="PLR">
271       <branch name=""
272               count="15">
273         <!-- see game_share/mission_desc.h TMissionType -->
274         <leaf name="TYPE"
275               type="I2" />
276         <leaf name="ICON"
277               type="I32"
278               cppType="NLMISC::CSheetId" />
279         <!-- sheet id of a .mission_icon sheet -->
280         <leaf name="TITLE"
281               type="I32" />
282         <leaf name="DETAIL_TEXT"
283               type="I32" />
284         <!-- begin date in tick -->
285         <leaf name="BEGIN_DATE"
286               type="I32" />
287         <!-- end date in tick -->
288         <leaf name="END_DATE"
289               type="I32" />
290         <!-- true if the step are "OR" -->
291         <leaf name="OR_STEPS"
292               type="I1" />
293         <branch name="GOALS">
294           <branch name=""
295                   count="20">
296             <leaf name="TEXT"
297                   type="I32" />
298             <leaf name="NPC_ALIAS"
299                   type="I32" />
300           </branch>
301         </branch>
302         <!-- Targets -->
303         <branch name="TARGET"
304                 count="8"
305                 atom="1">
306           <leaf name="TITLE"
307                 type="I32" />
308           <leaf name="X"
309                 type="I32" />
310           <leaf name="Y"
311                 type="I32" />
312         </branch>
313         <!-- Indicate if the mission is finished (0-not 1-success 2-failed) -->
314         <leaf name="FINISHED"
315               type="I2" />
316         <!-- Indicate if the mission is abandonnable -->
317         <leaf name="ABANDONNABLE"
318               type="I1" />
319         <!-- Indicate if the mission is paused (player set as 'sleeping' in a queue) -->
320         <leaf name="SLEEP"
321               type="I1" />
322         <!-- Historic -->
323         <branch name="HISTO">
324           <branch name=""
325                   count="30">
326             <leaf name="TEXT"
327                   type="I32" />
328           </branch>
329         </branch>
330       </branch>
331     </branch>
332   </branch>
333   <!-- Common Item Data : For correct HELP, all items must have this structure:
334                 <leaf name="SHEET"                      type="I32"/>
335                 <leaf name="QUALITY"            type="I10"/>
336                 <leaf name="QUANTITY"           type="I10"/>
337                 <leaf name="CREATE_TIME"                 type="I32" />
338                 <leaf name="SERIAL"                      type="I32" />
339                 <leaf name="USER_COLOR"         type="I3"/>
340                 <leaf name="LOCKED"                     type="I10"/>
341                 <leaf name="WEIGHT"                     type="I16"/>
342                 <leaf name="NAMEID"                     type="I32"/>
343                 <leaf name="INFO_VERSION"       type="I8"/>
344                 <leaf name="ENCHANT"            type="I10"/>
345                 <leaf name="RM_CLASS_TYPE"              type="I3"/> RM_CLASS_TYPE enum
346                 <leaf name="RM_FABER_STAT_TYPE" type="I5"/> RM_FABER_STAT_TYPE enum
347                 <leaf name="PREREQUISIT_VALID"  type="I11"/>
348         -->
349   <!-- gift from animator (dm) to player -->
350   <branch name="DM_GIFT"
351           bank="PLR">
352     <leaf name="TEXT"
353           type="I32" />
354     <!-- caption of the gift window -->
355   </branch>
356   <!-- player trade & gift to bot -->
357   <branch name="EXCHANGE"
358           bank="PLR">
359     <leaf name="TEXT"
360           type="I32" />
361     <leaf name="ID"
362           type="I8" />
363     <leaf name="BEGUN"
364           type="I1" />
365     <leaf name="ACCEPTED"
366           type="I1" />
367     <leaf name="MONEY"
368           type="I64" />
369     <branch name="GIVE">
370       <branch name=""
371               count="10"> <!-- Change in local_database.xml, player_trade.lua and NbExchangeSlots on server-->
372         <!-- Common Item Data -->
373         <leaf name="SHEET"
374               type="I32"
375               cppType="NLMISC::CSheetId" />
376         <leaf name="QUALITY"
377               type="I10" />
378         <leaf name="QUANTITY"
379               type="I10" />
380         <leaf name="CREATE_TIME"
381               type="I32" />
382         <leaf name="SERIAL"
383               type="I32" />
384         <leaf name="USER_COLOR"
385               type="I3" />
386         <!-- <leaf name="LOCKED"                        type="I10"/> No longer needed -->
387         <leaf name="WEIGHT"
388               type="I16" />
389         <!-- weight. see DB_WEIGHT_SCALE -->
390         <leaf name="NAMEID"
391               type="I32" />
392         <!-- 0 or special name of item -->
393         <leaf name="INFO_VERSION"
394               type="I8" />
395         <leaf name="ENCHANT"
396               type="I10" />
397         <leaf name="RM_CLASS_TYPE"
398               type="I3" />
399         <leaf name="RM_FABER_STAT_TYPE"
400               type="I6" />
401         <leaf name="PREREQUISIT_VALID"
402               type="I1" />
403       </branch>
404     </branch>
405     <branch name="RECEIVE">
406       <branch name=""
407               count="10"> <!-- Change in local_database.xml, player_trade.lua and NbExchangeSlots on server-->
408         <!-- Common Item Data -->
409         <leaf name="SHEET"
410               type="I32"
411               cppType="NLMISC::CSheetId" />
412         <leaf name="QUALITY"
413               type="I10" />
414         <leaf name="QUANTITY"
415               type="I10" />
416         <leaf name="CREATE_TIME"
417               type="I32" />
418         <leaf name="SERIAL"
419               type="I32" />
420         <leaf name="USER_COLOR"
421               type="I3" />
422         <!-- <leaf name="LOCKED"                        type="I10"/> No longer needed -->
423         <leaf name="WEIGHT"
424               type="I16" />
425         <!-- weight. see DB_WEIGHT_SCALE-->
426         <leaf name="NAMEID"
427               type="I32" />
428         <!-- 0 or special name of item -->
429         <leaf name="INFO_VERSION"
430               type="I8" />
431         <leaf name="ENCHANT"
432               type="I10" />
433         <leaf name="RM_CLASS_TYPE"
434               type="I3" />
435         <leaf name="RM_FABER_STAT_TYPE"
436               type="I6" />
437         <leaf name="PREREQUISIT_VALID"
438               type="I1" />
439       </branch>
440     </branch>
441     <leaf name="FORCE_REFUSE"
442           type="I4" />
443     <!-- Syncrhonisation COUNTER. Should be at END of an atomic branch!!! but still works fine -->
444     <leaf name="COUNTER"
445           type="I4" />
446   </branch>
447   <branch name="INVENTORY"
448           bank="PLR">
449     <branch name="HAND">
450       <branch name=""
451               count="2">
452         <!-- 0 Right 1 Left -->
453         <leaf name="INDEX_IN_BAG"
454               type="I9" />
455         <!-- 0 nothing 1-500 index in bag from 0 to 499 -->
456       </branch>
457     </branch>
458     <branch name="BAG"
459             clientonly="1">
460       <branch name=""
461               count="500">
462         <!-- Common Item Data -->
463         <leaf name="SHEET"
464               type="I32"
465               cppType="NLMISC::CSheetId" />
466         <leaf name="QUALITY"
467               type="I10" />
468         <leaf name="QUANTITY"
469               type="I10" />
470         <leaf name="CREATE_TIME"
471               type="I32" />
472         <leaf name="SERIAL"
473               type="I32" />
474         <leaf name="USER_COLOR"
475               type="I3" />
476         <leaf name="LOCKED"
477               type="I10" />
478         <leaf name="WEIGHT"
479               type="I16" />
480         <!-- weight. see DB_WEIGHT_SCALE-->
481         <leaf name="NAMEID"
482               type="I32" />
483         <!-- 0 or special name of item -->
484         <leaf name="INFO_VERSION"
485               type="I8" />
486         <leaf name="ENCHANT"
487               type="I10" />
488         <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
489         <leaf name="RM_CLASS_TYPE"
490               type="I3" />
491         <leaf name="RM_FABER_STAT_TYPE"
492               type="I6" />
493         <leaf name="PREREQUISIT_VALID"
494               type="I1" />
495         <leaf name="PRICE"
496               type="I32" />
497         <leaf name="RESALE_FLAG"
498               type="I2" />
499         <!-- TBotChatResaleFlag -->
500         <leaf name="WORNED"
501               type="I1" />
502         <!-- true if item is worned (show a red cross) -->
503       </branch>
504     </branch>
505     <!-- MAX_INVENTORY_ANIMAL -->
506     <branch name="PACK_ANIMAL"
507             count="7"
508             clientonly="1">
509       <branch name=""
510               count="500">
511         <!-- Common Item Data -->
512         <leaf name="SHEET"
513               type="I32"
514               cppType="NLMISC::CSheetId" />
515         <leaf name="QUALITY"
516               type="I10" />
517         <leaf name="QUANTITY"
518               type="I10" />
519         <leaf name="CREATE_TIME"
520               type="I32" />
521         <leaf name="SERIAL"
522               type="I32" />
523         <leaf name="USER_COLOR"
524               type="I3" />
525         <leaf name="LOCKED"
526               type="I10" />
527         <leaf name="WEIGHT"
528               type="I16" />
529         <!-- weight. see DB_WEIGHT_SCALE-->
530         <leaf name="NAMEID"
531               type="I32" />
532         <!-- 0 or special name of item -->
533         <leaf name="INFO_VERSION"
534               type="I8" />
535         <leaf name="ENCHANT"
536               type="I10" />
537         <leaf name="RM_CLASS_TYPE"
538               type="I3" />
539         <leaf name="RM_FABER_STAT_TYPE"
540               type="I6" />
541         <leaf name="PREREQUISIT_VALID"
542               type="I1" />
543         <leaf name="PRICE"
544               type="I32" />
545         <leaf name="RESALE_FLAG"
546               type="I2" />
547         <!-- TBotChatResaleFlag -->
548       </branch>
549     </branch>
550     <branch name="EQUIP">
551       <!-- jewelry + armor -->
552       <branch name=""
553               count="19">
554         <leaf name="INDEX_IN_BAG"
555               type="I9" />
556         <!-- same as hand -->
557       </branch>
558     </branch>
559     <branch name="HOTBAR">
560       <branch name=""
561               count="5">
562         <leaf name="INDEX_IN_BAG"
563               type="I9" />
564         <!-- same as hand -->
565       </branch>
566     </branch>
567     <branch name="TEMP">
568       <!-- used for harvest loot and bag full -->
569       <leaf name="TYPE"
570             type="I8" />
571       <!-- Type of temp inv see temp_inventory_mode in game_share -->
572       <branch name=""
573               count="16">
574         <!-- client/inventory_manager.h MAX_TEMPINV_ENTRIES and egs/player_inv_temp.h TempInvSize -->
575         <!-- Common Item Data -->
576         <leaf name="SHEET"
577               type="I32"
578               cppType="NLMISC::CSheetId" />
579         <leaf name="QUALITY"
580               type="I12" />
581         <!-- for forage progress, max QL409 x10 -->
582         <leaf name="QUANTITY"
583               type="I12" />
584         <leaf name="CREATE_TIME"
585               type="I32" />
586         <leaf name="SERIAL"
587               type="I32" />
588         <!-- for forage progress, max x409 x10 -->
589         <leaf name="USER_COLOR"
590               type="I3" />
591         <!-- No LOCKED state -->
592         <leaf name="WEIGHT"
593               type="I16" />
594         <!-- weight. see DB_WEIGHT_SCALE-->
595         <leaf name="NAMEID"
596               type="I32" />
597         <!-- 0 or special name of item -->
598         <leaf name="INFO_VERSION"
599               type="I8" />
600         <leaf name="ENCHANT"
601               type="I10" />
602         <leaf name="RM_CLASS_TYPE"
603               type="I3" />
604         <leaf name="RM_FABER_STAT_TYPE"
605               type="I6" />
606         <leaf name="PREREQUISIT_VALID"
607               type="I1" />
608       </branch>
609       <leaf name="ENABLE_TAKE"
610             type="I1" />
611       <!-- Used only in forage -->
612     </branch>
613     <!-- used to share items between team members (up to 8 players)
614                         DO NOT FORGET if you modify this to do the the same modification in local database file -->
615     <branch name="SHARE">
616       <leaf name="SESSION"
617             type="I8" />
618       <!-- session id -->
619       <branch name=""
620               count="16">
621         <!-- Common Item Data -->
622         <leaf name="SHEET"
623               type="I32"
624               cppType="NLMISC::CSheetId" />
625         <leaf name="QUALITY"
626               type="I10" />
627         <leaf name="QUANTITY"
628               type="I10" />
629         <leaf name="CREATE_TIME"
630               type="I32" />
631         <leaf name="SERIAL"
632               type="I32" />
633         <leaf name="USER_COLOR"
634               type="I3" />
635         <leaf name="WEIGHT"
636               type="I16" />
637         <!-- weight. see DB_WEIGHT_SCALE-->
638         <leaf name="NAMEID"
639               type="I32" />
640         <!-- 0 or special name of item -->
641         <leaf name="INFO_VERSION"
642               type="I8" />
643         <leaf name="ENCHANT"
644               type="I10" />
645         <leaf name="RM_CLASS_TYPE"
646               type="I3" />
647         <leaf name="RM_FABER_STAT_TYPE"
648               type="I6" />
649         <leaf name="PREREQUISIT_VALID"
650               type="I1" />
651         <!-- Additionnal info -->
652         <leaf name="NB_MEMBER"
653               type="I4" />
654         <!-- Number of team member who wants this item or phrase -->
655         <leaf name="WANTED"
656               type="I1" />
657         <!-- Does the player wants this item or phrase ? -->
658         <leaf name="CHANCE"
659               type="I7" />
660         <!-- Chance in percentage the player has to obtain this item -->
661       </branch>
662       <branch name="TM_"
663               count="8">
664         <!-- all the team members -->
665         <leaf name="NAME"
666               type="TEXT" />
667         <leaf name="VALID"
668               type="I1" />
669         <!-- is the team member has validated its own selection ? -->
670       </branch>
671     </branch>
672     <branch name="ROOM">
673       <leaf name="SESSION"
674             type="I16" />
675       <leaf name="BULK_MAX"
676             type="I32" />
677       <leaf name="MONEY"
678             type="I64" />
679       <branch name=""
680               count="1000"
681               clientonly="1">
682         <!-- Common Item Data -->
683         <leaf name="SHEET"
684               type="I32"
685               cppType="NLMISC::CSheetId" />
686         <leaf name="QUALITY"
687               type="I10" />
688         <leaf name="QUANTITY"
689               type="I10" />
690         <leaf name="CREATE_TIME"
691               type="I32" />
692         <leaf name="SERIAL"
693               type="I32" />
694         <leaf name="USER_COLOR"
695               type="I3" />
696         <leaf name="LOCKED"
697               type="I10" />
698         <leaf name="WEIGHT"
699               type="I16" />
700         <!-- weight. see DB_WEIGHT_SCALE-->
701         <leaf name="NAMEID"
702               type="I32" />
703         <!-- 0 or special name of item -->
704         <leaf name="INFO_VERSION"
705               type="I8" />
706         <leaf name="ENCHANT"
707               type="I10" />
708         <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
709         <leaf name="RM_CLASS_TYPE"
710               type="I3" />
711         <leaf name="RM_FABER_STAT_TYPE"
712               type="I6" />
713         <leaf name="PREREQUISIT_VALID"
714               type="I1" />
715         <leaf name="RESALE_FLAG"
716               type="I2" />
717       </branch>
718     </branch>
719     <leaf name="MONEY"
720           type="I64" />
721     <!-- Synchronisation COUNTER. Should be at END of an atomic branch!!! but still works fine without atomic -->
722     <leaf name="COUNTER"
723           type="I4" />
724   </branch>
725   <branch name="MODIFIERS"
726           bank="PLR">
727     <leaf name="TOTAL_MALUS_EQUIP"
728           type="I8" />
729     <!-- This is the malus ratio*50 (ie percentage/2) -->
730     <branch name="BONUS">
731       <branch name=""
732               count="12">
733         <leaf name="SHEET"
734               type="I32"
735               cppType="NLMISC::CSheetId" />
736         <leaf name="DISABLED"
737               type="I1" />
738         <leaf name="DISABLED_TIME"
739               type="I32" />
740       </branch>
741     </branch>
742     <branch name="MALUS">
743       <branch name=""
744               count="12">
745         <leaf name="SHEET"
746               type="I32"
747               cppType="NLMISC::CSheetId" />
748         <leaf name="DISABLED"
749               type="I1" />
750         <leaf name="DISABLED_TIME"
751               type="I32" />
752       </branch>
753     </branch>
754   </branch>
755   <branch name="DISABLE_CONSUMABLE"
756           bank="PLR">
757     <branch name=""
758             count="12">
759       <leaf name="FAMILY"
760             type="I16" />
761       <!-- Disable consumablel family -->
762       <leaf name="DISABLE_TIME"
763             type="I32" />
764       <!-- End date of diable time in tick -->
765     </branch>
766   </branch>
767   <!-- botchat texts -->
768   <branch name="BOTCHAT"
769           bank="PLR">
770     <!-- intro for player gift -->
771     <leaf name="PLAYER_GIFT"
772           type="I32" />
773     <!-- intro for guild creation -->
774     <leaf name="CREATE_GUILD"
775           type="I32" />
776     <!-- intro for trade window (pacts, action, item, or skills ..)-->
777     <leaf name="TRADE"
778           type="I32" />
779     <!-- intro for choose mission -->
780     <leaf name="CHOOSE_MISSION"
781           type="I32" />
782     <!-- intro before the reward of the mission -->
783     <!-- <leaf name="MISSION_END_REWARD" type="I32"/> -->
784     <!-- text of the mission end -->
785     <!-- <leaf name="MISSION_END" type="I32"/> -->
786     <!-- news for current bot -->
787     <!-- <leaf name="NEWS" type="I32"/> -->
788     <!-- choice dynamic missions -->
789     <branch name="DM_CHOICE"
790             count="3">
791       <leaf name="TITLE"
792             type="I32" />
793       <branch name=""
794               count="8">
795         <leaf name="TEXT"
796               type="I32" />
797       </branch>
798     </branch>
799     <!-- title of dynamic mission -->
800     <leaf name="DM_TITLE"
801           type="I32" />
802     <!-- description of dynamic mission -->
803     <leaf name="DM_DESCRIPTION"
804           type="I32" />
805     <!-- the rolemaster type on 2 bits -->
806     <leaf name="ROLEMASTER_TYPE"
807           type="I2" />
808   </branch>
809   <!-- Temporary structure to fill the huge list of guild to choose from in an ascensor -->
810   <branch name="ASCENSOR"
811           bank="PLR"
812           atom="1">
813     <leaf name="SESSION"
814           type="I16" />
815     <leaf name="PAGE_ID"
816           type="I6" />
817     <!-- current page ID -->
818     <leaf name="HAS_NEXT"
819           type="I1" />
820     <!-- are there pages left ? -->
821     <branch name=""
822             count="8">
823       <!--
824                         if high order bit == 0 : guild icon : 58 low order bits - back:3 bits, symbol:6 bits, Invert:1 bit, color1&2:24 bits each
825                         if high order bit == 1 : low order bits = entry in the LIFT_ICONS::TLiftIcon enum
826                         -->
827       <leaf name="ICON"
828             type="I64" />
829       <leaf name="NAME"
830             type="I32" />
831     </branch>
832   </branch>
833   <branch name="CHOOSE_MISSIONS"
834           bank="PLR"
835           atom="1">
836     <leaf name="SESSION"
837           type="I16" />
838     <leaf name="PAGE_ID"
839           type="I6" />
840     <!-- current page ID -->
841     <leaf name="HAS_NEXT"
842           type="I1" />
843     <!-- are there pages left ? -->
844     <branch name=""
845             count="8">
846       <leaf name="ICON"
847             type="I32"
848             cppType="NLMISC::CSheetId" />
849       <!-- sheet id of a .mission_icon sheet -->
850       <leaf name="TEXT"
851             type="I32" />
852       <leaf name="DETAIL_TEXT"
853             type="I32" />
854       <leaf name="PREREQ_STATE"
855             type="I8" />
856       <!-- game_share/mission_desc.h/TPreReqState -->
857     </branch>
858   </branch>
859   <branch name="TRADING"
860           bank="PLR"
861           atom="1">
862     <leaf name="SESSION"
863           type="I16" />
864     <!-- current botchat session ID -->
865     <leaf name="PAGE_ID"
866           type="I7" />
867     <!-- current page ID -->
868     <leaf name="HAS_NEXT"
869           type="I1" />
870     <!-- are there pages left ? -->
871     <leaf name="ROLEMASTER_FLAGS"
872           type="I6" />
873     <!-- flags used to determine actions 'offered' by the rolemaster -->
874     <leaf name="ROLEMASTER_RACE"
875           type="I2" />
876     <!-- civ of actions offered by the rolemaster (0..3) -->
877     <leaf name="BUILDING_LOSS_WARNING"
878           type="I1" />
879     <!-- set if a warning saying "you're going to lose your old building" must be displayed -->
880     <leaf name="RAW_MATERIAL_SELLER"
881           type="I1" />
882     <!-- flag set to 1 for raw materials seller for setting appropriate filters -->
883     <leaf name="ITEM_TYPE_SELLER_BITFILED_0_63"
884           type="I64" />
885     <!-- bitfield define item type sell by bot, first 64 bits, cf TItemType -->
886     <leaf name="ITEM_TYPE_SELLER_BITFILED_64_127"
887           type="I64" />
888     <!-- bitfield define item type sell by bot, next 64 bits, cf TItemType -->
889     <leaf name="FAME_PRICE_FACTOR"
890           type="I16" />
891     <!-- 10000*factor to apply on item price, so if this value = 10000, factor is 1.0 -->
892     <branch name=""
893             count="8">
894       <!-- Common Item Data -->
895       <leaf name="SHEET"
896             type="I32"
897             cppType="NLMISC::CSheetId" />
898       <leaf name="QUALITY"
899             type="I10" />
900       <leaf name="QUANTITY"
901             type="I10" />
902       <!-- No LOCKED state -->
903       <leaf name="CREATE_TIME"
904               type="I32" />
905       <leaf name="SERIAL"
906               type="I32" />
907       <leaf name="USER_COLOR"
908             type="I3" />
909       <leaf name="WEIGHT"
910             type="I16" />
911       <!-- weight. see DB_WEIGHT_SCALE-->
912       <leaf name="NAMEID"
913             type="I32" />
914       <!-- 0 or special name of item -->
915       <leaf name="INFO_VERSION"
916             type="I8" />
917       <leaf name="ENCHANT"
918             type="I10" />
919       <leaf name="RM_CLASS_TYPE"
920             type="I3" />
921       <leaf name="RM_FABER_STAT_TYPE"
922             type="I6" />
923       <leaf name="PREREQUISIT_VALID"
924             type="I1" />
925       <!-- Muti currency info -->
926       <leaf name="CURRENCY"
927             type="I4" />
928       <!-- The currency type RYMSG::TTradeCurrency -->
929       <leaf name="RRP_LEVEL"
930             type="I4" />
931       <!-- For rrp curency, specify the rrp level -->
932       <leaf name="MONEY_SHEET"
933             type="I32"
934             cppType="NLMISC::CSheetId" />
935       <!-- For item curency, specify the item sheet -->
936       <leaf name="BASE_SKILL"
937             type="I4" />
938       <!-- For skill curency, specify the base skill as in EGSPD::CSPType::TSPType -->
939       <leaf name="FACTION_TYPE"
940             type="I4" />
941       <!-- For price in faction point, as in game_share/pvp_clan.h -->
942       <leaf name="PRICE"
943             type="I32" />
944       <!-- The amount of the selected currency (dappers, number of item...) -->
945       <!-- Special Trade -->
946       <leaf name="PRICE_RETIRE"
947             type="I32" />
948       <leaf name="RESALE_TIME_LEFT"
949             type="I16" />
950       <leaf name="VENDOR_NAMEID"
951             type="TEXT" />
952       <!-- name id of player vendor -->
953       <leaf name="FACTION_POINT_PRICE"
954             type="I32" />
955       <!-- 0 for standard behaviour -->
956       <!-- 1 if the sheet id is the one of an item, and if we got a plan for that item in the slot -->
957       <!-- 2 if the slot is for a skill. In this case the sheet ID must be interpreted as an enum for that skill -->
958       <!-- These values are defined as an enum in game_share/trade_slot_type.h -->
959       <leaf name="SLOT_TYPE"
960             type="I2" />
961       <!-- see TBotChatSellerType -->
962       <leaf name="SELLER_TYPE"
963             type="I3" />
964     </branch>
965   </branch>
966   <branch name="BRICK_FAMILY"
967           bank="PLR">
968     <branch name=""
969             count="1024">
970       <leaf name="BRICKS"
971             type="I64" />
972     </branch>
973   </branch>
974   <branch name="FABER_PLANS"
975           bank="PLR">
976     <branch name=""
977             count="64">
978       <leaf name="KNOWN"
979             type="I64" />
980     </branch>
981   </branch>
982   <branch name="MISSIONS"
983           bank="PLR">
984     <branch name=""
985             count="15">
986       <!-- see game_share/mission_desc.h TMissionType -->
987       <leaf name="TYPE"
988             type="I2" />
989       <leaf name="ICON"
990             type="I32"
991             cppType="NLMISC::CSheetId" />
992       <!-- sheet id of a .mission_icon sheet -->
993       <leaf name="TITLE"
994             type="I32" />
995       <leaf name="DETAIL_TEXT"
996             type="I32" />
997       <!-- begin date in tick -->
998       <leaf name="BEGIN_DATE"
999             type="I32" />
1000       <!-- end date in tick -->
1001       <leaf name="END_DATE"
1002             type="I32" />
1003       <!-- true if the step are "OR" -->
1004       <leaf name="OR_STEPS"
1005             type="I1" />
1006       <branch name="GOALS">
1007         <branch name=""
1008                 count="20">
1009           <leaf name="TEXT"
1010                 type="I32" />
1011           <leaf name="NPC_ALIAS"
1012                 type="I32" />
1013         </branch>
1014       </branch>
1015       <!-- Targets -->
1016       <branch name="TARGET"
1017               count="8"
1018               atom="1">
1019         <leaf name="TITLE"
1020               type="I32" />
1021         <leaf name="X"
1022               type="I32" />
1023         <leaf name="Y"
1024               type="I32" />
1025       </branch>
1026       <!-- Indicate if the mission is finished (0-not 1-success 2-failed) -->
1027       <leaf name="FINISHED"
1028             type="I2" />
1029       <!-- Indicate if the mission is abandonnable -->
1030       <leaf name="ABANDONNABLE"
1031             type="I1" />
1032       <!-- Indicate if the mission is paused (player set as 'sleeping' in a queue) -->
1033       <leaf name="SLEEP"
1034             type="I1" />
1035       <!-- Historic -->
1036       <branch name="HISTO">
1037         <branch name=""
1038                 count="30">
1039           <leaf name="TEXT"
1040                 type="I32" />
1041         </branch>
1042       </branch>
1043     </branch>
1044   </branch>
1045   <branch name="EXECUTE_PHRASE"
1046           bank="PLR"
1047           atom="1">
1048     <!-- The index of the phrase in the spell book that is being executed right now -->
1049     <leaf name="PHRASE"
1050           type="I16" />
1051     <!-- If not a phrase in the speel book, give the associated brick sheet id -->
1052     <leaf name="SHEET"
1053           type="I32"
1054           cppType="NLMISC::CSheetId" />
1055     <!-- When the NEXT_COUNTER reach the one on client, reset -->
1056     <leaf name="NEXT_COUNTER"
1057           type="I8" />
1058     <!-- When the CYCLE_COUNTER reach the one on client, reset -->
1059     <leaf name="CYCLE_COUNTER"
1060           type="I8" />
1061     <!-- LINKS -->
1062     <branch name="LINK">
1063       <branch name=""
1064               count="10"
1065               atom="1">
1066         <!-- The Phrase Id -->
1067         <leaf name="PHRASE"
1068               type="I16" />
1069         <leaf name="COUNTER"
1070               type="I4" />
1071         <!-- The cost each second -->
1072         <leaf name="HP_COST"
1073               type="I16" />
1074         <leaf name="SAP_COST"
1075               type="I16" />
1076         <leaf name="STA_COST"
1077               type="I16" />
1078         <!-- Entity name -->
1079         <leaf name="TARGET_NAME"
1080               type="TEXT" />
1081         <!-- Entity State -->
1082         <leaf name="TARGET_HP"
1083               type="I7" />
1084         <leaf name="TARGET_SAP"
1085               type="I7" />
1086         <leaf name="TARGET_STA"
1087               type="I7" />
1088       </branch>
1089     </branch>
1090   </branch>
1091   <branch name="GUILD"
1092           bank="GUILD">
1093     <leaf name="COUNTER"
1094           type="I8" />
1095     <leaf name="PROXY"
1096           type="I1" />
1097     <!-- Flat to indicate that the guild is 'proxified' from another EGS -->
1098     <leaf name="NAME"
1099           type="TEXT" />
1100     <!-- Name of the guild the local player belongs to -->
1101     <leaf name="DESCRIPTION"
1102           type="TEXT" />
1103     <!-- Description of the guild -->
1104     <leaf name="ICON"
1105           type="I64" />
1106     <!-- Icon of the guild (look at guild_manager) -->
1107     <leaf name="XP"
1108           type="I32" />
1109     <!-- Experience of the guild -->
1110     <leaf name="CHARGE_POINTS"
1111           type="I32" />
1112     <!-- charge points of the guild -->
1113     <leaf name="VILLAGE"
1114           type="TEXT" />
1115     <!-- village text id -->
1116     <leaf name="PEOPLE"
1117           type="I8" />
1118     <!-- people affiliated with the guild-->
1119     <leaf name="CREATION_DATE"
1120           type="I32" />
1121     <!-- creation date of the guild in ticks -->
1122     <branch name="FAME">
1123       <leaf name="CULT_ALLEGIANCE"
1124             type="I3" />
1125       <!-- Guild cult allegiance (CF TPVPClan enum (pvp_clan.h) -->
1126       <leaf name="CIV_ALLEGIANCE"
1127             type="I3" />
1128       <!-- Guild civilization allegiance (CF TPVPClan enum (pvp_clan.h) -->
1129       <branch name=""
1130               count="7">
1131         <!-- from fame.h & cpp -->
1132         <leaf name="VALUE"
1133               type="S8" />
1134         <!-- current value -->
1135         <leaf name="THRESHOLD"
1136               type="S8" />
1137         <!-- max threshold -->
1138         <leaf name="TREND"
1139               type="I8" />
1140         <!-- Fame trend, (CF see fame_pd.h TFameTrend ) -->
1141       </branch>
1142     </branch>
1143     <branch name="MEMBERS">
1144       <!-- Guild Members -->
1145       <branch name=""
1146               count="256">
1147         <leaf name="NAME"
1148               type="TEXT" />
1149         <!-- player name -->
1150         <leaf name="GRADE"
1151               type="I3" />
1152         <!-- player grade-->
1153         <leaf name="ONLINE"
1154               type="I2"
1155               cppType="TCharConnectionState" />
1156         <!-- enum TCharConnectionState -->
1157         <leaf name="ENTER_DATE"
1158               type="I32" />
1159         <!-- tick when player entered the guild-->
1160       </branch>
1161     </branch>
1162     <branch name="INVENTORY">
1163       <leaf name="SESSION"
1164             type="I16" />
1165       <leaf name="BULK_MAX"
1166             type="I32" />
1167       <leaf name="MONEY"
1168             type="I64" />
1169       <branch name=""
1170               count="1000"
1171               clientonly="1">
1172         <!-- Common Item Data -->
1173         <leaf name="SHEET"
1174               type="I32"
1175               cppType="NLMISC::CSheetId" />
1176         <leaf name="QUALITY"
1177               type="I10" />
1178         <leaf name="QUANTITY"
1179               type="I10" />
1180         <leaf name="CREATE_TIME"
1181               type="I32" />
1182         <leaf name="SERIAL"
1183               type="I32" />
1184         <leaf name="USER_COLOR"
1185               type="I3" />
1186         <leaf name="LOCKED"
1187               type="I10" />
1188         <leaf name="WEIGHT"
1189               type="I16" />
1190         <!-- weight. see DB_WEIGHT_SCALE-->
1191         <leaf name="NAMEID"
1192               type="I32" />
1193         <!-- 0 or special name of item -->
1194         <leaf name="INFO_VERSION"
1195               type="I8" />
1196         <leaf name="ENCHANT"
1197               type="I10" />
1198         <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
1199         <leaf name="RM_CLASS_TYPE"
1200               type="I3" />
1201         <leaf name="RM_FABER_STAT_TYPE"
1202               type="I6" />
1203         <leaf name="PREREQUISIT_VALID"
1204               type="I1" />
1205         <leaf name="RESALE_FLAG"
1206               type="I2" />
1207       </branch>
1208     </branch>
1209     <branch name="OUTPOST">
1210       <!-- true if this guild can cancel an outpost -->
1211       <leaf name="CANDEL"
1212             type="I1" />
1213       <!-- outpost owned/challenged by the guild -->
1214       <branch name="O"
1215               count="16">
1216         <!-- Outpost Ownage -->
1217         <leaf name="OWNED"
1218               type="I1" />
1219         <!-- 1 if the outpost is owned by the guild, 0 if it is challenged -->
1220         <!-- Outpost Desc/State -->
1221         <leaf name="SHEET"
1222               type="I32"
1223               cppType="NLMISC::CSheetId" />
1224         <leaf name="LEVEL"
1225               type="I8" />
1226         <!-- Outpost Level: 50, 100, 150 .... -->
1227         <branch name="GUILD">
1228           <leaf name="NAME"
1229                 type="TEXT" />
1230           <!-- Name of the guild the outpost belongs to (or name of tribe) -->
1231           <leaf name="ICON"
1232                 type="I64" />
1233           <!-- Icon of the guild the outpost belongs to -->
1234           <leaf name="TRIBE"
1235                 type="I1" />
1236           <!-- True if the outpost is owned by a Tribe -->
1237           <leaf name="NAME_ATT"
1238                 type="TEXT" />
1239           <!-- Name of the guild that attacks the outpost. 0 if none -->
1240         </branch>
1241         <leaf name="STATUS"
1242               type="I4" />
1243         <!-- Outpost Status: OUTPOSTENUMS::TOutpostState -->
1244         <leaf name="STATE_END_DATE"
1245               type="I32" />
1246         <!-- Server tick of the end of state -->
1247         <leaf name="DISPLAY_CRASH"
1248               type="I1" />
1249         <!-- A crash has happened in the last war. Inform users -->
1250         <leaf name="WARCOST"
1251               type="I32" />
1252         <!-- Dappers needed to declare war to this outpost -->
1253         <!-- Round State -->
1254         <leaf name="ROUND_LVL_THRESHOLD"
1255               type="I8" />
1256         <!-- The minimal threshold attack must exceed -->
1257         <leaf name="ROUND_LVL_MAX_ATT"
1258               type="I8" />
1259         <!-- The max round level reached by attackers -->
1260         <leaf name="ROUND_LVL_MAX_DEF"
1261               type="I8" />
1262         <!-- The max round level reached by defenders -->
1263         <leaf name="ROUND_LVL_CUR"
1264               type="I8" />
1265         <!-- The current round level -->
1266         <leaf name="ROUND_ID_CUR"
1267               type="I8" />
1268         <!-- The current round number -->
1269         <leaf name="ROUND_ID_MAX"
1270               type="I8" />
1271         <!-- The max round in an attack/defense period -->
1272         <!-- Time Setup -->
1273         <leaf name="TIME_RANGE_DEF_WANTED"
1274               type="I5" />
1275         <!-- The start hour at wich the defender want to defend (0-24) -->
1276         <leaf name="TIME_RANGE_DEF"
1277               type="I32" />
1278         <!-- The start time at wich the defender WILL defend (in sec from 1970, GMT) -->
1279         <leaf name="TIME_RANGE_ATT"
1280               type="I32" />
1281         <!-- The start time at wich the attacker WILL attack (in sec from 1970, GMT) -->
1282         <leaf name="TIME_RANGE_LENGTH"
1283               type="I16" />
1284         <!-- (In minutes). the length of an attack/defend period (120 for instance) -->
1285         <!-- Squads -->
1286         <branch name="SQUAD_SPAWN_ZONE">
1287           <!-- list of zones where squads can be spawned -->
1288           <branch name=""
1289                   count="16">
1290             <leaf name="X"
1291                   type="S32" />
1292             <leaf name="Y"
1293                   type="S32" />
1294           </branch>
1295         </branch>
1296         <branch name="SQUAD_SHOP">
1297           <!-- list of squad that we can buy -->
1298           <branch name=""
1299                   count="16">
1300             <leaf name="SHEET"
1301                   type="I32"
1302                   cppType="NLMISC::CSheetId" />
1303           </branch>
1304         </branch>
1305         <branch name="SQUADS">
1306           <!-- Squad -->
1307           <!-- 24 max squads: The First 12th are the squads that spawn at start
1308                                                 The second 12th are the one that spawn after
1309                                         -->
1310           <branch name="SP"
1311                   count="24">
1312             <!-- Spawned -->
1313             <leaf name="SHEET"
1314                   type="I32"
1315                   cppType="NLMISC::CSheetId" />
1316           </branch>
1317           <branch name="T"
1318                   count="24">
1319             <!-- Training -->
1320             <leaf name="SHEET"
1321                   type="I32"
1322                   cppType="NLMISC::CSheetId" />
1323             <leaf name="SPAWN"
1324                   type="I4" />
1325             <!-- Index in SQUAD_SPAWN_ZONE list -->
1326           </branch>
1327         </branch>
1328         <leaf name="SQUAD_CAPITAL"
1329               type="I32" />
1330         <!-- Money that can be spent by the guild -->
1331         <!-- Buildings -->
1332         <branch name="BUILDINGS">
1333           <!-- list of buildings on the outpost -->
1334           <branch name=""
1335                   count="4">
1336             <leaf name="SHEET"
1337                   type="I32"
1338                   cppType="NLMISC::CSheetId" />
1339           </branch>
1340         </branch>
1341       </branch>
1342     </branch>
1343   </branch>
1344   <!-- The outpost selected by the user on a NPC -->
1345   <branch name="OUTPOST_SELECTED"
1346           bank="OUTPOST"
1347           atom="1">
1348     <!-- System: Use atom="1" to be sure data are relevant for the player (SHEET and other data are sync). -->
1349     <!-- Outpost Desc/State -->
1350     <leaf name="SHEET"
1351           type="I32"
1352           cppType="NLMISC::CSheetId" />
1353     <leaf name="LEVEL"
1354           type="I8" />
1355     <!-- Outpost Level: 50, 100, 150 .... -->
1356     <branch name="GUILD">
1357       <leaf name="NAME"
1358             type="TEXT" />
1359       <!-- Name of the guild the outpost belongs to (or name of tribe) -->
1360       <leaf name="ICON"
1361             type="I64" />
1362       <!-- Icon of the guild the outpost belongs to -->
1363       <leaf name="TRIBE"
1364             type="I1" />
1365       <!-- True if the outpost is owned by a Tribe -->
1366       <leaf name="NAME_ATT"
1367             type="TEXT" />
1368       <!-- Name of the guild that attacks the outpost. 0 if none -->
1369     </branch>
1370     <leaf name="STATUS"
1371           type="I4" />
1372     <!-- Outpost Status: OUTPOSTENUMS::TOutpostState -->
1373     <leaf name="STATE_END_DATE"
1374           type="I32" />
1375     <!-- Server tick of the end of state -->
1376     <leaf name="DISPLAY_CRASH"
1377           type="I1" />
1378     <!-- A crash has happened in the last war. Inform users -->
1379     <leaf name="WARCOST"
1380           type="I32" />
1381     <!-- Dappers needed to declare war to this outpost -->
1382     <!-- Round State -->
1383     <leaf name="ROUND_LVL_THRESHOLD"
1384           type="I8" />
1385     <!-- The minimal threshold attack must exceed -->
1386     <leaf name="ROUND_LVL_MAX_ATT"
1387           type="I8" />
1388     <!-- The max round level reached by attackers -->
1389     <leaf name="ROUND_LVL_MAX_DEF"
1390           type="I8" />
1391     <!-- The max round level reached by defenders -->
1392     <leaf name="ROUND_LVL_CUR"
1393           type="I8" />
1394     <!-- The current round level -->
1395     <leaf name="ROUND_ID_CUR"
1396           type="I8" />
1397     <!-- The current round number -->
1398     <leaf name="ROUND_ID_MAX"
1399           type="I8" />
1400     <!-- The max round in an attack/defense period -->
1401     <!-- Time Setup -->
1402     <leaf name="TIME_RANGE_DEF_WANTED"
1403           type="I5" />
1404     <!-- The start hour at wich the defender want to defend (0-24) -->
1405     <leaf name="TIME_RANGE_DEF"
1406           type="I32" />
1407     <!-- The start time at wich the defender WILL defend (in sec from 1970, GMT) -->
1408     <leaf name="TIME_RANGE_ATT"
1409           type="I32" />
1410     <!-- The start time at wich the attacker WILL attack (in sec from 1970, GMT) -->
1411     <leaf name="TIME_RANGE_LENGTH"
1412           type="I16" />
1413     <!-- (In minutes). the length of an attack/defend period (120 for instance) -->
1414   </branch>
1415   <branch name="CHARACTER_INFO"
1416           bank="PLR">
1417     <branch name="CHARACTERISTICS"
1418             count="8">
1419       <leaf name="VALUE"
1420             type="I12" />
1421     </branch>
1422     <branch name="SCORES"
1423             count="4">
1424       <leaf name="Base"
1425             type="I24" />
1426       <leaf name="Max"
1427             type="I24" />
1428       <leaf name="BaseRegen"
1429             type="I24" />
1430       <leaf name="Regen"
1431             type="I24" />
1432     </branch>
1433     <branch name="MAGIC_RESISTANCE">
1434       <leaf name="MaxResistanceBonus"
1435             type="I9" />
1436       <branch name=""
1437               count="5">
1438         <leaf name="VALUE"
1439               type="I9" />
1440       </branch>
1441     </branch>
1442     <branch name="MAGIC_PROTECTION">
1443       <leaf name="MaxProtectionClampValue"
1444             type="I9" />
1445       <leaf name="MaxAbsorptionFactor"
1446             type="I9" />
1447       <branch name=""
1448               count="7">
1449         <leaf name="VALUE"
1450               type="I9" />
1451       </branch>
1452     </branch>
1453     <branch name="DODGE">
1454       <leaf name="Base"
1455             type="I9" />
1456       <leaf name="Current"
1457             type="I9" />
1458     </branch>
1459     <branch name="PARRY">
1460       <leaf name="Base"
1461             type="I9" />
1462       <leaf name="Current"
1463             type="I9" />
1464     </branch>
1465     <branch name="SKILLS">
1466       <branch name=""
1467               count="225">
1468         <leaf name="SKILL"
1469               type="I12" />
1470         <leaf name="BaseSKILL"
1471               type="I12" />
1472         <leaf name="PROGRESS_BAR"
1473               type="I8" />
1474       </branch>
1475     </branch>
1476     <branch name="XP_CATALYSER">
1477       <leaf name="Level"
1478             type="I12" />
1479       <leaf name="Count"
1480             type="I12" />
1481     </branch>
1482     <branch name="RING_XP_CATALYSER">
1483       <leaf name="Level"
1484             type="I12" />
1485       <leaf name="Count"
1486             type="I12" />
1487     </branch>
1488     <branch name="PVP_FACTION_TAG">
1489       <leaf name="TAG_PVP"
1490             type="I1" />
1491       <leaf name="ACTIVATION_TIME"
1492             type="I32" />
1493       <leaf name="FLAG_PVP_TIME_LEFT"
1494             type="I32" />
1495       <leaf name="COUNTER"
1496             type="I8" />
1497     </branch>
1498     <branch name="PVP_OUTPOST">
1499       <leaf name="FLAG_PVP"
1500             type="I1" />
1501       <!-- 1 if the player is in a PVP outpost -->
1502       <leaf name="RIGHT_TO_BANISH"
1503             type="I1" />
1504       <!-- 1 if the player has right to banish other players -->
1505       <leaf name="ROUND_LVL_CUR"
1506             type="I32" />
1507       <!-- Current Round Level -->
1508       <leaf name="ROUND_END_DATE"
1509             type="I32" />
1510       <!-- Server tick of the end of the round. 0 if there is no active Round -->
1511       <leaf name="FLAG_PVP_TIME_END"
1512             type="I32" />
1513       <!-- Server tick of the end of the Outpost PVP activation. 0 if there is no counter (player in zone) -->
1514     </branch>
1515     <branch name="SUCCESS_MODIFIER">
1516       <leaf name="DODGE"
1517             type="S16" />
1518       <leaf name="PARRY"
1519             type="S16" />
1520       <leaf name="CRAFT"
1521             type="S16" />
1522       <leaf name="MELEE"
1523             type="S16" />
1524       <leaf name="RANGE"
1525             type="S16" />
1526       <leaf name="MAGIC"
1527             type="S16" />
1528       <branch name="ECO">
1529         <branch name=""
1530                 count="7">
1531           <leaf name="FORAGE"
1532                 type="S16" />
1533         </branch>
1534       </branch>
1535     </branch>
1536   </branch>
1537   <branch name="PACK_ANIMAL"
1538           bank="PLR">
1539     <!-- beasts -->
1540     <!-- MAX_INVENTORY_ANIMAL -->
1541     <branch name="BEAST"
1542             count="7"
1543             atomic="1">
1544       <!-- Atomic, for correct Bar Management on client -->
1545       <leaf name="UID"
1546             type="I20" />
1547       <!-- Entity Unique Identifier -->
1548       <leaf name="TYPE"
1549             type="I4" />
1550       <!-- see ANIMAL_TYPE -->
1551       <leaf name="STATUS"
1552             type="I5" />
1553       <!-- see ANIMAL_STATUS -->
1554       <leaf name="HP"
1555             type="I7" />
1556       <leaf name="BULK_MAX"
1557             type="I32" />
1558       <leaf name="POS"
1559             type="I64" />
1560       <!-- X uint32 << 32 | Y uint32 -->
1561       <leaf name="HUNGER"
1562             type="I5" />
1563       <leaf name="DESPAWN"
1564             type="I7" />
1565       <leaf name="NAME"
1566             type="I32"
1567             is_true="1" />
1568     </branch>
1569   </branch>
1570   <branch name="DEBUG_INFO"
1571           bank="PLR">
1572     <leaf name="Ping"
1573           type="I32" />
1574   </branch>
1575   <!-- MP Exotic Evaluation -->
1576   <branch name="MP_EVAL"
1577           bank="PLR">
1578     <leaf name="COST"
1579           type="I32" />
1580     <!-- Normal Success -->
1581     <branch name="RESULT">
1582       <leaf name="VALID"
1583             type="I1" />
1584       <leaf name="SMALL_SEED"
1585             type="I32" />
1586       <leaf name="MEDIUM_SEED"
1587             type="I32" />
1588       <leaf name="BIG_SEED"
1589             type="I32" />
1590       <leaf name="VERY_BIG_SEED"
1591             type="I32" />
1592       <leaf name="EXPIRY_DATE"
1593             type="I32" />
1594     </branch>
1595     <!-- Critical Success -->
1596     <branch name="RESULT_CRITICAL">
1597       <leaf name="VALID"
1598             type="I1" />
1599       <leaf name="SMALL_SEED"
1600             type="I32" />
1601       <leaf name="MEDIUM_SEED"
1602             type="I32" />
1603       <leaf name="BIG_SEED"
1604             type="I32" />
1605       <leaf name="VERY_BIG_SEED"
1606             type="I32" />
1607       <leaf name="EXPIRY_DATE"
1608             type="I32" />
1609     </branch>
1610   </branch>
1611   <!-- Compass coordinates -->
1612   <branch name="COMPASS"
1613           bank="PLR">
1614     <leaf name="HOME_POINT"
1615           type="I64" />
1616     <!-- X uint32 << 32 | Y uint32 -->
1617     <leaf name="BIND_POINT"
1618           type="I64" />
1619     <!-- X uint32 << 32 | Y uint32 -->
1620     <leaf name="TARGET"
1621           type="I64" />
1622     <!-- X uint32 << 32 | Y uint32 -->
1623   </branch>
1624   <!-- Fames values -->
1625   <branch name="FAME"
1626           bank="PLR">
1627     <leaf name="CULT_ALLEGIANCE"
1628           type="I3" />
1629     <!-- Character cult allegiance (CF TPVPClan enum (pvp_clan.h) -->
1630     <leaf name="CIV_ALLEGIANCE"
1631           type="I3" />
1632     <!-- Character civilization allegiance (CF TPVPClan enum (pvp_clan.h) -->
1633     <leaf name="THRESHOLD_TRADE"
1634           type="S8" />
1635     <!-- value where trade doesn't work anymore -->
1636     <leaf name="THRESHOLD_KOS"
1637           type="S8" />
1638     <!-- value where the guards kill you on sight -->
1639     <branch name="PLAYER"
1640             count="7">
1641       <!-- from fame.h & cpp -->
1642       <leaf name="VALUE"
1643             type="S8" />
1644       <!-- current value -->
1645       <leaf name="THRESHOLD"
1646             type="S8" />
1647       <!-- max threshold -->
1648       <leaf name="TREND"
1649             type="I8" />
1650       <!-- Fame trend, (CF see fame_pd.h TFameTrend ) -->
1651     </branch>
1652     <branch name="TRIBE"
1653             count="53">
1654       <leaf name="VALUE"
1655             type="S8" />
1656       <!-- current value -->
1657       <leaf name="THRESHOLD"
1658             type="S8" />
1659       <!-- max threshold -->
1660       <leaf name="TREND"
1661             type="I8" />
1662       <!-- Fame trend, (CF see fame_pd.h TFameTrend ) -->
1663     </branch>
1664   </branch>
1665   <!-- Static general data -->
1666   <branch name="STATIC_DATA"
1667           bank="PLR">
1668     <leaf name="BAG_BULK_MAX"
1669           type="I32" />
1670   </branch>
1671   <!-- DynChat channels -->
1672   <branch name="DYN_CHAT"
1673           bank="PLR">
1674     <branch name="CHANNEL"
1675             count="8"
1676             atom="1">
1677       <leaf name="NAME"
1678             type="I32" />
1679       <!-- channel not available if anme is 0 -->
1680       <leaf name="ID"
1681             type="I64" />
1682       <!-- unique ID of channel (eid) -->
1683       <leaf name="WRITE_RIGHT"
1684             type="I1" />
1685     </branch>
1686   </branch>
1687   <!-- PvP Effects -->
1688   <branch name="PVP_EFFECTS"
1689           bank="PLR">
1690     <!-- Faction points for PvP -->
1691     <branch name="PVP_FACTION_POINTS">
1692       <leaf name="CIV"
1693             type="I8" />
1694       <leaf name="CIV_POINTS"
1695             type="I32" />
1696       <leaf name="CULT"
1697             type="I8" />
1698       <leaf name="CULT_POINTS"
1699             type="I32" />
1700     </branch>
1701     <!-- Bonus and malus for regions -->
1702     <branch name=""
1703             count="59">
1704       <leaf name="ID"
1705             type="I32" />
1706       <leaf name="ISBONUS"
1707             type="I1" />
1708       <leaf name="PARAM"
1709             type="I32" />
1710     </branch>
1711   </branch>
1712   <!-- Weather -->
1713   <branch name="WEATHER"
1714           bank="PLR">
1715     <leaf name="VALUE"
1716           type="I16" />
1717   </branch>
1718 </database_description>