OpenKO Database Model
Table- and column-level documentation generated from the jsonSchema
Loading...
Searching...
No Matches
AIServerModel.h
1#ifndef AISERVER_MODEL_AISERVERMODEL_H
2#define AISERVER_MODEL_AISERVERMODEL_H
3
4#pragma once
5
6#include <ModelUtil/ModelUtil.h>
7#include <cstdint>
8#include <optional>
9#include <string>
10#include <unordered_set>
11#include <vector>
12
13namespace aiserver_binder
14{
15 class Monster;
16 class MonsterItem;
17 class Npc;
18 class NpcMoveItem;
19 class NpcPos;
20 class LevelUp;
21 class Magic;
22 class MagicType1;
23 class MagicType2;
24 class MagicType3;
25 class MagicType4;
26 class MagicType7;
27 class MakeDefensive;
28 class MakeItem;
30 class MakeItemGroup;
31 class MakeItemRareCode;
32 class MakeWeapon;
34 class ZoneInfo;
35}
36
37namespace aiserver_model
38{
42 class Monster
43 {
45 public:
46 using BinderType = aiserver_binder::Monster;
47
51 int16_t MonsterId = {};
52
56 std::optional<std::string> Name;
57
61 int16_t PictureId = {};
62
66 int16_t Size = {};
67
71 int32_t Weapon1 = {};
72
76 int32_t Weapon2 = {};
77
81 uint8_t Group = {};
82
86 uint8_t ActType = {};
87
92 uint8_t Type = {};
93
96 enum class EnumType
97 {
98 Monster = 0,
99 Npc = 1,
100 Event = 2,
101 Unknown3 = 3,
102 Unknown4 = 4,
103 Trap = 5,
104 RangedOrc = 6,
105 Unknown9 = 9
106 };
107
111 uint8_t Family = {};
112
116 uint8_t Rank = {};
117
121 uint8_t Title = {};
122
126 int32_t SellingGroup = {};
127
131 int16_t Level = {};
132
136 int32_t Exp = {};
137
141 int32_t Loyalty = {};
142
146 int32_t HitPoints = {};
147
151 int16_t ManaPoints = {};
152
156 int16_t Attack = {};
157
161 int16_t Armor = {};
162
166 int16_t HitRate = {};
167
171 int16_t EvadeRate = {};
172
176 int16_t Damage = {};
177
181 int16_t AttackDelay = {};
182
186 uint8_t WalkSpeed = {};
187
191 uint8_t RunSpeed = {};
192
196 int16_t StandTime = {};
197
201 int32_t Magic1 = {};
202
206 int32_t Magic2 = {};
207
211 int32_t Magic3 = {};
212
216 int16_t FireResist = {};
217
221 int16_t ColdResist = {};
222
226 int16_t LightningResist = {};
227
231 int16_t MagicResist = {};
232
236 int16_t DiseaseResist = {};
237
241 int16_t PoisonResist = {};
242
246 int16_t LightResist = {};
247
251 int16_t Bulk = {};
252
256 uint8_t AttackRange = {};
257
261 uint8_t SearchRange = {};
262
266 uint8_t TracingRange = {};
267
271 int32_t Money = {};
272
276 int16_t Item = {};
277
281 uint8_t DirectAttack = {};
282
286 uint8_t MagicAttack = {};
287
291 uint8_t MoneyType = {};
292
294 static const std::string& TableName();
295
297 static const std::unordered_set<std::string>& ColumnNames();
298
300 static const std::vector<std::string>& OrderedColumnNames();
301
303 static const std::unordered_set<std::string>& BlobColumns();
304
306 static modelUtil::DbType DbType();
307
309 static const std::vector<std::string>& PrimaryKey();
310
312 const int16_t& MapKey() const;
313
314 };
315
320 {
322 public:
323 using BinderType = aiserver_binder::MonsterItem;
324
328 int16_t MonsterId = {};
329
339 int32_t ItemId[5] = {};
340
341
351 int16_t DropChance[5] = {};
352
353
355 static const std::string& TableName();
356
358 static const std::unordered_set<std::string>& ColumnNames();
359
361 static const std::vector<std::string>& OrderedColumnNames();
362
364 static const std::unordered_set<std::string>& BlobColumns();
365
367 static modelUtil::DbType DbType();
368
370 static const std::vector<std::string>& PrimaryKey();
371
373 const int16_t& MapKey() const;
374
375 };
376
380 class Npc
381 {
383 public:
384 using BinderType = aiserver_binder::Npc;
385
389 int16_t NpcId = {};
390
394 std::optional<std::string> Name;
395
399 int16_t PictureId = {};
400
404 int16_t Size = {};
405
409 int32_t Weapon1 = {};
410
414 int32_t Weapon2 = {};
415
419 uint8_t Group = {};
420
424 uint8_t ActType = {};
425
430 uint8_t Type = {};
431
434 enum class EnumType
435 {
436 Monster = 0,
437 Npc = 1,
438 Event = 2,
439 Unknown3 = 3,
440 Unknown4 = 4,
441 Trap = 5,
442 RangedOrc = 6,
443 Unknown9 = 9
444 };
445
449 uint8_t Family = {};
450
454 uint8_t Rank = {};
455
459 uint8_t Title = {};
460
464 int32_t SellingGroup = {};
465
469 int16_t Level = {};
470
474 int32_t Exp = {};
475
479 int32_t Loyalty = {};
480
484 int32_t HitPoints = {};
485
489 int16_t ManaPoints = {};
490
494 int16_t Attack = {};
495
499 int16_t Armor = {};
500
504 int16_t HitRate = {};
505
509 int16_t EvadeRate = {};
510
514 int16_t Damage = {};
515
519 int16_t AttackDelay = {};
520
524 uint8_t WalkSpeed = {};
525
529 uint8_t RunSpeed = {};
530
534 int16_t StandTime = {};
535
539 int32_t Magic1 = {};
540
544 int32_t Magic2 = {};
545
549 int32_t Magic3 = {};
550
554 int16_t FireResist = {};
555
559 int16_t ColdResist = {};
560
564 int16_t LightningResist = {};
565
569 int16_t MagicResist = {};
570
574 int16_t DiseaseResist = {};
575
579 int16_t PoisonResist = {};
580
584 int16_t LightResist = {};
585
589 int16_t Bulk = {};
590
594 uint8_t AttackRange = {};
595
599 uint8_t SearchRange = {};
600
604 uint8_t TracingRange = {};
605
609 int32_t Money = {};
610
614 int16_t Item = {};
615
619 uint8_t DirectAttack = {};
620
624 uint8_t MagicAttack = {};
625
629 uint8_t MoneyType = {};
630
632 static const std::string& TableName();
633
635 static const std::unordered_set<std::string>& ColumnNames();
636
638 static const std::vector<std::string>& OrderedColumnNames();
639
641 static const std::unordered_set<std::string>& BlobColumns();
642
644 static modelUtil::DbType DbType();
645
647 static const std::vector<std::string>& PrimaryKey();
648
650 const int16_t& MapKey() const;
651
652 };
653
658 {
660 public:
661 using BinderType = aiserver_binder::NpcMoveItem;
662
666 int16_t CastleIndex = {};
667
671 std::optional<int32_t> ChangeItem;
672
676 std::optional<int32_t> ChangeId;
677
681 std::optional<int32_t> MoveItem;
682
686 std::optional<int16_t> MoveMinX;
687
691 std::optional<int16_t> MoveMinY;
692
696 std::optional<int16_t> MoveMaxX;
697
701 std::optional<int16_t> MoveMaxY;
702
704 static const std::string& TableName();
705
707 static const std::unordered_set<std::string>& ColumnNames();
708
710 static const std::vector<std::string>& OrderedColumnNames();
711
713 static const std::unordered_set<std::string>& BlobColumns();
714
716 static modelUtil::DbType DbType();
717
719 static const std::vector<std::string>& PrimaryKey();
720
722 const int16_t& MapKey() const;
723
724 };
725
729 class NpcPos
730 {
732 public:
733 using BinderType = aiserver_binder::NpcPos;
734
738 int16_t ZoneId = {};
739
743 int32_t NpcId = {};
744
748 uint8_t ActType = {};
749
753 uint8_t RegenType = {};
754
758 uint8_t DungeonFamily = {};
759
763 uint8_t SpecialType = {};
764
768 uint8_t TrapNumber = {};
769
773 int32_t LeftX = {};
774
778 int32_t TopZ = {};
779
783 int32_t RightX = {};
784
788 int32_t BottomZ = {};
789
793 int32_t LimitMinZ = {};
794
798 int32_t LimitMinX = {};
799
803 int32_t LimitMaxX = {};
804
808 int32_t LimitMaxZ = {};
809
813 uint8_t NumNpc = {};
814
818 int16_t RespawnTime = {};
819
823 int32_t Direction = {};
824
828 uint8_t PathPointCount = {};
829
833 std::optional<std::string> Path;
834
836 static const std::string& TableName();
837
839 static const std::unordered_set<std::string>& ColumnNames();
840
842 static const std::vector<std::string>& OrderedColumnNames();
843
845 static const std::unordered_set<std::string>& BlobColumns();
846
848 static modelUtil::DbType DbType();
849
851 static const std::vector<std::string>& PrimaryKey();
852
853 };
854
858 class LevelUp
859 {
861 public:
862 using BinderType = aiserver_binder::LevelUp;
863
867 uint8_t Level = {};
868
872 int32_t RequiredExp = {};
873
875 static const std::string& TableName();
876
878 static const std::unordered_set<std::string>& ColumnNames();
879
881 static const std::vector<std::string>& OrderedColumnNames();
882
884 static const std::unordered_set<std::string>& BlobColumns();
885
887 static modelUtil::DbType DbType();
888
890 static const std::vector<std::string>& PrimaryKey();
891
893 const uint8_t& MapKey() const;
894
895 };
896
900 class Magic
901 {
903 public:
904 using BinderType = aiserver_binder::Magic;
905
909 int32_t ID = {};
910
914 uint8_t BeforeAction = {};
915
919 uint8_t TargetAction = {};
920
924 uint8_t SelfEffect = {};
925
929 uint8_t FlyingEffect = {};
930
934 int16_t TargetEffect = {};
935
939 uint8_t Moral = {};
940
944 int16_t SkillLevel = {};
945
949 int16_t Skill = {};
950
954 int16_t ManaCost = {};
955
959 int16_t HpCost = {};
960
964 uint8_t ItemGroup = {};
965
969 int32_t UseItem = {};
970
974 uint8_t CastTime = {};
975
979 uint8_t RecastTime = {};
980
984 uint8_t SuccessRate = {};
985
989 uint8_t Type1 = {};
990
994 uint8_t Type2 = {};
995
999 int16_t Range = {};
1000
1004 uint8_t Etc = {};
1005
1009 int32_t Event = {};
1010
1012 static const std::string& TableName();
1013
1015 static const std::unordered_set<std::string>& ColumnNames();
1016
1018 static const std::vector<std::string>& OrderedColumnNames();
1019
1021 static const std::unordered_set<std::string>& BlobColumns();
1022
1024 static modelUtil::DbType DbType();
1025
1027 static const std::vector<std::string>& PrimaryKey();
1028
1030 const int32_t& MapKey() const;
1031
1032 };
1033
1038 {
1040 public:
1041 using BinderType = aiserver_binder::MagicType1;
1042
1046 int32_t ID = {};
1047
1052 uint8_t Type = {};
1053
1056 enum class EnumType
1057 {
1061 };
1062
1066 int16_t HitRateMod = {};
1067
1071 int16_t DamageMod = {};
1072
1076 int16_t AddDamage = {};
1077
1081 uint8_t Delay = {};
1082
1086 uint8_t ComboType = {};
1087
1091 uint8_t ComboCount = {};
1092
1096 int16_t ComboDamage = {};
1097
1101 int16_t Range = {};
1102
1104 static const std::string& TableName();
1105
1107 static const std::unordered_set<std::string>& ColumnNames();
1108
1110 static const std::vector<std::string>& OrderedColumnNames();
1111
1113 static const std::unordered_set<std::string>& BlobColumns();
1114
1116 static modelUtil::DbType DbType();
1117
1119 static const std::vector<std::string>& PrimaryKey();
1120
1122 const int32_t& MapKey() const;
1123
1124 };
1125
1130 {
1132 public:
1133 using BinderType = aiserver_binder::MagicType2;
1134
1138 int32_t ID = {};
1139
1144 uint8_t HitType = {};
1145
1148 enum class EnumHitType
1149 {
1152 };
1153
1157 int16_t HitRateMod = {};
1158
1162 int16_t DamageMod = {};
1163
1167 int16_t RangeMod = {};
1168
1172 uint8_t NeedArrow = {};
1173
1177 int16_t AddDamagePlus = {};
1178
1180 static const std::string& TableName();
1181
1183 static const std::unordered_set<std::string>& ColumnNames();
1184
1186 static const std::vector<std::string>& OrderedColumnNames();
1187
1189 static const std::unordered_set<std::string>& BlobColumns();
1190
1192 static modelUtil::DbType DbType();
1193
1195 static const std::vector<std::string>& PrimaryKey();
1196
1198 const int32_t& MapKey() const;
1199
1200 };
1201
1206 {
1208 public:
1209 using BinderType = aiserver_binder::MagicType3;
1210
1214 int32_t ID = {};
1215
1219 uint8_t Radius = {};
1220
1224 int16_t Angle = {};
1225
1230 uint8_t DirectType = {};
1231
1247
1251 int16_t FirstDamage = {};
1252
1256 int16_t EndDamage = {};
1257
1261 int16_t TimeDamage = {};
1262
1266 uint8_t Duration = {};
1267
1271 uint8_t Attribute = {};
1272
1274 static const std::string& TableName();
1275
1277 static const std::unordered_set<std::string>& ColumnNames();
1278
1280 static const std::vector<std::string>& OrderedColumnNames();
1281
1283 static const std::unordered_set<std::string>& BlobColumns();
1284
1286 static modelUtil::DbType DbType();
1287
1289 static const std::vector<std::string>& PrimaryKey();
1290
1292 const int32_t& MapKey() const;
1293
1294 };
1295
1300 {
1302 public:
1303 using BinderType = aiserver_binder::MagicType4;
1304
1308 int32_t ID = {};
1309
1314 uint8_t BuffType = {};
1315
1336
1340 uint8_t Radius = {};
1341
1345 int16_t Duration = {};
1346
1350 uint8_t AttackSpeed = {};
1351
1355 uint8_t Speed = {};
1356
1360 int16_t Armor = {};
1361
1365 int16_t ArmorPercent = {};
1366
1370 uint8_t AttackPower = {};
1371
1375 uint8_t MagicPower = {};
1376
1380 int16_t MaxHp = {};
1381
1385 int16_t MaxHpPercent = {};
1386
1390 int16_t MaxMp = {};
1391
1395 int16_t MaxMpPercent = {};
1396
1400 uint8_t HitRate = {};
1401
1405 int16_t AvoidRate = {};
1406
1410 int16_t Strength = {};
1411
1415 int16_t Stamina = {};
1416
1420 int16_t Dexterity = {};
1421
1425 int16_t Intelligence = {};
1426
1430 int16_t Charisma = {};
1431
1435 uint8_t FireResist = {};
1436
1440 uint8_t ColdResist = {};
1441
1445 uint8_t LightningResist = {};
1446
1450 uint8_t MagicResist = {};
1451
1455 uint8_t DiseaseResist = {};
1456
1460 uint8_t PoisonResist = {};
1461
1465 uint8_t ExpPercent = {};
1466
1468 static const std::string& TableName();
1469
1471 static const std::unordered_set<std::string>& ColumnNames();
1472
1474 static const std::vector<std::string>& OrderedColumnNames();
1475
1477 static const std::unordered_set<std::string>& BlobColumns();
1478
1480 static modelUtil::DbType DbType();
1481
1483 static const std::vector<std::string>& PrimaryKey();
1484
1486 const int32_t& MapKey() const;
1487
1488 };
1489
1494 {
1496 public:
1497 using BinderType = aiserver_binder::MagicType7;
1498
1502 int32_t ID = {};
1503
1507 uint8_t ValidGroup = {};
1508
1512 uint8_t NationChange = {};
1513
1517 int16_t MonsterNumber = {};
1518
1523 uint8_t TargetChange = {};
1524
1528 {
1531 };
1532
1536 uint8_t StateChange = {};
1537
1541 uint8_t Radius = {};
1542
1546 int16_t HitRate = {};
1547
1551 int16_t Duration = {};
1552
1556 int16_t Damage = {};
1557
1561 uint8_t Vision = {};
1562
1566 int32_t NeedItem = {};
1567
1569 static const std::string& TableName();
1570
1572 static const std::unordered_set<std::string>& ColumnNames();
1573
1575 static const std::vector<std::string>& OrderedColumnNames();
1576
1578 static const std::unordered_set<std::string>& BlobColumns();
1579
1581 static modelUtil::DbType DbType();
1582
1584 static const std::vector<std::string>& PrimaryKey();
1585
1587 const int32_t& MapKey() const;
1588
1589 };
1590
1595 {
1597 public:
1598 using BinderType = aiserver_binder::MakeDefensive;
1599
1603 uint8_t Level = {};
1604
1608 int16_t Class1 = {};
1609
1613 int16_t Class2 = {};
1614
1618 int16_t Class3 = {};
1619
1623 int16_t Class4 = {};
1624
1628 int16_t Class5 = {};
1629
1633 int16_t Class6 = {};
1634
1638 int16_t Class7 = {};
1639
1641 static const std::string& TableName();
1642
1644 static const std::unordered_set<std::string>& ColumnNames();
1645
1647 static const std::vector<std::string>& OrderedColumnNames();
1648
1650 static const std::unordered_set<std::string>& BlobColumns();
1651
1653 static modelUtil::DbType DbType();
1654
1656 static const std::vector<std::string>& PrimaryKey();
1657
1659 const uint8_t& MapKey() const;
1660
1661 };
1662
1667 {
1669 public:
1670 using BinderType = aiserver_binder::MakeItem;
1671
1675 int16_t Index = {};
1676
1680 int32_t ItemCode = {};
1681
1685 uint8_t ItemLevel = {};
1686
1688 static const std::string& TableName();
1689
1691 static const std::unordered_set<std::string>& ColumnNames();
1692
1694 static const std::vector<std::string>& OrderedColumnNames();
1695
1697 static const std::unordered_set<std::string>& BlobColumns();
1698
1700 static modelUtil::DbType DbType();
1701
1703 static const std::vector<std::string>& PrimaryKey();
1704
1706 const int16_t& MapKey() const;
1707
1708 };
1709
1714 {
1716 public:
1717 using BinderType = aiserver_binder::MakeItemGradeCode;
1718
1722 uint8_t ItemIndex = {};
1723
1737 int16_t Grade[9] = {};
1738
1739
1741 static const std::string& TableName();
1742
1744 static const std::unordered_set<std::string>& ColumnNames();
1745
1747 static const std::vector<std::string>& OrderedColumnNames();
1748
1750 static const std::unordered_set<std::string>& BlobColumns();
1751
1753 static modelUtil::DbType DbType();
1754
1756 static const std::vector<std::string>& PrimaryKey();
1757
1759 const uint8_t& MapKey() const;
1760
1761 };
1762
1767 {
1769 public:
1770 using BinderType = aiserver_binder::MakeItemGroup;
1771
1775 int32_t ItemGroupNumber = {};
1776
1811 int32_t Item[30] = {};
1812
1813
1815 static const std::string& TableName();
1816
1818 static const std::unordered_set<std::string>& ColumnNames();
1819
1821 static const std::vector<std::string>& OrderedColumnNames();
1822
1824 static const std::unordered_set<std::string>& BlobColumns();
1825
1827 static modelUtil::DbType DbType();
1828
1830 static const std::vector<std::string>& PrimaryKey();
1831
1833 const int32_t& MapKey() const;
1834
1835 };
1836
1841 {
1843 public:
1844 using BinderType = aiserver_binder::MakeItemRareCode;
1845
1849 uint8_t LevelGrade = {};
1850
1854 int16_t UpgradeItem = {};
1855
1859 int16_t RareItem = {};
1860
1864 int16_t MagicItem = {};
1865
1869 int16_t GeneralItem = {};
1870
1872 static const std::string& TableName();
1873
1875 static const std::unordered_set<std::string>& ColumnNames();
1876
1878 static const std::vector<std::string>& OrderedColumnNames();
1879
1881 static const std::unordered_set<std::string>& BlobColumns();
1882
1884 static modelUtil::DbType DbType();
1885
1887 static const std::vector<std::string>& PrimaryKey();
1888
1890 const uint8_t& MapKey() const;
1891
1892 };
1893
1898 {
1900 public:
1901 using BinderType = aiserver_binder::MakeWeapon;
1902
1906 uint8_t Level = {};
1907
1924 int16_t Class[12] = {};
1925
1926
1928 static const std::string& TableName();
1929
1931 static const std::unordered_set<std::string>& ColumnNames();
1932
1934 static const std::vector<std::string>& OrderedColumnNames();
1935
1937 static const std::unordered_set<std::string>& BlobColumns();
1938
1940 static modelUtil::DbType DbType();
1941
1943 static const std::vector<std::string>& PrimaryKey();
1944
1946 const uint8_t& MapKey() const;
1947
1948 };
1949
1954 {
1956 public:
1957 using BinderType = aiserver_binder::MonsterSummonList;
1958
1962 int16_t MonsterId = {};
1963
1967 std::string Name;
1968
1972 int16_t Level = {};
1973
1977 int16_t Probability = {};
1978
1982 uint8_t Type = {};
1983
1985 static const std::string& TableName();
1986
1988 static const std::unordered_set<std::string>& ColumnNames();
1989
1991 static const std::vector<std::string>& OrderedColumnNames();
1992
1994 static const std::unordered_set<std::string>& BlobColumns();
1995
1997 static modelUtil::DbType DbType();
1998
2000 static const std::vector<std::string>& PrimaryKey();
2001
2003 const int16_t& MapKey() const;
2004
2005 };
2006
2011 {
2013 public:
2014 using BinderType = aiserver_binder::ZoneInfo;
2015
2019 uint8_t ServerId = {};
2020
2024 int16_t ZoneId = {};
2025
2029 std::string Name;
2030
2034 int32_t InitX = {};
2035
2039 int32_t InitZ = {};
2040
2044 int32_t InitY = {};
2045
2049 uint8_t Type = {};
2050
2054 uint8_t RoomEvent = {};
2055
2057 static const std::string& TableName();
2058
2060 static const std::unordered_set<std::string>& ColumnNames();
2061
2063 static const std::vector<std::string>& OrderedColumnNames();
2064
2066 static const std::unordered_set<std::string>& BlobColumns();
2067
2069 static modelUtil::DbType DbType();
2070
2072 static const std::vector<std::string>& PrimaryKey();
2073
2075 const int16_t& MapKey() const;
2076
2077 };
2078}
2079
2080#endif // AISERVER_MODEL_AISERVERMODEL_H
generated nanodbc column binder for aiserver_model::LevelUp
Definition AIServerBinder.h:506
generated nanodbc column binder for aiserver_model::MagicType1
Definition AIServerBinder.h:603
generated nanodbc column binder for aiserver_model::MagicType2
Definition AIServerBinder.h:647
generated nanodbc column binder for aiserver_model::MagicType3
Definition AIServerBinder.h:682
generated nanodbc column binder for aiserver_model::MagicType4
Definition AIServerBinder.h:723
generated nanodbc column binder for aiserver_model::MagicType7
Definition AIServerBinder.h:821
generated nanodbc column binder for aiserver_model::Magic
Definition AIServerBinder.h:526
generated nanodbc column binder for aiserver_model::MakeDefensive
Definition AIServerBinder.h:871
generated nanodbc column binder for aiserver_model::MakeItemGradeCode
Definition AIServerBinder.h:932
generated nanodbc column binder for aiserver_model::MakeItemGroup
Definition AIServerBinder.h:976
generated nanodbc column binder for aiserver_model::MakeItemRareCode
Definition AIServerBinder.h:1083
generated nanodbc column binder for aiserver_model::MakeItem
Definition AIServerBinder.h:909
generated nanodbc column binder for aiserver_model::MakeWeapon
Definition AIServerBinder.h:1112
generated nanodbc column binder for aiserver_model::MonsterItem
Definition AIServerBinder.h:195
generated nanodbc column binder for aiserver_model::MonsterSummonList
Definition AIServerBinder.h:1165
generated nanodbc column binder for aiserver_model::Monster
Definition AIServerBinder.h:43
generated nanodbc column binder for aiserver_model::NpcMoveItem
Definition AIServerBinder.h:394
generated nanodbc column binder for aiserver_model::NpcPos
Definition AIServerBinder.h:432
generated nanodbc column binder for aiserver_model::Npc
Definition AIServerBinder.h:242
generated nanodbc column binder for aiserver_model::ZoneInfo
Definition AIServerBinder.h:1194
[LEVEL_UP] Level experience requirements
Definition AIServerModel.h:859
const uint8_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:343
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:327
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:297
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:290
int32_t RequiredExp
Column [Exp]: Experience required to advance to the next level.
Definition AIServerModel.h:872
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:307
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:317
uint8_t Level
Column [level]: Level.
Definition AIServerModel.h:867
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:333
[MAGIC_TYPE1] Supports melee abilities
Definition AIServerModel.h:1038
uint8_t Type
Column [Type]: Attack special type.
Definition AIServerModel.h:1052
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:433
int16_t ComboDamage
Column [ComboDamage]: Combo damage multiplier.
Definition AIServerModel.h:1096
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:423
const int32_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:459
uint8_t Delay
Column [Delay]: Delay TODO.
Definition AIServerModel.h:1081
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:449
int16_t HitRateMod
Column [HitRate]: Hit chance modifier - 100 is normal.
Definition AIServerModel.h:1066
uint8_t ComboCount
Column [ComboCount]: Combo count TODO.
Definition AIServerModel.h:1091
int16_t AddDamage
Column [AddDamage]: Additional flat damage caused by ability.
Definition AIServerModel.h:1076
int32_t ID
Column [iNum]: Magic identification number.
Definition AIServerModel.h:1046
EnumType
Known valid values for Type.
Definition AIServerModel.h:1057
@ Normal
Subject to all normal defence checks.
Definition AIServerModel.h:1058
@ IgnoreDefense
Ability ignores defense.
Definition AIServerModel.h:1060
@ AlwaysHit
Ability always hits.
Definition AIServerModel.h:1059
int16_t DamageMod
Column [Hit]: Hit damage modifier - 100 is normal.
Definition AIServerModel.h:1071
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:413
uint8_t ComboType
Column [ComboType]: Combo type TODO.
Definition AIServerModel.h:1086
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:443
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:406
int16_t Range
Column [Range]: Maximum distance to target.
Definition AIServerModel.h:1101
[MAGIC_TYPE2] Supports bow abilities
Definition AIServerModel.h:1130
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:491
int16_t RangeMod
Column [AddRange]: Range modifier - 100 is normal.
Definition AIServerModel.h:1167
int16_t HitRateMod
Column [HitRate]: Hit chance modifier - 100 is normal.
Definition AIServerModel.h:1157
EnumHitType
Known valid values for HitType.
Definition AIServerModel.h:1149
@ Normal
Fire and forget targeting.
Definition AIServerModel.h:1150
@ Seeking
Projectile follows target and always hits (unless blocked by collision)
Definition AIServerModel.h:1151
int16_t AddDamagePlus
Column [AddDamagePlus]: Additional flat damage caused by ability.
Definition AIServerModel.h:1177
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:471
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:507
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:501
uint8_t NeedArrow
Column [NeedArrow]: Number of arrows needed for ability.
Definition AIServerModel.h:1172
uint8_t HitType
Column [HitType]: Projectile type.
Definition AIServerModel.h:1144
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:481
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:464
int32_t ID
Column [iNum]: Magic identification number.
Definition AIServerModel.h:1138
int16_t DamageMod
Column [AddDamage]: Hit damage modifier - 100 is normal.
Definition AIServerModel.h:1162
const int32_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:517
[MAGIC_TYPE3] Supports Area of Effect and Damage over Time effects
Definition AIServerModel.h:1206
int16_t FirstDamage
Column [FirstDamage]: Damage applied on hit.
Definition AIServerModel.h:1251
int16_t EndDamage
Column [EndDamage]: Damage taken at end of effect.
Definition AIServerModel.h:1256
EnumDirectType
Known valid values for DirectType.
Definition AIServerModel.h:1235
@ FlatDurability
Flat damage applied to durability.
Definition AIServerModel.h:1239
@ Unknown11
TODO: Used by 220011.
Definition AIServerModel.h:1243
@ Unknown0
TODO: Used by some 300000+ DoT abilities.
Definition AIServerModel.h:1236
@ Unknown255
TODO: Used by 501011.
Definition AIServerModel.h:1245
@ FlatMana
Flat damage against mana.
Definition AIServerModel.h:1238
@ Unknown5
TODO: Used by some 400000+ abilities.
Definition AIServerModel.h:1240
@ PercentHp
Deals damage relative to targets current health.
Definition AIServerModel.h:1242
@ FlatHp
Flat damage against health.
Definition AIServerModel.h:1237
@ AbsorbHp
Absorbs health from target.
Definition AIServerModel.h:1241
@ Unknown12
TODO: Used by 490402.
Definition AIServerModel.h:1244
uint8_t Duration
Column [Duration]: Duration of damage over time effects.
Definition AIServerModel.h:1266
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:549
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:539
const int32_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:575
uint8_t Attribute
Column [Attribute]: Attribute TODO.
Definition AIServerModel.h:1271
uint8_t DirectType
Column [DirectType]: Damage calculation type.
Definition AIServerModel.h:1230
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:559
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:522
int32_t ID
Column [iNum]: Magic identification number.
Definition AIServerModel.h:1214
int16_t TimeDamage
Column [TimeDamage]: Total damage dealt over Duration.
Definition AIServerModel.h:1261
int16_t Angle
Column [Angle]: Angle seems unused/unimplemented TODO.
Definition AIServerModel.h:1224
uint8_t Radius
Column [Radius]: Area of effect circle radius.
Definition AIServerModel.h:1219
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:529
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:565
[MAGIC_TYPE4] Supports stat modification skills
Definition AIServerModel.h:1300
uint8_t ExpPercent
Column [ExpPct]: Experience percentage modifier.
Definition AIServerModel.h:1465
int16_t MaxHp
Column [MaxHP]: Maximum health modifier.
Definition AIServerModel.h:1380
uint8_t PoisonResist
Column [PoisonR]: Poison resistance.
Definition AIServerModel.h:1460
uint8_t BuffType
Column [BuffType]: Buff type.
Definition AIServerModel.h:1314
int16_t Dexterity
Column [Dex]: Dexterity modifier.
Definition AIServerModel.h:1420
EnumBuffType
Known valid values for BuffType.
Definition AIServerModel.h:1319
@ Experience
Experience modifier.
Definition AIServerModel.h:1331
@ Stats
Stat modifiers.
Definition AIServerModel.h:1327
@ WeaponEnchant
Weapon damage enchant effect.
Definition AIServerModel.h:1333
@ MovementSpeed
Movement speed modifiers.
Definition AIServerModel.h:1326
@ Size
Affects target size.
Definition AIServerModel.h:1323
@ Weight
Experience modifier.
Definition AIServerModel.h:1332
@ Resistance
Resistance modifiers.
Definition AIServerModel.h:1328
@ HealthMana
Maximum health/mana buffs.
Definition AIServerModel.h:1321
@ ArmorEnchant
Armor enchant effect.
Definition AIServerModel.h:1334
@ HitChance
Hit Chance modifier.
Definition AIServerModel.h:1329
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:617
int16_t Strength
Column [Str]: Strength modifier.
Definition AIServerModel.h:1410
int16_t MaxMpPercent
Column [MaxMpPct]: Maximum mana percent modifier.
Definition AIServerModel.h:1395
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:587
uint8_t AttackPower
Column [Attack]: Attack power modifier.
Definition AIServerModel.h:1370
uint8_t MagicPower
Column [MagicAttack]: Magic power modifier.
Definition AIServerModel.h:1375
uint8_t DiseaseResist
Column [DiseaseR]: Disease resistance.
Definition AIServerModel.h:1455
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:607
uint8_t HitRate
Column [HitRate]: Hit chance multiplier.
Definition AIServerModel.h:1400
uint8_t MagicResist
Column [MagicR]: Magic resistance.
Definition AIServerModel.h:1450
uint8_t FireResist
Column [FireR]: Fire resistance.
Definition AIServerModel.h:1435
int16_t MaxMp
Column [MaxMP]: Maximum mana modifier.
Definition AIServerModel.h:1390
uint8_t Speed
Column [Speed]: Movement speed modifier - 100 is normal.
Definition AIServerModel.h:1355
const int32_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:633
int32_t ID
Column [iNum]: Magic identification number.
Definition AIServerModel.h:1308
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:580
uint8_t AttackSpeed
Column [AttackSpeed]: Attack speed modifier - 100 is normal.
Definition AIServerModel.h:1350
uint8_t LightningResist
Column [LightningR]: Lightning resistance.
Definition AIServerModel.h:1445
int16_t Armor
Column [AC]: Armor modifier.
Definition AIServerModel.h:1360
int16_t Intelligence
Column [Intel]: Intelligence modifier.
Definition AIServerModel.h:1425
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:597
int16_t ArmorPercent
Column [ACPct]: Armor percent modifier.
Definition AIServerModel.h:1365
int16_t Charisma
Column [Cha]: Charisma modifier.
Definition AIServerModel.h:1430
int16_t Stamina
Column [Sta]: Stamina modifier.
Definition AIServerModel.h:1415
int16_t MaxHpPercent
Column [MaxHpPct]: Maximum health percent modifier.
Definition AIServerModel.h:1385
int16_t AvoidRate
Column [AvoidRate]: Evasion chance multiplier.
Definition AIServerModel.h:1405
int16_t Duration
Column [Duration]: Effect duration.
Definition AIServerModel.h:1345
uint8_t Radius
Column [Radius]: Area of effect circle radius.
Definition AIServerModel.h:1340
uint8_t ColdResist
Column [ColdR]: Cold resistance.
Definition AIServerModel.h:1440
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:623
[MAGIC_TYPE7] Supports targeting modifications
Definition AIServerModel.h:1494
int32_t ID
Column [nIndex]: Magic identification number.
Definition AIServerModel.h:1502
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:681
uint8_t Vision
Column [byVisoin]: Vision.
Definition AIServerModel.h:1561
const int32_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:691
int16_t Damage
Column [shDamage]: Damage.
Definition AIServerModel.h:1556
int16_t Duration
Column [shDuration]: Duration.
Definition AIServerModel.h:1551
uint8_t ValidGroup
Column [byValidGroup]: Valid group.
Definition AIServerModel.h:1507
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:675
int16_t MonsterNumber
Column [shMonsterNum]: Monster number.
Definition AIServerModel.h:1517
uint8_t TargetChange
Column [byTargetChange]: Monster target mode change.
Definition AIServerModel.h:1523
EnumTargetChange
Known valid values for byTargetChange.
Definition AIServerModel.h:1528
@ Sleep
Target gets put to sleep.
Definition AIServerModel.h:1530
@ Provoke
Target will target attacker.
Definition AIServerModel.h:1529
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:655
uint8_t NationChange
Column [byNatoinChange]: Nation change.
Definition AIServerModel.h:1512
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:665
int16_t HitRate
Column [shHitrate]: Hit rate.
Definition AIServerModel.h:1546
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:638
uint8_t Radius
Column [byRadius]: Area of effect circle radius.
Definition AIServerModel.h:1541
uint8_t StateChange
Column [byStateChange]: State change.
Definition AIServerModel.h:1536
int32_t NeedItem
Column [nNeedItem]: Needs item.
Definition AIServerModel.h:1566
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:645
[MAGIC] Contains the configuration for magic and abilities
Definition AIServerModel.h:901
uint8_t BeforeAction
Column [BeforeAction]: Before action check.
Definition AIServerModel.h:914
uint8_t Moral
Column [Moral]: Targeting constraints.
Definition AIServerModel.h:939
uint8_t TargetAction
Column [TargetAction]: Target action check.
Definition AIServerModel.h:919
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:365
int16_t TargetEffect
Column [TargetEffect]: Effect identifier to use on the target.
Definition AIServerModel.h:934
uint8_t SelfEffect
Column [SelfEffect]: Self effect TODO.
Definition AIServerModel.h:924
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:391
uint8_t ItemGroup
Column [ItemGroup]: Item group allows a skill to be constrained to having an item type equipped.
Definition AIServerModel.h:964
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:385
uint8_t Type2
Column [Type2]: Look up effect in MAGIC_TYPEX table.
Definition AIServerModel.h:994
int16_t Range
Column [Range]: Maximum range from target.
Definition AIServerModel.h:999
int16_t HpCost
Column [HP]: Health cost.
Definition AIServerModel.h:959
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:375
int32_t ID
Column [MagicNum]: Magic identification number.
Definition AIServerModel.h:909
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:348
uint8_t CastTime
Column [CastTime]: Time needed to cast the ability.
Definition AIServerModel.h:974
int16_t ManaCost
Column [Msp]: Mana cost.
Definition AIServerModel.h:954
const int32_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:401
uint8_t FlyingEffect
Column [FlyingEffect]: Does the skill fire a projectile.
Definition AIServerModel.h:929
int32_t Event
Column [Event]: Event TODO.
Definition AIServerModel.h:1009
uint8_t SuccessRate
Column [SuccessRate]: Chance the skill will hit target.
Definition AIServerModel.h:984
uint8_t Type1
Column [Type1]: Look up effect in MAGIC_TYPEX table.
Definition AIServerModel.h:989
uint8_t Etc
Column [Etc]: Etc TODO.
Definition AIServerModel.h:1004
int32_t UseItem
Column [UseItem]: Must consume this item from inventory in order to activate ability.
Definition AIServerModel.h:969
uint8_t RecastTime
Column [ReCastTime]: Cooldown.
Definition AIServerModel.h:979
int16_t Skill
Column [Skill]: Associated skill tree.
Definition AIServerModel.h:949
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:355
int16_t SkillLevel
Column [SkillLevel]: Skill points required in the tree to unlock the skill.
Definition AIServerModel.h:944
[MAKE_DEFENSIVE] Make defensive
Definition AIServerModel.h:1595
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:713
uint8_t Level
Column [byLevel]: Level.
Definition AIServerModel.h:1603
const uint8_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:749
int16_t Class1
Column [sClass_1]: Class 1.
Definition AIServerModel.h:1608
int16_t Class4
Column [sClass_4]: Class 4.
Definition AIServerModel.h:1623
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:733
int16_t Class3
Column [sClass_3]: Class 3.
Definition AIServerModel.h:1618
int16_t Class2
Column [sClass_2]: Class 2.
Definition AIServerModel.h:1613
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:703
int16_t Class5
Column [sClass_5]: Class 5.
Definition AIServerModel.h:1628
int16_t Class7
Column [sClass_7]: Class 7.
Definition AIServerModel.h:1638
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:696
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:739
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:723
int16_t Class6
Column [sClass_6]: Class 6.
Definition AIServerModel.h:1633
[MAKE_ITEM_GRADECODE] Make item grade code
Definition AIServerModel.h:1714
uint8_t ItemIndex
Column [byItemIndex]: Item index.
Definition AIServerModel.h:1722
int16_t Grade[9]
Array grouping for columns [byGrade_1] to [byGrade_9].
Definition AIServerModel.h:1737
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:855
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:829
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:812
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:839
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:819
const uint8_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:865
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:849
[MAKE_ITEM_GROUP] Make item group
Definition AIServerModel.h:1767
int32_t ItemGroupNumber
Column [iItemGroupNum]: Item group number.
Definition AIServerModel.h:1775
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:887
int32_t Item[30]
Array grouping for columns [iItem_1] to [iItem_30].
Definition AIServerModel.h:1811
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:913
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:907
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:870
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:897
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:877
const int32_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:923
[MAKE_ITEM_LARECODE] Make item rarity codes
Definition AIServerModel.h:1841
int16_t UpgradeItem
Column [sUpgradeItem]: Upgrade item.
Definition AIServerModel.h:1854
const uint8_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:981
int16_t RareItem
Column [sLareItem]: Rare item.
Definition AIServerModel.h:1859
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:928
int16_t MagicItem
Column [sMagicItem]: Magic item.
Definition AIServerModel.h:1864
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:955
uint8_t LevelGrade
Column [byLevelGrade]: Level grade.
Definition AIServerModel.h:1849
int16_t GeneralItem
Column [sGereralItem]: General item.
Definition AIServerModel.h:1869
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:965
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:945
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:935
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:971
[MAKE_ITEM] Make item
Definition AIServerModel.h:1667
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:781
int32_t ItemCode
Column [iItemCode]: Item Code.
Definition AIServerModel.h:1680
int16_t Index
Column [sIndex]: Index.
Definition AIServerModel.h:1675
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:754
uint8_t ItemLevel
Column [byItemLevel]: Item level.
Definition AIServerModel.h:1685
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:771
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:797
const int16_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:807
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:791
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:761
[MAKE_WEAPON] Make weapon
Definition AIServerModel.h:1898
int16_t Class[12]
Array grouping for columns [sClass_1] to [sClass_12].
Definition AIServerModel.h:1924
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:1013
uint8_t Level
Column [byLevel]: Level.
Definition AIServerModel.h:1906
const uint8_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:1039
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:1003
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:993
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:1023
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:1029
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:986
[K_MONSTER_ITEM] Monster loot table
Definition AIServerModel.h:320
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:107
int16_t MonsterId
Column [sIndex]: Monster identifier (K_MONSTER.sSid)
Definition AIServerModel.h:328
int32_t ItemId[5]
Array grouping for columns [iItem01] to [iItem05].
Definition AIServerModel.h:339
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:71
int16_t DropChance[5]
Array grouping for columns [sPersent01] to [sPersent05].
Definition AIServerModel.h:351
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:81
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:91
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:64
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:101
const int16_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:117
[MONSTER_SUMMON_LIST] Monster summon list
Definition AIServerModel.h:1954
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:1051
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:1087
std::string Name
Column [strName]: Name.
Definition AIServerModel.h:1967
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:1081
uint8_t Type
Column [bType]: Type.
Definition AIServerModel.h:1982
const int16_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:1097
int16_t Level
Column [sLevel]: Level.
Definition AIServerModel.h:1972
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:1061
int16_t Probability
Column [sProbability]: Probability.
Definition AIServerModel.h:1977
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:1044
int16_t MonsterId
Column [sSid]: Monster identifier (K_MONSTER.sSid)
Definition AIServerModel.h:1962
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:1071
int16_t PoisonResist
Column [sPoisonR]: Poison resistance.
Definition AIServerModel.h:241
uint8_t TracingRange
Column [byTracingRange]: Tracing range.
Definition AIServerModel.h:266
uint8_t SearchRange
Column [bySearchRange]: Search range.
Definition AIServerModel.h:261
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:13
int16_t Bulk
Column [sBulk]: Bulk.
Definition AIServerModel.h:251
int32_t Weapon2
Column [iWeapon2]: Weapon 2 ItemNum.
Definition AIServerModel.h:76
int16_t Attack
Column [sAtk]: TODO: Doc usage.
Definition AIServerModel.h:156
int16_t Size
Column [sSize]: Size multiplier.
Definition AIServerModel.h:66
std::optional< std::string > Name
Column [strName]: Name.
Definition AIServerModel.h:56
int32_t SellingGroup
Column [iSellingGroup]: Npc selling group.
Definition AIServerModel.h:126
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:49
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:43
int16_t FireResist
Column [sFireR]: Fire resistance.
Definition AIServerModel.h:216
int16_t DiseaseResist
Column [sDiseaseR]: Disease resistance.
Definition AIServerModel.h:236
int16_t StandTime
Column [sStandtime]: Delay time while in standing state.
Definition AIServerModel.h:196
int32_t Exp
Column [iExp]: Experience granted when killed.
Definition AIServerModel.h:136
int16_t HitRate
Column [sHitRate]: Attack success rate.
Definition AIServerModel.h:166
int16_t EvadeRate
Column [sEvadeRate]: Evasion Rate.
Definition AIServerModel.h:171
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:6
const int16_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:59
int32_t HitPoints
Column [iHpPoint]: Max health.
Definition AIServerModel.h:146
uint8_t WalkSpeed
Column [bySpeed1]: Walk movement speed.
Definition AIServerModel.h:186
int32_t Weapon1
Column [iWeapon1]: Weapon 1 ItemNum.
Definition AIServerModel.h:71
int16_t PictureId
Column [sPid]: Picture identifier.
Definition AIServerModel.h:61
uint8_t Rank
Column [byRank]: Rank.
Definition AIServerModel.h:116
int32_t Loyalty
Column [iLoyalty]: NP granted when killed.
Definition AIServerModel.h:141
int16_t Level
Column [sLevel]: Level.
Definition AIServerModel.h:131
uint8_t ActType
Column [byActType]: Act Type.
Definition AIServerModel.h:86
int32_t Money
Column [iMoney]: Coins dropped on death.
Definition AIServerModel.h:271
uint8_t Title
Column [byTitle]: Title.
Definition AIServerModel.h:121
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:33
int16_t AttackDelay
Column [sAttackDelay]: Time to wait between attacks.
Definition AIServerModel.h:181
uint8_t MoneyType
Column [byMoneyType]: Money type.
Definition AIServerModel.h:291
int16_t MagicResist
Column [sMagicR]: Magic resistance.
Definition AIServerModel.h:231
int16_t ManaPoints
Column [sMpPoint]: Max mana.
Definition AIServerModel.h:151
uint8_t MagicAttack
Column [byMagicAttack]: Magic attack.
Definition AIServerModel.h:286
int16_t LightResist
Column [sLightR]: Light resistance.
Definition AIServerModel.h:246
int16_t MonsterId
Column [sSid]: Monster Identifier.
Definition AIServerModel.h:51
int16_t Item
Column [sItem]: K_MONSTER_ITEM.Index drop table reference.
Definition AIServerModel.h:276
uint8_t DirectAttack
Column [byDirectAttack]: Direct attack.
Definition AIServerModel.h:281
uint8_t Group
Column [byGroup]: Group.
Definition AIServerModel.h:81
int32_t Magic1
Column [iMagic1]: Magic identifier 1.
Definition AIServerModel.h:201
int32_t Magic3
Column [iMagic3]: Magic identifier 3.
Definition AIServerModel.h:211
uint8_t Type
Column [byType]: Type.
Definition AIServerModel.h:92
uint8_t AttackRange
Column [byAttackRange]: Attack range.
Definition AIServerModel.h:256
int16_t Damage
Column [sDamage]: Raw damage dealt.
Definition AIServerModel.h:176
EnumType
Known valid values for byType.
Definition AIServerModel.h:97
int16_t Armor
Column [sAc]: Armor.
Definition AIServerModel.h:161
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:23
uint8_t RunSpeed
Column [bySpeed2]: Run movement speed.
Definition AIServerModel.h:191
int16_t LightningResist
Column [sLightningR]: Lightning resistance.
Definition AIServerModel.h:226
int32_t Magic2
Column [iMagic2]: Magic identifier 2.
Definition AIServerModel.h:206
int16_t ColdResist
Column [sColdR]: Cold resistance.
Definition AIServerModel.h:221
uint8_t Family
Column [byFamily]: Family.
Definition AIServerModel.h:111
[K_NPC_MOVE_ITEM] NPC Move Item: TODO
Definition AIServerModel.h:658
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:223
std::optional< int16_t > MoveMaxX
Column [sMoveMaxX]: Maximum x-axis movement.
Definition AIServerModel.h:696
std::optional< int32_t > ChangeId
Column [sChangeSid]: Change identifier TODO.
Definition AIServerModel.h:676
std::optional< int16_t > MoveMinY
Column [sMoveMinY]: Minimum y-axis movement.
Definition AIServerModel.h:691
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:197
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:217
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:187
std::optional< int32_t > MoveItem
Column [byMoveItem]: Move item to do.
Definition AIServerModel.h:681
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:207
std::optional< int16_t > MoveMaxY
Column [sMoveMaxY]: Maximum y-axis movement.
Definition AIServerModel.h:701
std::optional< int32_t > ChangeItem
Column [byChangeItem]: Change Item TODO.
Definition AIServerModel.h:671
std::optional< int16_t > MoveMinX
Column [sMoveMinX]: Minimum x-axis movement.
Definition AIServerModel.h:686
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:180
const int16_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:233
int16_t CastleIndex
Column [sCastleIndex]: Castle identifier TODO mostly lines up with k_npc.ssid.
Definition AIServerModel.h:666
[K_NPCPOS] NPC Spawn Positions
Definition AIServerModel.h:730
int32_t LimitMaxX
Column [LimitMaxX]: Maximum x-coordinate value for valid roaming.
Definition AIServerModel.h:803
int16_t ZoneId
Column [ZoneID]: Zone Identifier.
Definition AIServerModel.h:738
std::optional< std::string > Path
Column [path]: Pathfinding data. Each point contains an x and z coordinate. Each coordinate is 4-digi...
Definition AIServerModel.h:833
int32_t LimitMinX
Column [LimitMinX]: Minimum x-coordinate value for valid roaming.
Definition AIServerModel.h:798
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:275
uint8_t PathPointCount
Column [DotCnt]: The number of points contained within Path.
Definition AIServerModel.h:828
int16_t RespawnTime
Column [RegTime]: How long it takes for a dead NPC to respawn.
Definition AIServerModel.h:818
int32_t RightX
Column [RightX]: X-coordinate representing the right side of the spawn area.
Definition AIServerModel.h:783
int32_t LeftX
Column [LeftX]: X-coordinate representing the left side of the spawn area.
Definition AIServerModel.h:773
uint8_t TrapNumber
Column [TrapNumber]: Trap number.
Definition AIServerModel.h:768
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:265
uint8_t SpecialType
Column [SpecialType]: Special type TODO.
Definition AIServerModel.h:763
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:255
int32_t TopZ
Column [TopZ]: Z-coordinate representing the top side of the spawn area.
Definition AIServerModel.h:778
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:238
uint8_t RegenType
Column [RegenType]: Regen type TODO.
Definition AIServerModel.h:753
int32_t LimitMaxZ
Column [LimitMaxZ]: Maximum z-coordinate value for valid roaming.
Definition AIServerModel.h:808
uint8_t DungeonFamily
Column [DungeonFamily]: Dungeon family TODO.
Definition AIServerModel.h:758
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:281
uint8_t ActType
Column [ActType]: Act type TODO.
Definition AIServerModel.h:748
int32_t NpcId
Column [NpcID]: NPC Identifier (K_NPC.sSid)
Definition AIServerModel.h:743
uint8_t NumNpc
Column [NumNPC]: Target number of NPCs for the spawn area.
Definition AIServerModel.h:813
int32_t BottomZ
Column [BottomZ]: Z-coordinate representing the bottom side of the spawn area.
Definition AIServerModel.h:788
int32_t Direction
Column [byDirection]: Direction TODO.
Definition AIServerModel.h:823
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:245
int32_t LimitMinZ
Column [LimitMinZ]: Minimum z-coordinate value for valid roaming.
Definition AIServerModel.h:793
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:139
int16_t DiseaseResist
Column [sDiseaseR]: Disease resistance.
Definition AIServerModel.h:574
int16_t EvadeRate
Column [sEvadeRate]: Evasion Rate.
Definition AIServerModel.h:509
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:149
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:165
const int16_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:175
int16_t Attack
Column [sAtk]: TODO: Doc usage.
Definition AIServerModel.h:494
uint8_t Group
Column [byGroup]: Group.
Definition AIServerModel.h:419
int32_t Weapon2
Column [iWeapon2]: Weapon 2 ItemNum.
Definition AIServerModel.h:414
std::optional< std::string > Name
Column [strName]: Name.
Definition AIServerModel.h:394
uint8_t Type
Column [byType]: Type.
Definition AIServerModel.h:430
uint8_t WalkSpeed
Column [bySpeed1]: Walk movement speed.
Definition AIServerModel.h:524
int32_t Magic2
Column [iMagic2]: Magic identifier 2.
Definition AIServerModel.h:544
int16_t PoisonResist
Column [sPoisonR]: Poison resistance.
Definition AIServerModel.h:579
uint8_t Rank
Column [byRank]: Rank.
Definition AIServerModel.h:454
uint8_t RunSpeed
Column [bySpeed2]: Run movement speed.
Definition AIServerModel.h:529
int16_t Level
Column [sLevel]: Level.
Definition AIServerModel.h:469
uint8_t ActType
Column [byActType]: Act Type.
Definition AIServerModel.h:424
EnumType
Known valid values for byType.
Definition AIServerModel.h:435
uint8_t TracingRange
Column [byTracingRange]: Tracing range.
Definition AIServerModel.h:604
uint8_t Family
Column [byFamily]: Family.
Definition AIServerModel.h:449
int32_t Money
Column [iMoney]: Coins dropped on death.
Definition AIServerModel.h:609
int16_t PictureId
Column [sPid]: Picture identifier.
Definition AIServerModel.h:399
uint8_t Title
Column [byTitle]: Title.
Definition AIServerModel.h:459
int16_t Armor
Column [sAc]: Armor.
Definition AIServerModel.h:499
int16_t Bulk
Column [sBulk]: Bulk.
Definition AIServerModel.h:589
int32_t Magic3
Column [iMagic3]: Magic identifier 3.
Definition AIServerModel.h:549
int16_t StandTime
Column [sStandtime]: Delay time while in standing state.
Definition AIServerModel.h:534
int16_t ManaPoints
Column [sMpPoint]: Max mana.
Definition AIServerModel.h:489
int16_t LightResist
Column [sLightR]: Light resistance.
Definition AIServerModel.h:584
int16_t NpcId
Column [sSid]: NPC Identifier.
Definition AIServerModel.h:389
int32_t Loyalty
Column [iLoyalty]: NP granted when killed.
Definition AIServerModel.h:479
int32_t SellingGroup
Column [iSellingGroup]: Npc selling group.
Definition AIServerModel.h:464
uint8_t MoneyType
Column [byMoneyType]: Money type.
Definition AIServerModel.h:629
int16_t AttackDelay
Column [sAttackDelay]: Time to wait between attacks.
Definition AIServerModel.h:519
uint8_t DirectAttack
Column [byDirectAttack]: Direct attack.
Definition AIServerModel.h:619
int16_t HitRate
Column [sHitRate]: Attack success rate.
Definition AIServerModel.h:504
int16_t FireResist
Column [sFireR]: Fire resistance.
Definition AIServerModel.h:554
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:129
uint8_t AttackRange
Column [byAttackRange]: Attack range.
Definition AIServerModel.h:594
uint8_t SearchRange
Column [bySearchRange]: Search range.
Definition AIServerModel.h:599
int32_t Weapon1
Column [iWeapon1]: Weapon 1 ItemNum.
Definition AIServerModel.h:409
int16_t LightningResist
Column [sLightningR]: Lightning resistance.
Definition AIServerModel.h:564
int32_t HitPoints
Column [iHpPoint]: Max health.
Definition AIServerModel.h:484
int16_t ColdResist
Column [sColdR]: Cold resistance.
Definition AIServerModel.h:559
int32_t Magic1
Column [iMagic1]: Magic identifier 1.
Definition AIServerModel.h:539
int16_t Size
Column [sSize]: Size multiplier.
Definition AIServerModel.h:404
int16_t Item
Column [sItem]: K_MONSTER_ITEM.Index drop table reference.
Definition AIServerModel.h:614
int16_t Damage
Column [sDamage]: Raw damage dealt.
Definition AIServerModel.h:514
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:122
uint8_t MagicAttack
Column [byMagicAttack]: Magic attack.
Definition AIServerModel.h:624
int32_t Exp
Column [iExp]: Experience granted when killed.
Definition AIServerModel.h:474
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:159
int16_t MagicResist
Column [sMagicR]: Magic resistance.
Definition AIServerModel.h:569
[ZONE_INFO] Zone (map) information
Definition AIServerModel.h:2011
int32_t InitY
Column [InitY]: Y-coordinate location for a player loading into the zone.
Definition AIServerModel.h:2044
static const std::vector< std::string > & PrimaryKey()
Returns the columns associated with the table's Primary Key.
Definition AIServerModel.cpp:1145
static const std::unordered_set< std::string > & ColumnNames()
Returns a set of column names for the table.
Definition AIServerModel.cpp:1109
std::string Name
Column [strZoneName]: Zone name.
Definition AIServerModel.h:2029
static const std::vector< std::string > & OrderedColumnNames()
Returns an ordered vector of column names for the table.
Definition AIServerModel.cpp:1119
uint8_t Type
Column [Type]: Type.
Definition AIServerModel.h:2049
static const std::unordered_set< std::string > & BlobColumns()
Returns a set of blob column names for the table.
Definition AIServerModel.cpp:1129
const int16_t & MapKey() const
Returns a value for use in map keys based on the table's primary key.
Definition AIServerModel.cpp:1155
static modelUtil::DbType DbType()
Returns the associated database type for the table.
Definition AIServerModel.cpp:1139
static const std::string & TableName()
Returns the table name.
Definition AIServerModel.cpp:1102
uint8_t ServerId
Column [ServerNo]: Server identifier.
Definition AIServerModel.h:2019
int32_t InitZ
Column [InitZ]: Z-coordinate location for a player loading into the zone.
Definition AIServerModel.h:2039
int32_t InitX
Column [InitX]: X-coordinate location for a player loading into the zone.
Definition AIServerModel.h:2034
int16_t ZoneId
Column [ZoneNo]: Zone identifier.
Definition AIServerModel.h:2024
uint8_t RoomEvent
Column [RoomEvent]: Map EventId.
Definition AIServerModel.h:2054
DbType
Database type identifier.
Definition ModelUtil.h:14