@blizzhackers/d2data 3.1.91637 → 3.1.91639

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/compile.js +812 -806
  2. package/json/allstrings-eng.json +12385 -0
  3. package/json/base/.gitkeep +0 -0
  4. package/json/base/actinfo.json +116 -0
  5. package/json/base/actprofile.json +1890 -0
  6. package/json/base/armor.json +17382 -0
  7. package/json/base/armtype.json +17 -0
  8. package/json/base/atomic.json +1026 -0
  9. package/json/base/automagic.json +744 -0
  10. package/json/base/automap.json +40732 -0
  11. package/json/base/belts.json +743 -0
  12. package/json/base/bodylocs.json +52 -0
  13. package/json/base/books.json +34 -0
  14. package/json/base/charstats.json +600 -0
  15. package/json/base/coldmasterybreakpoints.json +8 -0
  16. package/json/base/colors.json +107 -0
  17. package/json/base/compcode.json +577 -0
  18. package/json/base/composit.json +82 -0
  19. package/json/base/cubemain.json +2116 -0
  20. package/json/base/cubemod.json +57 -0
  21. package/json/base/difficultylevels.json +110 -0
  22. package/json/base/elemtypes.json +62 -0
  23. package/json/base/events.json +82 -0
  24. package/json/base/experience.json +1214 -0
  25. package/json/base/gamble.json +520 -0
  26. package/json/base/gems.json +1868 -0
  27. package/json/base/hireling.json +7640 -0
  28. package/json/base/hitclass.json +67 -0
  29. package/json/base/inventory.json +2302 -0
  30. package/json/base/itemratio.json +134 -0
  31. package/json/base/items.json +55036 -0
  32. package/json/base/itemstatcost.json +5621 -0
  33. package/json/base/itemtypes.json +2766 -0
  34. package/json/base/itemuicategories.json +318 -0
  35. package/json/base/levelgroups.json +786 -0
  36. package/json/base/levels.json +15788 -0
  37. package/json/base/lowqualityitems.json +6 -0
  38. package/json/base/lvlmaze.json +910 -0
  39. package/json/base/lvlprest.json +28622 -0
  40. package/json/base/lvlsub.json +824 -0
  41. package/json/base/lvltypes.json +1377 -0
  42. package/json/base/lvlwarp.json +1515 -0
  43. package/json/base/magicprefix.json +12624 -0
  44. package/json/base/magicsuffix.json +14053 -0
  45. package/json/base/misc.json +11783 -0
  46. package/json/base/misscalc.json +237 -0
  47. package/json/base/missiles.json +24098 -0
  48. package/json/base/monai.json +1181 -0
  49. package/json/base/moncountest.json +642 -0
  50. package/json/base/monequip.json +361 -0
  51. package/json/base/monlvl.json +3665 -0
  52. package/json/base/monmode.json +98 -0
  53. package/json/base/monpet.json +28 -0
  54. package/json/base/monplace.json +39 -0
  55. package/json/base/monpopulationest.json +17551 -0
  56. package/json/base/monpreset.json +922 -0
  57. package/json/base/monprop.json +144 -0
  58. package/json/base/monseq.json +5312 -0
  59. package/json/base/monsounds.json +2707 -0
  60. package/json/base/monstats.json +67543 -0
  61. package/json/base/monstats2.json +34936 -0
  62. package/json/base/montype.json +274 -0
  63. package/json/base/monumod.json +504 -0
  64. package/json/base/npc.json +232 -0
  65. package/json/base/objects.json +87061 -0
  66. package/json/base/objgroup.json +3733 -0
  67. package/json/base/objmode.json +42 -0
  68. package/json/base/objpreset.json +2926 -0
  69. package/json/base/objtype.json +2457 -0
  70. package/json/base/overlay.json +8208 -0
  71. package/json/base/pettype.json +226 -0
  72. package/json/base/playerclass.json +45 -0
  73. package/json/base/plrmode.json +122 -0
  74. package/json/base/plrtype.json +45 -0
  75. package/json/base/properties.json +3224 -0
  76. package/json/base/propertygroups.json +307 -0
  77. package/json/base/qualityitems.json +149 -0
  78. package/json/base/rareprefix.json +296 -0
  79. package/json/base/raresuffix.json +921 -0
  80. package/json/base/runes.json +3567 -0
  81. package/json/base/runeworduicategories.json +27 -0
  82. package/json/base/setitems.json +4181 -0
  83. package/json/base/sets.json +1046 -0
  84. package/json/base/shrines.json +319 -0
  85. package/json/base/skillcalc.json +607 -0
  86. package/json/base/skilldesc.json +7591 -0
  87. package/json/base/skills.json +16959 -0
  88. package/json/base/soundenviron.json +2879 -0
  89. package/json/base/sounds.json +466498 -0
  90. package/json/base/states.json +1797 -0
  91. package/json/base/storepage.json +22 -0
  92. package/json/base/superuniques.json +1495 -0
  93. package/json/base/tcprecalc.json +35785 -0
  94. package/json/base/treasureclassex.json +19465 -0
  95. package/json/base/treasureclassgroupsex.json +1025 -0
  96. package/json/base/uniqueappellation.json +27 -0
  97. package/json/base/uniqueitems.json +14459 -0
  98. package/json/base/uniqueprefix.json +55 -0
  99. package/json/base/uniquesuffix.json +71 -0
  100. package/json/base/wanderingmon.json +3 -0
  101. package/json/base/weapons.json +25875 -0
  102. package/json/localestrings-chi.json +8305 -8305
  103. package/json/localestrings-deu.json +8306 -8306
  104. package/json/localestrings-eng.json +8311 -8311
  105. package/json/localestrings-esp.json +8305 -8305
  106. package/json/localestrings-fra.json +8306 -8306
  107. package/json/localestrings-ita.json +8306 -8306
  108. package/json/localestrings-kor.json +8305 -8305
  109. package/json/localestrings-pol.json +8305 -8305
  110. package/package.json +1 -1
  111. package/string.js +58 -11
  112. package/json/hirelingdesc.json +0 -28
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blizzhackers/d2data",
3
- "version": "3.1.91637",
3
+ "version": "3.1.91639",
4
4
  "description": "",
5
5
  "main": "compile.js",
6
6
  "scripts": {
package/string.js CHANGED
@@ -1,5 +1,9 @@
1
1
  const fs = require('fs');
2
2
 
3
+ function sortObjectKeys(obj) {
4
+ return Object.fromEntries(Object.entries(obj).sort((a, b) => a[0].localeCompare(b[0])));
5
+ }
6
+
3
7
  function discardGarbage(lines) {
4
8
  while (lines.length && ![
5
9
  'A4Q2ExpansionSuccessTyrael',
@@ -12,16 +16,7 @@ function discardGarbage(lines) {
12
16
  return lines;
13
17
  }
14
18
 
15
- [
16
- 'chi',
17
- 'deu',
18
- 'eng',
19
- 'esp',
20
- 'fra',
21
- 'ita',
22
- 'kor',
23
- 'pol',
24
- ].forEach(lang => {
19
+ function processLanguage(lang) {
25
20
  let strings = {};
26
21
 
27
22
  [
@@ -42,5 +37,57 @@ function discardGarbage(lines) {
42
37
  }
43
38
  });
44
39
 
45
- fs.writeFileSync('./json/localestrings-' + lang + '.json', JSON.stringify(strings, null, ' '));
40
+ fs.writeFileSync('./json/localestrings-' + lang + '.json', JSON.stringify(sortObjectKeys(strings), null, ' '));
41
+
42
+ return strings;
43
+ }
44
+
45
+ [
46
+ 'chi',
47
+ 'deu',
48
+ 'esp',
49
+ 'fra',
50
+ 'ita',
51
+ 'kor',
52
+ 'pol',
53
+ ].forEach(processLanguage);
54
+
55
+ let allStrings = processLanguage('eng');
56
+
57
+ [
58
+ 'tbl/bnet.json',
59
+ 'tbl/chinese-overlay.json',
60
+ 'tbl/commands.json',
61
+ 'tbl/item-gems.json',
62
+ 'tbl/item-modifiers.json',
63
+ 'tbl/item-nameaffixes.json',
64
+ 'tbl/item-names.json',
65
+ 'tbl/item-runes.json',
66
+ 'tbl/keybinds.json',
67
+ 'tbl/levels.json',
68
+ 'tbl/mercenaries.json',
69
+ 'tbl/monsters.json',
70
+ 'tbl/npcs.json',
71
+ 'tbl/objects.json',
72
+ 'tbl/presence-states.json',
73
+ 'tbl/quests.json',
74
+ 'tbl/shrines.json',
75
+ 'tbl/skills.json',
76
+ 'tbl/ui-controller.json',
77
+ 'tbl/ui.json',
78
+ 'tbl/vo.json',
79
+ ].forEach(filename => {
80
+ console.log('Reading: ', filename);
81
+ let data = JSON.parse(fs.readFileSync(filename).toString().trim());
82
+
83
+ data.forEach(entry => {
84
+ if (entry.Key && entry.enUS) {
85
+ if (entry.Key in allStrings) {
86
+ console.warn('Duplicate key: ', entry.Key);
87
+ }
88
+ allStrings[entry.Key] = entry.enUS;
89
+ }
90
+ });
46
91
  });
92
+
93
+ fs.writeFileSync('./json/allstrings-eng.json', JSON.stringify(sortObjectKeys(allStrings), null, ' '));
@@ -1,28 +0,0 @@
1
- {
2
- "act2hire": {
3
- "id": "act2hire",
4
- "*hcIdx": 338,
5
- "lineNumber": 1
6
- },
7
- "act3hire": {
8
- "id": "act3hire",
9
- "*hcIdx": 359,
10
- "lineNumber": 2
11
- },
12
- "act5hire1": {
13
- "id": "act5hire1",
14
- "*hcIdx": 560,
15
- "lineNumber": 3
16
- },
17
- "act5hire2": {
18
- "id": "act5hire2",
19
- "*hcIdx": 561,
20
- "lineNumber": 4
21
- },
22
- "roguehire": {
23
- "id": "roguehire",
24
- "*hcIdx": 271,
25
- "alternateVoice": 1,
26
- "lineNumber": 0
27
- }
28
- }