mirror of
https://github.com/Kvan7/Exiled-Exchange-2.git
synced 2025-11-14 13:36:41 +00:00
Compare commits
13 Commits
features/l
...
v0.1.1-all
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e24192e815 | ||
|
|
eae60af416 | ||
|
|
da65938d3c | ||
|
|
a9ccb01d99 | ||
|
|
252109f1bd | ||
|
|
e44953128d | ||
|
|
561d70f6e1 | ||
|
|
0b45860507 | ||
|
|
fdc7a15c57 | ||
|
|
3dee7841ef | ||
|
|
b63b353886 | ||
|
|
0e16863c7b | ||
|
|
f0d758b279 |
22
.github/ISSUE_TEMPLATE/not-recognized-modifier.md
vendored
Normal file
22
.github/ISSUE_TEMPLATE/not-recognized-modifier.md
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
---
|
||||
name: Not Recognized Modifier
|
||||
about: For "Not Recognized Modifier" errors
|
||||
title: "[Not Recognized Modifier] - PUT MODIFIER HERE"
|
||||
labels: bug, parse error
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
## Not Recognized Modifier
|
||||
***Put name of item here, and in the title***
|
||||
`Text of the modifier here`
|
||||
|
||||
### Item Text
|
||||
***Please provide the item's description***
|
||||
- Can be copied with `ctrl`+`shift`+`c`
|
||||
- Can also be copied from below the error message
|
||||
|
||||
```
|
||||
Please paste it HERE
|
||||
|
||||
```
|
||||
6
.gitignore
vendored
6
.gitignore
vendored
@@ -26,8 +26,4 @@ yarn-error.log*
|
||||
docs/.vitepress/dist
|
||||
docs/.vitepress/cache
|
||||
|
||||
|
||||
renderer/public/.DS_Store/EXPORT/tables/English/*.json
|
||||
renderer/public/.DS_Store/vendor/client/tables/*.json
|
||||
!renderer/public/.DS_Store/vendor/client/tables/ArmourTypesOverride.json
|
||||
renderer/public/.DS_Store/vendor/json-api/*.json
|
||||
*.bin
|
||||
@@ -41,6 +41,9 @@
|
||||
"pdps",
|
||||
"uniquefoil",
|
||||
"WAYSTONE"
|
||||
]
|
||||
],
|
||||
"files.associations": {
|
||||
"*.ndjson": "jsonl"
|
||||
}
|
||||
}
|
||||
}
|
||||
502
renderer/package-lock.json
generated
502
renderer/package-lock.json
generated
@@ -38,6 +38,9 @@
|
||||
"prettier": "3.4.2",
|
||||
"typescript": "5.6.x",
|
||||
"vite": "^5.0.0",
|
||||
"vite-tsconfig-paths": "^5.1.4",
|
||||
"vitest": "^2.1.8",
|
||||
"vitest-mock-extended": "^2.0.2",
|
||||
"vue-tsc": "^2.0.0"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
@@ -1402,6 +1405,149 @@
|
||||
"vue": "^3.2.25"
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/expect": {
|
||||
"version": "2.1.8",
|
||||
"resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.8.tgz",
|
||||
"integrity": "sha512-8ytZ/fFHq2g4PJVAtDX57mayemKgDR6X3Oa2Foro+EygiOJHUXhCqBAAKQYYajZpFoIfvBCF1j6R6IYRSIUFuw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@vitest/spy": "2.1.8",
|
||||
"@vitest/utils": "2.1.8",
|
||||
"chai": "^5.1.2",
|
||||
"tinyrainbow": "^1.2.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/vitest"
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/mocker": {
|
||||
"version": "2.1.8",
|
||||
"resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.8.tgz",
|
||||
"integrity": "sha512-7guJ/47I6uqfttp33mgo6ga5Gr1VnL58rcqYKyShoRK9ebu8T5Rs6HN3s1NABiBeVTdWNrwUMcHH54uXZBN4zA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@vitest/spy": "2.1.8",
|
||||
"estree-walker": "^3.0.3",
|
||||
"magic-string": "^0.30.12"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/vitest"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"msw": "^2.4.9",
|
||||
"vite": "^5.0.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"msw": {
|
||||
"optional": true
|
||||
},
|
||||
"vite": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/mocker/node_modules/estree-walker": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz",
|
||||
"integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/estree": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/mocker/node_modules/magic-string": {
|
||||
"version": "0.30.15",
|
||||
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.15.tgz",
|
||||
"integrity": "sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jridgewell/sourcemap-codec": "^1.5.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/pretty-format": {
|
||||
"version": "2.1.8",
|
||||
"resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.8.tgz",
|
||||
"integrity": "sha512-9HiSZ9zpqNLKlbIDRWOnAWqgcA7xu+8YxXSekhr0Ykab7PAYFkhkwoqVArPOtJhPmYeE2YHgKZlj3CP36z2AJQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"tinyrainbow": "^1.2.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/vitest"
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/runner": {
|
||||
"version": "2.1.8",
|
||||
"resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.8.tgz",
|
||||
"integrity": "sha512-17ub8vQstRnRlIU5k50bG+QOMLHRhYPAna5tw8tYbj+jzjcspnwnwtPtiOlkuKC4+ixDPTuLZiqiWWQ2PSXHVg==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@vitest/utils": "2.1.8",
|
||||
"pathe": "^1.1.2"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/vitest"
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/snapshot": {
|
||||
"version": "2.1.8",
|
||||
"resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.8.tgz",
|
||||
"integrity": "sha512-20T7xRFbmnkfcmgVEz+z3AU/3b0cEzZOt/zmnvZEctg64/QZbSDJEVm9fLnnlSi74KibmRsO9/Qabi+t0vCRPg==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@vitest/pretty-format": "2.1.8",
|
||||
"magic-string": "^0.30.12",
|
||||
"pathe": "^1.1.2"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/vitest"
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/snapshot/node_modules/magic-string": {
|
||||
"version": "0.30.15",
|
||||
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.15.tgz",
|
||||
"integrity": "sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jridgewell/sourcemap-codec": "^1.5.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/spy": {
|
||||
"version": "2.1.8",
|
||||
"resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.8.tgz",
|
||||
"integrity": "sha512-5swjf2q95gXeYPevtW0BLk6H8+bPlMb4Vw/9Em4hFxDcaOxS+e0LOX4yqNxoHzMR2akEB2xfpnWUzkZokmgWDg==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"tinyspy": "^3.0.2"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/vitest"
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/utils": {
|
||||
"version": "2.1.8",
|
||||
"resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.8.tgz",
|
||||
"integrity": "sha512-dwSoui6djdwbfFmIgbIjX2ZhIoG7Ex/+xpxyiEgIGzjliY8xGkcpITKTlp6B4MgtGkF2ilvm97cPM96XZaAgcA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@vitest/pretty-format": "2.1.8",
|
||||
"loupe": "^3.1.2",
|
||||
"tinyrainbow": "^1.2.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/vitest"
|
||||
}
|
||||
},
|
||||
"node_modules/@volar/language-core": {
|
||||
"version": "2.4.10",
|
||||
"resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.10.tgz",
|
||||
@@ -1990,6 +2136,16 @@
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/assertion-error": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz",
|
||||
"integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/autoprefixer": {
|
||||
"version": "10.4.20",
|
||||
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz",
|
||||
@@ -2135,6 +2291,16 @@
|
||||
"semver": "^7.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/cac": {
|
||||
"version": "6.7.14",
|
||||
"resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz",
|
||||
"integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/call-bind": {
|
||||
"version": "1.0.7",
|
||||
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz",
|
||||
@@ -2195,6 +2361,23 @@
|
||||
],
|
||||
"license": "CC-BY-4.0"
|
||||
},
|
||||
"node_modules/chai": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/chai/-/chai-5.1.2.tgz",
|
||||
"integrity": "sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"assertion-error": "^2.0.1",
|
||||
"check-error": "^2.1.1",
|
||||
"deep-eql": "^5.0.1",
|
||||
"loupe": "^3.1.0",
|
||||
"pathval": "^2.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/chalk": {
|
||||
"version": "4.1.2",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
|
||||
@@ -2212,6 +2395,16 @@
|
||||
"url": "https://github.com/chalk/chalk?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/check-error": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz",
|
||||
"integrity": "sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 16"
|
||||
}
|
||||
},
|
||||
"node_modules/chokidar": {
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
|
||||
@@ -2393,6 +2586,16 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/deep-eql": {
|
||||
"version": "5.0.2",
|
||||
"resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz",
|
||||
"integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/deep-is": {
|
||||
"version": "0.1.4",
|
||||
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
|
||||
@@ -2605,6 +2808,13 @@
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/es-module-lexer": {
|
||||
"version": "1.5.4",
|
||||
"resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz",
|
||||
"integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/es-object-atoms": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz",
|
||||
@@ -3241,6 +3451,16 @@
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/expect-type": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.1.0.tgz",
|
||||
"integrity": "sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA==",
|
||||
"dev": true,
|
||||
"license": "Apache-2.0",
|
||||
"engines": {
|
||||
"node": ">=12.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/fast-deep-equal": {
|
||||
"version": "3.1.3",
|
||||
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
|
||||
@@ -3609,6 +3829,13 @@
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/globrex": {
|
||||
"version": "0.1.2",
|
||||
"resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz",
|
||||
"integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/gopd": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
|
||||
@@ -4342,6 +4569,13 @@
|
||||
"devOptional": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/loupe": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/loupe/-/loupe-3.1.2.tgz",
|
||||
"integrity": "sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/lru-cache": {
|
||||
"version": "10.4.3",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz",
|
||||
@@ -4787,6 +5021,23 @@
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/pathe": {
|
||||
"version": "1.1.2",
|
||||
"resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz",
|
||||
"integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/pathval": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.0.tgz",
|
||||
"integrity": "sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 14.16"
|
||||
}
|
||||
},
|
||||
"node_modules/picocolors": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
|
||||
@@ -5358,6 +5609,13 @@
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/siginfo": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz",
|
||||
"integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==",
|
||||
"dev": true,
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/signal-exit": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
|
||||
@@ -5417,6 +5675,20 @@
|
||||
"deprecated": "Please use @jridgewell/sourcemap-codec instead",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/stackback": {
|
||||
"version": "0.0.2",
|
||||
"resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz",
|
||||
"integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/std-env": {
|
||||
"version": "3.8.0",
|
||||
"resolved": "https://registry.npmjs.org/std-env/-/std-env-3.8.0.tgz",
|
||||
"integrity": "sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/string-width": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
|
||||
@@ -5738,6 +6010,50 @@
|
||||
"node": ">=0.8"
|
||||
}
|
||||
},
|
||||
"node_modules/tinybench": {
|
||||
"version": "2.9.0",
|
||||
"resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz",
|
||||
"integrity": "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/tinyexec": {
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.1.tgz",
|
||||
"integrity": "sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/tinypool": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.0.2.tgz",
|
||||
"integrity": "sha512-al6n+QEANGFOMf/dmUMsuS5/r9B06uwlyNjZZql/zv8J7ybHCgoihBNORZCY2mzUuAnomQa2JdhyHKzZxPCrFA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": "^18.0.0 || >=20.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/tinyrainbow": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz",
|
||||
"integrity": "sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/tinyspy": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz",
|
||||
"integrity": "sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/tippy.js": {
|
||||
"version": "6.3.7",
|
||||
"resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-6.3.7.tgz",
|
||||
@@ -5759,12 +6075,48 @@
|
||||
"node": ">=8.0"
|
||||
}
|
||||
},
|
||||
"node_modules/ts-essentials": {
|
||||
"version": "10.0.3",
|
||||
"resolved": "https://registry.npmjs.org/ts-essentials/-/ts-essentials-10.0.3.tgz",
|
||||
"integrity": "sha512-/FrVAZ76JLTWxJOERk04fm8hYENDo0PWSP3YLQKxevLwWtxemGcl5JJEzN4iqfDlRve0ckyfFaOBu4xbNH/wZw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"peerDependencies": {
|
||||
"typescript": ">=4.5.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"typescript": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/ts-interface-checker": {
|
||||
"version": "0.1.13",
|
||||
"resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz",
|
||||
"integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==",
|
||||
"license": "Apache-2.0"
|
||||
},
|
||||
"node_modules/tsconfck": {
|
||||
"version": "3.1.4",
|
||||
"resolved": "https://registry.npmjs.org/tsconfck/-/tsconfck-3.1.4.tgz",
|
||||
"integrity": "sha512-kdqWFGVJqe+KGYvlSO9NIaWn9jT1Ny4oKVzAJsKii5eoE9snzTJzL4+MMVOMn+fikWGFmKEylcXL710V/kIPJQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"bin": {
|
||||
"tsconfck": "bin/tsconfck.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18 || >=20"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"typescript": "^5.0.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"typescript": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/tsconfig-paths": {
|
||||
"version": "3.15.0",
|
||||
"resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz",
|
||||
@@ -6048,6 +6400,139 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/vite-node": {
|
||||
"version": "2.1.8",
|
||||
"resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.8.tgz",
|
||||
"integrity": "sha512-uPAwSr57kYjAUux+8E2j0q0Fxpn8M9VoyfGiRI8Kfktz9NcYMCenwY5RnZxnF1WTu3TGiYipirIzacLL3VVGFg==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"cac": "^6.7.14",
|
||||
"debug": "^4.3.7",
|
||||
"es-module-lexer": "^1.5.4",
|
||||
"pathe": "^1.1.2",
|
||||
"vite": "^5.0.0"
|
||||
},
|
||||
"bin": {
|
||||
"vite-node": "vite-node.mjs"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.0.0 || >=20.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/vitest"
|
||||
}
|
||||
},
|
||||
"node_modules/vite-tsconfig-paths": {
|
||||
"version": "5.1.4",
|
||||
"resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.1.4.tgz",
|
||||
"integrity": "sha512-cYj0LRuLV2c2sMqhqhGpaO3LretdtMn/BVX4cPLanIZuwwrkVl+lK84E/miEXkCHWXuq65rhNN4rXsBcOB3S4w==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"debug": "^4.1.1",
|
||||
"globrex": "^0.1.2",
|
||||
"tsconfck": "^3.0.3"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"vite": "*"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"vite": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/vitest": {
|
||||
"version": "2.1.8",
|
||||
"resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.8.tgz",
|
||||
"integrity": "sha512-1vBKTZskHw/aosXqQUlVWWlGUxSJR8YtiyZDJAFeW2kPAeX6S3Sool0mjspO+kXLuxVWlEDDowBAeqeAQefqLQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@vitest/expect": "2.1.8",
|
||||
"@vitest/mocker": "2.1.8",
|
||||
"@vitest/pretty-format": "^2.1.8",
|
||||
"@vitest/runner": "2.1.8",
|
||||
"@vitest/snapshot": "2.1.8",
|
||||
"@vitest/spy": "2.1.8",
|
||||
"@vitest/utils": "2.1.8",
|
||||
"chai": "^5.1.2",
|
||||
"debug": "^4.3.7",
|
||||
"expect-type": "^1.1.0",
|
||||
"magic-string": "^0.30.12",
|
||||
"pathe": "^1.1.2",
|
||||
"std-env": "^3.8.0",
|
||||
"tinybench": "^2.9.0",
|
||||
"tinyexec": "^0.3.1",
|
||||
"tinypool": "^1.0.1",
|
||||
"tinyrainbow": "^1.2.0",
|
||||
"vite": "^5.0.0",
|
||||
"vite-node": "2.1.8",
|
||||
"why-is-node-running": "^2.3.0"
|
||||
},
|
||||
"bin": {
|
||||
"vitest": "vitest.mjs"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.0.0 || >=20.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/vitest"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@edge-runtime/vm": "*",
|
||||
"@types/node": "^18.0.0 || >=20.0.0",
|
||||
"@vitest/browser": "2.1.8",
|
||||
"@vitest/ui": "2.1.8",
|
||||
"happy-dom": "*",
|
||||
"jsdom": "*"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"@edge-runtime/vm": {
|
||||
"optional": true
|
||||
},
|
||||
"@types/node": {
|
||||
"optional": true
|
||||
},
|
||||
"@vitest/browser": {
|
||||
"optional": true
|
||||
},
|
||||
"@vitest/ui": {
|
||||
"optional": true
|
||||
},
|
||||
"happy-dom": {
|
||||
"optional": true
|
||||
},
|
||||
"jsdom": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/vitest-mock-extended": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/vitest-mock-extended/-/vitest-mock-extended-2.0.2.tgz",
|
||||
"integrity": "sha512-n3MBqVITKyclZ0n0y66hkT4UiiEYFQn9tteAnIxT0MPz1Z8nFcPUG3Cf0cZOyoPOj/cq6Ab1XFw2lM/qM5EDWQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"ts-essentials": ">=10.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"typescript": "3.x || 4.x || 5.x",
|
||||
"vitest": ">=2.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/vitest/node_modules/magic-string": {
|
||||
"version": "0.30.15",
|
||||
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.15.tgz",
|
||||
"integrity": "sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jridgewell/sourcemap-codec": "^1.5.0"
|
||||
}
|
||||
},
|
||||
"node_modules/vscode-uri": {
|
||||
"version": "3.0.8",
|
||||
"resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz",
|
||||
@@ -6278,6 +6763,23 @@
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/why-is-node-running": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz",
|
||||
"integrity": "sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"siginfo": "^2.0.0",
|
||||
"stackback": "0.0.2"
|
||||
},
|
||||
"bin": {
|
||||
"why-is-node-running": "cli.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/word-wrap": {
|
||||
"version": "1.2.5",
|
||||
"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz",
|
||||
|
||||
@@ -2,12 +2,14 @@
|
||||
"name": "exiled-exchange-2",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
"lint": "eslint --ext .ts,.vue src",
|
||||
"lint-fix": "eslint --ext .ts,.vue src --fix",
|
||||
"build": "vue-tsc --noEmit && vite build",
|
||||
"make-index-files": "node src/assets/make-index-files.mjs"
|
||||
"make-index-files": "node src/assets/make-index-files.mjs",
|
||||
"test": "vitest"
|
||||
},
|
||||
"dependencies": {
|
||||
"@fortawesome/fontawesome-free": "6.x.x",
|
||||
@@ -40,6 +42,9 @@
|
||||
"prettier": "3.4.2",
|
||||
"typescript": "5.6.x",
|
||||
"vite": "^5.0.0",
|
||||
"vite-tsconfig-paths": "^5.1.4",
|
||||
"vitest": "^2.1.8",
|
||||
"vitest-mock-extended": "^2.0.2",
|
||||
"vue-tsc": "^2.0.0"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
|
||||
37
renderer/public/.DS_Store/.gitignore
vendored
37
renderer/public/.DS_Store/.gitignore
vendored
@@ -129,6 +129,41 @@ dist
|
||||
.yarn/install-state.gz
|
||||
.pnp.*
|
||||
|
||||
__pycache__
|
||||
|
||||
vendor/json-api/*.json
|
||||
vendor/json-api/en/*.json
|
||||
vendor/json-api/ru/*.json
|
||||
vendor/json-api/ko/*.json
|
||||
vendor/json-api/cmn-Hant/*.json
|
||||
vendor/client/tables/*.json
|
||||
vendor/client/descriptions/*
|
||||
!vendor/client/descriptions/.gitkeep
|
||||
!vendor/client/descriptions/.gitkeep
|
||||
|
||||
vendor/client/tables/*
|
||||
!vendor/client/tables/index.ts
|
||||
!vendor/client/tables/ArmourTypesOverride.json
|
||||
!vendor/client/tables/en/.gitkeep
|
||||
!vendor/client/tables/ru/.gitkeep
|
||||
!vendor/client/tables/ko/.gitkeep
|
||||
!vendor/client/tables/cmn-Hant/.gitkeep
|
||||
|
||||
!vendor/client/tables/en/ArmourTypesOverride.json
|
||||
!vendor/client/tables/ru/ArmourTypesOverride.json
|
||||
!vendor/client/tables/ko/ArmourTypesOverride.json
|
||||
!vendor/client/tables/cmn-Hant/ArmourTypesOverride.json
|
||||
|
||||
|
||||
|
||||
!vendor/json-api/.gitkeep
|
||||
!vendor/json-api/en/.gitkeep
|
||||
!vendor/json-api/ru/.gitkeep
|
||||
!vendor/json-api/ko/.gitkeep
|
||||
!vendor/json-api/cmn-Hant/.gitkeep
|
||||
|
||||
|
||||
EXPORT/tables/English/*.json
|
||||
EXPORT/tables/Korean/*.json
|
||||
EXPORT/tables/Russian/*.json
|
||||
EXPORT/tables/Traditional Chinese/*.json
|
||||
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
{
|
||||
"steam": "C:\\Program Files (x86)\\Steam\\steamapps\\common\\Path of Exile 2",
|
||||
"translations": [
|
||||
"English"
|
||||
"English",
|
||||
"Russian"
|
||||
],
|
||||
"tables": [
|
||||
{
|
||||
|
||||
51752
renderer/public/.DS_Store/EXPORT/tables/Russian/BaseItemTypes.json
Normal file
51752
renderer/public/.DS_Store/EXPORT/tables/Russian/BaseItemTypes.json
Normal file
File diff suppressed because it is too large
Load Diff
758
renderer/public/.DS_Store/EXPORT/tables/Russian/ItemClasses.json
Normal file
758
renderer/public/.DS_Store/EXPORT/tables/Russian/ItemClasses.json
Normal file
@@ -0,0 +1,758 @@
|
||||
[
|
||||
{
|
||||
"_index": 0,
|
||||
"Id": "LifeFlask",
|
||||
"Name": "Флаконы жизни",
|
||||
"TradeMarketCategory": 28,
|
||||
"ItemClassCategory": 0
|
||||
},
|
||||
{
|
||||
"_index": 1,
|
||||
"Id": "ManaFlask",
|
||||
"Name": "Флаконы маны",
|
||||
"TradeMarketCategory": 29,
|
||||
"ItemClassCategory": 0
|
||||
},
|
||||
{
|
||||
"_index": 2,
|
||||
"Id": "DONOTUSE5",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 3,
|
||||
"Id": "Currency",
|
||||
"Name": "Вещи на обмен",
|
||||
"TradeMarketCategory": 39,
|
||||
"ItemClassCategory": 6
|
||||
},
|
||||
{
|
||||
"_index": 4,
|
||||
"Id": "Amulet",
|
||||
"Name": "Амулеты",
|
||||
"TradeMarketCategory": 21,
|
||||
"ItemClassCategory": 7
|
||||
},
|
||||
{
|
||||
"_index": 5,
|
||||
"Id": "Ring",
|
||||
"Name": "Кольца",
|
||||
"TradeMarketCategory": 22,
|
||||
"ItemClassCategory": 8
|
||||
},
|
||||
{
|
||||
"_index": 6,
|
||||
"Id": "Claw",
|
||||
"Name": "Когти",
|
||||
"TradeMarketCategory": 4,
|
||||
"ItemClassCategory": 9
|
||||
},
|
||||
{
|
||||
"_index": 7,
|
||||
"Id": "Dagger",
|
||||
"Name": "Кинжалы",
|
||||
"TradeMarketCategory": 5,
|
||||
"ItemClassCategory": 3
|
||||
},
|
||||
{
|
||||
"_index": 8,
|
||||
"Id": "Wand",
|
||||
"Name": "Жезлы",
|
||||
"TradeMarketCategory": 6,
|
||||
"ItemClassCategory": 10
|
||||
},
|
||||
{
|
||||
"_index": 9,
|
||||
"Id": "One Hand Sword",
|
||||
"Name": "Одноручные мечи",
|
||||
"TradeMarketCategory": 7,
|
||||
"ItemClassCategory": 2
|
||||
},
|
||||
{
|
||||
"_index": 10,
|
||||
"Id": "DONOTUSE6",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 11,
|
||||
"Id": "One Hand Axe",
|
||||
"Name": "Одноручные топоры",
|
||||
"TradeMarketCategory": 9,
|
||||
"ItemClassCategory": 11
|
||||
},
|
||||
{
|
||||
"_index": 12,
|
||||
"Id": "One Hand Mace",
|
||||
"Name": "Одноручные булавы",
|
||||
"TradeMarketCategory": 10,
|
||||
"ItemClassCategory": 1
|
||||
},
|
||||
{
|
||||
"_index": 13,
|
||||
"Id": "Bow",
|
||||
"Name": "Луки",
|
||||
"TradeMarketCategory": 13,
|
||||
"ItemClassCategory": 12
|
||||
},
|
||||
{
|
||||
"_index": 14,
|
||||
"Id": "Staff",
|
||||
"Name": "Посохи",
|
||||
"TradeMarketCategory": 14,
|
||||
"ItemClassCategory": 4
|
||||
},
|
||||
{
|
||||
"_index": 15,
|
||||
"Id": "Two Hand Sword",
|
||||
"Name": "Двуручные мечи",
|
||||
"TradeMarketCategory": 15,
|
||||
"ItemClassCategory": 13
|
||||
},
|
||||
{
|
||||
"_index": 16,
|
||||
"Id": "Two Hand Axe",
|
||||
"Name": "Двуручные топоры",
|
||||
"TradeMarketCategory": 16,
|
||||
"ItemClassCategory": 14
|
||||
},
|
||||
{
|
||||
"_index": 17,
|
||||
"Id": "Two Hand Mace",
|
||||
"Name": "Двуручные булавы",
|
||||
"TradeMarketCategory": 17,
|
||||
"ItemClassCategory": 15
|
||||
},
|
||||
{
|
||||
"_index": 18,
|
||||
"Id": "Active Skill Gem",
|
||||
"Name": "Камни умений",
|
||||
"TradeMarketCategory": 26,
|
||||
"ItemClassCategory": 16
|
||||
},
|
||||
{
|
||||
"_index": 19,
|
||||
"Id": "Support Skill Gem",
|
||||
"Name": "Камни поддержки",
|
||||
"TradeMarketCategory": 27,
|
||||
"ItemClassCategory": 17
|
||||
},
|
||||
{
|
||||
"_index": 20,
|
||||
"Id": "Quiver",
|
||||
"Name": "Колчаны",
|
||||
"TradeMarketCategory": 19,
|
||||
"ItemClassCategory": 18
|
||||
},
|
||||
{
|
||||
"_index": 21,
|
||||
"Id": "Belt",
|
||||
"Name": "Пояса",
|
||||
"TradeMarketCategory": 23,
|
||||
"ItemClassCategory": 19
|
||||
},
|
||||
{
|
||||
"_index": 22,
|
||||
"Id": "Gloves",
|
||||
"Name": "Перчатки",
|
||||
"TradeMarketCategory": 0,
|
||||
"ItemClassCategory": 20
|
||||
},
|
||||
{
|
||||
"_index": 23,
|
||||
"Id": "Boots",
|
||||
"Name": "Обувь",
|
||||
"TradeMarketCategory": 1,
|
||||
"ItemClassCategory": 21
|
||||
},
|
||||
{
|
||||
"_index": 24,
|
||||
"Id": "Body Armour",
|
||||
"Name": "Доспехи",
|
||||
"TradeMarketCategory": 2,
|
||||
"ItemClassCategory": 22
|
||||
},
|
||||
{
|
||||
"_index": 25,
|
||||
"Id": "Helmet",
|
||||
"Name": "Шлемы",
|
||||
"TradeMarketCategory": 3,
|
||||
"ItemClassCategory": 23
|
||||
},
|
||||
{
|
||||
"_index": 26,
|
||||
"Id": "Shield",
|
||||
"Name": "Щиты",
|
||||
"TradeMarketCategory": 20,
|
||||
"ItemClassCategory": 24
|
||||
},
|
||||
{
|
||||
"_index": 27,
|
||||
"Id": "SmallRelic",
|
||||
"Name": "Малые реликвии",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 28,
|
||||
"Id": "MediumRelic",
|
||||
"Name": "Средние реликвии",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 29,
|
||||
"Id": "LargeRelic",
|
||||
"Name": "Большие реликвии",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 30,
|
||||
"Id": "StackableCurrency",
|
||||
"Name": "Валюта",
|
||||
"TradeMarketCategory": 39,
|
||||
"ItemClassCategory": 6
|
||||
},
|
||||
{
|
||||
"_index": 31,
|
||||
"Id": "QuestItem",
|
||||
"Name": "Вещи для заданий",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 25
|
||||
},
|
||||
{
|
||||
"_index": 32,
|
||||
"Id": "Sceptre",
|
||||
"Name": "Скипетры",
|
||||
"TradeMarketCategory": 11,
|
||||
"ItemClassCategory": 61
|
||||
},
|
||||
{
|
||||
"_index": 33,
|
||||
"Id": "UtilityFlask",
|
||||
"Name": "Обереги",
|
||||
"TradeMarketCategory": 31,
|
||||
"ItemClassCategory": 69
|
||||
},
|
||||
{
|
||||
"_index": 34,
|
||||
"Id": "DONOTUSE7",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 35,
|
||||
"Id": "Map",
|
||||
"Name": "Путевые камни",
|
||||
"TradeMarketCategory": 34,
|
||||
"ItemClassCategory": 26
|
||||
},
|
||||
{
|
||||
"_index": 36,
|
||||
"Id": "Unarmed",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 66
|
||||
},
|
||||
{
|
||||
"_index": 37,
|
||||
"Id": "FishingRod",
|
||||
"Name": "Удочки",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 27
|
||||
},
|
||||
{
|
||||
"_index": 38,
|
||||
"Id": "MapFragment",
|
||||
"Name": "Обрывки карт",
|
||||
"TradeMarketCategory": 37,
|
||||
"ItemClassCategory": 28
|
||||
},
|
||||
{
|
||||
"_index": 39,
|
||||
"Id": "HideoutDoodad",
|
||||
"Name": "Предметы убежища",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 40,
|
||||
"Id": "Microtransaction",
|
||||
"Name": "Микротранзакции",
|
||||
"TradeMarketCategory": 53,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 41,
|
||||
"Id": "Jewel",
|
||||
"Name": "Самоцветы",
|
||||
"TradeMarketCategory": 35,
|
||||
"ItemClassCategory": 29
|
||||
},
|
||||
{
|
||||
"_index": 42,
|
||||
"Id": "DivinationCard",
|
||||
"Name": "Гадальные карты",
|
||||
"TradeMarketCategory": 40,
|
||||
"ItemClassCategory": 30
|
||||
},
|
||||
{
|
||||
"_index": 43,
|
||||
"Id": "DONOTUSE8",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 44,
|
||||
"Id": "DONOTUSE9",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 45,
|
||||
"Id": "DONOTUSE10",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 46,
|
||||
"Id": "MiscMapItem",
|
||||
"Name": "Прочие предметы карт",
|
||||
"TradeMarketCategory": 38,
|
||||
"ItemClassCategory": 33
|
||||
},
|
||||
{
|
||||
"_index": 47,
|
||||
"Id": "Leaguestone",
|
||||
"Name": "Камни лиги",
|
||||
"TradeMarketCategory": 33,
|
||||
"ItemClassCategory": 34
|
||||
},
|
||||
{
|
||||
"_index": 48,
|
||||
"Id": "PantheonSoul",
|
||||
"Name": "Души Пантеона",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 35
|
||||
},
|
||||
{
|
||||
"_index": 49,
|
||||
"Id": "UniqueFragment",
|
||||
"Name": "Фрагменты",
|
||||
"TradeMarketCategory": 41,
|
||||
"ItemClassCategory": 36
|
||||
},
|
||||
{
|
||||
"_index": 50,
|
||||
"Id": "AbyssJewel",
|
||||
"Name": "Самоцветы Бездны",
|
||||
"TradeMarketCategory": 36,
|
||||
"ItemClassCategory": 37
|
||||
},
|
||||
{
|
||||
"_index": 51,
|
||||
"Id": "IncursionItem",
|
||||
"Name": "Предметы Вмешательства",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 38
|
||||
},
|
||||
{
|
||||
"_index": 52,
|
||||
"Id": "DelveSocketableCurrency",
|
||||
"Name": "Валюта Спуска",
|
||||
"TradeMarketCategory": 43,
|
||||
"ItemClassCategory": 39
|
||||
},
|
||||
{
|
||||
"_index": 53,
|
||||
"Id": "Incubator",
|
||||
"Name": "Инкубаторы",
|
||||
"TradeMarketCategory": 45,
|
||||
"ItemClassCategory": 40
|
||||
},
|
||||
{
|
||||
"_index": 54,
|
||||
"Id": "UniqueShard",
|
||||
"Name": "Осколки",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 55,
|
||||
"Id": "UniqueShardBase",
|
||||
"Name": "Стержни осколков",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 56,
|
||||
"Id": "DONOTUSE11",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 57,
|
||||
"Id": "Warstaff",
|
||||
"Name": "Боевые посохи",
|
||||
"TradeMarketCategory": 18,
|
||||
"ItemClassCategory": 5
|
||||
},
|
||||
{
|
||||
"_index": 58,
|
||||
"Id": "DelveStackableSocketableCurrency",
|
||||
"Name": "Валюта Спуска",
|
||||
"TradeMarketCategory": 43,
|
||||
"ItemClassCategory": 39
|
||||
},
|
||||
{
|
||||
"_index": 59,
|
||||
"Id": "AtlasUpgradeItem",
|
||||
"Name": "Предметы улучшения Атласа",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 41
|
||||
},
|
||||
{
|
||||
"_index": 60,
|
||||
"Id": "DONOTUSE4",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 61,
|
||||
"Id": "HiddenItem",
|
||||
"Name": "Сокрытые предметы",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 62,
|
||||
"Id": "DONOTUSE1",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 63,
|
||||
"Id": "DONOTUSE2",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 64,
|
||||
"Id": "DONOTUSE3",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 65,
|
||||
"Id": "HeistContract",
|
||||
"Name": "Контракты",
|
||||
"TradeMarketCategory": 48,
|
||||
"ItemClassCategory": 42
|
||||
},
|
||||
{
|
||||
"_index": 66,
|
||||
"Id": "HeistEquipmentWeapon",
|
||||
"Name": "Разбойничьи принадлежности",
|
||||
"TradeMarketCategory": 48,
|
||||
"ItemClassCategory": 43
|
||||
},
|
||||
{
|
||||
"_index": 67,
|
||||
"Id": "HeistEquipmentTool",
|
||||
"Name": "Разбойничий инструмент",
|
||||
"TradeMarketCategory": 48,
|
||||
"ItemClassCategory": 44
|
||||
},
|
||||
{
|
||||
"_index": 68,
|
||||
"Id": "HeistEquipmentUtility",
|
||||
"Name": "Разбойничьи накидки",
|
||||
"TradeMarketCategory": 48,
|
||||
"ItemClassCategory": 45
|
||||
},
|
||||
{
|
||||
"_index": 69,
|
||||
"Id": "HeistEquipmentReward",
|
||||
"Name": "Разбойничьи броши",
|
||||
"TradeMarketCategory": 48,
|
||||
"ItemClassCategory": 46
|
||||
},
|
||||
{
|
||||
"_index": 70,
|
||||
"Id": "HeistBlueprint",
|
||||
"Name": "Чертежи",
|
||||
"TradeMarketCategory": 48,
|
||||
"ItemClassCategory": 47
|
||||
},
|
||||
{
|
||||
"_index": 71,
|
||||
"Id": "Trinket",
|
||||
"Name": "Украшения",
|
||||
"TradeMarketCategory": 25,
|
||||
"ItemClassCategory": 48
|
||||
},
|
||||
{
|
||||
"_index": 72,
|
||||
"Id": "HeistObjective",
|
||||
"Name": "Предметы кражи",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 49
|
||||
},
|
||||
{
|
||||
"_index": 73,
|
||||
"Id": "ExpeditionLogbook",
|
||||
"Name": "Журналы экспедиции",
|
||||
"TradeMarketCategory": 49,
|
||||
"ItemClassCategory": 50
|
||||
},
|
||||
{
|
||||
"_index": 74,
|
||||
"Id": "IncubatorStackable",
|
||||
"Name": "Инкубаторы",
|
||||
"TradeMarketCategory": 45,
|
||||
"ItemClassCategory": 40
|
||||
},
|
||||
{
|
||||
"_index": 75,
|
||||
"Id": "ArchnemesisMod",
|
||||
"Name": "Свойства Возмездия",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 76,
|
||||
"Id": "Meta Skill Gem",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 64
|
||||
},
|
||||
{
|
||||
"_index": 77,
|
||||
"Id": "Spear",
|
||||
"Name": "Копья",
|
||||
"TradeMarketCategory": 55,
|
||||
"ItemClassCategory": 57
|
||||
},
|
||||
{
|
||||
"_index": 78,
|
||||
"Id": "Crossbow",
|
||||
"Name": "Самострелы",
|
||||
"TradeMarketCategory": 56,
|
||||
"ItemClassCategory": 58
|
||||
},
|
||||
{
|
||||
"_index": 79,
|
||||
"Id": "Focus",
|
||||
"Name": "Фокусы",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 59
|
||||
},
|
||||
{
|
||||
"_index": 80,
|
||||
"Id": "InstanceLocalItem",
|
||||
"Name": "Местные предметы области",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 51
|
||||
},
|
||||
{
|
||||
"_index": 81,
|
||||
"Id": "SentinelDrone",
|
||||
"Name": "Часовые",
|
||||
"TradeMarketCategory": 51,
|
||||
"ItemClassCategory": 52
|
||||
},
|
||||
{
|
||||
"_index": 82,
|
||||
"Id": "MemoryLine",
|
||||
"Name": "Воспоминания",
|
||||
"TradeMarketCategory": 52,
|
||||
"ItemClassCategory": 54
|
||||
},
|
||||
{
|
||||
"_index": 83,
|
||||
"Id": "Flail",
|
||||
"Name": "Кистени",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 60
|
||||
},
|
||||
{
|
||||
"_index": 84,
|
||||
"Id": "Relic",
|
||||
"Name": "Реликвии",
|
||||
"TradeMarketCategory": 54,
|
||||
"ItemClassCategory": 53
|
||||
},
|
||||
{
|
||||
"_index": 85,
|
||||
"Id": "SanctumSpecialRelic",
|
||||
"Name": "Священные реликвии",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 53
|
||||
},
|
||||
{
|
||||
"_index": 86,
|
||||
"Id": "Breachstone",
|
||||
"Name": "Камни Разлома",
|
||||
"TradeMarketCategory": 37,
|
||||
"ItemClassCategory": 55
|
||||
},
|
||||
{
|
||||
"_index": 87,
|
||||
"Id": "GiftBox",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 88,
|
||||
"Id": "VaultKey",
|
||||
"Name": "Ключи от хранилищ",
|
||||
"TradeMarketCategory": 38,
|
||||
"ItemClassCategory": 56
|
||||
},
|
||||
{
|
||||
"_index": 89,
|
||||
"Id": "ItemisedSanctum",
|
||||
"Name": "Монеты Испытания",
|
||||
"TradeMarketCategory": 38,
|
||||
"ItemClassCategory": 33
|
||||
},
|
||||
{
|
||||
"_index": 90,
|
||||
"Id": "DONOTUSE12",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 91,
|
||||
"Id": "UncutSkillGem",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 65
|
||||
},
|
||||
{
|
||||
"_index": 92,
|
||||
"Id": "Buckler",
|
||||
"Name": "Баклеры",
|
||||
"TradeMarketCategory": 57,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 93,
|
||||
"Id": "Thrown One Hand Axe",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 94,
|
||||
"Id": "Thrown Two Hand Axe",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 95,
|
||||
"Id": "ConventionTreasure",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 96,
|
||||
"Id": "TrapTool",
|
||||
"Name": "Ловушки",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 63
|
||||
},
|
||||
{
|
||||
"_index": 97,
|
||||
"Id": "Crossbow Attachment REMOVE",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 98,
|
||||
"Id": "SkillGemToken",
|
||||
"Name": "Вещи на обмен",
|
||||
"TradeMarketCategory": 39,
|
||||
"ItemClassCategory": 6
|
||||
},
|
||||
{
|
||||
"_index": 99,
|
||||
"Id": "Nothing",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 100,
|
||||
"Id": "UltimatumKey",
|
||||
"Name": "Начертанные Ультиматумы",
|
||||
"TradeMarketCategory": 38,
|
||||
"ItemClassCategory": 33
|
||||
},
|
||||
{
|
||||
"_index": 101,
|
||||
"Id": "UncutSupportGem",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 65
|
||||
},
|
||||
{
|
||||
"_index": 102,
|
||||
"Id": "UncutReservationGem",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 65
|
||||
},
|
||||
{
|
||||
"_index": 103,
|
||||
"Id": "Thrown Shield",
|
||||
"Name": "",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
},
|
||||
{
|
||||
"_index": 104,
|
||||
"Id": "SoulCore",
|
||||
"Name": "Размещаемое",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 67
|
||||
},
|
||||
{
|
||||
"_index": 105,
|
||||
"Id": "TowerAugmentation",
|
||||
"Name": "Плитки",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 68
|
||||
},
|
||||
{
|
||||
"_index": 106,
|
||||
"Id": "Omen",
|
||||
"Name": "Предзнаменования",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": 70
|
||||
},
|
||||
{
|
||||
"_index": 107,
|
||||
"Id": "PinnacleKey",
|
||||
"Name": "Древние ключи",
|
||||
"TradeMarketCategory": null,
|
||||
"ItemClassCategory": null
|
||||
}
|
||||
]
|
||||
8
renderer/public/.DS_Store/copy-py-ndjson.sh
Normal file
8
renderer/public/.DS_Store/copy-py-ndjson.sh
Normal file
@@ -0,0 +1,8 @@
|
||||
|
||||
|
||||
supported_languages=("en" "ru")
|
||||
|
||||
for lang in "${supported_languages[@]}"; do
|
||||
echo "Copying $lang"
|
||||
cp -R ./vendor/client/pyDumps/$lang/* ./data/$lang/
|
||||
done
|
||||
4530
renderer/public/.DS_Store/data/cmn-Hant/items.ndjson.old
Normal file
4530
renderer/public/.DS_Store/data/cmn-Hant/items.ndjson.old
Normal file
File diff suppressed because it is too large
Load Diff
6648
renderer/public/.DS_Store/data/cmn-Hant/stats.ndjson.old
Normal file
6648
renderer/public/.DS_Store/data/cmn-Hant/stats.ndjson.old
Normal file
File diff suppressed because one or more lines are too long
@@ -3007,6 +3007,7 @@
|
||||
{"name": "Grand Spectrum", "refName": "Grand Spectrum", "namespace": "UNIQUE", "unique": {"base": "Emerald"}}
|
||||
{"name": "Grand Spectrum", "refName": "Grand Spectrum", "namespace": "UNIQUE", "unique": {"base": "Ruby"}}
|
||||
{"name": "Grand Spectrum", "refName": "Grand Spectrum", "namespace": "UNIQUE", "unique": {"base": "Sapphire"}}
|
||||
{"name": "Heroic Tragedy", "refName": "Heroic Tragedy", "namespace": "UNIQUE", "unique": {"base": "Timeless Jewel"}}
|
||||
{"name": "Prism of Belief", "refName": "Prism of Belief", "namespace": "UNIQUE", "unique": {"base": "Diamond"}}
|
||||
{"name": "The Adorned", "refName": "The Adorned", "namespace": "UNIQUE", "unique": {"base": "Diamond"}}
|
||||
{"name": "Brain Rattler", "refName": "Brain Rattler", "namespace": "UNIQUE", "unique": {"base": "Studded Greatclub"}}
|
||||
@@ -3021,6 +3022,11 @@
|
||||
{"name": "Guiding Palm", "refName": "Guiding Palm", "namespace": "UNIQUE", "unique": {"base": "Shrine Sceptre"}}
|
||||
{"name": "Hoghunt", "refName": "Hoghunt", "namespace": "UNIQUE", "unique": {"base": "Felled Greatclub"}}
|
||||
{"name": "Hrimnor's Hymn", "refName": "Hrimnor's Hymn", "namespace": "UNIQUE", "unique": {"base": "Oak Greathammer"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "War Spear"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "Vampiric Blade"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "Charred Shortsword"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "Corroded Longsword"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "Rippled Greatsword"}}
|
||||
{"name": "Lifesprig", "refName": "Lifesprig", "namespace": "UNIQUE", "unique": {"base": "Attuned Wand"}}
|
||||
{"name": "Matsya", "refName": "Matsya", "namespace": "UNIQUE", "unique": {"base": "Crescent Quarterstaff"}}
|
||||
{"name": "Mist Whisper", "refName": "Mist Whisper", "namespace": "UNIQUE", "unique": {"base": "Makeshift Crossbow"}}
|
||||
|
||||
@@ -1,3 +1,32 @@
|
||||
{"ref": "# Life Regenerated per Second", "better": 1, "matchers": [{"string": "# Life Regenerated per Second "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life_regen"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "id": "cold_damage_+%", "matchers": [{"string": "#% increased Cold Damage", "negate": false}, {"string": "#% reduced Cold Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3291658075"], "pseudo": ["pseudo.pseudo_increased_cold_damage"]}}}
|
||||
{"ref": "#% increased Cold Spell Damage", "better": 1, "matchers": [{"string": "#% increased Cold Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_spell_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "id": "elemental_damage_+%", "matchers": [{"string": "#% increased Elemental Damage", "negate": false}, {"string": "#% reduced Elemental Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3141070085"], "pseudo": ["pseudo.pseudo_increased_elemental_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attacks", "better": 1, "id": "elemental_damage_with_attack_skills_+%", "matchers": [{"string": "#% increased Elemental Damage with Attacks", "negate": false}, {"string": "#% reduced Elemental Damage with Attacks", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_387439868"], "enchant": ["enchant.stat_387439868"], "rune": ["rune.stat_387439868"], "pseudo": ["pseudo.pseudo_increased_elemental_damage_with_attack_skills"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "id": "fire_damage_+%", "matchers": [{"string": "#% increased Fire Damage", "negate": false}, {"string": "#% reduced Fire Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3962278098"], "pseudo": ["pseudo.pseudo_increased_fire_damage"]}}}
|
||||
{"ref": "#% increased Fire Spell Damage", "better": 1, "matchers": [{"string": "#% increased Fire Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_spell_damage"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "id": "lightning_damage_+%", "matchers": [{"string": "#% increased Lightning Damage", "negate": false}, {"string": "#% reduced Lightning Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2231156303"], "pseudo": ["pseudo.pseudo_increased_lightning_damage"]}}}
|
||||
{"ref": "#% increased Lightning Spell Damage", "better": 1, "matchers": [{"string": "#% increased Lightning Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_spell_damage"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "id": "mana_regeneration_rate_+%", "matchers": [{"string": "#% increased Mana Regeneration Rate", "negate": false}, {"string": "#% reduced Mana Regeneration Rate", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "enchant": ["enchant.stat_789117908"], "rune": ["rune.stat_789117908"], "pseudo": ["pseudo.pseudo_increased_mana_regen"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "id": "base_movement_velocity_+%", "matchers": [{"string": "#% increased Movement Speed", "negate": false}, {"string": "#% reduced Movement Speed", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "sanctum": ["sanctum.stat_1416455556"], "pseudo": ["pseudo.pseudo_increased_movement_speed"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "id": "spell_damage_+%", "matchers": [{"string": "#% increased Spell Damage", "negate": false}, {"string": "#% reduced Spell Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2974417149"], "enchant": ["enchant.stat_2974417149"], "pseudo": ["pseudo.pseudo_increased_spell_damage"]}}}
|
||||
{"ref": "#% total increased Physical Damage", "better": 1, "matchers": [{"string": "#% total increased Physical Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_physical_damage"]}}}
|
||||
{"ref": "+# total maximum Energy Shield", "better": 1, "matchers": [{"string": "+# total maximum Energy Shield "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_energy_shield"]}}}
|
||||
{"ref": "+# total maximum Life", "better": 1, "matchers": [{"string": "+# total maximum Life "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life"]}}}
|
||||
{"ref": "+# total maximum Mana", "better": 1, "matchers": [{"string": "+# total maximum Mana "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_mana"]}}}
|
||||
{"ref": "+# total to all Attributes", "better": 1, "matchers": [{"string": "+# total to all Attributes "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_attributes"]}}}
|
||||
{"ref": "+# total to Dexterity", "better": 1, "matchers": [{"string": "+# total to Dexterity "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_dexterity"]}}}
|
||||
{"ref": "+# total to Intelligence", "better": 1, "matchers": [{"string": "+# total to Intelligence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_intelligence"]}}}
|
||||
{"ref": "+# total to Strength", "better": 1, "matchers": [{"string": "+# total to Strength "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_strength"]}}}
|
||||
{"ref": "+#% Global Critical Strike Chance", "better": 1, "matchers": [{"string": "+#% Global Critical Strike Chance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_chance"]}}}
|
||||
{"ref": "+#% Global Critical Strike Multiplier", "better": 1, "matchers": [{"string": "+#% Global Critical Strike Multiplier "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_multiplier"]}}}
|
||||
{"ref": "+#% total Attack Speed", "better": 1, "matchers": [{"string": "+#% total Attack Speed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_attack_speed"]}}}
|
||||
{"ref": "+#% total Cast Speed", "better": 1, "matchers": [{"string": "+#% total Cast Speed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cast_speed"]}}}
|
||||
{"ref": "+#% total Elemental Resistance", "better": 1, "matchers": [{"string": "+#% total Elemental Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_elemental_resistance"]}}}
|
||||
{"ref": "+#% total to Chaos Resistance", "better": 1, "matchers": [{"string": "+#% total to Chaos Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_chaos_resistance"]}}}
|
||||
{"ref": "+#% total to Cold Resistance", "better": 1, "matchers": [{"string": "+#% total to Cold Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cold_resistance"]}}}
|
||||
{"ref": "+#% total to Fire Resistance", "better": 1, "matchers": [{"string": "+#% total to Fire Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_fire_resistance"]}}}
|
||||
{"ref": "+#% total to Lightning Resistance", "better": 1, "matchers": [{"string": "+#% total to Lightning Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_lightning_resistance"]}}}
|
||||
{"ref": "+# to Strength", "better": 1, "id": "additional_strength", "matchers": [{"string": "# to Strength", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_4080418644"], "implicit": ["implicit.stat_4080418644"], "enchant": ["enchant.stat_4080418644"]}}}
|
||||
{"ref": "+# to Dexterity", "better": 1, "id": "additional_dexterity", "matchers": [{"string": "# to Dexterity", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_3261801346"], "implicit": ["implicit.stat_3261801346"], "enchant": ["enchant.stat_3261801346"]}}}
|
||||
{"ref": "+# to Intelligence", "better": 1, "id": "additional_intelligence", "matchers": [{"string": "# to Intelligence", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_328541901"], "implicit": ["implicit.stat_328541901"], "enchant": ["enchant.stat_328541901"]}}}
|
||||
@@ -29,7 +58,6 @@
|
||||
{"ref": "#% increased Evasion and Energy Shield", "better": 1, "id": "local_evasion_and_energy_shield_+%", "matchers": [{"string": "#% increased Evasion and Energy Shield", "negate": false}, {"string": "#% reduced Evasion and Energy Shield", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1999113824"], "enchant": ["enchant.stat_1999113824"]}}}
|
||||
{"ref": "#% increased Attribute Requirements", "better": 1, "id": "local_attribute_requirements_+%", "matchers": [{"string": "#% increased Attribute Requirements", "negate": false}, {"string": "#% reduced Attribute Requirements", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3639275092"], "enchant": ["enchant.stat_3639275092"]}}}
|
||||
{"ref": "+# to Stun Threshold", "better": 1, "id": "stun_threshold_+", "matchers": [{"string": "# to Stun Threshold", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_915769802"], "rune": ["rune.stat_915769802"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "id": "base_movement_velocity_+%", "matchers": [{"string": "#% increased Movement Speed", "negate": false}, {"string": "#% reduced Movement Speed", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "sanctum": ["sanctum.stat_1416455556"]}}}
|
||||
{"ref": "# to # Physical Thorns damage", "better": 1, "id": "thorns_minimum_base_physical_damage", "matchers": [{"string": "# to # Physical Thorns damage", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_2881298780"]}}}
|
||||
{"ref": "Adds # to # Physical Damage to Attacks", "better": 1, "id": "attack_minimum_added_physical_damage", "matchers": [{"string": "Adds # to # Physical Damage to Attacks", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_3032590688"], "implicit": ["implicit.stat_3032590688"]}}}
|
||||
{"ref": "Adds # to # Fire damage to Attacks", "better": 1, "id": "attack_minimum_added_fire_damage", "matchers": [{"string": "Adds # to # Fire damage to Attacks", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_1573130764"], "implicit": ["implicit.stat_1573130764"]}}}
|
||||
@@ -45,10 +73,6 @@
|
||||
{"ref": "Allies in your Presence deal # to # additional Attack Lightning Damage", "better": 1, "id": "allies_in_presence_attack_minimum_added_lightning_damage", "matchers": [{"string": "Allies in your Presence deal # to # additional Attack Lightning Damage", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_2854751904"]}}}
|
||||
{"ref": "No Physical Damage", "better": 1, "id": "local_physical_damage_+%", "matchers": [{"string": "No Physical Damage", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "Allies in your Presence deal #% increased Damage", "better": 1, "id": "allies_in_presence_damage_+%", "matchers": [{"string": "Allies in your Presence deal #% increased Damage", "negate": false}, {"string": "Allies in your Presence deal #% reduced Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1798257884"], "enchant": ["enchant.stat_1798257884"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "id": "spell_damage_+%", "matchers": [{"string": "#% increased Spell Damage", "negate": false}, {"string": "#% reduced Spell Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2974417149"], "enchant": ["enchant.stat_2974417149"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "id": "fire_damage_+%", "matchers": [{"string": "#% increased Fire Damage", "negate": false}, {"string": "#% reduced Fire Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3962278098"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "id": "cold_damage_+%", "matchers": [{"string": "#% increased Cold Damage", "negate": false}, {"string": "#% reduced Cold Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3291658075"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "id": "lightning_damage_+%", "matchers": [{"string": "#% increased Lightning Damage", "negate": false}, {"string": "#% reduced Lightning Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2231156303"]}}}
|
||||
{"ref": "#% increased Chaos Damage", "better": 1, "id": "chaos_damage_+%", "matchers": [{"string": "#% increased Chaos Damage", "negate": false}, {"string": "#% reduced Chaos Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_736967255"]}}}
|
||||
{"ref": "#% increased Spell Physical Damage", "better": 1, "id": "spell_physical_damage_+%", "matchers": [{"string": "#% increased Spell Physical Damage", "negate": false}, {"string": "#% reduced Spell Physical Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2768835289"]}}}
|
||||
{"ref": "#% increased Trap Damage", "better": 1, "id": "trap_damage_+%", "matchers": [{"string": "#% increased Trap Damage", "negate": false}, {"string": "#% reduced Trap Damage", "negate": true}], "trade": {"ids": null}}
|
||||
@@ -64,7 +88,6 @@
|
||||
{"ref": "+# to Level of all Projectile Skills", "better": 1, "id": "projectile_skill_gem_level_+", "matchers": [{"string": "# to Level of all Projectile Skills", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_1202301673"]}}}
|
||||
{"ref": "# Life Regeneration per second", "better": 1, "id": "base_life_regeneration_rate_per_minute", "matchers": [{"string": "# Life Regeneration per second", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_3325883026"], "implicit": ["implicit.stat_3325883026"]}}}
|
||||
{"ref": "Allies in your Presence Regenerate # Life per second", "better": 1, "id": "allies_in_presence_life_regeneration_rate_per_minute", "matchers": [{"string": "Allies in your Presence Regenerate # Life per second", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_4010677958"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "id": "mana_regeneration_rate_+%", "matchers": [{"string": "#% increased Mana Regeneration Rate", "negate": false}, {"string": "#% reduced Mana Regeneration Rate", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "enchant": ["enchant.stat_789117908"], "rune": ["rune.stat_789117908"]}}}
|
||||
{"ref": "Leech #% of Physical Attack Damage as Life", "better": 1, "id": "base_life_leech_from_physical_attack_damage_permyriad", "matchers": [{"string": "Leech #% of Physical Attack Damage as Life", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_2557965901"], "enchant": ["enchant.stat_2557965901"]}}}
|
||||
{"ref": "Leeches #% of Physical Damage as Life", "better": 1, "id": "local_life_leech_from_physical_damage_permyriad", "matchers": [{"string": "Leeches #% of Physical Damage as Life", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_55876295"], "rune": ["rune.stat_55876295"]}}}
|
||||
{"ref": "Leech #% of Physical Attack Damage as Mana", "better": 1, "id": "base_mana_leech_from_physical_attack_damage_permyriad", "matchers": [{"string": "Leech #% of Physical Attack Damage as Mana", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_707457662"], "enchant": ["enchant.stat_707457662"]}}}
|
||||
@@ -114,7 +137,7 @@
|
||||
{"ref": "+#% to all Maximum Elemental Resistances", "better": 1, "id": "additional_maximum_all_elemental_resistances_%", "matchers": [{"string": "#% to all Maximum Elemental Resistances", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_1978899297"], "implicit": ["implicit.stat_1978899297"], "enchant": ["enchant.stat_1978899297"]}}}
|
||||
{"ref": "#% increased Energy Shield Recharge Rate", "better": 1, "id": "energy_shield_recharge_rate_+%", "matchers": [{"string": "#% increased Energy Shield Recharge Rate", "negate": false}, {"string": "#% reduced Energy Shield Recharge Rate", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2339757871"]}}}
|
||||
{"ref": "#% chance to Pierce an Enemy", "better": 1, "id": "base_chance_to_pierce_%", "matchers": [{"string": "#% chance to Pierce an Enemy", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_2321178454"], "implicit": ["implicit.stat_2321178454"], "enchant": ["enchant.stat_2321178454"]}}}
|
||||
{"ref": "Bow Attacks fire an additional Arrow", "better": 1, "id": "number_of_additional_arrows", "matchers": [{"string": "Bow Attacks fire an additional Arrow", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "Bow Attacks fire an additional Arrow", "better": 1, "id": "number_of_additional_arrows", "matchers": [{"string": "Bow Attacks fire an additional Arrow", "negate": false}, {"string": "Bow Attacks fire # additional Arrows", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_3885405204"], "implicit": ["implicit.stat_3885405204"], "enchant": ["enchant.stat_3885405204"]}}}
|
||||
{"ref": "Loads an additional bolt", "better": 1, "id": "base_number_of_crossbow_bolts", "matchers": [{"string": "Loads an additional bolt", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_1039380318"], "implicit": ["implicit.stat_1039380318"], "enchant": ["enchant.stat_1039380318"]}}}
|
||||
{"ref": "#% increased Flask Life Recovery rate", "better": 1, "id": "flask_life_recovery_rate_+%", "matchers": [{"string": "#% increased Flask Life Recovery rate", "negate": false}, {"string": "#% reduced Flask Life Recovery rate", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_51994685"]}}}
|
||||
{"ref": "#% increased Flask Mana Recovery rate", "better": 1, "id": "flask_mana_recovery_rate_+%", "matchers": [{"string": "#% increased Flask Mana Recovery rate", "negate": false}, {"string": "#% reduced Flask Mana Recovery rate", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1412217137"]}}}
|
||||
@@ -132,7 +155,6 @@
|
||||
{"ref": "#% of Damage taken Recouped as Mana", "better": 1, "id": "damage_taken_goes_to_mana_%", "matchers": [{"string": "#% of Damage taken Recouped as Mana", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_472520716"], "enchant": ["enchant.stat_472520716"]}}}
|
||||
{"ref": "#% increased Stun Duration", "better": 1, "id": "local_base_stun_duration_+%", "matchers": [{"string": "#% increased Stun Duration", "negate": false}, {"string": "#% reduced Stun Duration", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_748522257"]}}}
|
||||
{"ref": "Causes #% increased Stun Buildup", "better": 1, "id": "local_hit_damage_stun_multiplier_+%", "matchers": [{"string": "Causes #% increased Stun Buildup", "negate": false}, {"string": "Causes #% reduced Stun Buildup", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_791928121"], "implicit": ["implicit.stat_791928121"], "enchant": ["enchant.stat_791928121"], "rune": ["rune.stat_791928121"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attacks", "better": 1, "id": "elemental_damage_with_attack_skills_+%", "matchers": [{"string": "#% increased Elemental Damage with Attacks", "negate": false}, {"string": "#% reduced Elemental Damage with Attacks", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_387439868"], "enchant": ["enchant.stat_387439868"], "rune": ["rune.stat_387439868"]}}}
|
||||
{"ref": "Gain #% of Damage as Extra Fire Damage", "better": 1, "id": "non_skill_base_all_damage_%_to_gain_as_fire", "matchers": [{"string": "Gain #% of Damage as Extra Fire Damage", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_3015669065"]}}}
|
||||
{"ref": "Gain #% of Damage as Extra Cold Damage", "better": 1, "id": "non_skill_base_all_damage_%_to_gain_as_cold", "matchers": [{"string": "Gain #% of Damage as Extra Cold Damage", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_2505884597"]}}}
|
||||
{"ref": "Gain #% of Damage as Extra Lightning Damage", "better": 1, "id": "non_skill_base_all_damage_%_to_gain_as_lightning", "matchers": [{"string": "Gain #% of Damage as Extra Lightning Damage", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_3278136794"]}}}
|
||||
@@ -197,7 +219,7 @@
|
||||
{"ref": "Causes Enemies to Explode on Critical kill, for #% of their Life as Physical Damage", "better": 1, "id": "local_explode_on_kill_with_crit_%_physical_damage_to_deal", "matchers": [{"string": "Causes Enemies to Explode on Critical kill, for #% of their Life as Physical Damage", "negate": false}], "trade": {"ids": {"implicit": ["implicit.stat_1541903247"]}}}
|
||||
{"ref": "Crushes Enemies on Hit", "better": 1, "id": "local_crush_on_hit", "matchers": [{"string": "Crushes Enemies on Hit", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "#% chance to Maim on Hit", "better": 1, "id": "local_maim_on_hit_%", "matchers": [{"string": "#% chance to Maim on Hit", "negate": false}], "trade": {"ids": {"enchant": ["enchant.stat_2763429652"]}}}
|
||||
{"ref": "#% increased Projectile Speed when thrown", "better": 1, "id": "local_projectile_speed_+%", "matchers": [{"string": "#% increased Projectile Speed when thrown", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "#% increased Projectile Speed when thrown", "better": 1, "id": "local_projectile_speed_+%", "matchers": [{"string": "#% increased Projectile Speed when thrown", "negate": false}], "trade": {"ids": {"implicit": ["implicit.stat_535217483"]}}}
|
||||
{"ref": "Uses both hand slots", "better": 1, "id": "local_weapon_uses_both_hands", "matchers": [{"string": "Uses both hand slots", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "#% chance to Blind Enemies on hit", "better": 1, "id": "local_chance_to_blind_on_hit_%", "matchers": [{"string": "#% chance to Blind Enemies on hit", "negate": false}], "trade": {"ids": {"enchant": ["enchant.stat_2301191210"]}}}
|
||||
{"ref": "#% chance to Poison on Hit", "better": 1, "id": "local_poison_on_hit_%", "matchers": [{"string": "#% chance to Poison on Hit", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_795138349"], "enchant": ["enchant.stat_3885634897"], "rune": ["rune.stat_3885634897"]}}}
|
||||
@@ -254,7 +276,6 @@
|
||||
{"ref": "#% increased Daze Buildup", "better": 1, "id": "daze_build_up_+%", "matchers": [{"string": "#% increased Daze Buildup", "negate": false}, {"string": "#% reduced Daze Buildup", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1949833742"]}}}
|
||||
{"ref": "Debuffs on you expire #% faster", "better": 1, "id": "debuff_time_passed_+%", "matchers": [{"string": "Debuffs on you expire #% faster", "negate": false}, {"string": "Debuffs on you expire #% slower", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1238227257"]}}}
|
||||
{"ref": "#% increased Duration of Ignite, Shock and Chill on Enemies", "better": 1, "id": "ignite_shock_chill_duration_+%", "matchers": [{"string": "#% increased Duration of Ignite, Shock and Chill on Enemies", "negate": false}, {"string": "#% reduced Duration of Ignite, Shock and Chill on Enemies", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1062710370"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "id": "elemental_damage_+%", "matchers": [{"string": "#% increased Elemental Damage", "negate": false}, {"string": "#% reduced Elemental Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3141070085"]}}}
|
||||
{"ref": "Empowered Attacks deal #% increased Damage", "better": 1, "id": "empowered_attack_damage_+%", "matchers": [{"string": "Empowered Attacks deal #% increased Damage", "negate": false}, {"string": "Empowered Attacks deal #% reduced Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1569101201"]}}}
|
||||
{"ref": "Meta Skills gain #% increased Energy", "better": 1, "id": "energy_generated_+%", "matchers": [{"string": "Meta Skills gain #% increased Energy", "negate": false}, {"string": "Meta Skills gain #% reduced Energy", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_4236566306"], "enchant": ["enchant.stat_4236566306"]}}}
|
||||
{"ref": "Damaging Ailments deal damage #% faster", "better": 1, "id": "damaging_ailments_deal_damage_+%_faster", "matchers": [{"string": "Damaging Ailments deal damage #% faster", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_538241406"]}}}
|
||||
|
||||
4527
renderer/public/.DS_Store/data/ko/items.ndjson.old
Normal file
4527
renderer/public/.DS_Store/data/ko/items.ndjson.old
Normal file
File diff suppressed because it is too large
Load Diff
6681
renderer/public/.DS_Store/data/ko/stats.ndjson.old
Normal file
6681
renderer/public/.DS_Store/data/ko/stats.ndjson.old
Normal file
File diff suppressed because one or more lines are too long
4527
renderer/public/.DS_Store/data/ru/items.ndjson.old
Normal file
4527
renderer/public/.DS_Store/data/ru/items.ndjson.old
Normal file
File diff suppressed because it is too large
Load Diff
6681
renderer/public/.DS_Store/data/ru/stats.ndjson.old
Normal file
6681
renderer/public/.DS_Store/data/ru/stats.ndjson.old
Normal file
File diff suppressed because one or more lines are too long
@@ -27,9 +27,10 @@
|
||||
"stats": "ts-node stats.ts",
|
||||
"copy-files": "cp -R EXPORT/tables/English/* vendor/client/tables/",
|
||||
"push-ndjson": "bash ./push-ndjson.sh",
|
||||
"anon-python": "python ./vendor/client/parser.py",
|
||||
"anon-vodka-python": "python ./vendor/client/parser.py",
|
||||
"langs-anon-vodka-python": "python ./vendor/client/parserRunner.py",
|
||||
"temp-images": "python ./data/en/imageFix.py",
|
||||
"copy-py-ndjson": "cp -R ./vendor/client/pyDumps/en/* ./data/en/",
|
||||
"copy-py-ndjson": "bash ./copy-py-ndjson.sh",
|
||||
"fetch-json": "bash ./pull-json.sh"
|
||||
},
|
||||
"keywords": [],
|
||||
|
||||
@@ -1,32 +1,45 @@
|
||||
#!/bin/bash
|
||||
|
||||
# URLs to fetch JSON from
|
||||
urls=(
|
||||
"https://www.pathofexile.com/api/trade2/data/filters"
|
||||
"https://www.pathofexile.com/api/trade2/data/stats"
|
||||
"https://www.pathofexile.com/api/trade2/data/items"
|
||||
"https://www.pathofexile.com/api/trade2/data/static"
|
||||
# Array of language codes and their corresponding base URLs
|
||||
declare -A lang_urls=(
|
||||
["en"]="https://www.pathofexile.com"
|
||||
["ru"]="https://ru.pathofexile.com"
|
||||
["ko"]="https://poe.game.daum.net"
|
||||
)
|
||||
|
||||
# Directory to save the JSON files
|
||||
output_dir="./vendor/json-api"
|
||||
# URLs to fetch JSON from (relative paths)
|
||||
urls=(
|
||||
"/api/trade2/data/filters"
|
||||
"/api/trade2/data/stats"
|
||||
"/api/trade2/data/items"
|
||||
"/api/trade2/data/static"
|
||||
)
|
||||
|
||||
# Create output directory if it doesn't exist
|
||||
mkdir -p "$output_dir"
|
||||
|
||||
# Loop through each URL
|
||||
for url in "${urls[@]}"; do
|
||||
# Extract the filename from the URL
|
||||
filename=$(basename "$url")
|
||||
|
||||
echo "Fetching JSON from: $url"
|
||||
# Loop through each language
|
||||
for lang in "${!lang_urls[@]}"; do
|
||||
# Directory to save the JSON files for the current language
|
||||
output_dir="./vendor/json-api/$lang"
|
||||
|
||||
# Fetch the JSON data and save it to a file
|
||||
curl -s "$url" -o "$output_dir/$filename.json"
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "Saved JSON to: $output_dir/$filename.json"
|
||||
else
|
||||
echo "Failed to fetch JSON from: $url"
|
||||
fi
|
||||
# Create output directory if it doesn't exist
|
||||
mkdir -p "$output_dir"
|
||||
|
||||
# Loop through each URL
|
||||
for relative_url in "${urls[@]}"; do
|
||||
# Construct the full URL
|
||||
url="${lang_urls[$lang]}$relative_url"
|
||||
|
||||
# Extract the filename from the relative URL
|
||||
filename=$(basename "$relative_url")
|
||||
|
||||
echo "Fetching JSON from: $url for language: $lang"
|
||||
|
||||
# Fetch the JSON data and save it to a file
|
||||
curl -s "$url" -o "$output_dir/$filename.json"
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "Saved JSON to: $output_dir/$filename.json"
|
||||
else
|
||||
echo "Failed to fetch JSON from: $url"
|
||||
fi
|
||||
done
|
||||
done
|
||||
@@ -6,13 +6,16 @@
|
||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||
|
||||
# Get the data directory
|
||||
DATA_DIR="./data/en"
|
||||
|
||||
DATA_DIR="./data"
|
||||
SUPPORTED_LANG=("en" "ru")
|
||||
# Get all *.ndjson files in the data directory
|
||||
FILES=$(find $DATA_DIR -name "*.ndjson")
|
||||
|
||||
# Loop through each file and push it to the actual data directory, overwriting any existing files
|
||||
for file in $FILES; do
|
||||
echo "Pushing $file to data/en"
|
||||
cp $file ../data/en
|
||||
for lang in "${SUPPORTED_LANG[@]}"; do
|
||||
FILES=$(find $DATA_DIR/$lang -name "*.ndjson")
|
||||
|
||||
# Loop through each file and push it to the actual data directory, overwriting any existing files
|
||||
for file in $FILES; do
|
||||
echo "Pushing $file to data/$lang"
|
||||
cp $file ../data/$lang
|
||||
done
|
||||
done
|
||||
856
renderer/public/.DS_Store/vendor/client/parser.py
vendored
856
renderer/public/.DS_Store/vendor/client/parser.py
vendored
@@ -1,5 +1,5 @@
|
||||
"""Tries to prepare the necessary data for poe-trade to work properly.
|
||||
It requires all files from
|
||||
"""Tries to prepare the necessary data for poe-trade to work properly.
|
||||
It requires all files from
|
||||
Path of Exile 2/Bundles2/_.index.bin/metadata/statdescriptions
|
||||
NOT
|
||||
Path of Exile 2/Bundles2/_.index.bin/metadata/statdescriptions/specific_skill_stat_descriptions
|
||||
@@ -12,442 +12,498 @@ Credits and Resources:
|
||||
SnosMe - https://github.com/SnosMe/poe-dat-viewer
|
||||
SnosMe - https://github.com/SnosMe/awakened-poe-trade
|
||||
"""
|
||||
import os
|
||||
|
||||
import json
|
||||
import os
|
||||
import re
|
||||
import requests
|
||||
import urllib.parse
|
||||
|
||||
def get_script_dir():
|
||||
"""Returns the directory where the script is located."""
|
||||
return os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
cwd = get_script_dir()
|
||||
base_dir = cwd + "/tables/"
|
||||
out_dir = cwd + "/pyDumps/en"
|
||||
import requests
|
||||
|
||||
|
||||
def load_file(file):
|
||||
return json.loads(open(f"{base_dir}/{file}.json").read())
|
||||
class Parser:
|
||||
def get_script_dir(self):
|
||||
"""Returns the directory where the script is located."""
|
||||
return os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
base_items = load_file("BaseItemTypes")
|
||||
item_classes = load_file("ItemClasses")
|
||||
item_class_categories = load_file("ItemClassCategories")
|
||||
armour_types = load_file("ArmourTypes")
|
||||
weapon_types = load_file("WeaponTypes")
|
||||
skill_gems = load_file("SkillGems")
|
||||
skill_gem_info = load_file("SkillGemInfo")
|
||||
stats_file = load_file("Stats")
|
||||
translation_files = os.listdir(f"{cwd}/descriptions")
|
||||
mods_file = load_file("Mods")
|
||||
trade_stats = json.loads(open(f"{cwd}/../json-api/stats.json").read()) # content of https://www.pathofexile.com/api/trade2/data/stats
|
||||
trade_items = json.loads(open(f"{cwd}/../json-api/items.json").read()) # content of https://www.pathofexile.com/api/trade2/data/items
|
||||
trade_exchange_items = json.loads(open(f"{cwd}/../json-api/static.json").read()) # content of https://www.pathofexile.com/api/trade2/data/static
|
||||
def load_file(self, file):
|
||||
return json.loads(open(f"{self.base_dir}/{self.lang}/{file}.json").read())
|
||||
|
||||
items = {}
|
||||
unique_items = []
|
||||
parsed_item_class_categories = {}
|
||||
parsed_item_classes = {}
|
||||
stats = {}
|
||||
stats_trade_ids = {}
|
||||
mod_translations = {}
|
||||
mods = {}
|
||||
def __init__(self, lang="en"):
|
||||
self.lang = lang
|
||||
|
||||
def make_poe_cdn_url(path):
|
||||
return urllib.parse.urljoin('https://web.poecdn.com/', path)
|
||||
self.cwd = self.get_script_dir()
|
||||
self.base_dir = self.cwd + "/tables/"
|
||||
self.out_dir = self.cwd + f"/pyDumps/{self.lang}"
|
||||
self.base_items = self.load_file("BaseItemTypes")
|
||||
self.item_classes = self.load_file("ItemClasses")
|
||||
self.item_class_categories = self.load_file("ItemClassCategories")
|
||||
self.armour_types = self.load_file("ArmourTypes")
|
||||
self.weapon_types = self.load_file("WeaponTypes")
|
||||
self.skill_gems = self.load_file("SkillGems")
|
||||
self.skill_gem_info = self.load_file("SkillGemInfo")
|
||||
self.stats_file = self.load_file("Stats")
|
||||
self.translation_files = os.listdir(f"{self.cwd}/descriptions")
|
||||
self.mods_file = self.load_file("Mods")
|
||||
# NOTE: could need to add local here?
|
||||
self.trade_stats = json.loads(
|
||||
open(f"{self.cwd}/../json-api/en/stats.json").read()
|
||||
) # content of https://www.pathofexile.com/api/trade2/data/stats
|
||||
self.trade_items = json.loads(
|
||||
open(f"{self.cwd}/../json-api/en/items.json").read()
|
||||
) # content of https://www.pathofexile.com/api/trade2/data/items
|
||||
self.trade_exchange_items = json.loads(
|
||||
open(f"{self.cwd}/../json-api/en/static.json").read()
|
||||
) # content of https://www.pathofexile.com/api/trade2/data/static
|
||||
|
||||
def convert_stat_name(stat):
|
||||
stat = stat.strip()
|
||||
open_square_bracket = stat.find("[")
|
||||
close_square_bracket = stat.find("]")
|
||||
|
||||
while open_square_bracket >= 0 and close_square_bracket > 0:
|
||||
# resolve brackets, this can be either the plain text or a key|value pair
|
||||
key = stat[open_square_bracket + 1:close_square_bracket]
|
||||
self.items = {}
|
||||
self.unique_items = []
|
||||
self.parsed_item_class_categories = {}
|
||||
self.parsed_item_classes = {}
|
||||
self.stats = {}
|
||||
self.stats_trade_ids = {}
|
||||
self.mod_translations = {}
|
||||
self.mods = {}
|
||||
self.matchers_no_trade_ids = []
|
||||
|
||||
if "|" in key: # key|value pair
|
||||
key = key.split("|")[1] # use value
|
||||
stat = stat[:open_square_bracket] + key + stat[close_square_bracket + 1:]
|
||||
|
||||
def make_poe_cdn_url(self, path):
|
||||
return urllib.parse.urljoin("https://web.poecdn.com/", path)
|
||||
|
||||
def convert_stat_name(self, stat):
|
||||
stat = stat.strip()
|
||||
open_square_bracket = stat.find("[")
|
||||
close_square_bracket = stat.find("]")
|
||||
|
||||
pattern = re.compile(r'{\d+}')
|
||||
for match in pattern.findall(stat):
|
||||
stat = stat.replace(match, "#")
|
||||
|
||||
stat = stat.replace("{0:+d}", "+#")
|
||||
|
||||
if len(stat) == 0:
|
||||
return None
|
||||
|
||||
if stat[0] == "{" and stat[1] == "}":
|
||||
stat = "#" + stat[2:]
|
||||
|
||||
return stat
|
||||
while open_square_bracket >= 0 and close_square_bracket > 0:
|
||||
# resolve brackets, this can be either the plain text or a key|value pair
|
||||
key = stat[open_square_bracket + 1 : close_square_bracket]
|
||||
|
||||
def parse_trade_ids():
|
||||
for res in trade_stats["result"]:
|
||||
for entry in res.get("entries"):
|
||||
id = entry.get("id")
|
||||
text = entry.get("text")
|
||||
type = entry.get("type")
|
||||
text = convert_stat_name(text)
|
||||
|
||||
if text not in stats_trade_ids:
|
||||
stats_trade_ids[text] = {}
|
||||
|
||||
if type not in stats_trade_ids[text]:
|
||||
stats_trade_ids[text][type] = []
|
||||
|
||||
stats_trade_ids[text][type].append(id)
|
||||
if "|" in key: # key|value pair
|
||||
key = key.split("|")[1] # use value
|
||||
stat = stat[:open_square_bracket] + key + stat[close_square_bracket + 1 :]
|
||||
|
||||
def parse_mod(id, english):
|
||||
matchers = []
|
||||
ref = None
|
||||
for lang in english:
|
||||
raw = lang
|
||||
lang = convert_stat_name(lang)
|
||||
|
||||
if lang == None:
|
||||
continue
|
||||
|
||||
matcher = lang
|
||||
# remove prefixs
|
||||
if matcher[0] == "+":
|
||||
matcher = matcher[1:]
|
||||
open_square_bracket = stat.find("[")
|
||||
close_square_bracket = stat.find("]")
|
||||
|
||||
has_negate = matcher.find("negate") > 0
|
||||
|
||||
if has_negate:
|
||||
matcher = matcher[:matcher.find('"')].strip()
|
||||
pattern = re.compile(r"{\d+}")
|
||||
for match in pattern.findall(stat):
|
||||
stat = stat.replace(match, "#")
|
||||
|
||||
matchers.append({
|
||||
"string": matcher,
|
||||
"negate": has_negate
|
||||
})
|
||||
|
||||
if ref == None:
|
||||
ref = lang
|
||||
|
||||
id = id.split(" ")
|
||||
|
||||
for a in id:
|
||||
mod_translations[a] = {
|
||||
"ref": ref,
|
||||
"matchers": matchers,
|
||||
}
|
||||
stat = stat.replace("{0:+d}", "+#")
|
||||
|
||||
def parse_translation_file(file):
|
||||
dir = f"{cwd}/descriptions/{file}"
|
||||
print("Parsing", dir)
|
||||
stats_translations = open(dir, encoding="utf-16").read().split("\n")
|
||||
for i in range(0, len(stats_translations)):
|
||||
line = stats_translations[i]
|
||||
if len(stat) == 0:
|
||||
return None
|
||||
|
||||
if line == "description":
|
||||
# start of the translation block
|
||||
id = stats_translations[i + 1].strip()[2:].replace('"', "") # skip first 2 characters
|
||||
english = stats_translations[i + 3].strip() # skip first 2 characters
|
||||
start = english.find('"')
|
||||
end = english.rfind('"')
|
||||
english = english[start + 1: end]
|
||||
|
||||
# convert to array so we can add the negated option later on, if one exists
|
||||
english = [english]
|
||||
|
||||
negate_english = stats_translations[i + 4].strip()
|
||||
if "lang" not in negate_english and "negate" in negate_english:
|
||||
# mod has a negated version
|
||||
end = negate_english.find('negate')
|
||||
negate_english = negate_english[negate_english.find('"') + 1:end + len('negate')]
|
||||
english.append(negate_english)
|
||||
|
||||
parse_mod(id, english)
|
||||
if stat[0] == "{" and stat[1] == "}":
|
||||
stat = "#" + stat[2:]
|
||||
|
||||
def parse_mods():
|
||||
for stat in stats_file:
|
||||
id = stat.get("_index")
|
||||
name = stat.get("Id")
|
||||
stats[id] = name
|
||||
|
||||
# translations
|
||||
for file in translation_files:
|
||||
if os.path.isdir(f"{cwd}/descriptions/{file}"):
|
||||
# traverse directories if it doesnt start with _
|
||||
if not file.startswith("_"):
|
||||
for _file in os.listdir(f"{cwd}/descriptions/{file}"):
|
||||
parse_translation_file(f"{file}/{_file}")
|
||||
elif ".csd" in file:
|
||||
parse_translation_file(file)
|
||||
|
||||
for mod in mods_file:
|
||||
id = mod.get("Id")
|
||||
stats_key = mod.get("StatsKey1")
|
||||
if stats_key != None:
|
||||
stats_id = stats.get(stats_key)
|
||||
translation = mod_translations.get(stats_id)
|
||||
if translation:
|
||||
ref = translation.get("ref")
|
||||
matchers = translation.get("matchers")
|
||||
ids = stats_trade_ids.get(matchers[0].get("string"))
|
||||
if ids == None and len(matchers) > 1:
|
||||
ids = stats_trade_ids.get(matchers[1].get("string"))
|
||||
if ids == None:
|
||||
print("No trade ids found for", matchers[0].get("string"), "or", matchers[1].get("string"))
|
||||
trade = {"ids": ids}
|
||||
mods[id] = {
|
||||
"ref": translation.get("ref"),
|
||||
"better": 1,
|
||||
"id": stats_id,
|
||||
"matchers": translation.get("matchers"),
|
||||
"trade": trade
|
||||
}
|
||||
return stat
|
||||
|
||||
def parse_categories():
|
||||
# parse item categories
|
||||
for cat in item_class_categories:
|
||||
id = cat.get("_index")
|
||||
if id is None:
|
||||
continue
|
||||
|
||||
text = cat.get("Id")
|
||||
parsed_item_class_categories[id] = text
|
||||
def parse_trade_ids(self):
|
||||
for res in self.trade_stats["result"]:
|
||||
for entry in res.get("entries"):
|
||||
id = entry.get("id")
|
||||
text = entry.get("text")
|
||||
type = entry.get("type")
|
||||
text = self.convert_stat_name(text)
|
||||
|
||||
for cat in item_classes:
|
||||
id = cat.get("_index")
|
||||
if id is None:
|
||||
continue
|
||||
|
||||
text = cat.get("Id")
|
||||
parsed_item_classes[id] = {
|
||||
"name": text,
|
||||
"short": parsed_item_class_categories.get(cat.get("ItemClassCategory"))
|
||||
}
|
||||
if text not in self.stats_trade_ids:
|
||||
self.stats_trade_ids[text] = {}
|
||||
|
||||
def parse_items():
|
||||
|
||||
for entry in trade_items["result"]:
|
||||
for item in entry.get("entries"):
|
||||
name = item.get("name")
|
||||
if name == None:
|
||||
if type not in self.stats_trade_ids[text]:
|
||||
self.stats_trade_ids[text][type] = []
|
||||
|
||||
self.stats_trade_ids[text][type].append(id)
|
||||
|
||||
def parse_mod(self, id, english):
|
||||
matchers = []
|
||||
ref = None
|
||||
for lang in english:
|
||||
lang = self.convert_stat_name(lang)
|
||||
|
||||
if lang is None:
|
||||
continue
|
||||
text = item.get("text")
|
||||
type = item.get("type")
|
||||
# unique item
|
||||
flags = item.get("flags")
|
||||
|
||||
unique_items.append({
|
||||
|
||||
matcher = lang
|
||||
# remove prefixes
|
||||
if matcher[0] == "+":
|
||||
matcher = matcher[1:]
|
||||
|
||||
has_negate = matcher.find("negate") > 0
|
||||
|
||||
if has_negate:
|
||||
matcher = matcher[: matcher.find('"')].strip()
|
||||
|
||||
matchers.append({"string": matcher, "negate": has_negate})
|
||||
|
||||
if ref is None:
|
||||
ref = lang
|
||||
|
||||
id = id.split(" ")
|
||||
|
||||
for a in id:
|
||||
if a == "number_of_additional_arrows":
|
||||
matchers.append(
|
||||
{"string": "Bow Attacks fire # additional Arrows", "negate": False}
|
||||
)
|
||||
self.mod_translations[a] = {
|
||||
"ref": ref,
|
||||
"matchers": matchers,
|
||||
}
|
||||
|
||||
def parse_translation_file(self, file):
|
||||
dir = f"{self.cwd}/descriptions/{file}"
|
||||
print("Parsing", dir)
|
||||
stats_translations = open(dir, encoding="utf-16").read().split("\n")
|
||||
for i in range(0, len(stats_translations)):
|
||||
line = stats_translations[i]
|
||||
|
||||
if line == "description":
|
||||
# start of the translation block
|
||||
id = (
|
||||
stats_translations[i + 1].strip()[2:].replace('"', "")
|
||||
) # skip first 2 characters
|
||||
english = stats_translations[i + 3].strip() # skip first 2 characters
|
||||
start = english.find('"')
|
||||
end = english.rfind('"')
|
||||
english = english[start + 1 : end]
|
||||
|
||||
# convert to array so we can add the negated option later on, if one exists
|
||||
english = [english]
|
||||
|
||||
negate_english = stats_translations[i + 4].strip()
|
||||
if "lang" not in negate_english and "negate" in negate_english:
|
||||
# mod has a negated version
|
||||
end = negate_english.find("negate")
|
||||
negate_english = negate_english[
|
||||
negate_english.find('"') + 1 : end + len("negate")
|
||||
]
|
||||
english.append(negate_english)
|
||||
|
||||
self.parse_mod(id, english)
|
||||
|
||||
def parse_mods(self):
|
||||
for stat in self.stats_file:
|
||||
id = stat.get("_index")
|
||||
name = stat.get("Id")
|
||||
self.stats[id] = name
|
||||
|
||||
# translations
|
||||
for file in self.translation_files:
|
||||
if os.path.isdir(f"{self.cwd}/descriptions/{file}"):
|
||||
# traverse directories if it doesnt start with _
|
||||
if not file.startswith("_"):
|
||||
for _file in os.listdir(f"{self.cwd}/descriptions/{file}"):
|
||||
self.parse_translation_file(f"{file}/{_file}")
|
||||
elif ".csd" in file:
|
||||
self.parse_translation_file(file)
|
||||
|
||||
for mod in self.mods_file:
|
||||
id = mod.get("Id")
|
||||
stats_key = mod.get("StatsKey1")
|
||||
if stats_key is not None:
|
||||
stats_id = self.stats.get(stats_key)
|
||||
translation = self.mod_translations.get(stats_id)
|
||||
if translation:
|
||||
ref = translation.get("ref")
|
||||
matchers = translation.get("matchers")
|
||||
ids = self.stats_trade_ids.get(matchers[0].get("string"))
|
||||
# if ref.lower() == "bow attacks fire an additional arrow":
|
||||
# print("ID")
|
||||
# print(f"stats_id: {stats_id}")
|
||||
# print(f"matchers: {matchers}")
|
||||
# print(f"ref: {ref}")
|
||||
# print("break")
|
||||
# print(f"mod: {mod}")
|
||||
# print(f"stats_trade_ids: {stats_trade_ids}")
|
||||
# print(f"ids: {ids}")
|
||||
# print(f"translation: {translation}")
|
||||
if ids is None and len(matchers) > 1:
|
||||
ids = self.stats_trade_ids.get(matchers[1].get("string"))
|
||||
if ids is None:
|
||||
# print(
|
||||
# "No trade ids found for",
|
||||
# matchers[0].get("string"),
|
||||
# "or",
|
||||
# matchers[1].get("string"),
|
||||
# )
|
||||
self.matchers_no_trade_ids.append(matchers[0].get("string"))
|
||||
self.matchers_no_trade_ids.append(matchers[1].get("string"))
|
||||
elif ids is None:
|
||||
# print("No trade ids found for", matchers[0].get("string"))
|
||||
self.matchers_no_trade_ids.append(matchers[0].get("string"))
|
||||
trade = {"ids": ids}
|
||||
self.mods[id] = {
|
||||
"ref": translation.get("ref"),
|
||||
"better": 1,
|
||||
"id": stats_id,
|
||||
"matchers": translation.get("matchers"),
|
||||
"trade": trade,
|
||||
}
|
||||
|
||||
def parse_categories(self):
|
||||
# parse item categories
|
||||
for cat in self.item_class_categories:
|
||||
id = cat.get("_index")
|
||||
if id is None:
|
||||
continue
|
||||
|
||||
text = cat.get("Id")
|
||||
self.parsed_item_class_categories[id] = text
|
||||
|
||||
for cat in self.item_classes:
|
||||
id = cat.get("_index")
|
||||
if id is None:
|
||||
continue
|
||||
|
||||
text = cat.get("Id")
|
||||
self.parsed_item_classes[id] = {
|
||||
"name": text,
|
||||
"short": self.parsed_item_class_categories.get(
|
||||
cat.get("ItemClassCategory")
|
||||
),
|
||||
}
|
||||
|
||||
def parse_items(self):
|
||||
for entry in self.trade_items["result"]:
|
||||
for item in entry.get("entries"):
|
||||
name = item.get("name")
|
||||
if name is None:
|
||||
continue
|
||||
text = item.get("text")
|
||||
type = item.get("type")
|
||||
# unique item
|
||||
flags = item.get("flags")
|
||||
|
||||
self.unique_items.append(
|
||||
{
|
||||
"name": name,
|
||||
"refName": name,
|
||||
"namespace": "UNIQUE",
|
||||
"unique": {"base": type},
|
||||
}
|
||||
)
|
||||
|
||||
# parse base items
|
||||
for item in self.base_items:
|
||||
id = item.get("_index")
|
||||
if id is None:
|
||||
continue
|
||||
|
||||
name = item.get("Name")
|
||||
|
||||
if len(name) == 0:
|
||||
continue
|
||||
|
||||
class_key = item.get("ItemClassesKey")
|
||||
|
||||
self.items[id] = {
|
||||
"name": name,
|
||||
"refName": name,
|
||||
"namespace": "UNIQUE",
|
||||
"unique": {
|
||||
"base": type
|
||||
}
|
||||
})
|
||||
"namespace": "ITEM",
|
||||
"class": class_key,
|
||||
"dropLevel": item.get("DropLevel"),
|
||||
"width": item.get("Width"),
|
||||
"height": item.get("Height"),
|
||||
}
|
||||
|
||||
# parse base items
|
||||
for item in base_items:
|
||||
id = item.get("_index")
|
||||
if id is None:
|
||||
continue
|
||||
|
||||
name = item.get("Name")
|
||||
|
||||
if len(name) == 0:
|
||||
continue
|
||||
|
||||
class_key = item.get("ItemClassesKey")
|
||||
|
||||
items[id] = {
|
||||
"name": name,
|
||||
"refName": name,
|
||||
"namespace": "ITEM",
|
||||
"class": class_key,
|
||||
"dropLevel": item.get("DropLevel"),
|
||||
"width": item.get("Width"),
|
||||
"height": item.get("Height"),
|
||||
}
|
||||
|
||||
if class_key is not None:
|
||||
class_info = parsed_item_classes.get(class_key).get("short")
|
||||
# if class_info in ["Belt", "Ring", "Amulet"]:
|
||||
if class_info != None:
|
||||
items[id].update({
|
||||
"craftable": {
|
||||
"category": class_info
|
||||
if class_key is not None:
|
||||
class_info = self.parsed_item_classes.get(class_key).get("short")
|
||||
# if class_info in ["Belt", "Ring", "Amulet"]:
|
||||
if class_info is not None:
|
||||
self.items[id].update({"craftable": {"category": class_info}})
|
||||
|
||||
# convert base items into gems
|
||||
for gem in self.skill_gems:
|
||||
id = gem.get("BaseItemTypesKey")
|
||||
if id in self.items:
|
||||
self.items[id].update(
|
||||
{
|
||||
"namespace": "GEM",
|
||||
"gem": {"awakened": False, "transfigured": False},
|
||||
}
|
||||
})
|
||||
)
|
||||
|
||||
# convert base items into gems
|
||||
for gem in skill_gems:
|
||||
id = gem.get("BaseItemTypesKey")
|
||||
if id in items:
|
||||
items[id].update({
|
||||
"namespace": "GEM",
|
||||
"gem": {
|
||||
"awakened": False,
|
||||
"transfigured": False
|
||||
}
|
||||
})
|
||||
|
||||
# weapons and armor need the craftable tag ("craftable": "type (helmet, boots etc)")
|
||||
# convert base items into weapons
|
||||
for wpn in weapon_types:
|
||||
id = wpn.get("BaseItemTypesKey")
|
||||
|
||||
if id in items:
|
||||
class_key = items[id].get("class")
|
||||
items[id].update({
|
||||
"craftable": {
|
||||
"category": parsed_item_classes.get(class_key).get("short"),
|
||||
}
|
||||
})
|
||||
# weapons and armor need the craftable tag ("craftable": "type (helmet, boots etc)")
|
||||
# convert base items into weapons
|
||||
for wpn in self.weapon_types:
|
||||
id = wpn.get("BaseItemTypesKey")
|
||||
|
||||
# convert base items into armor types
|
||||
# armour needs the armour tag ("armour": "ar": [min, max], "ev": [min, max], "es": [min, max])
|
||||
# Changed since db only has once value for each stat
|
||||
for armour in armour_types:
|
||||
id = armour.get("BaseItemTypesKey")
|
||||
|
||||
ar = [armour.get("Armour"), armour.get("Armour")]
|
||||
ev = [armour.get("Evasion"), armour.get("Evasion")]
|
||||
es = [armour.get("EnergyShield"), armour.get("EnergyShield")]
|
||||
|
||||
armour = {}
|
||||
|
||||
if ar[1] > 1:
|
||||
armour["ar"] = ar
|
||||
|
||||
if ev[1] > 1:
|
||||
armour["ev"] = ev
|
||||
|
||||
if es[1] > 1:
|
||||
armour["es"] = es
|
||||
|
||||
if id in items:
|
||||
items[id].update({
|
||||
"armour": armour
|
||||
})
|
||||
if id in self.items:
|
||||
class_key = self.items[id].get("class")
|
||||
self.items[id].update(
|
||||
{
|
||||
"craftable": {
|
||||
"category": self.parsed_item_classes.get(class_key).get(
|
||||
"short"
|
||||
),
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
def parse_trade_exchange_items():
|
||||
items_ids = {}
|
||||
for id, item in items.items():
|
||||
items_ids[item.get("name")] = id
|
||||
# convert base items into armor types
|
||||
# armour needs the armour tag ("armour": "ar": [min, max], "ev": [min, max], "es": [min, max])
|
||||
# Changed since db only has once value for each stat
|
||||
for armour in self.armour_types:
|
||||
id = armour.get("BaseItemTypesKey")
|
||||
|
||||
for category in trade_exchange_items["result"]:
|
||||
for entry in category.get("entries"):
|
||||
item_name = entry.get("text")
|
||||
ar = [armour.get("Armour"), armour.get("Armour")]
|
||||
ev = [armour.get("Evasion"), armour.get("Evasion")]
|
||||
es = [armour.get("EnergyShield"), armour.get("EnergyShield")]
|
||||
|
||||
if not item_name in items_ids:
|
||||
armour = {}
|
||||
|
||||
if ar[1] > 1:
|
||||
armour["ar"] = ar
|
||||
|
||||
if ev[1] > 1:
|
||||
armour["ev"] = ev
|
||||
|
||||
if es[1] > 1:
|
||||
armour["es"] = es
|
||||
|
||||
if id in self.items:
|
||||
self.items[id].update({"armour": armour})
|
||||
|
||||
def parse_trade_exchange_items(self):
|
||||
items_ids = {}
|
||||
for id, item in self.items.items():
|
||||
items_ids[item.get("name")] = id
|
||||
|
||||
for category in self.trade_exchange_items["result"]:
|
||||
for entry in category.get("entries"):
|
||||
item_name = entry.get("text")
|
||||
|
||||
if item_name not in items_ids:
|
||||
continue
|
||||
|
||||
self.items[items_ids[item_name]].update(
|
||||
{
|
||||
"tradeTag": entry.get("id"),
|
||||
"icon": self.make_poe_cdn_url(entry.get("image")),
|
||||
}
|
||||
)
|
||||
|
||||
def resolve_item_classes(self):
|
||||
for item_class in self.item_classes:
|
||||
id = item_class.get("_index")
|
||||
if id is None:
|
||||
continue
|
||||
|
||||
items[items_ids[item_name]].update({
|
||||
"tradeTag": entry.get("id"),
|
||||
"icon": make_poe_cdn_url(entry.get("image"))
|
||||
})
|
||||
def resolve_item_classes():
|
||||
for item_class in item_classes:
|
||||
id = item_class.get("_index")
|
||||
if id is None:
|
||||
continue
|
||||
|
||||
name = item_class.get("Name")
|
||||
item_class_category = item_class.get("ItemClassCategory")
|
||||
|
||||
if id in items:
|
||||
items[id].update({
|
||||
"class": name,
|
||||
"category": parsed_item_classes.get(item_class_category)
|
||||
})
|
||||
name = item_class.get("Name")
|
||||
item_class_category = item_class.get("ItemClassCategory")
|
||||
|
||||
def write_to_file():
|
||||
f = open(f"{out_dir}/items.ndjson", "w", encoding="utf-8")
|
||||
items_name = sorted(items.values(), key=lambda x: x.get("name"))
|
||||
for item in items_name:
|
||||
name = item.get("name")
|
||||
namespace = item.get("namespace", "ITEM")
|
||||
craftable = item.get("craftable", None)
|
||||
gem = item.get("gem", None)
|
||||
armour = item.get("armour", None)
|
||||
width = item.get("width", None)
|
||||
height = item.get("height", None)
|
||||
tradeTag = item.get("tradeTag", None)
|
||||
icon = item.get("icon", "%NOT_FOUND%")
|
||||
|
||||
out = {
|
||||
"name": name,
|
||||
"refName": name,
|
||||
"namespace": namespace,
|
||||
"icon": icon,
|
||||
if id in self.items:
|
||||
self.items[id].update(
|
||||
{
|
||||
"class": name,
|
||||
"category": self.parsed_item_classes.get(item_class_category),
|
||||
}
|
||||
)
|
||||
|
||||
def write_to_file(self):
|
||||
f = open(f"{self.out_dir}/items.ndjson", "w", encoding="utf-8")
|
||||
items_name = sorted(self.items.values(), key=lambda x: x.get("name"))
|
||||
for item in items_name:
|
||||
name = item.get("name")
|
||||
namespace = item.get("namespace", "ITEM")
|
||||
craftable = item.get("craftable", None)
|
||||
gem = item.get("gem", None)
|
||||
armour = item.get("armour", None)
|
||||
width = item.get("width", None)
|
||||
height = item.get("height", None)
|
||||
tradeTag = item.get("tradeTag", None)
|
||||
icon = item.get("icon", "%NOT_FOUND%")
|
||||
|
||||
out = {
|
||||
"name": name,
|
||||
"refName": name,
|
||||
"namespace": namespace,
|
||||
"icon": icon,
|
||||
}
|
||||
|
||||
if tradeTag:
|
||||
out.update({"tradeTag": tradeTag})
|
||||
|
||||
if craftable:
|
||||
out.update({"craftable": craftable})
|
||||
|
||||
if armour:
|
||||
out.update({"armour": armour})
|
||||
|
||||
if width:
|
||||
out.update({"w": width})
|
||||
|
||||
if height:
|
||||
out.update({"h": height})
|
||||
|
||||
if gem:
|
||||
out.update({"gem": gem})
|
||||
|
||||
f.write(json.dumps(out) + "\n")
|
||||
|
||||
for item in self.unique_items:
|
||||
f.write(json.dumps(item) + "\n")
|
||||
|
||||
f.close()
|
||||
|
||||
# somehow not a thing? - possibly missing some data
|
||||
self.mods["physical_local_damage_+%"] = {
|
||||
"ref": "#% increased Physical Damage",
|
||||
"better": 1,
|
||||
"id": "physical_local_damage_+%",
|
||||
"matchers": [{"string": "#% increased Physical Damage"}],
|
||||
"trade": {
|
||||
"ids": {
|
||||
"explicit": ["explicit.stat_419810844"],
|
||||
"fractured": ["fractured.stat_419810844"],
|
||||
"rune": ["rune.stat_419810844"],
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
if tradeTag:
|
||||
out.update({
|
||||
"tradeTag": tradeTag
|
||||
})
|
||||
|
||||
if craftable:
|
||||
out.update({
|
||||
"craftable": craftable
|
||||
})
|
||||
|
||||
if armour:
|
||||
out.update({
|
||||
"armour": armour
|
||||
})
|
||||
|
||||
if width:
|
||||
out.update({
|
||||
"w": width
|
||||
})
|
||||
|
||||
if height:
|
||||
out.update({
|
||||
"h": height
|
||||
})
|
||||
|
||||
if gem:
|
||||
out.update({
|
||||
"gem": gem
|
||||
})
|
||||
|
||||
f.write(json.dumps(out) + "\n")
|
||||
|
||||
for item in unique_items:
|
||||
f.write(json.dumps(item) + "\n")
|
||||
|
||||
f.close()
|
||||
|
||||
# somehow not a thing? - possibly missing some data
|
||||
mods["physical_local_damage_+%"] = {
|
||||
"ref": "#% increased Physical Damage", "better": 1, "id": "physical_local_damage_+%", "matchers": [{"string": "#% increased Physical Damage"}], "trade": {"ids": {"explicit": ["explicit.stat_419810844"], "fractured": ["fractured.stat_419810844"], "rune": ["rune.stat_419810844"]}}
|
||||
}
|
||||
|
||||
seen = set()
|
||||
m = open(f"{out_dir}/stats.ndjson", "w", encoding="utf-8")
|
||||
for mod in mods.values():
|
||||
id = mod.get("id")
|
||||
|
||||
if id in seen:
|
||||
continue
|
||||
|
||||
m.write(json.dumps(mod) + "\n")
|
||||
seen.add(id)
|
||||
m.close()
|
||||
|
||||
with open(f"{get_script_dir()}/pyDumps/items_dump.json", "w", encoding="utf-8") as f:
|
||||
f.write(json.dumps(items, indent=4))
|
||||
|
||||
with open(f"{get_script_dir()}/pyDumps/mods_dump.json", "w", encoding="utf-8") as f:
|
||||
f.write(json.dumps(mods, indent=4))
|
||||
seen = set()
|
||||
m = open(f"{self.out_dir}/stats.ndjson", "w", encoding="utf-8")
|
||||
for mod in self.mods.values():
|
||||
id = mod.get("id")
|
||||
|
||||
if id in seen:
|
||||
continue
|
||||
|
||||
m.write(json.dumps(mod) + "\n")
|
||||
seen.add(id)
|
||||
m.close()
|
||||
|
||||
with open(
|
||||
f"{self.get_script_dir()}/pyDumps/{self.lang+'-out'}/items_dump.json",
|
||||
"w",
|
||||
encoding="utf-8",
|
||||
) as f:
|
||||
f.write(json.dumps(self.items, indent=4))
|
||||
|
||||
with open(
|
||||
f"{self.get_script_dir()}/pyDumps/{self.lang+'-out'}/mods_dump.json",
|
||||
"w",
|
||||
encoding="utf-8",
|
||||
) as f:
|
||||
f.write(json.dumps(self.mods, indent=4))
|
||||
|
||||
with open(
|
||||
f"{self.get_script_dir()}/pyDumps/{self.lang+'-out'}/matchers_no_trade_ids.json",
|
||||
"w",
|
||||
encoding="utf-8",
|
||||
) as f:
|
||||
f.write(json.dumps(self.matchers_no_trade_ids, indent=4))
|
||||
|
||||
def run(self):
|
||||
self.parse_trade_ids()
|
||||
self.parse_mods()
|
||||
self.parse_categories()
|
||||
self.parse_items()
|
||||
self.resolve_item_classes()
|
||||
self.parse_trade_exchange_items()
|
||||
self.write_to_file()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
parse_trade_ids()
|
||||
parse_mods()
|
||||
parse_categories()
|
||||
parse_items()
|
||||
resolve_item_classes()
|
||||
parse_trade_exchange_items()
|
||||
write_to_file()
|
||||
|
||||
Parser().run()
|
||||
|
||||
9
renderer/public/.DS_Store/vendor/client/parserRunner.py
vendored
Normal file
9
renderer/public/.DS_Store/vendor/client/parserRunner.py
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
from parser import Parser
|
||||
|
||||
SUPPORTED_LANGUAGES = ["en", "ru"]
|
||||
|
||||
if __name__ == "__main__":
|
||||
for lang in SUPPORTED_LANGUAGES:
|
||||
print(f"Generating {lang} tables")
|
||||
parser = Parser(lang)
|
||||
parser.run()
|
||||
5812
renderer/public/.DS_Store/vendor/client/pyDumps/en-out/matchers_no_trade_ids.json
vendored
Normal file
5812
renderer/public/.DS_Store/vendor/client/pyDumps/en-out/matchers_no_trade_ids.json
vendored
Normal file
File diff suppressed because it is too large
Load Diff
@@ -27679,10 +27679,24 @@
|
||||
{
|
||||
"string": "Bow Attacks fire an additional Arrow",
|
||||
"negate": false
|
||||
},
|
||||
{
|
||||
"string": "Bow Attacks fire # additional Arrows",
|
||||
"negate": false
|
||||
}
|
||||
],
|
||||
"trade": {
|
||||
"ids": null
|
||||
"ids": {
|
||||
"explicit": [
|
||||
"explicit.stat_3885405204"
|
||||
],
|
||||
"implicit": [
|
||||
"implicit.stat_3885405204"
|
||||
],
|
||||
"enchant": [
|
||||
"enchant.stat_3885405204"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"AdditionalArrow2": {
|
||||
@@ -27693,10 +27707,24 @@
|
||||
{
|
||||
"string": "Bow Attacks fire an additional Arrow",
|
||||
"negate": false
|
||||
},
|
||||
{
|
||||
"string": "Bow Attacks fire # additional Arrows",
|
||||
"negate": false
|
||||
}
|
||||
],
|
||||
"trade": {
|
||||
"ids": null
|
||||
"ids": {
|
||||
"explicit": [
|
||||
"explicit.stat_3885405204"
|
||||
],
|
||||
"implicit": [
|
||||
"implicit.stat_3885405204"
|
||||
],
|
||||
"enchant": [
|
||||
"enchant.stat_3885405204"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"AdditionalAmmo1": {
|
||||
@@ -35578,7 +35606,11 @@
|
||||
}
|
||||
],
|
||||
"trade": {
|
||||
"ids": null
|
||||
"ids": {
|
||||
"implicit": [
|
||||
"implicit.stat_535217483"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"SpearImplicitDisableOffhandSlot1": {
|
||||
@@ -35812,10 +35844,24 @@
|
||||
{
|
||||
"string": "Bow Attacks fire an additional Arrow",
|
||||
"negate": false
|
||||
},
|
||||
{
|
||||
"string": "Bow Attacks fire # additional Arrows",
|
||||
"negate": false
|
||||
}
|
||||
],
|
||||
"trade": {
|
||||
"ids": null
|
||||
"ids": {
|
||||
"explicit": [
|
||||
"explicit.stat_3885405204"
|
||||
],
|
||||
"implicit": [
|
||||
"implicit.stat_3885405204"
|
||||
],
|
||||
"enchant": [
|
||||
"enchant.stat_3885405204"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"BowImplicitProjectileAttackRange1": {
|
||||
@@ -45823,10 +45869,24 @@
|
||||
{
|
||||
"string": "Bow Attacks fire an additional Arrow",
|
||||
"negate": false
|
||||
},
|
||||
{
|
||||
"string": "Bow Attacks fire # additional Arrows",
|
||||
"negate": false
|
||||
}
|
||||
],
|
||||
"trade": {
|
||||
"ids": null
|
||||
"ids": {
|
||||
"explicit": [
|
||||
"explicit.stat_3885405204"
|
||||
],
|
||||
"implicit": [
|
||||
"implicit.stat_3885405204"
|
||||
],
|
||||
"enchant": [
|
||||
"enchant.stat_3885405204"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"CorruptionAdditionalAmmo1": {
|
||||
@@ -65380,10 +65440,24 @@
|
||||
{
|
||||
"string": "Bow Attacks fire an additional Arrow",
|
||||
"negate": false
|
||||
},
|
||||
{
|
||||
"string": "Bow Attacks fire # additional Arrows",
|
||||
"negate": false
|
||||
}
|
||||
],
|
||||
"trade": {
|
||||
"ids": null
|
||||
"ids": {
|
||||
"explicit": [
|
||||
"explicit.stat_3885405204"
|
||||
],
|
||||
"implicit": [
|
||||
"implicit.stat_3885405204"
|
||||
],
|
||||
"enchant": [
|
||||
"enchant.stat_3885405204"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"UniqueFlaskLifeRecoveryRate1": {
|
||||
@@ -3007,6 +3007,7 @@
|
||||
{"name": "Grand Spectrum", "refName": "Grand Spectrum", "namespace": "UNIQUE", "unique": {"base": "Emerald"}}
|
||||
{"name": "Grand Spectrum", "refName": "Grand Spectrum", "namespace": "UNIQUE", "unique": {"base": "Ruby"}}
|
||||
{"name": "Grand Spectrum", "refName": "Grand Spectrum", "namespace": "UNIQUE", "unique": {"base": "Sapphire"}}
|
||||
{"name": "Heroic Tragedy", "refName": "Heroic Tragedy", "namespace": "UNIQUE", "unique": {"base": "Timeless Jewel"}}
|
||||
{"name": "Prism of Belief", "refName": "Prism of Belief", "namespace": "UNIQUE", "unique": {"base": "Diamond"}}
|
||||
{"name": "The Adorned", "refName": "The Adorned", "namespace": "UNIQUE", "unique": {"base": "Diamond"}}
|
||||
{"name": "Brain Rattler", "refName": "Brain Rattler", "namespace": "UNIQUE", "unique": {"base": "Studded Greatclub"}}
|
||||
@@ -3021,6 +3022,11 @@
|
||||
{"name": "Guiding Palm", "refName": "Guiding Palm", "namespace": "UNIQUE", "unique": {"base": "Shrine Sceptre"}}
|
||||
{"name": "Hoghunt", "refName": "Hoghunt", "namespace": "UNIQUE", "unique": {"base": "Felled Greatclub"}}
|
||||
{"name": "Hrimnor's Hymn", "refName": "Hrimnor's Hymn", "namespace": "UNIQUE", "unique": {"base": "Oak Greathammer"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "War Spear"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "Vampiric Blade"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "Charred Shortsword"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "Corroded Longsword"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "Rippled Greatsword"}}
|
||||
{"name": "Lifesprig", "refName": "Lifesprig", "namespace": "UNIQUE", "unique": {"base": "Attuned Wand"}}
|
||||
{"name": "Matsya", "refName": "Matsya", "namespace": "UNIQUE", "unique": {"base": "Crescent Quarterstaff"}}
|
||||
{"name": "Mist Whisper", "refName": "Mist Whisper", "namespace": "UNIQUE", "unique": {"base": "Makeshift Crossbow"}}
|
||||
|
||||
@@ -114,7 +114,7 @@
|
||||
{"ref": "+#% to all Maximum Elemental Resistances", "better": 1, "id": "additional_maximum_all_elemental_resistances_%", "matchers": [{"string": "#% to all Maximum Elemental Resistances", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_1978899297"], "implicit": ["implicit.stat_1978899297"], "enchant": ["enchant.stat_1978899297"]}}}
|
||||
{"ref": "#% increased Energy Shield Recharge Rate", "better": 1, "id": "energy_shield_recharge_rate_+%", "matchers": [{"string": "#% increased Energy Shield Recharge Rate", "negate": false}, {"string": "#% reduced Energy Shield Recharge Rate", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2339757871"]}}}
|
||||
{"ref": "#% chance to Pierce an Enemy", "better": 1, "id": "base_chance_to_pierce_%", "matchers": [{"string": "#% chance to Pierce an Enemy", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_2321178454"], "implicit": ["implicit.stat_2321178454"], "enchant": ["enchant.stat_2321178454"]}}}
|
||||
{"ref": "Bow Attacks fire an additional Arrow", "better": 1, "id": "number_of_additional_arrows", "matchers": [{"string": "Bow Attacks fire an additional Arrow", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "Bow Attacks fire an additional Arrow", "better": 1, "id": "number_of_additional_arrows", "matchers": [{"string": "Bow Attacks fire an additional Arrow", "negate": false}, {"string": "Bow Attacks fire # additional Arrows", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_3885405204"], "implicit": ["implicit.stat_3885405204"], "enchant": ["enchant.stat_3885405204"]}}}
|
||||
{"ref": "Loads an additional bolt", "better": 1, "id": "base_number_of_crossbow_bolts", "matchers": [{"string": "Loads an additional bolt", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_1039380318"], "implicit": ["implicit.stat_1039380318"], "enchant": ["enchant.stat_1039380318"]}}}
|
||||
{"ref": "#% increased Flask Life Recovery rate", "better": 1, "id": "flask_life_recovery_rate_+%", "matchers": [{"string": "#% increased Flask Life Recovery rate", "negate": false}, {"string": "#% reduced Flask Life Recovery rate", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_51994685"]}}}
|
||||
{"ref": "#% increased Flask Mana Recovery rate", "better": 1, "id": "flask_mana_recovery_rate_+%", "matchers": [{"string": "#% increased Flask Mana Recovery rate", "negate": false}, {"string": "#% reduced Flask Mana Recovery rate", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1412217137"]}}}
|
||||
@@ -197,7 +197,7 @@
|
||||
{"ref": "Causes Enemies to Explode on Critical kill, for #% of their Life as Physical Damage", "better": 1, "id": "local_explode_on_kill_with_crit_%_physical_damage_to_deal", "matchers": [{"string": "Causes Enemies to Explode on Critical kill, for #% of their Life as Physical Damage", "negate": false}], "trade": {"ids": {"implicit": ["implicit.stat_1541903247"]}}}
|
||||
{"ref": "Crushes Enemies on Hit", "better": 1, "id": "local_crush_on_hit", "matchers": [{"string": "Crushes Enemies on Hit", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "#% chance to Maim on Hit", "better": 1, "id": "local_maim_on_hit_%", "matchers": [{"string": "#% chance to Maim on Hit", "negate": false}], "trade": {"ids": {"enchant": ["enchant.stat_2763429652"]}}}
|
||||
{"ref": "#% increased Projectile Speed when thrown", "better": 1, "id": "local_projectile_speed_+%", "matchers": [{"string": "#% increased Projectile Speed when thrown", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "#% increased Projectile Speed when thrown", "better": 1, "id": "local_projectile_speed_+%", "matchers": [{"string": "#% increased Projectile Speed when thrown", "negate": false}], "trade": {"ids": {"implicit": ["implicit.stat_535217483"]}}}
|
||||
{"ref": "Uses both hand slots", "better": 1, "id": "local_weapon_uses_both_hands", "matchers": [{"string": "Uses both hand slots", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "#% chance to Blind Enemies on hit", "better": 1, "id": "local_chance_to_blind_on_hit_%", "matchers": [{"string": "#% chance to Blind Enemies on hit", "negate": false}], "trade": {"ids": {"enchant": ["enchant.stat_2301191210"]}}}
|
||||
{"ref": "#% chance to Poison on Hit", "better": 1, "id": "local_poison_on_hit_%", "matchers": [{"string": "#% chance to Poison on Hit", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_795138349"], "enchant": ["enchant.stat_3885634897"], "rune": ["rune.stat_3885634897"]}}}
|
||||
|
||||
0
renderer/public/.DS_Store/vendor/json-api/ko/.gitkeep
vendored
Normal file
0
renderer/public/.DS_Store/vendor/json-api/ko/.gitkeep
vendored
Normal file
0
renderer/public/.DS_Store/vendor/json-api/ru/.gitkeep
vendored
Normal file
0
renderer/public/.DS_Store/vendor/json-api/ru/.gitkeep
vendored
Normal file
86
renderer/public/.DS_Store/vendor/pseudo-stats/add-to-new.py
vendored
Normal file
86
renderer/public/.DS_Store/vendor/pseudo-stats/add-to-new.py
vendored
Normal file
@@ -0,0 +1,86 @@
|
||||
import json
|
||||
import os
|
||||
|
||||
|
||||
def get_script_dir():
|
||||
"""Returns the directory where the script is located."""
|
||||
return os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
|
||||
# List of localization codes
|
||||
localizations = ["en", "ru", "ko", "cmn-Hant"]
|
||||
|
||||
|
||||
def process_filtered_pseudo_stats(loc):
|
||||
filtered_file_path = f"{get_script_dir()}/{loc}/pseudo_stats.ndjson"
|
||||
stats_file_path = f"{get_script_dir()}/../../data/{loc}/stats.ndjson"
|
||||
output_file_path = f"{get_script_dir()}/../../data/{loc}/updated_stats.ndjson"
|
||||
|
||||
# Load all stats at the start to avoid repeated loading
|
||||
with open(stats_file_path, "r", encoding="utf-8") as stats_file:
|
||||
original_stats_lines = [json.loads(line) for line in stats_file]
|
||||
|
||||
updated_lines = []
|
||||
matched_keys = set() # To track keys that have been updated
|
||||
|
||||
with open(filtered_file_path, "r", encoding="utf-8") as filtered_file:
|
||||
for line in filtered_file:
|
||||
try:
|
||||
pseudo_object = json.loads(line)
|
||||
# Check for non-pseudo keys
|
||||
if "trade" in pseudo_object and "ids" in pseudo_object["trade"]:
|
||||
non_pseudo_found = any(
|
||||
key in pseudo_object["trade"]["ids"]
|
||||
for key in ["explicit", "implicit", "enchant"]
|
||||
)
|
||||
|
||||
if non_pseudo_found:
|
||||
# Search for the corresponding stat
|
||||
for stats_object in original_stats_lines:
|
||||
# Check if the trade.ids matches with non-pseudo keys
|
||||
for key in ["explicit", "implicit", "enchant"]:
|
||||
if key in pseudo_object["trade"]["ids"]:
|
||||
value_to_find = pseudo_object["trade"]["ids"][key]
|
||||
# Ensure stats_object exists and has 'trade' and 'ids' before accessing
|
||||
if (
|
||||
stats_object.get("trade") is not None
|
||||
and stats_object["trade"].get("ids") is not None
|
||||
and stats_object["trade"]["ids"].get(key)
|
||||
== value_to_find
|
||||
):
|
||||
# Cut the line and add the pseudo value
|
||||
new_stats_object = (
|
||||
stats_object.copy()
|
||||
) # Use copy to avoid modifying original
|
||||
new_stats_object["trade"]["ids"]["pseudo"] = (
|
||||
pseudo_object["trade"]["ids"].get("pseudo")
|
||||
)
|
||||
updated_lines.append(new_stats_object)
|
||||
matched_keys.add(
|
||||
json.dumps(stats_object, ensure_ascii=False)
|
||||
)
|
||||
break
|
||||
|
||||
# If not matched, add the pseudo object as is
|
||||
else:
|
||||
updated_lines.append(pseudo_object)
|
||||
except json.JSONDecodeError:
|
||||
print(f"Error parsing JSON from filtered file: {line}")
|
||||
|
||||
# Write updated lines and remaining original stats to a new stats file
|
||||
with open(output_file_path, "w", encoding="utf-8") as output_file:
|
||||
# Write new lines at the top
|
||||
for updated_line in updated_lines:
|
||||
output_file.write(json.dumps(updated_line, ensure_ascii=False) + "\n")
|
||||
|
||||
# Write the original lines that have not been matched
|
||||
for original_line in original_stats_lines:
|
||||
if json.dumps(original_line, ensure_ascii=False) not in matched_keys:
|
||||
output_file.write(json.dumps(original_line, ensure_ascii=False) + "\n")
|
||||
|
||||
print(f"Updated stats written to {output_file_path} for {loc}.")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
for loc in localizations:
|
||||
process_filtered_pseudo_stats(loc)
|
||||
292
renderer/public/.DS_Store/vendor/pseudo-stats/all-pseudo.ndjson
vendored
Normal file
292
renderer/public/.DS_Store/vendor/pseudo-stats/all-pseudo.ndjson
vendored
Normal file
@@ -0,0 +1,292 @@
|
||||
{"ref": "# Crafted Modifiers", "better": 1, "matchers": [{"string": "# Crafted Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_mods"]}}}
|
||||
{"ref": "# Crafted Prefix Modifiers", "better": 1, "matchers": [{"string": "# Crafted Prefix Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_prefix_mods"]}}}
|
||||
{"ref": "# Crafted Suffix Modifiers", "better": 1, "matchers": [{"string": "# Crafted Suffix Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_suffix_mods"]}}}
|
||||
{"ref": "# Empty Modifiers", "better": 1, "matchers": [{"string": "# Empty Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_affix_mods"]}}}
|
||||
{"ref": "# Empty Prefix Modifiers", "better": 1, "matchers": [{"string": "# Empty Prefix Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_prefix_mods"]}}}
|
||||
{"ref": "# Empty Suffix Modifiers", "better": 1, "matchers": [{"string": "# Empty Suffix Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_suffix_mods"]}}}
|
||||
{"ref": "# Enchant Modifiers", "better": 1, "matchers": [{"string": "# Enchant Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_enchant_mods"]}}}
|
||||
{"ref": "# Fractured Modifiers", "better": 1, "matchers": [{"string": "# Fractured Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_fractured_mods"]}}}
|
||||
{"ref": "# Implicit Modifiers", "better": 1, "matchers": [{"string": "# Implicit Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_implicit_mods"]}}}
|
||||
{"ref": "# Life Regenerated per Second", "better": 1, "matchers": [{"string": "# Life Regenerated per Second "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life_regen"]}}}
|
||||
{"ref": "# Modifiers", "better": 1, "matchers": [{"string": "# Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_affix_mods"]}}}
|
||||
{"ref": "# Notable Passive Skills", "better": 1, "matchers": [{"string": "# Notable Passive Skills "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_notable_passive_skills"]}}}
|
||||
{"ref": "# Prefix Modifiers", "better": 1, "matchers": [{"string": "# Prefix Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_prefix_mods"]}}}
|
||||
{"ref": "# Suffix Modifiers", "better": 1, "matchers": [{"string": "# Suffix Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_suffix_mods"]}}}
|
||||
{"ref": "# total Elemental Resistances", "better": 1, "matchers": [{"string": "# total Elemental Resistances "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_count_elemental_resistances"]}}}
|
||||
{"ref": "# total Resistances", "better": 1, "matchers": [{"string": "# total Resistances "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_count_resistances"]}}}
|
||||
{"ref": "#% Base Defence Percentile", "better": 1, "matchers": [{"string": "#% Base Defence Percentile "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_base_defence_percentile"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Atlas Memories", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Atlas Memories "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_memory_line"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Conqueror Maps", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Conqueror Maps "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_conqueror_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Elder Maps", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Elder Maps "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_elder_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Maven Invitations", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Maven Invitations "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_maven_invitation"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Scarabs", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Scarabs "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_scarab"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Shaper Maps", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Shaper Maps "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_shaper_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Unique Maps", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Unique Maps "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_unique_map"]}}}
|
||||
{"ref": "#% increased Burning Damage", "better": 1, "matchers": [{"string": "#% increased Burning Damage"}, {"string": "#% reduced Burning Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_burning_damage"], "explicit": ["explicit.stat_1175385867"], "implicit": ["implicit.stat_1175385867"], "fractured": ["fractured.stat_1175385867"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "matchers": [{"string": "#% increased Cold Damage"}, {"string": "#% reduced Cold Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage"], "explicit": ["explicit.stat_3291658075"], "implicit": ["implicit.stat_3291658075"], "fractured": ["fractured.stat_3291658075"], "scourge": ["scourge.stat_3291658075"], "crafted": ["crafted.stat_3291658075"]}}}
|
||||
{"ref": "#% increased Cold Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% increased Cold Damage with Attack Skills"}, {"string": "#% reduced Cold Damage with Attack Skills", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage_with_attack_skills"], "explicit": ["explicit.stat_860668586"], "implicit": ["implicit.stat_860668586"]}}}
|
||||
{"ref": "#% increased Cold Spell Damage", "better": 1, "matchers": [{"string": "#% increased Cold Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_spell_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "matchers": [{"string": "#% increased Elemental Damage"}, {"string": "Has #% increased Elemental Damage"}, {"string": "#% reduced Elemental Damage", "negate": true}, {"string": "Has #% reduced Elemental Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage"], "explicit": ["explicit.stat_3141070085"], "implicit": ["implicit.stat_3141070085"], "fractured": ["fractured.stat_3141070085"], "enchant": ["enchant.stat_692420067"], "scourge": ["scourge.stat_3141070085"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% increased Elemental Damage with Attack Skills"}, {"string": "#% reduced Elemental Damage with Attack Skills", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage_with_attack_skills"], "explicit": ["explicit.stat_387439868"], "implicit": ["implicit.stat_387439868"], "fractured": ["fractured.stat_387439868"], "scourge": ["scourge.stat_387439868"], "crafted": ["crafted.stat_387439868"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "matchers": [{"string": "#% increased Fire Damage"}, {"string": "#% reduced Fire Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage"], "explicit": ["explicit.stat_3962278098"], "implicit": ["implicit.stat_3962278098"], "fractured": ["fractured.stat_3962278098"], "scourge": ["scourge.stat_3962278098"], "crafted": ["crafted.stat_3962278098"]}}}
|
||||
{"ref": "#% increased Fire Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% increased Fire Damage with Attack Skills"}, {"string": "#% reduced Fire Damage with Attack Skills", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage_with_attack_skills"], "implicit": ["implicit.stat_2468413380"]}}}
|
||||
{"ref": "#% increased Fire Spell Damage", "better": 1, "matchers": [{"string": "#% increased Fire Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_spell_damage"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "matchers": [{"string": "#% increased Lightning Damage"}, {"string": "#% reduced Lightning Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage"], "explicit": ["explicit.stat_2231156303"], "implicit": ["implicit.stat_2231156303"], "fractured": ["fractured.stat_2231156303"], "scourge": ["scourge.stat_2231156303"], "crafted": ["crafted.stat_2231156303"]}}}
|
||||
{"ref": "#% increased Lightning Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% increased Lightning Damage with Attack Skills"}, {"string": "#% reduced Lightning Damage with Attack Skills", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage_with_attack_skills"], "explicit": ["explicit.stat_4208907162"], "implicit": ["implicit.stat_4208907162"]}}}
|
||||
{"ref": "#% increased Lightning Spell Damage", "better": 1, "matchers": [{"string": "#% increased Lightning Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_spell_damage"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "matchers": [{"string": "#% increased Mana Regeneration Rate"}, {"string": "#% reduced Mana Regeneration Rate", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_mana_regen"], "explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "fractured": ["fractured.stat_789117908"], "scourge": ["scourge.stat_789117908"], "crafted": ["crafted.stat_789117908"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "matchers": [{"string": "#% increased Movement Speed"}, {"string": "#% reduced Movement Speed", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_movement_speed"], "explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "fractured": ["fractured.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "scourge": ["scourge.stat_2250533757"], "crafted": ["crafted.stat_2250533757"]}}}
|
||||
{"ref": "#% increased Rarity of Items found", "better": 1, "matchers": [{"string": "#% increased Rarity of Items found"}, {"string": "#% reduced Rarity of Items found", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_rarity"], "explicit": ["explicit.stat_3917489142"], "implicit": ["implicit.stat_3917489142"], "fractured": ["fractured.stat_3917489142"], "scourge": ["scourge.stat_3917489142"], "crafted": ["crafted.stat_3917489142"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "matchers": [{"string": "#% increased Spell Damage"}, {"string": "#% reduced Spell Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_spell_damage"], "explicit": ["explicit.stat_2974417149"], "implicit": ["implicit.stat_2974417149"], "fractured": ["fractured.stat_2974417149"], "enchant": ["enchant.stat_2974417149"], "scourge": ["scourge.stat_2974417149"], "crafted": ["crafted.stat_2974417149"]}}}
|
||||
{"ref": "#% of Life Regenerated per Second", "better": 1, "matchers": [{"string": "#% of Life Regenerated per Second "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_percent_life_regen"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Life", "dp": true, "better": 1, "matchers": [{"string": "#% of Physical Attack Damage Leeched as Life"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_life"], "explicit": ["explicit.stat_3593843976", "explicit.stat_55876295"], "implicit": ["implicit.stat_3593843976", "implicit.stat_55876295"], "fractured": ["fractured.stat_3593843976", "fractured.stat_55876295"], "scourge": ["scourge.stat_3593843976"], "crafted": ["crafted.stat_3593843976", "crafted.stat_55876295"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Mana", "dp": true, "better": 1, "matchers": [{"string": "#% of Physical Attack Damage Leeched as Mana"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_mana"], "explicit": ["explicit.stat_3237948413", "explicit.stat_669069897"], "implicit": ["implicit.stat_3237948413", "implicit.stat_669069897"], "fractured": ["fractured.stat_3237948413", "fractured.stat_669069897"], "enchant": ["enchant.stat_669069897"], "scourge": ["scourge.stat_3237948413"], "crafted": ["crafted.stat_3237948413", "crafted.stat_669069897"]}}}
|
||||
{"ref": "#% total increased maximum Energy Shield", "better": 1, "matchers": [{"string": "#% total increased maximum Energy Shield "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_energy_shield"]}}}
|
||||
{"ref": "#% total increased Physical Damage", "better": 1, "matchers": [{"string": "#% total increased Physical Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_physical_damage"]}}}
|
||||
{"ref": "+# total maximum Energy Shield", "better": 1, "matchers": [{"string": "+# total maximum Energy Shield "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_energy_shield"]}}}
|
||||
{"ref": "+# total maximum Life", "better": 1, "matchers": [{"string": "+# total maximum Life "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life"]}}}
|
||||
{"ref": "+# total maximum Mana", "better": 1, "matchers": [{"string": "+# total maximum Mana "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_mana"]}}}
|
||||
{"ref": "+# total to all Attributes", "better": 1, "matchers": [{"string": "+# total to all Attributes "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_attributes"]}}}
|
||||
{"ref": "+# total to Dexterity", "better": 1, "matchers": [{"string": "+# total to Dexterity "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_dexterity"]}}}
|
||||
{"ref": "+# total to Intelligence", "better": 1, "matchers": [{"string": "+# total to Intelligence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_intelligence"]}}}
|
||||
{"ref": "+# total to Level of Socketed Aura Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Aura Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_aura_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Bow Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Bow Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_bow_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Chaos Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Chaos Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_chaos_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Cold Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Cold Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_cold_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Curse Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Curse Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_curse_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Dexterity Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Dexterity Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_dexterity_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Elemental Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Elemental Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_elemental_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Fire Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Fire Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_fire_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Golem Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Golem Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_golem_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Intelligence Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Intelligence Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_intelligence_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Lightning Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Lightning Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_lightning_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Melee Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Melee Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_melee_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Minion Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Minion Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_minion_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Movement Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Movement Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_movement_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Projectile Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Projectile Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_projectile_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Skill Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Skill Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_skill_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Spell Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Spell Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_spell_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Strength Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Strength Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_strength_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Support Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Support Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_support_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Vaal Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Vaal Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_vaal_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Warcry Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Warcry Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_warcry_gem_levels"]}}}
|
||||
{"ref": "+# total to Strength", "better": 1, "matchers": [{"string": "+# total to Strength "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_strength"]}}}
|
||||
{"ref": "+#% Global Critical Strike Chance", "better": 1, "matchers": [{"string": "+#% Global Critical Strike Chance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_chance"]}}}
|
||||
{"ref": "+#% Global Critical Strike Multiplier", "better": 1, "matchers": [{"string": "+#% Global Critical Strike Multiplier "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_multiplier"]}}}
|
||||
{"ref": "+#% total Attack Speed", "better": 1, "matchers": [{"string": "+#% total Attack Speed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_attack_speed"]}}}
|
||||
{"ref": "+#% total Cast Speed", "better": 1, "matchers": [{"string": "+#% total Cast Speed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cast_speed"]}}}
|
||||
{"ref": "+#% total Critical Strike Chance for Spells", "better": 1, "matchers": [{"string": "+#% total Critical Strike Chance for Spells "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_critical_strike_chance_for_spells"]}}}
|
||||
{"ref": "+#% total Elemental Resistance", "better": 1, "matchers": [{"string": "+#% total Elemental Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_elemental_resistance"]}}}
|
||||
{"ref": "+#% total Resistance", "better": 1, "matchers": [{"string": "+#% total Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_resistance"]}}}
|
||||
{"ref": "+#% total to all Elemental Resistances", "better": 1, "matchers": [{"string": "+#% total to all Elemental Resistances "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_elemental_resistances"]}}}
|
||||
{"ref": "+#% total to Chaos Resistance", "better": 1, "matchers": [{"string": "+#% total to Chaos Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_chaos_resistance"]}}}
|
||||
{"ref": "+#% total to Cold Resistance", "better": 1, "matchers": [{"string": "+#% total to Cold Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cold_resistance"]}}}
|
||||
{"ref": "+#% total to Fire Resistance", "better": 1, "matchers": [{"string": "+#% total to Fire Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_fire_resistance"]}}}
|
||||
{"ref": "+#% total to Lightning Resistance", "better": 1, "matchers": [{"string": "+#% total to Lightning Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_lightning_resistance"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage", "better": 1, "matchers": [{"string": "Adds # to # Chaos Damage"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage"], "explicit": ["explicit.stat_2223678961", "explicit.stat_3531280422"], "implicit": ["implicit.stat_2223678961", "implicit.stat_3531280422"], "fractured": ["fractured.stat_2223678961"], "enchant": ["enchant.stat_2223678961"], "scourge": ["scourge.stat_2223678961"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Chaos Damage to Attacks"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage_to_attacks"], "explicit": ["explicit.stat_674553446"], "implicit": ["implicit.stat_674553446"], "fractured": ["fractured.stat_674553446"], "crafted": ["crafted.stat_674553446"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Chaos Damage to Spells"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage_to_spells"], "explicit": ["explicit.stat_2300399854"], "implicit": ["implicit.stat_2300399854"], "fractured": ["fractured.stat_2300399854"]}}}
|
||||
{"ref": "Adds # to # Cold Damage", "better": 1, "matchers": [{"string": "Adds # to # Cold Damage"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage"], "explicit": ["explicit.stat_1037193709", "explicit.stat_2387423236"], "implicit": ["implicit.stat_1037193709", "implicit.stat_2387423236"], "fractured": ["fractured.stat_1037193709", "fractured.stat_2387423236"], "enchant": ["enchant.stat_1037193709"], "scourge": ["scourge.stat_1037193709"], "crafted": ["crafted.stat_1037193709", "crafted.stat_2387423236"]}}}
|
||||
{"ref": "Adds # to # Cold Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Cold Damage to Attacks"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage_to_attacks"], "explicit": ["explicit.stat_4067062424"], "implicit": ["implicit.stat_4067062424"], "fractured": ["fractured.stat_4067062424"], "crafted": ["crafted.stat_4067062424"]}}}
|
||||
{"ref": "Adds # to # Cold Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Cold Damage to Spells"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage_to_spells"], "explicit": ["explicit.stat_2469416729"], "implicit": ["implicit.stat_2469416729"], "fractured": ["fractured.stat_2469416729"], "scourge": ["scourge.stat_2469416729"], "crafted": ["crafted.stat_2469416729"]}}}
|
||||
{"ref": "Adds # to # Damage", "better": 1, "matchers": [{"string": "Adds # to # Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage"]}}}
|
||||
{"ref": "Adds # to # Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Damage to Attacks "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage_to_attacks"]}}}
|
||||
{"ref": "Adds # to # Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Damage to Spells "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage_to_spells"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage", "better": 1, "matchers": [{"string": "Adds # to # Elemental Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Elemental Damage to Attacks "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage_to_attacks"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Elemental Damage to Spells "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage_to_spells"]}}}
|
||||
{"ref": "Adds # to # Fire Damage", "better": 1, "matchers": [{"string": "Adds # to # Fire Damage"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage"], "explicit": ["explicit.stat_321077055", "explicit.stat_709508406"], "implicit": ["implicit.stat_321077055", "implicit.stat_709508406"], "fractured": ["fractured.stat_321077055", "fractured.stat_709508406"], "enchant": ["enchant.stat_709508406"], "scourge": ["scourge.stat_709508406"], "crafted": ["crafted.stat_321077055", "crafted.stat_709508406"]}}}
|
||||
{"ref": "Adds # to # Fire Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Fire Damage to Attacks"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage_to_attacks"], "explicit": ["explicit.stat_1573130764"], "implicit": ["implicit.stat_1573130764"], "fractured": ["fractured.stat_1573130764"], "crafted": ["crafted.stat_1573130764"]}}}
|
||||
{"ref": "Adds # to # Fire Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Fire Damage to Spells"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage_to_spells"], "explicit": ["explicit.stat_1133016593"], "implicit": ["implicit.stat_1133016593"], "fractured": ["fractured.stat_1133016593"], "scourge": ["scourge.stat_1133016593"], "crafted": ["crafted.stat_1133016593"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage", "better": 1, "matchers": [{"string": "Adds # to # Lightning Damage"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage"], "explicit": ["explicit.stat_1334060246", "explicit.stat_3336890334"], "implicit": ["implicit.stat_1334060246", "implicit.stat_3336890334"], "fractured": ["fractured.stat_1334060246", "fractured.stat_3336890334"], "enchant": ["enchant.stat_3336890334"], "scourge": ["scourge.stat_3336890334"], "crafted": ["crafted.stat_1334060246", "crafted.stat_3336890334"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Lightning Damage to Attacks"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage_to_attacks"], "explicit": ["explicit.stat_1754445556"], "implicit": ["implicit.stat_1754445556"], "fractured": ["fractured.stat_1754445556"], "crafted": ["crafted.stat_1754445556"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Lightning Damage to Spells"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage_to_spells"], "explicit": ["explicit.stat_2831165374"], "implicit": ["implicit.stat_2831165374"], "fractured": ["fractured.stat_2831165374"], "scourge": ["scourge.stat_2831165374"], "crafted": ["crafted.stat_2831165374"]}}}
|
||||
{"ref": "Adds # to # Physical Damage", "better": 1, "matchers": [{"string": "Adds # to # Physical Damage"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage"], "explicit": ["explicit.stat_1940865751", "explicit.stat_960081730"], "implicit": ["implicit.stat_1940865751"], "fractured": ["fractured.stat_1940865751", "fractured.stat_960081730"], "scourge": ["scourge.stat_1940865751"], "crafted": ["crafted.stat_1940865751"]}}}
|
||||
{"ref": "Adds # to # Physical Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Physical Damage to Attacks"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage_to_attacks"], "explicit": ["explicit.stat_3032590688"], "implicit": ["implicit.stat_3032590688"], "fractured": ["fractured.stat_3032590688"], "crafted": ["crafted.stat_3032590688"]}}}
|
||||
{"ref": "Adds # to # Physical Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Physical Damage to Spells"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage_to_spells"], "explicit": ["explicit.stat_2435536961"], "implicit": ["implicit.stat_2435536961"], "fractured": ["fractured.stat_2435536961"], "scourge": ["scourge.stat_2435536961"]}}}
|
||||
{"ref": "Has # Influences", "better": 1, "matchers": [{"string": "Has # Influences "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_influence_count"]}}}
|
||||
{"ref": "Has Crusader Influence", "better": 1, "matchers": [{"string": "Has Crusader Influence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_crusader_influence"]}}}
|
||||
{"ref": "Has Elder Influence", "better": 1, "matchers": [{"string": "Has Elder Influence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_elder_influence"]}}}
|
||||
{"ref": "Has Hunter Influence", "better": 1, "matchers": [{"string": "Has Hunter Influence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_hunter_influence"]}}}
|
||||
{"ref": "Has Logbook Area: Battleground Graves", "better": 1, "matchers": [{"string": "Has Logbook Area: Battleground Graves "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_battleground_graves"]}}}
|
||||
{"ref": "Has Logbook Area: Bluffs", "better": 1, "matchers": [{"string": "Has Logbook Area: Bluffs "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_bluffs"]}}}
|
||||
{"ref": "Has Logbook Area: Cemetery", "better": 1, "matchers": [{"string": "Has Logbook Area: Cemetery "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_cemetery"]}}}
|
||||
{"ref": "Has Logbook Area: Desert Ruins", "better": 1, "matchers": [{"string": "Has Logbook Area: Desert Ruins "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_desert_ruins"]}}}
|
||||
{"ref": "Has Logbook Area: Dried Riverbed", "better": 1, "matchers": [{"string": "Has Logbook Area: Dried Riverbed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_dried_riverbed"]}}}
|
||||
{"ref": "Has Logbook Area: Forest Ruins", "better": 1, "matchers": [{"string": "Has Logbook Area: Forest Ruins "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_forest_ruins"]}}}
|
||||
{"ref": "Has Logbook Area: Karui Wargraves", "better": 1, "matchers": [{"string": "Has Logbook Area: Karui Wargraves "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_karui_wargraves"]}}}
|
||||
{"ref": "Has Logbook Area: Mountainside", "better": 1, "matchers": [{"string": "Has Logbook Area: Mountainside "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_mountainside"]}}}
|
||||
{"ref": "Has Logbook Area: Rotting Temple", "better": 1, "matchers": [{"string": "Has Logbook Area: Rotting Temple "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_rotting_temple"]}}}
|
||||
{"ref": "Has Logbook Area: Sarn Slums", "better": 1, "matchers": [{"string": "Has Logbook Area: Sarn Slums "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_sarn_slums"]}}}
|
||||
{"ref": "Has Logbook Area: Scrublands", "better": 1, "matchers": [{"string": "Has Logbook Area: Scrublands "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_scrublands"]}}}
|
||||
{"ref": "Has Logbook Area: Shipwreck Reef", "better": 1, "matchers": [{"string": "Has Logbook Area: Shipwreck Reef "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_shipwreck_reef"]}}}
|
||||
{"ref": "Has Logbook Area: Utzaal Outskirts", "better": 1, "matchers": [{"string": "Has Logbook Area: Utzaal Outskirts "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_utzaal_outskirts"]}}}
|
||||
{"ref": "Has Logbook Area: Vaal Temple", "better": 1, "matchers": [{"string": "Has Logbook Area: Vaal Temple "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_vaal_temple"]}}}
|
||||
{"ref": "Has Logbook Area: Volcanic Island", "better": 1, "matchers": [{"string": "Has Logbook Area: Volcanic Island "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_volcano"]}}}
|
||||
{"ref": "Has Logbook Faction: Black Scythe Mercenaries", "better": 0, "matchers": [{"string": "Black Scythe Mercenaries"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_mercenaries"]}}}
|
||||
{"ref": "Has Logbook Faction: Druids of the Broken Circle", "better": 0, "matchers": [{"string": "Druids of the Broken Circle"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_druids"]}}}
|
||||
{"ref": "Has Logbook Faction: Knights of the Sun", "better": 0, "matchers": [{"string": "Knights of the Sun"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_knights"]}}}
|
||||
{"ref": "Has Logbook Faction: Order of the Chalice", "better": 0, "matchers": [{"string": "Order of the Chalice"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_order"]}}}
|
||||
{"ref": "Has Redeemer Influence", "better": 1, "matchers": [{"string": "Has Redeemer Influence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_redeemer_influence"]}}}
|
||||
{"ref": "Has Room: Antechamber", "better": 0, "matchers": [{"string": "Antechamber"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_antechamber"]}, "option": true}}
|
||||
{"ref": "Has Room: Apex of Ascension (Tier 3)", "better": 0, "matchers": [{"string": "Apex of Ascension (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Apex of Atzoatl", "better": 0, "matchers": [{"string": "Apex of Atzoatl"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_apex"]}, "option": true}}
|
||||
{"ref": "Has Room: Arena of Valour (Tier 2)", "better": 0, "matchers": [{"string": "Arena of Valour (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Armourer's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Armourer's Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Armoury (Tier 2)", "better": 0, "matchers": [{"string": "Armoury (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Atlas of Worlds (Tier 3)", "better": 0, "matchers": [{"string": "Atlas of Worlds (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Automaton Lab (Tier 2)", "better": 0, "matchers": [{"string": "Automaton Lab (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Banquet Hall", "better": 0, "matchers": [{"string": "Banquet Hall"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_banquet_hall"]}, "option": true}}
|
||||
{"ref": "Has Room: Barracks (Tier 2)", "better": 0, "matchers": [{"string": "Barracks (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Breach Containment Chamber (Tier 2)", "better": 0, "matchers": [{"string": "Breach Containment Chamber (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Catalyst of Corruption (Tier 2)", "better": 0, "matchers": [{"string": "Catalyst of Corruption (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Cellar", "better": 0, "matchers": [{"string": "Cellar"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cellar"]}, "option": true}}
|
||||
{"ref": "Has Room: Chamber of Iron (Tier 3)", "better": 0, "matchers": [{"string": "Chamber of Iron (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Chasm", "better": 0, "matchers": [{"string": "Chasm"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chasm_room"]}, "option": true}}
|
||||
{"ref": "Has Room: Cloister", "better": 0, "matchers": [{"string": "Cloister"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cloister"]}, "option": true}}
|
||||
{"ref": "Has Room: Conduit of Lightning (Tier 3)", "better": 0, "matchers": [{"string": "Conduit of Lightning (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Corruption Chamber (Tier 1)", "better": 0, "matchers": [{"string": "Corruption Chamber (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Court of Sealed Death (Tier 3)", "better": 0, "matchers": [{"string": "Court of Sealed Death (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Crucible of Flame (Tier 3)", "better": 0, "matchers": [{"string": "Crucible of Flame (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Cultivar Chamber (Tier 2)", "better": 0, "matchers": [{"string": "Cultivar Chamber (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Defense Research Lab (Tier 3)", "better": 0, "matchers": [{"string": "Defense Research Lab (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Demolition Lab (Tier 2)", "better": 0, "matchers": [{"string": "Demolition Lab (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Department of Thaumaturgy (Tier 2)", "better": 0, "matchers": [{"string": "Department of Thaumaturgy (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Doryani's Institute (Tier 3)", "better": 0, "matchers": [{"string": "Doryani's Institute (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Engineering Department (Tier 2)", "better": 0, "matchers": [{"string": "Engineering Department (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Explosives Room (Tier 1)", "better": 0, "matchers": [{"string": "Explosives Room (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Factory (Tier 3)", "better": 0, "matchers": [{"string": "Factory (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Flame Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Flame Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Gemcutter's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Gemcutter's Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Glittering Halls (Tier 3)", "better": 0, "matchers": [{"string": "Glittering Halls (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Guardhouse (Tier 1)", "better": 0, "matchers": [{"string": "Guardhouse (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Champions (Tier 3)", "better": 0, "matchers": [{"string": "Hall of Champions (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Heroes (Tier 2)", "better": 0, "matchers": [{"string": "Hall of Heroes (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Legends (Tier 3)", "better": 0, "matchers": [{"string": "Hall of Legends (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Locks (Tier 2)", "better": 0, "matchers": [{"string": "Hall of Locks (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Lords (Tier 2)", "better": 0, "matchers": [{"string": "Hall of Lords (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Mettle (Tier 1)", "better": 0, "matchers": [{"string": "Hall of Mettle (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Offerings (Tier 2)", "better": 0, "matchers": [{"string": "Hall of Offerings (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of War (Tier 3)", "better": 0, "matchers": [{"string": "Hall of War (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Halls", "better": 0, "matchers": [{"string": "Halls"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_halls"]}, "option": true}}
|
||||
{"ref": "Has Room: Hatchery (Tier 1)", "better": 0, "matchers": [{"string": "Hatchery (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_1"]}, "option": true}}
|
||||
{"ref": "Has Room: House of the Others (Tier 3)", "better": 0, "matchers": [{"string": "House of the Others (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hurricane Engine (Tier 2)", "better": 0, "matchers": [{"string": "Hurricane Engine (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hybridisation Chamber (Tier 3)", "better": 0, "matchers": [{"string": "Hybridisation Chamber (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Jeweller's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Jeweller's Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Jewellery Forge (Tier 2)", "better": 0, "matchers": [{"string": "Jewellery Forge (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Lightning Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Lightning Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Locus of Corruption (Tier 3)", "better": 0, "matchers": [{"string": "Locus of Corruption (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Museum of Artefacts (Tier 3)", "better": 0, "matchers": [{"string": "Museum of Artefacts (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Office of Cartography (Tier 2)", "better": 0, "matchers": [{"string": "Office of Cartography (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Omnitect Forge (Tier 2)", "better": 0, "matchers": [{"string": "Omnitect Forge (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Omnitect Reactor Plant (Tier 2)", "better": 0, "matchers": [{"string": "Omnitect Reactor Plant (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Passageways", "better": 0, "matchers": [{"string": "Passageways"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_passageways"]}, "option": true}}
|
||||
{"ref": "Has Room: Pits", "better": 0, "matchers": [{"string": "Pits"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_the_pits"]}, "option": true}}
|
||||
{"ref": "Has Room: Poison Garden (Tier 1)", "better": 0, "matchers": [{"string": "Poison Garden (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Pools of Restoration (Tier 1)", "better": 0, "matchers": [{"string": "Pools of Restoration (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Royal Meeting Room (Tier 1)", "better": 0, "matchers": [{"string": "Royal Meeting Room (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Sacrificial Chamber (Tier 1)", "better": 0, "matchers": [{"string": "Sacrificial Chamber (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Sadist's Den (Tier 3)", "better": 0, "matchers": [{"string": "Sadist's Den (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Immortality (Tier 3)", "better": 0, "matchers": [{"string": "Sanctum of Immortality (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Unity (Tier 2)", "better": 0, "matchers": [{"string": "Sanctum of Unity (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Vitality (Tier 2)", "better": 0, "matchers": [{"string": "Sanctum of Vitality (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Shrine of Empowerment (Tier 1)", "better": 0, "matchers": [{"string": "Shrine of Empowerment (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Shrine of Unmaking (Tier 3)", "better": 0, "matchers": [{"string": "Shrine of Unmaking (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sparring Room (Tier 1)", "better": 0, "matchers": [{"string": "Sparring Room (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Splinter Research Lab (Tier 1)", "better": 0, "matchers": [{"string": "Splinter Research Lab (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Storage Room (Tier 1)", "better": 0, "matchers": [{"string": "Storage Room (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Storm of Corruption (Tier 3)", "better": 0, "matchers": [{"string": "Storm of Corruption (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Strongbox Chamber (Tier 1)", "better": 0, "matchers": [{"string": "Strongbox Chamber (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Surveyor's Study (Tier 1)", "better": 0, "matchers": [{"string": "Surveyor's Study (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Tempest Generator (Tier 1)", "better": 0, "matchers": [{"string": "Tempest Generator (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Temple Defense Workshop (Tier 2)", "better": 0, "matchers": [{"string": "Temple Defense Workshop (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Temple Nexus (Tier 3)", "better": 0, "matchers": [{"string": "Temple Nexus (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Throne of Atziri (Tier 3)", "better": 0, "matchers": [{"string": "Throne of Atziri (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Tombs", "better": 0, "matchers": [{"string": "Tombs"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_tombs"]}, "option": true}}
|
||||
{"ref": "Has Room: Torment Cells (Tier 1)", "better": 0, "matchers": [{"string": "Torment Cells (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Torture Cages (Tier 2)", "better": 0, "matchers": [{"string": "Torture Cages (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Toxic Grove (Tier 3)", "better": 0, "matchers": [{"string": "Toxic Grove (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Trap Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Trap Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Treasury (Tier 2)", "better": 0, "matchers": [{"string": "Treasury (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Tunnels", "better": 0, "matchers": [{"string": "Tunnels"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_tunnels"]}, "option": true}}
|
||||
{"ref": "Has Room: Vault (Tier 1)", "better": 0, "matchers": [{"string": "Vault (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Warehouses (Tier 2)", "better": 0, "matchers": [{"string": "Warehouses (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Wealth of the Vaal (Tier 3)", "better": 0, "matchers": [{"string": "Wealth of the Vaal (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_1"]}, "option": true}}
|
||||
{"ref": "Has Shaper Influence", "better": 1, "matchers": [{"string": "Has Shaper Influence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_shaper_influence"]}}}
|
||||
{"ref": "Has Warlord Influence", "better": 1, "matchers": [{"string": "Has Warlord Influence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_warlord_influence"]}}}
|
||||
{"ref": "Mirrored Tablet has # Islands", "better": 1, "matchers": [{"string": "Mirrored Tablet has # Islands "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_lake_number_of_islands"]}}}
|
||||
{"ref": "More Currency: #%", "better": 1, "matchers": [{"string": "More Currency: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_currency_drops"]}}}
|
||||
{"ref": "More Divination Cards: #%", "better": 1, "matchers": [{"string": "More Divination Cards: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_card_drops"]}}}
|
||||
{"ref": "More Maps: #%", "better": 1, "matchers": [{"string": "More Maps: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_map_drops"]}}}
|
||||
{"ref": "More Scarabs: #%", "better": 1, "matchers": [{"string": "More Scarabs: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_scarab_drops"]}}}
|
||||
{"ref": "Quality (Attack Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Attack Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_attack_quality"]}}}
|
||||
{"ref": "Quality (Attribute Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Attribute Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_attribute_quality"]}}}
|
||||
{"ref": "Quality (Caster Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Caster Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_caster_quality"]}}}
|
||||
{"ref": "Quality (Critical Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Critical Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_critical_quality"]}}}
|
||||
{"ref": "Quality (Currency): #%", "better": 1, "matchers": [{"string": "Quality (Currency): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_currency"]}}}
|
||||
{"ref": "Quality (Defence Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Defence Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_defense_quality"]}}}
|
||||
{"ref": "Quality (Divination Cards): #%", "better": 1, "matchers": [{"string": "Quality (Divination Cards): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_cards"]}}}
|
||||
{"ref": "Quality (Elemental Damage Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Elemental Damage Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_elemental_quality"]}}}
|
||||
{"ref": "Quality (Life and Mana Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Life and Mana Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_resource_quality"]}}}
|
||||
{"ref": "Quality (Pack Size): #%", "better": 1, "matchers": [{"string": "Quality (Pack Size): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_pack_size"]}}}
|
||||
{"ref": "Quality (Physical and Chaos Damage Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Physical and Chaos Damage Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_physical_chaos_quality"]}}}
|
||||
{"ref": "Quality (Rarity): #%", "better": 1, "matchers": [{"string": "Quality (Rarity): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_rarity"]}}}
|
||||
{"ref": "Quality (Resistance Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Resistance Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_resistance_quality"]}}}
|
||||
{"ref": "Quality (Scarabs): #%", "better": 1, "matchers": [{"string": "Quality (Scarabs): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_scarabs"]}}}
|
||||
{"ref": "Quality (Speed Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Speed Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_speed_quality"]}}}
|
||||
{"ref": "Reflection of Abyss (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Abyss (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_38892"]}}}
|
||||
{"ref": "Reflection of Ambush (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Ambush (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_48307"]}}}
|
||||
{"ref": "Reflection of Angling (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Angling (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_40794"]}}}
|
||||
{"ref": "Reflection of Azurite (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Azurite (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_40031"]}}}
|
||||
{"ref": "Reflection of Bestiary (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Bestiary (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_55569"]}}}
|
||||
{"ref": "Reflection of Breach (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Breach (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62572"]}}}
|
||||
{"ref": "Reflection of Brutality (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Brutality (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_29096"]}}}
|
||||
{"ref": "Reflection of Camaraderie (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Camaraderie (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_35395"]}}}
|
||||
{"ref": "Reflection of Catalysis (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Catalysis (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_57850"]}}}
|
||||
{"ref": "Reflection of Chaos (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Chaos (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_50834"]}}}
|
||||
{"ref": "Reflection of Conflict (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Conflict (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_1931"]}}}
|
||||
{"ref": "Reflection of Darkness (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Darkness (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_34457"]}}}
|
||||
{"ref": "Reflection of Delirium (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Delirium (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_22138"]}}}
|
||||
{"ref": "Reflection of Delve (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Delve (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_18737"]}}}
|
||||
{"ref": "Reflection of Demonfire (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Demonfire (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_28500"]}}}
|
||||
{"ref": "Reflection of Domination (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Domination (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_63412"]}}}
|
||||
{"ref": "Reflection of Entrapment (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Entrapment (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_44399"]}}}
|
||||
{"ref": "Reflection of Essence (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Essence (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_49862"]}}}
|
||||
{"ref": "Reflection of Experimentation (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Experimentation (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_55676"]}}}
|
||||
{"ref": "Reflection of Flame (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Flame (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_42468"]}}}
|
||||
{"ref": "Reflection of Fractured Dimensions (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Fractured Dimensions (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_49488"]}}}
|
||||
{"ref": "Reflection of Frost (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Frost (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_38110"]}}}
|
||||
{"ref": "Reflection of Guilt (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Guilt (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_25480"]}}}
|
||||
{"ref": "Reflection of Imprisonment (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Imprisonment (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_10363"]}}}
|
||||
{"ref": "Reflection of Kalandra (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Kalandra (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_36591"]}}}
|
||||
{"ref": "Reflection of Legion (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Legion (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_403"]}}}
|
||||
{"ref": "Reflection of Metamorph (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Metamorph (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_3699"]}}}
|
||||
{"ref": "Reflection of Occultism (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Occultism (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_24451"]}}}
|
||||
{"ref": "Reflection of Paradise (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Paradise (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_50846"]}}}
|
||||
{"ref": "Reflection of Perverted Faith (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Perverted Faith (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_27678"]}}}
|
||||
{"ref": "Reflection of Phaaryl (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Phaaryl (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_7674"]}}}
|
||||
{"ref": "Reflection of Possession (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Possession (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_25049"]}}}
|
||||
{"ref": "Reflection of Power (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Power (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_35950"]}}}
|
||||
{"ref": "Reflection of Scourge (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Scourge (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62360"]}}}
|
||||
{"ref": "Reflection of Stasis (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Stasis (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_32968"]}}}
|
||||
{"ref": "Reflection of Sulphite (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Sulphite (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_45086"]}}}
|
||||
{"ref": "Reflection of the Black Scythe (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Black Scythe (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_9662"]}}}
|
||||
{"ref": "Reflection of the Breachlord (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Breachlord (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62935"]}}}
|
||||
{"ref": "Reflection of the Broken Circle (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Broken Circle (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_43128"]}}}
|
||||
{"ref": "Reflection of the Chalice (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Chalice (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_64561"]}}}
|
||||
{"ref": "Reflection of the Chasm (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Chasm (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_57101"]}}}
|
||||
{"ref": "Reflection of the Dream (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Dream (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_27117"]}}}
|
||||
{"ref": "Reflection of the Harbingers (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Harbingers (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_37203"]}}}
|
||||
{"ref": "Reflection of the Hunter (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Hunter (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_18816"]}}}
|
||||
{"ref": "Reflection of the Monolith (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Monolith (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_34796"]}}}
|
||||
{"ref": "Reflection of the Nightmare (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Nightmare (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_24232"]}}}
|
||||
{"ref": "Reflection of the Storm (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Storm (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_2745"]}}}
|
||||
{"ref": "Reflection of the Sun (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Sun (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_60034"]}}}
|
||||
{"ref": "Reflection of the Trove (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Trove (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_46772"]}}}
|
||||
{"ref": "Reflection of the Wilderness (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Wilderness (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_29224"]}}}
|
||||
{"ref": "Reflection of Thralldom (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Thralldom (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_26813"]}}}
|
||||
{"ref": "Reflection of Torment (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Torment (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_53950"]}}}
|
||||
{"ref": "Reflection of Tyranny (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Tyranny (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_60981"]}}}
|
||||
81
renderer/public/.DS_Store/vendor/pseudo-stats/cherry-pick-pseudo.py
vendored
Normal file
81
renderer/public/.DS_Store/vendor/pseudo-stats/cherry-pick-pseudo.py
vendored
Normal file
@@ -0,0 +1,81 @@
|
||||
import json
|
||||
import os
|
||||
|
||||
|
||||
def get_script_dir():
|
||||
"""Returns the directory where the script is located."""
|
||||
return os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
|
||||
# List of localization codes
|
||||
localizations = ["en", "ru", "ko", "cmn-Hant"]
|
||||
|
||||
# File containing the pseudo keys to filter on
|
||||
keys_file_path = (
|
||||
f"{get_script_dir()}/pseudo_keys.ndjson" # Path to your ndjson pseudo keys file
|
||||
)
|
||||
|
||||
|
||||
def load_pseudo_keys():
|
||||
pseudo_keys = set()
|
||||
with open(keys_file_path, "r", encoding="utf-8") as keys_file:
|
||||
for line in keys_file:
|
||||
try:
|
||||
json_object = json.loads(line)
|
||||
# Assume the pseudo keys are stored under the 'trade.ids.pseudo' path
|
||||
if (
|
||||
"trade" in json_object
|
||||
and "ids" in json_object["trade"]
|
||||
and "pseudo" in json_object["trade"]["ids"]
|
||||
):
|
||||
for key in json_object["trade"]["ids"]["pseudo"]:
|
||||
pseudo_keys.add(key)
|
||||
except json.JSONDecodeError as e:
|
||||
print(f"Error parsing JSON in keys file: {e}")
|
||||
return pseudo_keys
|
||||
|
||||
|
||||
def process_localization_file(input_file_path, output_file_path, pseudo_keys):
|
||||
result_list = []
|
||||
|
||||
with open(input_file_path, "r", encoding="utf-8") as input_file:
|
||||
for line in input_file:
|
||||
try:
|
||||
json_object = json.loads(line)
|
||||
# Check if 'trade.ids.pseudo' exists
|
||||
if has_nested_key(json_object, "trade.ids.pseudo") and any(
|
||||
value in pseudo_keys
|
||||
for value in json_object["trade"]["ids"]["pseudo"]
|
||||
):
|
||||
result_list.append(json_object)
|
||||
except json.JSONDecodeError as e:
|
||||
print(f"Error parsing JSON: {e}")
|
||||
|
||||
with open(output_file_path, "w", encoding="utf-8") as output_file:
|
||||
for item in result_list:
|
||||
output_file.write(json.dumps(item, ensure_ascii=False) + "\n")
|
||||
|
||||
print(
|
||||
f"Processing complete for {input_file_path}. Check {output_file_path} for results."
|
||||
)
|
||||
|
||||
|
||||
def has_nested_key(obj, key_path):
|
||||
keys = key_path.split(".")
|
||||
for key in keys:
|
||||
if isinstance(obj, dict) and key in obj:
|
||||
obj = obj[key]
|
||||
else:
|
||||
return False
|
||||
return True
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
pseudo_keys = load_pseudo_keys()
|
||||
|
||||
for loc in localizations:
|
||||
input_file_path = f"{get_script_dir()}/../../data/{loc}/stats.ndjson.old" # Path to the input file
|
||||
output_file_path = (
|
||||
f"{get_script_dir()}/{loc}/pseudo_stats.ndjson" # Path to the output file
|
||||
)
|
||||
process_localization_file(input_file_path, output_file_path, pseudo_keys)
|
||||
292
renderer/public/.DS_Store/vendor/pseudo-stats/cmn-Hant/all-pseudo.ndjson
vendored
Normal file
292
renderer/public/.DS_Store/vendor/pseudo-stats/cmn-Hant/all-pseudo.ndjson
vendored
Normal file
@@ -0,0 +1,292 @@
|
||||
{"ref": "# Crafted Modifiers", "better": 1, "matchers": [{"string": "# 工藝詞綴 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_mods"]}}}
|
||||
{"ref": "# Crafted Prefix Modifiers", "better": 1, "matchers": [{"string": "# 工藝前綴 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_prefix_mods"]}}}
|
||||
{"ref": "# Crafted Suffix Modifiers", "better": 1, "matchers": [{"string": "# 工藝後綴 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_suffix_mods"]}}}
|
||||
{"ref": "# Empty Modifiers", "better": 1, "matchers": [{"string": "# 空詞綴 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_affix_mods"]}}}
|
||||
{"ref": "# Empty Prefix Modifiers", "better": 1, "matchers": [{"string": "# 空前綴 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_prefix_mods"]}}}
|
||||
{"ref": "# Empty Suffix Modifiers", "better": 1, "matchers": [{"string": "# 空後綴 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_suffix_mods"]}}}
|
||||
{"ref": "# Enchant Modifiers", "better": 1, "matchers": [{"string": "# 附魔詞綴 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_enchant_mods"]}}}
|
||||
{"ref": "# Fractured Modifiers", "better": 1, "matchers": [{"string": "# 破裂詞綴 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_fractured_mods"]}}}
|
||||
{"ref": "# Implicit Modifiers", "better": 1, "matchers": [{"string": "# 固定詞綴 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_implicit_mods"]}}}
|
||||
{"ref": "# Life Regenerated per Second", "better": 1, "matchers": [{"string": "# 每秒生命回復 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life_regen"]}}}
|
||||
{"ref": "# Modifiers", "better": 1, "matchers": [{"string": "# 詞綴 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_affix_mods"]}}}
|
||||
{"ref": "# Notable Passive Skills", "better": 1, "matchers": [{"string": "# 強力天賦 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_notable_passive_skills"]}}}
|
||||
{"ref": "# Prefix Modifiers", "better": 1, "matchers": [{"string": "# 前綴 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_prefix_mods"]}}}
|
||||
{"ref": "# Suffix Modifiers", "better": 1, "matchers": [{"string": "# 後綴 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_suffix_mods"]}}}
|
||||
{"ref": "# total Elemental Resistances", "better": 1, "matchers": [{"string": "# 元素抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_count_elemental_resistances"]}}}
|
||||
{"ref": "# total Resistances", "better": 1, "matchers": [{"string": "# 總抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_count_resistances"]}}}
|
||||
{"ref": "#% Base Defence Percentile", "better": 1, "matchers": [{"string": "#% 基礎防禦百分比 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_base_defence_percentile"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Atlas Memories", "better": 1, "matchers": [{"string": "掉落的地圖有 #% 機率轉化至輿圖記憶 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_memory_line"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Conqueror Maps", "better": 1, "matchers": [{"string": "掉落的地圖有 #% 機率轉化至征服者地圖 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_conqueror_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Elder Maps", "better": 1, "matchers": [{"string": "掉落的地圖有 #% 機率轉化至尊師地圖 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_elder_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Maven Invitations", "better": 1, "matchers": [{"string": "掉落的地圖有 #% 機率轉化至釋界之邀 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_maven_invitation"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Scarabs", "better": 1, "matchers": [{"string": "掉落的地圖有 #% 機率轉化至聖甲蟲 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_scarab"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Shaper Maps", "better": 1, "matchers": [{"string": "掉落的地圖有 #% 機率轉化至塑界者地圖 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_shaper_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Unique Maps", "better": 1, "matchers": [{"string": "掉落的地圖有 #% 機率轉化至傳奇地圖 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_unique_map"]}}}
|
||||
{"ref": "#% increased Burning Damage", "better": 1, "matchers": [{"string": "增加 #% 燃燒傷害"}, {"string": "減少 #% 燃燒傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_burning_damage"], "explicit": ["explicit.stat_1175385867"], "implicit": ["implicit.stat_1175385867"], "fractured": ["fractured.stat_1175385867"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "matchers": [{"string": "增加 #% 冰冷傷害"}, {"string": "減少 #% 冰冷傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage"], "explicit": ["explicit.stat_3291658075"], "implicit": ["implicit.stat_3291658075"], "fractured": ["fractured.stat_3291658075"], "scourge": ["scourge.stat_3291658075"], "crafted": ["crafted.stat_3291658075"]}}}
|
||||
{"ref": "#% increased Cold Damage with Attack Skills", "better": 1, "matchers": [{"string": "攻擊技能增加 #% 冰冷傷害"}, {"string": "攻擊技能減少 #% 冰冷傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage_with_attack_skills"], "explicit": ["explicit.stat_860668586"], "implicit": ["implicit.stat_860668586"]}}}
|
||||
{"ref": "#% increased Cold Spell Damage", "better": 1, "matchers": [{"string": "增加 #% 冰冷法術傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_spell_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "matchers": [{"string": "增加 #% 元素傷害"}, {"string": "有增加 #% 的元素傷害"}, {"string": "有減少 #% 的元素傷害", "negate": true}, {"string": "減少 #% 元素傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage"], "explicit": ["explicit.stat_3141070085"], "implicit": ["implicit.stat_3141070085"], "fractured": ["fractured.stat_3141070085"], "scourge": ["scourge.stat_3141070085"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attack Skills", "better": 1, "matchers": [{"string": "攻擊技能增加 #% 元素傷害"}, {"string": "攻擊技能減少 #% 元素傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage_with_attack_skills"], "explicit": ["explicit.stat_387439868"], "implicit": ["implicit.stat_387439868"], "fractured": ["fractured.stat_387439868"], "scourge": ["scourge.stat_387439868"], "crafted": ["crafted.stat_387439868"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "matchers": [{"string": "增加 #% 火焰傷害"}, {"string": "減少 #% 火焰傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage"], "explicit": ["explicit.stat_3962278098"], "implicit": ["implicit.stat_3962278098"], "fractured": ["fractured.stat_3962278098"], "scourge": ["scourge.stat_3962278098"], "crafted": ["crafted.stat_3962278098"]}}}
|
||||
{"ref": "#% increased Fire Damage with Attack Skills", "better": 1, "matchers": [{"string": "攻擊技能增加 #% 火焰傷害"}, {"string": "攻擊技能減少 #% 火焰傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage_with_attack_skills"], "implicit": ["implicit.stat_2468413380"]}}}
|
||||
{"ref": "#% increased Fire Spell Damage", "better": 1, "matchers": [{"string": "增加 #% 火焰法術傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_spell_damage"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "matchers": [{"string": "增加 #% 閃電傷害"}, {"string": "減少 #% 閃電傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage"], "explicit": ["explicit.stat_2231156303"], "implicit": ["implicit.stat_2231156303"], "fractured": ["fractured.stat_2231156303"], "scourge": ["scourge.stat_2231156303"], "crafted": ["crafted.stat_2231156303"]}}}
|
||||
{"ref": "#% increased Lightning Damage with Attack Skills", "better": 1, "matchers": [{"string": "攻擊技能增加 #% 閃電傷害"}, {"string": "攻擊技能減少 #% 閃電傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage_with_attack_skills"], "explicit": ["explicit.stat_4208907162"], "implicit": ["implicit.stat_4208907162"]}}}
|
||||
{"ref": "#% increased Lightning Spell Damage", "better": 1, "matchers": [{"string": "增加 #% 閃電法術傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_spell_damage"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "matchers": [{"string": "增加 #% 魔力回復率"}, {"string": "減少 #% 魔力回復率", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_mana_regen"], "explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "fractured": ["fractured.stat_789117908"], "scourge": ["scourge.stat_789117908"], "crafted": ["crafted.stat_789117908"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "matchers": [{"string": "增加 #% 移動速度"}, {"string": "減少 #% 移動速度", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_movement_speed"], "explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "fractured": ["fractured.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "scourge": ["scourge.stat_2250533757"], "crafted": ["crafted.stat_2250533757"]}}}
|
||||
{"ref": "#% increased Rarity of Items found", "better": 1, "matchers": [{"string": "增加 #% 物品稀有度"}, {"string": "減少 #% 物品稀有度", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_rarity"], "explicit": ["explicit.stat_3917489142"], "implicit": ["implicit.stat_3917489142"], "fractured": ["fractured.stat_3917489142"], "scourge": ["scourge.stat_3917489142"], "crafted": ["crafted.stat_3917489142"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "matchers": [{"string": "增加 #% 法術傷害"}, {"string": "減少 #% 法術傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_spell_damage"], "explicit": ["explicit.stat_2974417149"], "implicit": ["implicit.stat_2974417149"], "fractured": ["fractured.stat_2974417149"], "enchant": ["enchant.stat_2974417149"], "scourge": ["scourge.stat_2974417149"], "crafted": ["crafted.stat_2974417149"]}}}
|
||||
{"ref": "#% of Life Regenerated per Second", "better": 1, "matchers": [{"string": "每秒回復 #% 生命 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_percent_life_regen"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Life", "dp": true, "better": 1, "matchers": [{"string": "#% 的物理攻擊傷害偷取生命"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_life"], "explicit": ["explicit.stat_3593843976", "explicit.stat_55876295"], "implicit": ["implicit.stat_3593843976", "implicit.stat_55876295"], "fractured": ["fractured.stat_3593843976", "fractured.stat_55876295"], "scourge": ["scourge.stat_3593843976"], "crafted": ["crafted.stat_3593843976", "crafted.stat_55876295"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Mana", "dp": true, "better": 1, "matchers": [{"string": "#% 物理攻擊傷害偷取魔力"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_mana"], "explicit": ["explicit.stat_3237948413", "explicit.stat_669069897"], "implicit": ["implicit.stat_3237948413", "implicit.stat_669069897"], "fractured": ["fractured.stat_3237948413", "fractured.stat_669069897"], "scourge": ["scourge.stat_3237948413"], "crafted": ["crafted.stat_3237948413", "crafted.stat_669069897"]}}}
|
||||
{"ref": "#% total increased maximum Energy Shield", "better": 1, "matchers": [{"string": "增加 #% 最大能量護盾 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_energy_shield"]}}}
|
||||
{"ref": "#% total increased Physical Damage", "better": 1, "matchers": [{"string": "增加 #% 物裡傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_physical_damage"]}}}
|
||||
{"ref": "+# total maximum Energy Shield", "better": 1, "matchers": [{"string": "+# 最大能量護盾 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_energy_shield"]}}}
|
||||
{"ref": "+# total maximum Life", "better": 1, "matchers": [{"string": "+# 最大生命 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life"]}}}
|
||||
{"ref": "+# total maximum Mana", "better": 1, "matchers": [{"string": "+# 最大魔力 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_mana"]}}}
|
||||
{"ref": "+# total to all Attributes", "better": 1, "matchers": [{"string": "+# 全能力 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_attributes"]}}}
|
||||
{"ref": "+# total to Dexterity", "better": 1, "matchers": [{"string": "+# 敏捷 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_dexterity"]}}}
|
||||
{"ref": "+# total to Intelligence", "better": 1, "matchers": [{"string": "+# 智慧 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_intelligence"]}}}
|
||||
{"ref": "+# total to Level of Socketed Aura Gems", "better": 1, "matchers": [{"string": "+# 插槽中光環寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_aura_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Bow Gems", "better": 1, "matchers": [{"string": "+# 插槽中弓寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_bow_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Chaos Gems", "better": 1, "matchers": [{"string": "+# 插槽中混沌寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_chaos_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Cold Gems", "better": 1, "matchers": [{"string": "+# 插槽中冰冷寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_cold_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Curse Gems", "better": 1, "matchers": [{"string": "+# 插槽中詛咒寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_curse_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Dexterity Gems", "better": 1, "matchers": [{"string": "+# 插槽中敏捷寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_dexterity_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Elemental Gems", "better": 1, "matchers": [{"string": "+# 插槽中元素寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_elemental_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Fire Gems", "better": 1, "matchers": [{"string": "+# 插槽中火焰寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_fire_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Gems", "better": 1, "matchers": [{"string": "+# 插槽中寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Golem Gems", "better": 1, "matchers": [{"string": "+# 插槽中魔像寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_golem_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Intelligence Gems", "better": 1, "matchers": [{"string": "+# 插槽中智慧寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_intelligence_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Lightning Gems", "better": 1, "matchers": [{"string": "+# 插槽中閃電寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_lightning_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Melee Gems", "better": 1, "matchers": [{"string": "+# 插槽中近戰寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_melee_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Minion Gems", "better": 1, "matchers": [{"string": "+# 插槽中召喚物寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_minion_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Movement Gems", "better": 1, "matchers": [{"string": "+# 插槽中位移寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_movement_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Projectile Gems", "better": 1, "matchers": [{"string": "+# 插槽中投射物寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_projectile_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Skill Gems", "better": 1, "matchers": [{"string": "+# 插槽中技能寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_skill_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Spell Gems", "better": 1, "matchers": [{"string": "+# 插槽中法術寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_spell_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Strength Gems", "better": 1, "matchers": [{"string": "+# 插槽中力量寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_strength_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Support Gems", "better": 1, "matchers": [{"string": "+# 插槽中輔助寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_support_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Vaal Gems", "better": 1, "matchers": [{"string": "+# 插槽中瓦爾寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_vaal_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Warcry Gems", "better": 1, "matchers": [{"string": "+# 插槽中戰吼寶石等級 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_warcry_gem_levels"]}}}
|
||||
{"ref": "+# total to Strength", "better": 1, "matchers": [{"string": "+# 力量 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_strength"]}}}
|
||||
{"ref": "+#% Global Critical Strike Chance", "better": 1, "matchers": [{"string": "+#% 全域暴擊機率 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_chance"]}}}
|
||||
{"ref": "+#% Global Critical Strike Multiplier", "better": 1, "matchers": [{"string": "+#% 全域暴擊加成 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_multiplier"]}}}
|
||||
{"ref": "+#% total Attack Speed", "better": 1, "matchers": [{"string": "+#% 攻擊速度 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_attack_speed"]}}}
|
||||
{"ref": "+#% total Cast Speed", "better": 1, "matchers": [{"string": "+#% 施放速度 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cast_speed"]}}}
|
||||
{"ref": "+#% total Critical Strike Chance for Spells", "better": 1, "matchers": [{"string": "+#% 法術暴擊機率 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_critical_strike_chance_for_spells"]}}}
|
||||
{"ref": "+#% total Elemental Resistance", "better": 1, "matchers": [{"string": "+#% 元素抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_elemental_resistance"]}}}
|
||||
{"ref": "+#% total Resistance", "better": 1, "matchers": [{"string": "+#% 總抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_resistance"]}}}
|
||||
{"ref": "+#% total to all Elemental Resistances", "better": 1, "matchers": [{"string": "+#% 元素抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_elemental_resistances"]}}}
|
||||
{"ref": "+#% total to Chaos Resistance", "better": 1, "matchers": [{"string": "+#% 總混沌抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_chaos_resistance"]}}}
|
||||
{"ref": "+#% total to Cold Resistance", "better": 1, "matchers": [{"string": "+#% 冰冷抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cold_resistance"]}}}
|
||||
{"ref": "+#% total to Fire Resistance", "better": 1, "matchers": [{"string": "+#% 火焰抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_fire_resistance"]}}}
|
||||
{"ref": "+#% total to Lightning Resistance", "better": 1, "matchers": [{"string": "+#% 閃電抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_lightning_resistance"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage", "better": 1, "matchers": [{"string": "附加 # 至 # 混沌傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage"], "explicit": ["explicit.stat_2223678961", "explicit.stat_3531280422"], "implicit": ["implicit.stat_2223678961", "implicit.stat_3531280422"], "fractured": ["fractured.stat_2223678961"], "enchant": ["enchant.stat_2223678961"], "scourge": ["scourge.stat_2223678961"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage to Attacks", "better": 1, "matchers": [{"string": "攻擊附加 # 至 # 混沌傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage_to_attacks"], "explicit": ["explicit.stat_674553446"], "implicit": ["implicit.stat_674553446"], "fractured": ["fractured.stat_674553446"], "crafted": ["crafted.stat_674553446"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage to Spells", "better": 1, "matchers": [{"string": "法術附加 # 至 # 混沌傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage_to_spells"], "explicit": ["explicit.stat_2300399854"], "implicit": ["implicit.stat_2300399854"], "fractured": ["fractured.stat_2300399854"]}}}
|
||||
{"ref": "Adds # to # Cold Damage", "better": 1, "matchers": [{"string": "附加 # 至 # 冰冷傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage"], "explicit": ["explicit.stat_1037193709", "explicit.stat_2387423236"], "implicit": ["implicit.stat_1037193709", "implicit.stat_2387423236"], "fractured": ["fractured.stat_1037193709", "fractured.stat_2387423236"], "enchant": ["enchant.stat_1037193709"], "scourge": ["scourge.stat_1037193709"], "crafted": ["crafted.stat_1037193709", "crafted.stat_2387423236"]}}}
|
||||
{"ref": "Adds # to # Cold Damage to Attacks", "better": 1, "matchers": [{"string": "攻擊附加 # 至 # 冰冷傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage_to_attacks"], "explicit": ["explicit.stat_4067062424"], "implicit": ["implicit.stat_4067062424"], "fractured": ["fractured.stat_4067062424"], "crafted": ["crafted.stat_4067062424"]}}}
|
||||
{"ref": "Adds # to # Cold Damage to Spells", "better": 1, "matchers": [{"string": "法術附加 # 至 # 冰冷傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage_to_spells"], "explicit": ["explicit.stat_2469416729"], "implicit": ["implicit.stat_2469416729"], "fractured": ["fractured.stat_2469416729"], "scourge": ["scourge.stat_2469416729"], "crafted": ["crafted.stat_2469416729"]}}}
|
||||
{"ref": "Adds # to # Damage", "better": 1, "matchers": [{"string": "附加 # 至 # 傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage"]}}}
|
||||
{"ref": "Adds # to # Damage to Attacks", "better": 1, "matchers": [{"string": "攻擊附加 # 至 # 傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage_to_attacks"]}}}
|
||||
{"ref": "Adds # to # Damage to Spells", "better": 1, "matchers": [{"string": "法術附加 # 至 # 傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage_to_spells"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage", "better": 1, "matchers": [{"string": "附加 # 至 # 元素傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage to Attacks", "better": 1, "matchers": [{"string": "攻擊附加 # 至 # 元素傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage_to_attacks"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage to Spells", "better": 1, "matchers": [{"string": "法術附加 # 至 # 元素傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage_to_spells"]}}}
|
||||
{"ref": "Adds # to # Fire Damage", "better": 1, "matchers": [{"string": "附加 # 至 # 火焰傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage"], "explicit": ["explicit.stat_321077055", "explicit.stat_709508406"], "implicit": ["implicit.stat_321077055", "implicit.stat_709508406"], "fractured": ["fractured.stat_321077055", "fractured.stat_709508406"], "enchant": ["enchant.stat_709508406"], "scourge": ["scourge.stat_709508406"], "crafted": ["crafted.stat_321077055", "crafted.stat_709508406"]}}}
|
||||
{"ref": "Adds # to # Fire Damage to Attacks", "better": 1, "matchers": [{"string": "攻擊附加 # 至 # 火焰傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage_to_attacks"], "explicit": ["explicit.stat_1573130764"], "implicit": ["implicit.stat_1573130764"], "fractured": ["fractured.stat_1573130764"], "crafted": ["crafted.stat_1573130764"]}}}
|
||||
{"ref": "Adds # to # Fire Damage to Spells", "better": 1, "matchers": [{"string": "法術附加 # 至 # 火焰傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage_to_spells"], "explicit": ["explicit.stat_1133016593"], "implicit": ["implicit.stat_1133016593"], "fractured": ["fractured.stat_1133016593"], "scourge": ["scourge.stat_1133016593"], "crafted": ["crafted.stat_1133016593"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage", "better": 1, "matchers": [{"string": "附加 # 至 # 閃電傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage"], "explicit": ["explicit.stat_1334060246", "explicit.stat_3336890334"], "implicit": ["implicit.stat_1334060246", "implicit.stat_3336890334"], "fractured": ["fractured.stat_1334060246", "fractured.stat_3336890334"], "enchant": ["enchant.stat_3336890334"], "scourge": ["scourge.stat_3336890334"], "crafted": ["crafted.stat_1334060246", "crafted.stat_3336890334"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage to Attacks", "better": 1, "matchers": [{"string": "攻擊附加 # 至 # 閃電傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage_to_attacks"], "explicit": ["explicit.stat_1754445556"], "implicit": ["implicit.stat_1754445556"], "fractured": ["fractured.stat_1754445556"], "crafted": ["crafted.stat_1754445556"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage to Spells", "better": 1, "matchers": [{"string": "法術附加 # 至 # 閃電傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage_to_spells"], "explicit": ["explicit.stat_2831165374"], "implicit": ["implicit.stat_2831165374"], "fractured": ["fractured.stat_2831165374"], "scourge": ["scourge.stat_2831165374"], "crafted": ["crafted.stat_2831165374"]}}}
|
||||
{"ref": "Adds # to # Physical Damage", "better": 1, "matchers": [{"string": "附加 # 至 # 物理傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage"], "explicit": ["explicit.stat_1940865751", "explicit.stat_960081730"], "implicit": ["implicit.stat_1940865751"], "fractured": ["fractured.stat_1940865751"], "scourge": ["scourge.stat_1940865751"], "crafted": ["crafted.stat_1940865751"]}}}
|
||||
{"ref": "Adds # to # Physical Damage to Attacks", "better": 1, "matchers": [{"string": "攻擊附加 # 至 # 物理傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage_to_attacks"], "explicit": ["explicit.stat_3032590688"], "implicit": ["implicit.stat_3032590688"], "fractured": ["fractured.stat_3032590688"], "crafted": ["crafted.stat_3032590688"]}}}
|
||||
{"ref": "Adds # to # Physical Damage to Spells", "better": 1, "matchers": [{"string": "法術附加 # 至 # 物理傷害"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage_to_spells"], "explicit": ["explicit.stat_2435536961"], "implicit": ["implicit.stat_2435536961"], "fractured": ["fractured.stat_2435536961"], "scourge": ["scourge.stat_2435536961"]}}}
|
||||
{"ref": "Has # Influences", "better": 1, "matchers": [{"string": "有 # 勢力 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_influence_count"]}}}
|
||||
{"ref": "Has Crusader Influence", "better": 1, "matchers": [{"string": "有聖戰軍王勢力 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_crusader_influence"]}}}
|
||||
{"ref": "Has Elder Influence", "better": 1, "matchers": [{"string": "有尊師勢力 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_elder_influence"]}}}
|
||||
{"ref": "Has Hunter Influence", "better": 1, "matchers": [{"string": "有狩獵者勢力 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_hunter_influence"]}}}
|
||||
{"ref": "Has Logbook Area: Battleground Graves", "better": 1, "matchers": [{"string": "有日誌區域:烽火墳墓 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_battleground_graves"]}}}
|
||||
{"ref": "Has Logbook Area: Bluffs", "better": 1, "matchers": [{"string": "有日誌區域:陡岸峭壁 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_bluffs"]}}}
|
||||
{"ref": "Has Logbook Area: Cemetery", "better": 1, "matchers": [{"string": "有日誌區域:公墓 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_cemetery"]}}}
|
||||
{"ref": "Has Logbook Area: Desert Ruins", "better": 1, "matchers": [{"string": "有日誌區域:沙漠廢墟 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_desert_ruins"]}}}
|
||||
{"ref": "Has Logbook Area: Dried Riverbed", "better": 1, "matchers": [{"string": "有日誌區域:乾枯河床 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_dried_riverbed"]}}}
|
||||
{"ref": "Has Logbook Area: Forest Ruins", "better": 1, "matchers": [{"string": "有日誌區域:森林遺跡 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_forest_ruins"]}}}
|
||||
{"ref": "Has Logbook Area: Karui Wargraves", "better": 1, "matchers": [{"string": "有日誌區域:卡魯戰爭墓地 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_karui_wargraves"]}}}
|
||||
{"ref": "Has Logbook Area: Mountainside", "better": 1, "matchers": [{"string": "有日誌區域:迷黯山腰 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_mountainside"]}}}
|
||||
{"ref": "Has Logbook Area: Rotting Temple", "better": 1, "matchers": [{"string": "有日誌區域:腐朽神殿 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_rotting_temple"]}}}
|
||||
{"ref": "Has Logbook Area: Sarn Slums", "better": 1, "matchers": [{"string": "有日誌區域:薩恩貧民窟 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_sarn_slums"]}}}
|
||||
{"ref": "Has Logbook Area: Scrublands", "better": 1, "matchers": [{"string": "有日誌區域:灌木叢 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_scrublands"]}}}
|
||||
{"ref": "Has Logbook Area: Shipwreck Reef", "better": 1, "matchers": [{"string": "有日誌區域:沉船岩礁 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_shipwreck_reef"]}}}
|
||||
{"ref": "Has Logbook Area: Utzaal Outskirts", "better": 1, "matchers": [{"string": "有日誌區域:奧札爾郊野 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_utzaal_outskirts"]}}}
|
||||
{"ref": "Has Logbook Area: Vaal Temple", "better": 1, "matchers": [{"string": "有日誌區域:瓦爾神殿 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_vaal_temple"]}}}
|
||||
{"ref": "Has Logbook Area: Volcanic Island", "better": 1, "matchers": [{"string": "有日誌區域:火山島 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_volcano"]}}}
|
||||
{"ref": "Has Logbook Faction: Black Scythe Mercenaries", "better": 0, "matchers": [{"string": "黑鐮傭兵"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_mercenaries"]}}}
|
||||
{"ref": "Has Logbook Faction: Druids of the Broken Circle", "better": 0, "matchers": [{"string": "破碎環之德魯伊"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_druids"]}}}
|
||||
{"ref": "Has Logbook Faction: Knights of the Sun", "better": 0, "matchers": [{"string": "豔陽騎士"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_knights"]}}}
|
||||
{"ref": "Has Logbook Faction: Order of the Chalice", "better": 0, "matchers": [{"string": "聖杯之序"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_order"]}}}
|
||||
{"ref": "Has Redeemer Influence", "better": 1, "matchers": [{"string": "有救贖者勢力 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_redeemer_influence"]}}}
|
||||
{"ref": "Has Room: Antechamber", "better": 0, "matchers": [{"string": "神殿前院"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_antechamber"]}, "option": true}}
|
||||
{"ref": "Has Room: Apex of Ascension (Tier 3)", "better": 0, "matchers": [{"string": "祭祀之巔 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Apex of Atzoatl", "better": 0, "matchers": [{"string": "阿茲瓦特之巔"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_apex"]}, "option": true}}
|
||||
{"ref": "Has Room: Arena of Valour (Tier 2)", "better": 0, "matchers": [{"string": "傳說對決 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Armourer's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "裝甲磨坊 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Armoury (Tier 2)", "better": 0, "matchers": [{"string": "軍械庫 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Atlas of Worlds (Tier 3)", "better": 0, "matchers": [{"string": "異界輿圖 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Automaton Lab (Tier 2)", "better": 0, "matchers": [{"string": "自運研究所 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Banquet Hall", "better": 0, "matchers": [{"string": "神殿宴會場"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_banquet_hall"]}, "option": true}}
|
||||
{"ref": "Has Room: Barracks (Tier 2)", "better": 0, "matchers": [{"string": "軍隊憩所 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Breach Containment Chamber (Tier 2)", "better": 0, "matchers": [{"string": "裂痕異域室 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Catalyst of Corruption (Tier 2)", "better": 0, "matchers": [{"string": "腐敗孳生室 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Cellar", "better": 0, "matchers": [{"string": "神殿地窖"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cellar"]}, "option": true}}
|
||||
{"ref": "Has Room: Chamber of Iron (Tier 3)", "better": 0, "matchers": [{"string": "鋼鍛之室 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Chasm", "better": 0, "matchers": [{"string": "神殿裂口"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chasm_room"]}, "option": true}}
|
||||
{"ref": "Has Room: Cloister", "better": 0, "matchers": [{"string": "神殿廟"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cloister"]}, "option": true}}
|
||||
{"ref": "Has Room: Conduit of Lightning (Tier 3)", "better": 0, "matchers": [{"string": "雷霆導管 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Corruption Chamber (Tier 1)", "better": 0, "matchers": [{"string": "腐敗之室 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Court of Sealed Death (Tier 3)", "better": 0, "matchers": [{"string": "封亡院庭 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Crucible of Flame (Tier 3)", "better": 0, "matchers": [{"string": "烈焰熔爐 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Cultivar Chamber (Tier 2)", "better": 0, "matchers": [{"string": "培育秘室 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Defense Research Lab (Tier 3)", "better": 0, "matchers": [{"string": "禦防研究所 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Demolition Lab (Tier 2)", "better": 0, "matchers": [{"string": "拆除庫 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Department of Thaumaturgy (Tier 2)", "better": 0, "matchers": [{"string": "魔法部 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Doryani's Institute (Tier 3)", "better": 0, "matchers": [{"string": "多里亞尼之院 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Engineering Department (Tier 2)", "better": 0, "matchers": [{"string": "工程部 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Explosives Room (Tier 1)", "better": 0, "matchers": [{"string": "彈藥庫 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Factory (Tier 3)", "better": 0, "matchers": [{"string": "瓦爾工廠 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Flame Workshop (Tier 1)", "better": 0, "matchers": [{"string": "獄炎磨坊 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Gemcutter's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "刻石磨坊 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Glittering Halls (Tier 3)", "better": 0, "matchers": [{"string": "閃耀聖殿 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Guardhouse (Tier 1)", "better": 0, "matchers": [{"string": "衛兵房 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Champions (Tier 3)", "better": 0, "matchers": [{"string": "冠軍聖殿 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Heroes (Tier 2)", "better": 0, "matchers": [{"string": "英雄之殿 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Legends (Tier 3)", "better": 0, "matchers": [{"string": "神話之殿 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Locks (Tier 2)", "better": 0, "matchers": [{"string": "千鎖殿堂 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Lords (Tier 2)", "better": 0, "matchers": [{"string": "權貴殿堂 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Mettle (Tier 1)", "better": 0, "matchers": [{"string": "勇氣之殿 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Offerings (Tier 2)", "better": 0, "matchers": [{"string": "獻祭殿堂 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of War (Tier 3)", "better": 0, "matchers": [{"string": "戰爭聖殿 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Halls", "better": 0, "matchers": [{"string": "神殿殿堂"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_halls"]}, "option": true}}
|
||||
{"ref": "Has Room: Hatchery (Tier 1)", "better": 0, "matchers": [{"string": "孵化室 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_1"]}, "option": true}}
|
||||
{"ref": "Has Room: House of the Others (Tier 3)", "better": 0, "matchers": [{"string": "異者居所 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hurricane Engine (Tier 2)", "better": 0, "matchers": [{"string": "颶風引擎室 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hybridisation Chamber (Tier 3)", "better": 0, "matchers": [{"string": "異種之域 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Jeweller's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "寶匠磨坊 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Jewellery Forge (Tier 2)", "better": 0, "matchers": [{"string": "珠寶冶煉室 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Lightning Workshop (Tier 1)", "better": 0, "matchers": [{"string": "風雷磨坊 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Locus of Corruption (Tier 3)", "better": 0, "matchers": [{"string": "腐敗之地 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Museum of Artefacts (Tier 3)", "better": 0, "matchers": [{"string": "文物展館 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Office of Cartography (Tier 2)", "better": 0, "matchers": [{"string": "製圖研製室 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Omnitect Forge (Tier 2)", "better": 0, "matchers": [{"string": "全能冶煉室 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Omnitect Reactor Plant (Tier 2)", "better": 0, "matchers": [{"string": "全能反應廠 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Passageways", "better": 0, "matchers": [{"string": "神殿通道"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_passageways"]}, "option": true}}
|
||||
{"ref": "Has Room: Pits", "better": 0, "matchers": [{"string": "神殿舊窖"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_the_pits"]}, "option": true}}
|
||||
{"ref": "Has Room: Poison Garden (Tier 1)", "better": 0, "matchers": [{"string": "監獄花園 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Pools of Restoration (Tier 1)", "better": 0, "matchers": [{"string": "治癒之泉 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Royal Meeting Room (Tier 1)", "better": 0, "matchers": [{"string": "王室宴客室 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Sacrificial Chamber (Tier 1)", "better": 0, "matchers": [{"string": "獻祭之室 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Sadist's Den (Tier 3)", "better": 0, "matchers": [{"string": "虐狂之巢 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Immortality (Tier 3)", "better": 0, "matchers": [{"string": "不朽聖殿 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Unity (Tier 2)", "better": 0, "matchers": [{"string": "統領聖殿 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Vitality (Tier 2)", "better": 0, "matchers": [{"string": "活力聖殿 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Shrine of Empowerment (Tier 1)", "better": 0, "matchers": [{"string": "恩賜神殿 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Shrine of Unmaking (Tier 3)", "better": 0, "matchers": [{"string": "毀滅神殿 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sparring Room (Tier 1)", "better": 0, "matchers": [{"string": "格鬥場 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Splinter Research Lab (Tier 1)", "better": 0, "matchers": [{"string": "裂界研究所 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Storage Room (Tier 1)", "better": 0, "matchers": [{"string": "儲物室 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Storm of Corruption (Tier 3)", "better": 0, "matchers": [{"string": "腐敗風暴 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Strongbox Chamber (Tier 1)", "better": 0, "matchers": [{"string": "寶箱之殿 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Surveyor's Study (Tier 1)", "better": 0, "matchers": [{"string": "研究書房 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Tempest Generator (Tier 1)", "better": 0, "matchers": [{"string": "暴雷發電室 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Temple Defense Workshop (Tier 2)", "better": 0, "matchers": [{"string": "神殿禦防室 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Temple Nexus (Tier 3)", "better": 0, "matchers": [{"string": "死神靈殿 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Throne of Atziri (Tier 3)", "better": 0, "matchers": [{"string": "阿茲里宴殿 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Tombs", "better": 0, "matchers": [{"string": "神殿陵寢"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_tombs"]}, "option": true}}
|
||||
{"ref": "Has Room: Torment Cells (Tier 1)", "better": 0, "matchers": [{"string": "磨難牢房 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Torture Cages (Tier 2)", "better": 0, "matchers": [{"string": "拷刑大牢 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Toxic Grove (Tier 3)", "better": 0, "matchers": [{"string": "劇毒果園 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Trap Workshop (Tier 1)", "better": 0, "matchers": [{"string": "陷阱磨坊 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Treasury (Tier 2)", "better": 0, "matchers": [{"string": "祕寶庫 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Tunnels", "better": 0, "matchers": [{"string": "神殿地道"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_tunnels"]}, "option": true}}
|
||||
{"ref": "Has Room: Vault (Tier 1)", "better": 0, "matchers": [{"string": "藏寶庫 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Warehouses (Tier 2)", "better": 0, "matchers": [{"string": "倉庫間 (階級 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Wealth of the Vaal (Tier 3)", "better": 0, "matchers": [{"string": "瓦爾聚寶庫 (階級 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Workshop (Tier 1)", "better": 0, "matchers": [{"string": "工作坊 (階級 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_1"]}, "option": true}}
|
||||
{"ref": "Has Shaper Influence", "better": 1, "matchers": [{"string": "有塑者勢力 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_shaper_influence"]}}}
|
||||
{"ref": "Has Warlord Influence", "better": 1, "matchers": [{"string": "有總督軍勢力 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_warlord_influence"]}}}
|
||||
{"ref": "Mirrored Tablet has # Islands", "better": 1, "matchers": [{"string": "鏡像碑牌有 # 島嶼 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_lake_number_of_islands"]}}}
|
||||
{"ref": "More Currency: #%", "better": 1, "matchers": [{"string": "更多通貨:#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_currency_drops"]}}}
|
||||
{"ref": "More Divination Cards: #%", "better": 1, "matchers": [{"string": "額外命運卡:#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_card_drops"]}}}
|
||||
{"ref": "More Maps: #%", "better": 1, "matchers": [{"string": "更多地圖:#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_map_drops"]}}}
|
||||
{"ref": "More Scarabs: #%", "better": 1, "matchers": [{"string": "更多聖甲蟲:#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_scarab_drops"]}}}
|
||||
{"ref": "Quality (Attack Modifiers): #%", "better": 1, "matchers": [{"string": "品質(攻擊詞綴):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_attack_quality"]}}}
|
||||
{"ref": "Quality (Attribute Modifiers): #%", "better": 1, "matchers": [{"string": "品質(能力值詞綴):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_attribute_quality"]}}}
|
||||
{"ref": "Quality (Caster Modifiers): #%", "better": 1, "matchers": [{"string": "品質(法術詞綴):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_caster_quality"]}}}
|
||||
{"ref": "Quality (Critical Modifiers): #%", "better": 1, "matchers": [{"string": "品質(暴擊詞綴):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_critical_quality"]}}}
|
||||
{"ref": "Quality (Currency): #%", "better": 1, "matchers": [{"string": "品質(通貨):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_currency"]}}}
|
||||
{"ref": "Quality (Defence Modifiers): #%", "better": 1, "matchers": [{"string": "品質(防禦詞綴):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_defense_quality"]}}}
|
||||
{"ref": "Quality (Divination Cards): #%", "better": 1, "matchers": [{"string": "品質(命運卡):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_cards"]}}}
|
||||
{"ref": "Quality (Elemental Damage Modifiers): #%", "better": 1, "matchers": [{"string": "品質(元素傷害詞綴):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_elemental_quality"]}}}
|
||||
{"ref": "Quality (Life and Mana Modifiers): #%", "better": 1, "matchers": [{"string": "品質(生命和魔力詞綴):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_resource_quality"]}}}
|
||||
{"ref": "Quality (Pack Size): #%", "better": 1, "matchers": [{"string": "品質(怪物群大小):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_pack_size"]}}}
|
||||
{"ref": "Quality (Physical and Chaos Damage Modifiers): #%", "better": 1, "matchers": [{"string": "品質(物理和混沌傷害詞綴):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_physical_chaos_quality"]}}}
|
||||
{"ref": "Quality (Rarity): #%", "better": 1, "matchers": [{"string": "品質(稀有度):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_rarity"]}}}
|
||||
{"ref": "Quality (Resistance Modifiers): #%", "better": 1, "matchers": [{"string": "品質(抗性詞綴):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_resistance_quality"]}}}
|
||||
{"ref": "Quality (Scarabs): #%", "better": 1, "matchers": [{"string": "品質(聖甲蟲):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_scarabs"]}}}
|
||||
{"ref": "Quality (Speed Modifiers): #%", "better": 1, "matchers": [{"string": "品質(速度詞綴):#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_speed_quality"]}}}
|
||||
{"ref": "Reflection of Abyss (Difficulty #)", "better": 1, "matchers": [{"string": "深淵映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_38892"]}}}
|
||||
{"ref": "Reflection of Ambush (Difficulty #)", "better": 1, "matchers": [{"string": "伏擊映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_48307"]}}}
|
||||
{"ref": "Reflection of Angling (Difficulty #)", "better": 1, "matchers": [{"string": "釣魚映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_40794"]}}}
|
||||
{"ref": "Reflection of Azurite (Difficulty #)", "better": 1, "matchers": [{"string": "碧藍映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_40031"]}}}
|
||||
{"ref": "Reflection of Bestiary (Difficulty #)", "better": 1, "matchers": [{"string": "獸獵映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_55569"]}}}
|
||||
{"ref": "Reflection of Breach (Difficulty #)", "better": 1, "matchers": [{"string": "裂痕映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62572"]}}}
|
||||
{"ref": "Reflection of Brutality (Difficulty #)", "better": 1, "matchers": [{"string": "殘暴映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_29096"]}}}
|
||||
{"ref": "Reflection of Camaraderie (Difficulty #)", "better": 1, "matchers": [{"string": "友誼映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_35395"]}}}
|
||||
{"ref": "Reflection of Catalysis (Difficulty #)", "better": 1, "matchers": [{"string": "催化映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_57850"]}}}
|
||||
{"ref": "Reflection of Chaos (Difficulty #)", "better": 1, "matchers": [{"string": "混沌映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_50834"]}}}
|
||||
{"ref": "Reflection of Conflict (Difficulty #)", "better": 1, "matchers": [{"string": "衝突映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_1931"]}}}
|
||||
{"ref": "Reflection of Darkness (Difficulty #)", "better": 1, "matchers": [{"string": "黑暗映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_34457"]}}}
|
||||
{"ref": "Reflection of Delirium (Difficulty #)", "better": 1, "matchers": [{"string": "譫妄映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_22138"]}}}
|
||||
{"ref": "Reflection of Delve (Difficulty #)", "better": 1, "matchers": [{"string": "掘獄映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_18737"]}}}
|
||||
{"ref": "Reflection of Demonfire (Difficulty #)", "better": 1, "matchers": [{"string": "業火映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_28500"]}}}
|
||||
{"ref": "Reflection of Domination (Difficulty #)", "better": 1, "matchers": [{"string": "支配映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_63412"]}}}
|
||||
{"ref": "Reflection of Entrapment (Difficulty #)", "better": 1, "matchers": [{"string": "誘捕映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_44399"]}}}
|
||||
{"ref": "Reflection of Essence (Difficulty #)", "better": 1, "matchers": [{"string": "精髓映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_49862"]}}}
|
||||
{"ref": "Reflection of Experimentation (Difficulty #)", "better": 1, "matchers": [{"string": "實驗映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_55676"]}}}
|
||||
{"ref": "Reflection of Flame (Difficulty #)", "better": 1, "matchers": [{"string": "烈焰映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_42468"]}}}
|
||||
{"ref": "Reflection of Fractured Dimensions (Difficulty #)", "better": 1, "matchers": [{"string": "破裂次元映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_49488"]}}}
|
||||
{"ref": "Reflection of Frost (Difficulty #)", "better": 1, "matchers": [{"string": "寒霜映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_38110"]}}}
|
||||
{"ref": "Reflection of Guilt (Difficulty #)", "better": 1, "matchers": [{"string": "責難映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_25480"]}}}
|
||||
{"ref": "Reflection of Imprisonment (Difficulty #)", "better": 1, "matchers": [{"string": "監禁映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_10363"]}}}
|
||||
{"ref": "Reflection of Kalandra (Difficulty #)", "better": 1, "matchers": [{"string": "卡蘭德映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_36591"]}}}
|
||||
{"ref": "Reflection of Legion (Difficulty #)", "better": 1, "matchers": [{"string": "戰亂映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_403"]}}}
|
||||
{"ref": "Reflection of Metamorph (Difficulty #)", "better": 1, "matchers": [{"string": "鍊魔映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_3699"]}}}
|
||||
{"ref": "Reflection of Occultism (Difficulty #)", "better": 1, "matchers": [{"string": "神秘映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_24451"]}}}
|
||||
{"ref": "Reflection of Paradise (Difficulty #)", "better": 1, "matchers": [{"string": "天堂映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_50846"]}}}
|
||||
{"ref": "Reflection of Perverted Faith (Difficulty #)", "better": 1, "matchers": [{"string": "怪其信仰映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_27678"]}}}
|
||||
{"ref": "Reflection of Phaaryl (Difficulty #)", "better": 1, "matchers": [{"string": "法瑞爾映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_7674"]}}}
|
||||
{"ref": "Reflection of Possession (Difficulty #)", "better": 1, "matchers": [{"string": "附身映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_25049"]}}}
|
||||
{"ref": "Reflection of Power (Difficulty #)", "better": 1, "matchers": [{"string": "權力映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_35950"]}}}
|
||||
{"ref": "Reflection of Scourge (Difficulty #)", "better": 1, "matchers": [{"string": "災魘映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62360"]}}}
|
||||
{"ref": "Reflection of Stasis (Difficulty #)", "better": 1, "matchers": [{"string": "靜止映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_32968"]}}}
|
||||
{"ref": "Reflection of Sulphite (Difficulty #)", "better": 1, "matchers": [{"string": "硫酸映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_45086"]}}}
|
||||
{"ref": "Reflection of the Black Scythe (Difficulty #)", "better": 1, "matchers": [{"string": "黑暗血鐮映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_9662"]}}}
|
||||
{"ref": "Reflection of the Breachlord (Difficulty #)", "better": 1, "matchers": [{"string": "裂痕君主映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62935"]}}}
|
||||
{"ref": "Reflection of the Broken Circle (Difficulty #)", "better": 1, "matchers": [{"string": "破碎環映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_43128"]}}}
|
||||
{"ref": "Reflection of the Chalice (Difficulty #)", "better": 1, "matchers": [{"string": "聖杯映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_64561"]}}}
|
||||
{"ref": "Reflection of the Chasm (Difficulty #)", "better": 1, "matchers": [{"string": "裂口映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_57101"]}}}
|
||||
{"ref": "Reflection of the Dream (Difficulty #)", "better": 1, "matchers": [{"string": "夢想映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_27117"]}}}
|
||||
{"ref": "Reflection of the Harbingers (Difficulty #)", "better": 1, "matchers": [{"string": "神諭映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_37203"]}}}
|
||||
{"ref": "Reflection of the Hunter (Difficulty #)", "better": 1, "matchers": [{"string": "獵人映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_18816"]}}}
|
||||
{"ref": "Reflection of the Monolith (Difficulty #)", "better": 1, "matchers": [{"string": "石陣映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_34796"]}}}
|
||||
{"ref": "Reflection of the Nightmare (Difficulty #)", "better": 1, "matchers": [{"string": "噩夢映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_24232"]}}}
|
||||
{"ref": "Reflection of the Storm (Difficulty #)", "better": 1, "matchers": [{"string": "風暴映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_2745"]}}}
|
||||
{"ref": "Reflection of the Sun (Difficulty #)", "better": 1, "matchers": [{"string": "豔陽映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_60034"]}}}
|
||||
{"ref": "Reflection of the Trove (Difficulty #)", "better": 1, "matchers": [{"string": "寶庫映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_46772"]}}}
|
||||
{"ref": "Reflection of the Wilderness (Difficulty #)", "better": 1, "matchers": [{"string": "荒野映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_29224"]}}}
|
||||
{"ref": "Reflection of Thralldom (Difficulty #)", "better": 1, "matchers": [{"string": "奴役映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_26813"]}}}
|
||||
{"ref": "Reflection of Torment (Difficulty #)", "better": 1, "matchers": [{"string": "磨難映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_53950"]}}}
|
||||
{"ref": "Reflection of Tyranny (Difficulty #)", "better": 1, "matchers": [{"string": "暴政映像 (難度 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_60981"]}}}
|
||||
32
renderer/public/.DS_Store/vendor/pseudo-stats/cmn-Hant/pseudo_stats.ndjson
vendored
Normal file
32
renderer/public/.DS_Store/vendor/pseudo-stats/cmn-Hant/pseudo_stats.ndjson
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
{"ref": "# Life Regenerated per Second", "better": 1, "matchers": [{"string": "# 每秒生命回復 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life_regen"]}}}
|
||||
{"ref": "#% increased Burning Damage", "better": 1, "matchers": [{"string": "增加 #% 燃燒傷害"}, {"string": "減少 #% 燃燒傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_burning_damage"], "explicit": ["explicit.stat_1175385867"], "implicit": ["implicit.stat_1175385867"], "fractured": ["fractured.stat_1175385867"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "matchers": [{"string": "增加 #% 冰冷傷害"}, {"string": "減少 #% 冰冷傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage"], "explicit": ["explicit.stat_3291658075"], "implicit": ["implicit.stat_3291658075"], "fractured": ["fractured.stat_3291658075"], "scourge": ["scourge.stat_3291658075"], "crafted": ["crafted.stat_3291658075"]}}}
|
||||
{"ref": "#% increased Cold Spell Damage", "better": 1, "matchers": [{"string": "增加 #% 冰冷法術傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_spell_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "matchers": [{"string": "增加 #% 元素傷害"}, {"string": "有增加 #% 的元素傷害"}, {"string": "有減少 #% 的元素傷害", "negate": true}, {"string": "減少 #% 元素傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage"], "explicit": ["explicit.stat_3141070085"], "implicit": ["implicit.stat_3141070085"], "fractured": ["fractured.stat_3141070085"], "scourge": ["scourge.stat_3141070085"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attack Skills", "better": 1, "matchers": [{"string": "攻擊技能增加 #% 元素傷害"}, {"string": "攻擊技能減少 #% 元素傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage_with_attack_skills"], "explicit": ["explicit.stat_387439868"], "implicit": ["implicit.stat_387439868"], "fractured": ["fractured.stat_387439868"], "scourge": ["scourge.stat_387439868"], "crafted": ["crafted.stat_387439868"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "matchers": [{"string": "增加 #% 火焰傷害"}, {"string": "減少 #% 火焰傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage"], "explicit": ["explicit.stat_3962278098"], "implicit": ["implicit.stat_3962278098"], "fractured": ["fractured.stat_3962278098"], "scourge": ["scourge.stat_3962278098"], "crafted": ["crafted.stat_3962278098"]}}}
|
||||
{"ref": "#% increased Fire Spell Damage", "better": 1, "matchers": [{"string": "增加 #% 火焰法術傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_spell_damage"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "matchers": [{"string": "增加 #% 閃電傷害"}, {"string": "減少 #% 閃電傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage"], "explicit": ["explicit.stat_2231156303"], "implicit": ["implicit.stat_2231156303"], "fractured": ["fractured.stat_2231156303"], "scourge": ["scourge.stat_2231156303"], "crafted": ["crafted.stat_2231156303"]}}}
|
||||
{"ref": "#% increased Lightning Spell Damage", "better": 1, "matchers": [{"string": "增加 #% 閃電法術傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_spell_damage"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "matchers": [{"string": "增加 #% 魔力回復率"}, {"string": "減少 #% 魔力回復率", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_mana_regen"], "explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "fractured": ["fractured.stat_789117908"], "scourge": ["scourge.stat_789117908"], "crafted": ["crafted.stat_789117908"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "matchers": [{"string": "增加 #% 移動速度"}, {"string": "減少 #% 移動速度", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_movement_speed"], "explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "fractured": ["fractured.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "scourge": ["scourge.stat_2250533757"], "crafted": ["crafted.stat_2250533757"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "matchers": [{"string": "增加 #% 法術傷害"}, {"string": "減少 #% 法術傷害", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_spell_damage"], "explicit": ["explicit.stat_2974417149"], "implicit": ["implicit.stat_2974417149"], "fractured": ["fractured.stat_2974417149"], "enchant": ["enchant.stat_2974417149"], "scourge": ["scourge.stat_2974417149"], "crafted": ["crafted.stat_2974417149"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Life", "dp": true, "better": 1, "matchers": [{"string": "#% 的物理攻擊傷害偷取生命"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_life"], "explicit": ["explicit.stat_3593843976", "explicit.stat_55876295"], "implicit": ["implicit.stat_3593843976", "implicit.stat_55876295"], "fractured": ["fractured.stat_3593843976", "fractured.stat_55876295"], "scourge": ["scourge.stat_3593843976"], "crafted": ["crafted.stat_3593843976", "crafted.stat_55876295"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Mana", "dp": true, "better": 1, "matchers": [{"string": "#% 物理攻擊傷害偷取魔力"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_mana"], "explicit": ["explicit.stat_3237948413", "explicit.stat_669069897"], "implicit": ["implicit.stat_3237948413", "implicit.stat_669069897"], "fractured": ["fractured.stat_3237948413", "fractured.stat_669069897"], "scourge": ["scourge.stat_3237948413"], "crafted": ["crafted.stat_3237948413", "crafted.stat_669069897"]}}}
|
||||
{"ref": "#% total increased Physical Damage", "better": 1, "matchers": [{"string": "增加 #% 物裡傷害 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_physical_damage"]}}}
|
||||
{"ref": "+# total maximum Energy Shield", "better": 1, "matchers": [{"string": "+# 最大能量護盾 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_energy_shield"]}}}
|
||||
{"ref": "+# total maximum Life", "better": 1, "matchers": [{"string": "+# 最大生命 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life"]}}}
|
||||
{"ref": "+# total maximum Mana", "better": 1, "matchers": [{"string": "+# 最大魔力 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_mana"]}}}
|
||||
{"ref": "+# total to all Attributes", "better": 1, "matchers": [{"string": "+# 全能力 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_attributes"]}}}
|
||||
{"ref": "+# total to Dexterity", "better": 1, "matchers": [{"string": "+# 敏捷 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_dexterity"]}}}
|
||||
{"ref": "+# total to Intelligence", "better": 1, "matchers": [{"string": "+# 智慧 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_intelligence"]}}}
|
||||
{"ref": "+# total to Strength", "better": 1, "matchers": [{"string": "+# 力量 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_strength"]}}}
|
||||
{"ref": "+#% Global Critical Strike Chance", "better": 1, "matchers": [{"string": "+#% 全域暴擊機率 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_chance"]}}}
|
||||
{"ref": "+#% Global Critical Strike Multiplier", "better": 1, "matchers": [{"string": "+#% 全域暴擊加成 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_multiplier"]}}}
|
||||
{"ref": "+#% total Attack Speed", "better": 1, "matchers": [{"string": "+#% 攻擊速度 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_attack_speed"]}}}
|
||||
{"ref": "+#% total Cast Speed", "better": 1, "matchers": [{"string": "+#% 施放速度 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cast_speed"]}}}
|
||||
{"ref": "+#% total Elemental Resistance", "better": 1, "matchers": [{"string": "+#% 元素抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_elemental_resistance"]}}}
|
||||
{"ref": "+#% total to Chaos Resistance", "better": 1, "matchers": [{"string": "+#% 總混沌抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_chaos_resistance"]}}}
|
||||
{"ref": "+#% total to Cold Resistance", "better": 1, "matchers": [{"string": "+#% 冰冷抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cold_resistance"]}}}
|
||||
{"ref": "+#% total to Fire Resistance", "better": 1, "matchers": [{"string": "+#% 火焰抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_fire_resistance"]}}}
|
||||
{"ref": "+#% total to Lightning Resistance", "better": 1, "matchers": [{"string": "+#% 閃電抗性 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_lightning_resistance"]}}}
|
||||
292
renderer/public/.DS_Store/vendor/pseudo-stats/en/all-pseudo.ndjson
vendored
Normal file
292
renderer/public/.DS_Store/vendor/pseudo-stats/en/all-pseudo.ndjson
vendored
Normal file
@@ -0,0 +1,292 @@
|
||||
{"ref": "# Crafted Modifiers", "better": 1, "matchers": [{"string": "# Crafted Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_mods"]}}}
|
||||
{"ref": "# Crafted Prefix Modifiers", "better": 1, "matchers": [{"string": "# Crafted Prefix Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_prefix_mods"]}}}
|
||||
{"ref": "# Crafted Suffix Modifiers", "better": 1, "matchers": [{"string": "# Crafted Suffix Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_suffix_mods"]}}}
|
||||
{"ref": "# Empty Modifiers", "better": 1, "matchers": [{"string": "# Empty Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_affix_mods"]}}}
|
||||
{"ref": "# Empty Prefix Modifiers", "better": 1, "matchers": [{"string": "# Empty Prefix Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_prefix_mods"]}}}
|
||||
{"ref": "# Empty Suffix Modifiers", "better": 1, "matchers": [{"string": "# Empty Suffix Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_suffix_mods"]}}}
|
||||
{"ref": "# Enchant Modifiers", "better": 1, "matchers": [{"string": "# Enchant Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_enchant_mods"]}}}
|
||||
{"ref": "# Fractured Modifiers", "better": 1, "matchers": [{"string": "# Fractured Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_fractured_mods"]}}}
|
||||
{"ref": "# Implicit Modifiers", "better": 1, "matchers": [{"string": "# Implicit Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_implicit_mods"]}}}
|
||||
{"ref": "# Life Regenerated per Second", "better": 1, "matchers": [{"string": "# Life Regenerated per Second "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life_regen"]}}}
|
||||
{"ref": "# Modifiers", "better": 1, "matchers": [{"string": "# Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_affix_mods"]}}}
|
||||
{"ref": "# Notable Passive Skills", "better": 1, "matchers": [{"string": "# Notable Passive Skills "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_notable_passive_skills"]}}}
|
||||
{"ref": "# Prefix Modifiers", "better": 1, "matchers": [{"string": "# Prefix Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_prefix_mods"]}}}
|
||||
{"ref": "# Suffix Modifiers", "better": 1, "matchers": [{"string": "# Suffix Modifiers "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_suffix_mods"]}}}
|
||||
{"ref": "# total Elemental Resistances", "better": 1, "matchers": [{"string": "# total Elemental Resistances "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_count_elemental_resistances"]}}}
|
||||
{"ref": "# total Resistances", "better": 1, "matchers": [{"string": "# total Resistances "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_count_resistances"]}}}
|
||||
{"ref": "#% Base Defence Percentile", "better": 1, "matchers": [{"string": "#% Base Defence Percentile "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_base_defence_percentile"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Atlas Memories", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Atlas Memories "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_memory_line"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Conqueror Maps", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Conqueror Maps "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_conqueror_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Elder Maps", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Elder Maps "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_elder_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Maven Invitations", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Maven Invitations "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_maven_invitation"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Scarabs", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Scarabs "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_scarab"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Shaper Maps", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Shaper Maps "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_shaper_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Unique Maps", "better": 1, "matchers": [{"string": "#% chance for dropped Maps to convert to Unique Maps "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_unique_map"]}}}
|
||||
{"ref": "#% increased Burning Damage", "better": 1, "matchers": [{"string": "#% increased Burning Damage"}, {"string": "#% reduced Burning Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_burning_damage"], "explicit": ["explicit.stat_1175385867"], "implicit": ["implicit.stat_1175385867"], "fractured": ["fractured.stat_1175385867"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "matchers": [{"string": "#% increased Cold Damage"}, {"string": "#% reduced Cold Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage"], "explicit": ["explicit.stat_3291658075"], "implicit": ["implicit.stat_3291658075"], "fractured": ["fractured.stat_3291658075"], "scourge": ["scourge.stat_3291658075"], "crafted": ["crafted.stat_3291658075"]}}}
|
||||
{"ref": "#% increased Cold Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% increased Cold Damage with Attack Skills"}, {"string": "#% reduced Cold Damage with Attack Skills", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage_with_attack_skills"], "explicit": ["explicit.stat_860668586"], "implicit": ["implicit.stat_860668586"]}}}
|
||||
{"ref": "#% increased Cold Spell Damage", "better": 1, "matchers": [{"string": "#% increased Cold Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_spell_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "matchers": [{"string": "#% increased Elemental Damage"}, {"string": "Has #% increased Elemental Damage"}, {"string": "#% reduced Elemental Damage", "negate": true}, {"string": "Has #% reduced Elemental Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage"], "explicit": ["explicit.stat_3141070085"], "implicit": ["implicit.stat_3141070085"], "fractured": ["fractured.stat_3141070085"], "enchant": ["enchant.stat_692420067"], "scourge": ["scourge.stat_3141070085"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% increased Elemental Damage with Attack Skills"}, {"string": "#% reduced Elemental Damage with Attack Skills", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage_with_attack_skills"], "explicit": ["explicit.stat_387439868"], "implicit": ["implicit.stat_387439868"], "fractured": ["fractured.stat_387439868"], "scourge": ["scourge.stat_387439868"], "crafted": ["crafted.stat_387439868"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "matchers": [{"string": "#% increased Fire Damage"}, {"string": "#% reduced Fire Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage"], "explicit": ["explicit.stat_3962278098"], "implicit": ["implicit.stat_3962278098"], "fractured": ["fractured.stat_3962278098"], "scourge": ["scourge.stat_3962278098"], "crafted": ["crafted.stat_3962278098"]}}}
|
||||
{"ref": "#% increased Fire Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% increased Fire Damage with Attack Skills"}, {"string": "#% reduced Fire Damage with Attack Skills", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage_with_attack_skills"], "implicit": ["implicit.stat_2468413380"]}}}
|
||||
{"ref": "#% increased Fire Spell Damage", "better": 1, "matchers": [{"string": "#% increased Fire Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_spell_damage"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "matchers": [{"string": "#% increased Lightning Damage"}, {"string": "#% reduced Lightning Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage"], "explicit": ["explicit.stat_2231156303"], "implicit": ["implicit.stat_2231156303"], "fractured": ["fractured.stat_2231156303"], "scourge": ["scourge.stat_2231156303"], "crafted": ["crafted.stat_2231156303"]}}}
|
||||
{"ref": "#% increased Lightning Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% increased Lightning Damage with Attack Skills"}, {"string": "#% reduced Lightning Damage with Attack Skills", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage_with_attack_skills"], "explicit": ["explicit.stat_4208907162"], "implicit": ["implicit.stat_4208907162"]}}}
|
||||
{"ref": "#% increased Lightning Spell Damage", "better": 1, "matchers": [{"string": "#% increased Lightning Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_spell_damage"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "matchers": [{"string": "#% increased Mana Regeneration Rate"}, {"string": "#% reduced Mana Regeneration Rate", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_mana_regen"], "explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "fractured": ["fractured.stat_789117908"], "scourge": ["scourge.stat_789117908"], "crafted": ["crafted.stat_789117908"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "matchers": [{"string": "#% increased Movement Speed"}, {"string": "#% reduced Movement Speed", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_movement_speed"], "explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "fractured": ["fractured.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "scourge": ["scourge.stat_2250533757"], "crafted": ["crafted.stat_2250533757"]}}}
|
||||
{"ref": "#% increased Rarity of Items found", "better": 1, "matchers": [{"string": "#% increased Rarity of Items found"}, {"string": "#% reduced Rarity of Items found", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_rarity"], "explicit": ["explicit.stat_3917489142"], "implicit": ["implicit.stat_3917489142"], "fractured": ["fractured.stat_3917489142"], "scourge": ["scourge.stat_3917489142"], "crafted": ["crafted.stat_3917489142"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "matchers": [{"string": "#% increased Spell Damage"}, {"string": "#% reduced Spell Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_spell_damage"], "explicit": ["explicit.stat_2974417149"], "implicit": ["implicit.stat_2974417149"], "fractured": ["fractured.stat_2974417149"], "enchant": ["enchant.stat_2974417149"], "scourge": ["scourge.stat_2974417149"], "crafted": ["crafted.stat_2974417149"]}}}
|
||||
{"ref": "#% of Life Regenerated per Second", "better": 1, "matchers": [{"string": "#% of Life Regenerated per Second "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_percent_life_regen"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Life", "dp": true, "better": 1, "matchers": [{"string": "#% of Physical Attack Damage Leeched as Life"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_life"], "explicit": ["explicit.stat_3593843976", "explicit.stat_55876295"], "implicit": ["implicit.stat_3593843976", "implicit.stat_55876295"], "fractured": ["fractured.stat_3593843976", "fractured.stat_55876295"], "scourge": ["scourge.stat_3593843976"], "crafted": ["crafted.stat_3593843976", "crafted.stat_55876295"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Mana", "dp": true, "better": 1, "matchers": [{"string": "#% of Physical Attack Damage Leeched as Mana"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_mana"], "explicit": ["explicit.stat_3237948413", "explicit.stat_669069897"], "implicit": ["implicit.stat_3237948413", "implicit.stat_669069897"], "fractured": ["fractured.stat_3237948413", "fractured.stat_669069897"], "enchant": ["enchant.stat_669069897"], "scourge": ["scourge.stat_3237948413"], "crafted": ["crafted.stat_3237948413", "crafted.stat_669069897"]}}}
|
||||
{"ref": "#% total increased maximum Energy Shield", "better": 1, "matchers": [{"string": "#% total increased maximum Energy Shield "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_energy_shield"]}}}
|
||||
{"ref": "#% total increased Physical Damage", "better": 1, "matchers": [{"string": "#% total increased Physical Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_physical_damage"]}}}
|
||||
{"ref": "+# total maximum Energy Shield", "better": 1, "matchers": [{"string": "+# total maximum Energy Shield "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_energy_shield"]}}}
|
||||
{"ref": "+# total maximum Life", "better": 1, "matchers": [{"string": "+# total maximum Life "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life"]}}}
|
||||
{"ref": "+# total maximum Mana", "better": 1, "matchers": [{"string": "+# total maximum Mana "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_mana"]}}}
|
||||
{"ref": "+# total to all Attributes", "better": 1, "matchers": [{"string": "+# total to all Attributes "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_attributes"]}}}
|
||||
{"ref": "+# total to Dexterity", "better": 1, "matchers": [{"string": "+# total to Dexterity "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_dexterity"]}}}
|
||||
{"ref": "+# total to Intelligence", "better": 1, "matchers": [{"string": "+# total to Intelligence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_intelligence"]}}}
|
||||
{"ref": "+# total to Level of Socketed Aura Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Aura Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_aura_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Bow Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Bow Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_bow_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Chaos Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Chaos Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_chaos_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Cold Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Cold Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_cold_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Curse Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Curse Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_curse_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Dexterity Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Dexterity Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_dexterity_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Elemental Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Elemental Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_elemental_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Fire Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Fire Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_fire_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Golem Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Golem Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_golem_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Intelligence Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Intelligence Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_intelligence_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Lightning Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Lightning Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_lightning_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Melee Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Melee Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_melee_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Minion Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Minion Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_minion_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Movement Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Movement Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_movement_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Projectile Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Projectile Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_projectile_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Skill Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Skill Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_skill_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Spell Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Spell Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_spell_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Strength Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Strength Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_strength_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Support Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Support Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_support_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Vaal Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Vaal Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_vaal_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Warcry Gems", "better": 1, "matchers": [{"string": "+# total to Level of Socketed Warcry Gems "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_warcry_gem_levels"]}}}
|
||||
{"ref": "+# total to Strength", "better": 1, "matchers": [{"string": "+# total to Strength "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_strength"]}}}
|
||||
{"ref": "+#% Global Critical Strike Chance", "better": 1, "matchers": [{"string": "+#% Global Critical Strike Chance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_chance"]}}}
|
||||
{"ref": "+#% Global Critical Strike Multiplier", "better": 1, "matchers": [{"string": "+#% Global Critical Strike Multiplier "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_multiplier"]}}}
|
||||
{"ref": "+#% total Attack Speed", "better": 1, "matchers": [{"string": "+#% total Attack Speed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_attack_speed"]}}}
|
||||
{"ref": "+#% total Cast Speed", "better": 1, "matchers": [{"string": "+#% total Cast Speed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cast_speed"]}}}
|
||||
{"ref": "+#% total Critical Strike Chance for Spells", "better": 1, "matchers": [{"string": "+#% total Critical Strike Chance for Spells "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_critical_strike_chance_for_spells"]}}}
|
||||
{"ref": "+#% total Elemental Resistance", "better": 1, "matchers": [{"string": "+#% total Elemental Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_elemental_resistance"]}}}
|
||||
{"ref": "+#% total Resistance", "better": 1, "matchers": [{"string": "+#% total Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_resistance"]}}}
|
||||
{"ref": "+#% total to all Elemental Resistances", "better": 1, "matchers": [{"string": "+#% total to all Elemental Resistances "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_elemental_resistances"]}}}
|
||||
{"ref": "+#% total to Chaos Resistance", "better": 1, "matchers": [{"string": "+#% total to Chaos Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_chaos_resistance"]}}}
|
||||
{"ref": "+#% total to Cold Resistance", "better": 1, "matchers": [{"string": "+#% total to Cold Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cold_resistance"]}}}
|
||||
{"ref": "+#% total to Fire Resistance", "better": 1, "matchers": [{"string": "+#% total to Fire Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_fire_resistance"]}}}
|
||||
{"ref": "+#% total to Lightning Resistance", "better": 1, "matchers": [{"string": "+#% total to Lightning Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_lightning_resistance"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage", "better": 1, "matchers": [{"string": "Adds # to # Chaos Damage"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage"], "explicit": ["explicit.stat_2223678961", "explicit.stat_3531280422"], "implicit": ["implicit.stat_2223678961", "implicit.stat_3531280422"], "fractured": ["fractured.stat_2223678961"], "enchant": ["enchant.stat_2223678961"], "scourge": ["scourge.stat_2223678961"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Chaos Damage to Attacks"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage_to_attacks"], "explicit": ["explicit.stat_674553446"], "implicit": ["implicit.stat_674553446"], "fractured": ["fractured.stat_674553446"], "crafted": ["crafted.stat_674553446"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Chaos Damage to Spells"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage_to_spells"], "explicit": ["explicit.stat_2300399854"], "implicit": ["implicit.stat_2300399854"], "fractured": ["fractured.stat_2300399854"]}}}
|
||||
{"ref": "Adds # to # Cold Damage", "better": 1, "matchers": [{"string": "Adds # to # Cold Damage"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage"], "explicit": ["explicit.stat_1037193709", "explicit.stat_2387423236"], "implicit": ["implicit.stat_1037193709", "implicit.stat_2387423236"], "fractured": ["fractured.stat_1037193709", "fractured.stat_2387423236"], "enchant": ["enchant.stat_1037193709"], "scourge": ["scourge.stat_1037193709"], "crafted": ["crafted.stat_1037193709", "crafted.stat_2387423236"]}}}
|
||||
{"ref": "Adds # to # Cold Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Cold Damage to Attacks"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage_to_attacks"], "explicit": ["explicit.stat_4067062424"], "implicit": ["implicit.stat_4067062424"], "fractured": ["fractured.stat_4067062424"], "crafted": ["crafted.stat_4067062424"]}}}
|
||||
{"ref": "Adds # to # Cold Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Cold Damage to Spells"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage_to_spells"], "explicit": ["explicit.stat_2469416729"], "implicit": ["implicit.stat_2469416729"], "fractured": ["fractured.stat_2469416729"], "scourge": ["scourge.stat_2469416729"], "crafted": ["crafted.stat_2469416729"]}}}
|
||||
{"ref": "Adds # to # Damage", "better": 1, "matchers": [{"string": "Adds # to # Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage"]}}}
|
||||
{"ref": "Adds # to # Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Damage to Attacks "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage_to_attacks"]}}}
|
||||
{"ref": "Adds # to # Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Damage to Spells "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage_to_spells"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage", "better": 1, "matchers": [{"string": "Adds # to # Elemental Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Elemental Damage to Attacks "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage_to_attacks"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Elemental Damage to Spells "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage_to_spells"]}}}
|
||||
{"ref": "Adds # to # Fire Damage", "better": 1, "matchers": [{"string": "Adds # to # Fire Damage"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage"], "explicit": ["explicit.stat_321077055", "explicit.stat_709508406"], "implicit": ["implicit.stat_321077055", "implicit.stat_709508406"], "fractured": ["fractured.stat_321077055", "fractured.stat_709508406"], "enchant": ["enchant.stat_709508406"], "scourge": ["scourge.stat_709508406"], "crafted": ["crafted.stat_321077055", "crafted.stat_709508406"]}}}
|
||||
{"ref": "Adds # to # Fire Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Fire Damage to Attacks"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage_to_attacks"], "explicit": ["explicit.stat_1573130764"], "implicit": ["implicit.stat_1573130764"], "fractured": ["fractured.stat_1573130764"], "crafted": ["crafted.stat_1573130764"]}}}
|
||||
{"ref": "Adds # to # Fire Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Fire Damage to Spells"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage_to_spells"], "explicit": ["explicit.stat_1133016593"], "implicit": ["implicit.stat_1133016593"], "fractured": ["fractured.stat_1133016593"], "scourge": ["scourge.stat_1133016593"], "crafted": ["crafted.stat_1133016593"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage", "better": 1, "matchers": [{"string": "Adds # to # Lightning Damage"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage"], "explicit": ["explicit.stat_1334060246", "explicit.stat_3336890334"], "implicit": ["implicit.stat_1334060246", "implicit.stat_3336890334"], "fractured": ["fractured.stat_1334060246", "fractured.stat_3336890334"], "enchant": ["enchant.stat_3336890334"], "scourge": ["scourge.stat_3336890334"], "crafted": ["crafted.stat_1334060246", "crafted.stat_3336890334"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Lightning Damage to Attacks"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage_to_attacks"], "explicit": ["explicit.stat_1754445556"], "implicit": ["implicit.stat_1754445556"], "fractured": ["fractured.stat_1754445556"], "crafted": ["crafted.stat_1754445556"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Lightning Damage to Spells"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage_to_spells"], "explicit": ["explicit.stat_2831165374"], "implicit": ["implicit.stat_2831165374"], "fractured": ["fractured.stat_2831165374"], "scourge": ["scourge.stat_2831165374"], "crafted": ["crafted.stat_2831165374"]}}}
|
||||
{"ref": "Adds # to # Physical Damage", "better": 1, "matchers": [{"string": "Adds # to # Physical Damage"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage"], "explicit": ["explicit.stat_1940865751", "explicit.stat_960081730"], "implicit": ["implicit.stat_1940865751"], "fractured": ["fractured.stat_1940865751", "fractured.stat_960081730"], "scourge": ["scourge.stat_1940865751"], "crafted": ["crafted.stat_1940865751"]}}}
|
||||
{"ref": "Adds # to # Physical Damage to Attacks", "better": 1, "matchers": [{"string": "Adds # to # Physical Damage to Attacks"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage_to_attacks"], "explicit": ["explicit.stat_3032590688"], "implicit": ["implicit.stat_3032590688"], "fractured": ["fractured.stat_3032590688"], "crafted": ["crafted.stat_3032590688"]}}}
|
||||
{"ref": "Adds # to # Physical Damage to Spells", "better": 1, "matchers": [{"string": "Adds # to # Physical Damage to Spells"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage_to_spells"], "explicit": ["explicit.stat_2435536961"], "implicit": ["implicit.stat_2435536961"], "fractured": ["fractured.stat_2435536961"], "scourge": ["scourge.stat_2435536961"]}}}
|
||||
{"ref": "Has # Influences", "better": 1, "matchers": [{"string": "Has # Influences "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_influence_count"]}}}
|
||||
{"ref": "Has Crusader Influence", "better": 1, "matchers": [{"string": "Has Crusader Influence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_crusader_influence"]}}}
|
||||
{"ref": "Has Elder Influence", "better": 1, "matchers": [{"string": "Has Elder Influence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_elder_influence"]}}}
|
||||
{"ref": "Has Hunter Influence", "better": 1, "matchers": [{"string": "Has Hunter Influence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_hunter_influence"]}}}
|
||||
{"ref": "Has Logbook Area: Battleground Graves", "better": 1, "matchers": [{"string": "Has Logbook Area: Battleground Graves "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_battleground_graves"]}}}
|
||||
{"ref": "Has Logbook Area: Bluffs", "better": 1, "matchers": [{"string": "Has Logbook Area: Bluffs "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_bluffs"]}}}
|
||||
{"ref": "Has Logbook Area: Cemetery", "better": 1, "matchers": [{"string": "Has Logbook Area: Cemetery "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_cemetery"]}}}
|
||||
{"ref": "Has Logbook Area: Desert Ruins", "better": 1, "matchers": [{"string": "Has Logbook Area: Desert Ruins "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_desert_ruins"]}}}
|
||||
{"ref": "Has Logbook Area: Dried Riverbed", "better": 1, "matchers": [{"string": "Has Logbook Area: Dried Riverbed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_dried_riverbed"]}}}
|
||||
{"ref": "Has Logbook Area: Forest Ruins", "better": 1, "matchers": [{"string": "Has Logbook Area: Forest Ruins "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_forest_ruins"]}}}
|
||||
{"ref": "Has Logbook Area: Karui Wargraves", "better": 1, "matchers": [{"string": "Has Logbook Area: Karui Wargraves "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_karui_wargraves"]}}}
|
||||
{"ref": "Has Logbook Area: Mountainside", "better": 1, "matchers": [{"string": "Has Logbook Area: Mountainside "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_mountainside"]}}}
|
||||
{"ref": "Has Logbook Area: Rotting Temple", "better": 1, "matchers": [{"string": "Has Logbook Area: Rotting Temple "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_rotting_temple"]}}}
|
||||
{"ref": "Has Logbook Area: Sarn Slums", "better": 1, "matchers": [{"string": "Has Logbook Area: Sarn Slums "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_sarn_slums"]}}}
|
||||
{"ref": "Has Logbook Area: Scrublands", "better": 1, "matchers": [{"string": "Has Logbook Area: Scrublands "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_scrublands"]}}}
|
||||
{"ref": "Has Logbook Area: Shipwreck Reef", "better": 1, "matchers": [{"string": "Has Logbook Area: Shipwreck Reef "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_shipwreck_reef"]}}}
|
||||
{"ref": "Has Logbook Area: Utzaal Outskirts", "better": 1, "matchers": [{"string": "Has Logbook Area: Utzaal Outskirts "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_utzaal_outskirts"]}}}
|
||||
{"ref": "Has Logbook Area: Vaal Temple", "better": 1, "matchers": [{"string": "Has Logbook Area: Vaal Temple "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_vaal_temple"]}}}
|
||||
{"ref": "Has Logbook Area: Volcanic Island", "better": 1, "matchers": [{"string": "Has Logbook Area: Volcanic Island "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_volcano"]}}}
|
||||
{"ref": "Has Logbook Faction: Black Scythe Mercenaries", "better": 0, "matchers": [{"string": "Black Scythe Mercenaries"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_mercenaries"]}}}
|
||||
{"ref": "Has Logbook Faction: Druids of the Broken Circle", "better": 0, "matchers": [{"string": "Druids of the Broken Circle"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_druids"]}}}
|
||||
{"ref": "Has Logbook Faction: Knights of the Sun", "better": 0, "matchers": [{"string": "Knights of the Sun"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_knights"]}}}
|
||||
{"ref": "Has Logbook Faction: Order of the Chalice", "better": 0, "matchers": [{"string": "Order of the Chalice"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_order"]}}}
|
||||
{"ref": "Has Redeemer Influence", "better": 1, "matchers": [{"string": "Has Redeemer Influence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_redeemer_influence"]}}}
|
||||
{"ref": "Has Room: Antechamber", "better": 0, "matchers": [{"string": "Antechamber"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_antechamber"]}, "option": true}}
|
||||
{"ref": "Has Room: Apex of Ascension (Tier 3)", "better": 0, "matchers": [{"string": "Apex of Ascension (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Apex of Atzoatl", "better": 0, "matchers": [{"string": "Apex of Atzoatl"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_apex"]}, "option": true}}
|
||||
{"ref": "Has Room: Arena of Valour (Tier 2)", "better": 0, "matchers": [{"string": "Arena of Valour (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Armourer's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Armourer's Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Armoury (Tier 2)", "better": 0, "matchers": [{"string": "Armoury (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Atlas of Worlds (Tier 3)", "better": 0, "matchers": [{"string": "Atlas of Worlds (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Automaton Lab (Tier 2)", "better": 0, "matchers": [{"string": "Automaton Lab (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Banquet Hall", "better": 0, "matchers": [{"string": "Banquet Hall"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_banquet_hall"]}, "option": true}}
|
||||
{"ref": "Has Room: Barracks (Tier 2)", "better": 0, "matchers": [{"string": "Barracks (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Breach Containment Chamber (Tier 2)", "better": 0, "matchers": [{"string": "Breach Containment Chamber (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Catalyst of Corruption (Tier 2)", "better": 0, "matchers": [{"string": "Catalyst of Corruption (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Cellar", "better": 0, "matchers": [{"string": "Cellar"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cellar"]}, "option": true}}
|
||||
{"ref": "Has Room: Chamber of Iron (Tier 3)", "better": 0, "matchers": [{"string": "Chamber of Iron (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Chasm", "better": 0, "matchers": [{"string": "Chasm"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chasm_room"]}, "option": true}}
|
||||
{"ref": "Has Room: Cloister", "better": 0, "matchers": [{"string": "Cloister"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cloister"]}, "option": true}}
|
||||
{"ref": "Has Room: Conduit of Lightning (Tier 3)", "better": 0, "matchers": [{"string": "Conduit of Lightning (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Corruption Chamber (Tier 1)", "better": 0, "matchers": [{"string": "Corruption Chamber (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Court of Sealed Death (Tier 3)", "better": 0, "matchers": [{"string": "Court of Sealed Death (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Crucible of Flame (Tier 3)", "better": 0, "matchers": [{"string": "Crucible of Flame (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Cultivar Chamber (Tier 2)", "better": 0, "matchers": [{"string": "Cultivar Chamber (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Defense Research Lab (Tier 3)", "better": 0, "matchers": [{"string": "Defense Research Lab (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Demolition Lab (Tier 2)", "better": 0, "matchers": [{"string": "Demolition Lab (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Department of Thaumaturgy (Tier 2)", "better": 0, "matchers": [{"string": "Department of Thaumaturgy (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Doryani's Institute (Tier 3)", "better": 0, "matchers": [{"string": "Doryani's Institute (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Engineering Department (Tier 2)", "better": 0, "matchers": [{"string": "Engineering Department (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Explosives Room (Tier 1)", "better": 0, "matchers": [{"string": "Explosives Room (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Factory (Tier 3)", "better": 0, "matchers": [{"string": "Factory (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Flame Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Flame Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Gemcutter's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Gemcutter's Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Glittering Halls (Tier 3)", "better": 0, "matchers": [{"string": "Glittering Halls (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Guardhouse (Tier 1)", "better": 0, "matchers": [{"string": "Guardhouse (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Champions (Tier 3)", "better": 0, "matchers": [{"string": "Hall of Champions (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Heroes (Tier 2)", "better": 0, "matchers": [{"string": "Hall of Heroes (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Legends (Tier 3)", "better": 0, "matchers": [{"string": "Hall of Legends (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Locks (Tier 2)", "better": 0, "matchers": [{"string": "Hall of Locks (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Lords (Tier 2)", "better": 0, "matchers": [{"string": "Hall of Lords (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Mettle (Tier 1)", "better": 0, "matchers": [{"string": "Hall of Mettle (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Offerings (Tier 2)", "better": 0, "matchers": [{"string": "Hall of Offerings (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of War (Tier 3)", "better": 0, "matchers": [{"string": "Hall of War (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Halls", "better": 0, "matchers": [{"string": "Halls"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_halls"]}, "option": true}}
|
||||
{"ref": "Has Room: Hatchery (Tier 1)", "better": 0, "matchers": [{"string": "Hatchery (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_1"]}, "option": true}}
|
||||
{"ref": "Has Room: House of the Others (Tier 3)", "better": 0, "matchers": [{"string": "House of the Others (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hurricane Engine (Tier 2)", "better": 0, "matchers": [{"string": "Hurricane Engine (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hybridisation Chamber (Tier 3)", "better": 0, "matchers": [{"string": "Hybridisation Chamber (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Jeweller's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Jeweller's Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Jewellery Forge (Tier 2)", "better": 0, "matchers": [{"string": "Jewellery Forge (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Lightning Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Lightning Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Locus of Corruption (Tier 3)", "better": 0, "matchers": [{"string": "Locus of Corruption (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Museum of Artefacts (Tier 3)", "better": 0, "matchers": [{"string": "Museum of Artefacts (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Office of Cartography (Tier 2)", "better": 0, "matchers": [{"string": "Office of Cartography (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Omnitect Forge (Tier 2)", "better": 0, "matchers": [{"string": "Omnitect Forge (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Omnitect Reactor Plant (Tier 2)", "better": 0, "matchers": [{"string": "Omnitect Reactor Plant (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Passageways", "better": 0, "matchers": [{"string": "Passageways"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_passageways"]}, "option": true}}
|
||||
{"ref": "Has Room: Pits", "better": 0, "matchers": [{"string": "Pits"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_the_pits"]}, "option": true}}
|
||||
{"ref": "Has Room: Poison Garden (Tier 1)", "better": 0, "matchers": [{"string": "Poison Garden (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Pools of Restoration (Tier 1)", "better": 0, "matchers": [{"string": "Pools of Restoration (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Royal Meeting Room (Tier 1)", "better": 0, "matchers": [{"string": "Royal Meeting Room (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Sacrificial Chamber (Tier 1)", "better": 0, "matchers": [{"string": "Sacrificial Chamber (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Sadist's Den (Tier 3)", "better": 0, "matchers": [{"string": "Sadist's Den (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Immortality (Tier 3)", "better": 0, "matchers": [{"string": "Sanctum of Immortality (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Unity (Tier 2)", "better": 0, "matchers": [{"string": "Sanctum of Unity (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Vitality (Tier 2)", "better": 0, "matchers": [{"string": "Sanctum of Vitality (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Shrine of Empowerment (Tier 1)", "better": 0, "matchers": [{"string": "Shrine of Empowerment (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Shrine of Unmaking (Tier 3)", "better": 0, "matchers": [{"string": "Shrine of Unmaking (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sparring Room (Tier 1)", "better": 0, "matchers": [{"string": "Sparring Room (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Splinter Research Lab (Tier 1)", "better": 0, "matchers": [{"string": "Splinter Research Lab (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Storage Room (Tier 1)", "better": 0, "matchers": [{"string": "Storage Room (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Storm of Corruption (Tier 3)", "better": 0, "matchers": [{"string": "Storm of Corruption (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Strongbox Chamber (Tier 1)", "better": 0, "matchers": [{"string": "Strongbox Chamber (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Surveyor's Study (Tier 1)", "better": 0, "matchers": [{"string": "Surveyor's Study (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Tempest Generator (Tier 1)", "better": 0, "matchers": [{"string": "Tempest Generator (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Temple Defense Workshop (Tier 2)", "better": 0, "matchers": [{"string": "Temple Defense Workshop (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Temple Nexus (Tier 3)", "better": 0, "matchers": [{"string": "Temple Nexus (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Throne of Atziri (Tier 3)", "better": 0, "matchers": [{"string": "Throne of Atziri (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Tombs", "better": 0, "matchers": [{"string": "Tombs"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_tombs"]}, "option": true}}
|
||||
{"ref": "Has Room: Torment Cells (Tier 1)", "better": 0, "matchers": [{"string": "Torment Cells (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Torture Cages (Tier 2)", "better": 0, "matchers": [{"string": "Torture Cages (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Toxic Grove (Tier 3)", "better": 0, "matchers": [{"string": "Toxic Grove (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Trap Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Trap Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Treasury (Tier 2)", "better": 0, "matchers": [{"string": "Treasury (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Tunnels", "better": 0, "matchers": [{"string": "Tunnels"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_tunnels"]}, "option": true}}
|
||||
{"ref": "Has Room: Vault (Tier 1)", "better": 0, "matchers": [{"string": "Vault (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Warehouses (Tier 2)", "better": 0, "matchers": [{"string": "Warehouses (Tier 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Wealth of the Vaal (Tier 3)", "better": 0, "matchers": [{"string": "Wealth of the Vaal (Tier 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Workshop (Tier 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_1"]}, "option": true}}
|
||||
{"ref": "Has Shaper Influence", "better": 1, "matchers": [{"string": "Has Shaper Influence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_shaper_influence"]}}}
|
||||
{"ref": "Has Warlord Influence", "better": 1, "matchers": [{"string": "Has Warlord Influence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_warlord_influence"]}}}
|
||||
{"ref": "Mirrored Tablet has # Islands", "better": 1, "matchers": [{"string": "Mirrored Tablet has # Islands "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_lake_number_of_islands"]}}}
|
||||
{"ref": "More Currency: #%", "better": 1, "matchers": [{"string": "More Currency: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_currency_drops"]}}}
|
||||
{"ref": "More Divination Cards: #%", "better": 1, "matchers": [{"string": "More Divination Cards: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_card_drops"]}}}
|
||||
{"ref": "More Maps: #%", "better": 1, "matchers": [{"string": "More Maps: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_map_drops"]}}}
|
||||
{"ref": "More Scarabs: #%", "better": 1, "matchers": [{"string": "More Scarabs: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_scarab_drops"]}}}
|
||||
{"ref": "Quality (Attack Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Attack Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_attack_quality"]}}}
|
||||
{"ref": "Quality (Attribute Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Attribute Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_attribute_quality"]}}}
|
||||
{"ref": "Quality (Caster Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Caster Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_caster_quality"]}}}
|
||||
{"ref": "Quality (Critical Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Critical Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_critical_quality"]}}}
|
||||
{"ref": "Quality (Currency): #%", "better": 1, "matchers": [{"string": "Quality (Currency): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_currency"]}}}
|
||||
{"ref": "Quality (Defence Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Defence Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_defense_quality"]}}}
|
||||
{"ref": "Quality (Divination Cards): #%", "better": 1, "matchers": [{"string": "Quality (Divination Cards): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_cards"]}}}
|
||||
{"ref": "Quality (Elemental Damage Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Elemental Damage Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_elemental_quality"]}}}
|
||||
{"ref": "Quality (Life and Mana Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Life and Mana Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_resource_quality"]}}}
|
||||
{"ref": "Quality (Pack Size): #%", "better": 1, "matchers": [{"string": "Quality (Pack Size): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_pack_size"]}}}
|
||||
{"ref": "Quality (Physical and Chaos Damage Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Physical and Chaos Damage Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_physical_chaos_quality"]}}}
|
||||
{"ref": "Quality (Rarity): #%", "better": 1, "matchers": [{"string": "Quality (Rarity): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_rarity"]}}}
|
||||
{"ref": "Quality (Resistance Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Resistance Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_resistance_quality"]}}}
|
||||
{"ref": "Quality (Scarabs): #%", "better": 1, "matchers": [{"string": "Quality (Scarabs): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_scarabs"]}}}
|
||||
{"ref": "Quality (Speed Modifiers): #%", "better": 1, "matchers": [{"string": "Quality (Speed Modifiers): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_speed_quality"]}}}
|
||||
{"ref": "Reflection of Abyss (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Abyss (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_38892"]}}}
|
||||
{"ref": "Reflection of Ambush (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Ambush (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_48307"]}}}
|
||||
{"ref": "Reflection of Angling (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Angling (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_40794"]}}}
|
||||
{"ref": "Reflection of Azurite (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Azurite (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_40031"]}}}
|
||||
{"ref": "Reflection of Bestiary (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Bestiary (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_55569"]}}}
|
||||
{"ref": "Reflection of Breach (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Breach (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62572"]}}}
|
||||
{"ref": "Reflection of Brutality (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Brutality (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_29096"]}}}
|
||||
{"ref": "Reflection of Camaraderie (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Camaraderie (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_35395"]}}}
|
||||
{"ref": "Reflection of Catalysis (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Catalysis (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_57850"]}}}
|
||||
{"ref": "Reflection of Chaos (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Chaos (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_50834"]}}}
|
||||
{"ref": "Reflection of Conflict (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Conflict (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_1931"]}}}
|
||||
{"ref": "Reflection of Darkness (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Darkness (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_34457"]}}}
|
||||
{"ref": "Reflection of Delirium (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Delirium (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_22138"]}}}
|
||||
{"ref": "Reflection of Delve (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Delve (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_18737"]}}}
|
||||
{"ref": "Reflection of Demonfire (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Demonfire (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_28500"]}}}
|
||||
{"ref": "Reflection of Domination (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Domination (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_63412"]}}}
|
||||
{"ref": "Reflection of Entrapment (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Entrapment (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_44399"]}}}
|
||||
{"ref": "Reflection of Essence (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Essence (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_49862"]}}}
|
||||
{"ref": "Reflection of Experimentation (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Experimentation (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_55676"]}}}
|
||||
{"ref": "Reflection of Flame (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Flame (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_42468"]}}}
|
||||
{"ref": "Reflection of Fractured Dimensions (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Fractured Dimensions (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_49488"]}}}
|
||||
{"ref": "Reflection of Frost (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Frost (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_38110"]}}}
|
||||
{"ref": "Reflection of Guilt (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Guilt (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_25480"]}}}
|
||||
{"ref": "Reflection of Imprisonment (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Imprisonment (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_10363"]}}}
|
||||
{"ref": "Reflection of Kalandra (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Kalandra (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_36591"]}}}
|
||||
{"ref": "Reflection of Legion (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Legion (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_403"]}}}
|
||||
{"ref": "Reflection of Metamorph (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Metamorph (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_3699"]}}}
|
||||
{"ref": "Reflection of Occultism (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Occultism (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_24451"]}}}
|
||||
{"ref": "Reflection of Paradise (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Paradise (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_50846"]}}}
|
||||
{"ref": "Reflection of Perverted Faith (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Perverted Faith (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_27678"]}}}
|
||||
{"ref": "Reflection of Phaaryl (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Phaaryl (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_7674"]}}}
|
||||
{"ref": "Reflection of Possession (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Possession (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_25049"]}}}
|
||||
{"ref": "Reflection of Power (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Power (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_35950"]}}}
|
||||
{"ref": "Reflection of Scourge (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Scourge (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62360"]}}}
|
||||
{"ref": "Reflection of Stasis (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Stasis (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_32968"]}}}
|
||||
{"ref": "Reflection of Sulphite (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Sulphite (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_45086"]}}}
|
||||
{"ref": "Reflection of the Black Scythe (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Black Scythe (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_9662"]}}}
|
||||
{"ref": "Reflection of the Breachlord (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Breachlord (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62935"]}}}
|
||||
{"ref": "Reflection of the Broken Circle (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Broken Circle (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_43128"]}}}
|
||||
{"ref": "Reflection of the Chalice (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Chalice (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_64561"]}}}
|
||||
{"ref": "Reflection of the Chasm (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Chasm (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_57101"]}}}
|
||||
{"ref": "Reflection of the Dream (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Dream (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_27117"]}}}
|
||||
{"ref": "Reflection of the Harbingers (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Harbingers (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_37203"]}}}
|
||||
{"ref": "Reflection of the Hunter (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Hunter (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_18816"]}}}
|
||||
{"ref": "Reflection of the Monolith (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Monolith (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_34796"]}}}
|
||||
{"ref": "Reflection of the Nightmare (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Nightmare (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_24232"]}}}
|
||||
{"ref": "Reflection of the Storm (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Storm (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_2745"]}}}
|
||||
{"ref": "Reflection of the Sun (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Sun (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_60034"]}}}
|
||||
{"ref": "Reflection of the Trove (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Trove (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_46772"]}}}
|
||||
{"ref": "Reflection of the Wilderness (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of the Wilderness (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_29224"]}}}
|
||||
{"ref": "Reflection of Thralldom (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Thralldom (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_26813"]}}}
|
||||
{"ref": "Reflection of Torment (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Torment (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_53950"]}}}
|
||||
{"ref": "Reflection of Tyranny (Difficulty #)", "better": 1, "matchers": [{"string": "Reflection of Tyranny (Difficulty #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_60981"]}}}
|
||||
32
renderer/public/.DS_Store/vendor/pseudo-stats/en/pseudo_stats.ndjson
vendored
Normal file
32
renderer/public/.DS_Store/vendor/pseudo-stats/en/pseudo_stats.ndjson
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
{"ref": "# Life Regenerated per Second", "better": 1, "matchers": [{"string": "# Life Regenerated per Second "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life_regen"]}}}
|
||||
{"ref": "#% increased Burning Damage", "better": 1, "matchers": [{"string": "#% increased Burning Damage"}, {"string": "#% reduced Burning Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_burning_damage"], "explicit": ["explicit.stat_1175385867"], "implicit": ["implicit.stat_1175385867"], "fractured": ["fractured.stat_1175385867"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "matchers": [{"string": "#% increased Cold Damage"}, {"string": "#% reduced Cold Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage"], "explicit": ["explicit.stat_3291658075"], "implicit": ["implicit.stat_3291658075"], "fractured": ["fractured.stat_3291658075"], "scourge": ["scourge.stat_3291658075"], "crafted": ["crafted.stat_3291658075"]}}}
|
||||
{"ref": "#% increased Cold Spell Damage", "better": 1, "matchers": [{"string": "#% increased Cold Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_spell_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "matchers": [{"string": "#% increased Elemental Damage"}, {"string": "Has #% increased Elemental Damage"}, {"string": "#% reduced Elemental Damage", "negate": true}, {"string": "Has #% reduced Elemental Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage"], "explicit": ["explicit.stat_3141070085"], "implicit": ["implicit.stat_3141070085"], "fractured": ["fractured.stat_3141070085"], "enchant": ["enchant.stat_692420067"], "scourge": ["scourge.stat_3141070085"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% increased Elemental Damage with Attack Skills"}, {"string": "#% reduced Elemental Damage with Attack Skills", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage_with_attack_skills"], "explicit": ["explicit.stat_387439868"], "implicit": ["implicit.stat_387439868"], "fractured": ["fractured.stat_387439868"], "scourge": ["scourge.stat_387439868"], "crafted": ["crafted.stat_387439868"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "matchers": [{"string": "#% increased Fire Damage"}, {"string": "#% reduced Fire Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage"], "explicit": ["explicit.stat_3962278098"], "implicit": ["implicit.stat_3962278098"], "fractured": ["fractured.stat_3962278098"], "scourge": ["scourge.stat_3962278098"], "crafted": ["crafted.stat_3962278098"]}}}
|
||||
{"ref": "#% increased Fire Spell Damage", "better": 1, "matchers": [{"string": "#% increased Fire Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_spell_damage"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "matchers": [{"string": "#% increased Lightning Damage"}, {"string": "#% reduced Lightning Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage"], "explicit": ["explicit.stat_2231156303"], "implicit": ["implicit.stat_2231156303"], "fractured": ["fractured.stat_2231156303"], "scourge": ["scourge.stat_2231156303"], "crafted": ["crafted.stat_2231156303"]}}}
|
||||
{"ref": "#% increased Lightning Spell Damage", "better": 1, "matchers": [{"string": "#% increased Lightning Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_spell_damage"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "matchers": [{"string": "#% increased Mana Regeneration Rate"}, {"string": "#% reduced Mana Regeneration Rate", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_mana_regen"], "explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "fractured": ["fractured.stat_789117908"], "scourge": ["scourge.stat_789117908"], "crafted": ["crafted.stat_789117908"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "matchers": [{"string": "#% increased Movement Speed"}, {"string": "#% reduced Movement Speed", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_movement_speed"], "explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "fractured": ["fractured.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "scourge": ["scourge.stat_2250533757"], "crafted": ["crafted.stat_2250533757"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "matchers": [{"string": "#% increased Spell Damage"}, {"string": "#% reduced Spell Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_spell_damage"], "explicit": ["explicit.stat_2974417149"], "implicit": ["implicit.stat_2974417149"], "fractured": ["fractured.stat_2974417149"], "enchant": ["enchant.stat_2974417149"], "scourge": ["scourge.stat_2974417149"], "crafted": ["crafted.stat_2974417149"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Life", "dp": true, "better": 1, "matchers": [{"string": "#% of Physical Attack Damage Leeched as Life"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_life"], "explicit": ["explicit.stat_3593843976", "explicit.stat_55876295"], "implicit": ["implicit.stat_3593843976", "implicit.stat_55876295"], "fractured": ["fractured.stat_3593843976", "fractured.stat_55876295"], "scourge": ["scourge.stat_3593843976"], "crafted": ["crafted.stat_3593843976", "crafted.stat_55876295"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Mana", "dp": true, "better": 1, "matchers": [{"string": "#% of Physical Attack Damage Leeched as Mana"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_mana"], "explicit": ["explicit.stat_3237948413", "explicit.stat_669069897"], "implicit": ["implicit.stat_3237948413", "implicit.stat_669069897"], "fractured": ["fractured.stat_3237948413", "fractured.stat_669069897"], "enchant": ["enchant.stat_669069897"], "scourge": ["scourge.stat_3237948413"], "crafted": ["crafted.stat_3237948413", "crafted.stat_669069897"]}}}
|
||||
{"ref": "#% total increased Physical Damage", "better": 1, "matchers": [{"string": "#% total increased Physical Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_physical_damage"]}}}
|
||||
{"ref": "+# total maximum Energy Shield", "better": 1, "matchers": [{"string": "+# total maximum Energy Shield "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_energy_shield"]}}}
|
||||
{"ref": "+# total maximum Life", "better": 1, "matchers": [{"string": "+# total maximum Life "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life"]}}}
|
||||
{"ref": "+# total maximum Mana", "better": 1, "matchers": [{"string": "+# total maximum Mana "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_mana"]}}}
|
||||
{"ref": "+# total to all Attributes", "better": 1, "matchers": [{"string": "+# total to all Attributes "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_attributes"]}}}
|
||||
{"ref": "+# total to Dexterity", "better": 1, "matchers": [{"string": "+# total to Dexterity "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_dexterity"]}}}
|
||||
{"ref": "+# total to Intelligence", "better": 1, "matchers": [{"string": "+# total to Intelligence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_intelligence"]}}}
|
||||
{"ref": "+# total to Strength", "better": 1, "matchers": [{"string": "+# total to Strength "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_strength"]}}}
|
||||
{"ref": "+#% Global Critical Strike Chance", "better": 1, "matchers": [{"string": "+#% Global Critical Strike Chance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_chance"]}}}
|
||||
{"ref": "+#% Global Critical Strike Multiplier", "better": 1, "matchers": [{"string": "+#% Global Critical Strike Multiplier "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_multiplier"]}}}
|
||||
{"ref": "+#% total Attack Speed", "better": 1, "matchers": [{"string": "+#% total Attack Speed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_attack_speed"]}}}
|
||||
{"ref": "+#% total Cast Speed", "better": 1, "matchers": [{"string": "+#% total Cast Speed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cast_speed"]}}}
|
||||
{"ref": "+#% total Elemental Resistance", "better": 1, "matchers": [{"string": "+#% total Elemental Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_elemental_resistance"]}}}
|
||||
{"ref": "+#% total to Chaos Resistance", "better": 1, "matchers": [{"string": "+#% total to Chaos Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_chaos_resistance"]}}}
|
||||
{"ref": "+#% total to Cold Resistance", "better": 1, "matchers": [{"string": "+#% total to Cold Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cold_resistance"]}}}
|
||||
{"ref": "+#% total to Fire Resistance", "better": 1, "matchers": [{"string": "+#% total to Fire Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_fire_resistance"]}}}
|
||||
{"ref": "+#% total to Lightning Resistance", "better": 1, "matchers": [{"string": "+#% total to Lightning Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_lightning_resistance"]}}}
|
||||
292
renderer/public/.DS_Store/vendor/pseudo-stats/ko/all-pseudo.ndjson
vendored
Normal file
292
renderer/public/.DS_Store/vendor/pseudo-stats/ko/all-pseudo.ndjson
vendored
Normal file
@@ -0,0 +1,292 @@
|
||||
{"ref": "# Crafted Modifiers", "better": 1, "matchers": [{"string": "# 제작을 통한 속성 부여 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_mods"]}}}
|
||||
{"ref": "# Crafted Prefix Modifiers", "better": 1, "matchers": [{"string": "# 제작을 통한 접두어 속성 부여 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_prefix_mods"]}}}
|
||||
{"ref": "# Crafted Suffix Modifiers", "better": 1, "matchers": [{"string": "# 제작을 통한 접미어 속성 부여 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_suffix_mods"]}}}
|
||||
{"ref": "# Empty Modifiers", "better": 1, "matchers": [{"string": "# 빈 속성 부여 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_affix_mods"]}}}
|
||||
{"ref": "# Empty Prefix Modifiers", "better": 1, "matchers": [{"string": "# 빈 접두어 속성 부여 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_prefix_mods"]}}}
|
||||
{"ref": "# Empty Suffix Modifiers", "better": 1, "matchers": [{"string": "# 빈 접미어 속성 부여 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_suffix_mods"]}}}
|
||||
{"ref": "# Enchant Modifiers", "better": 1, "matchers": [{"string": "# 인챈트 속성 부여 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_enchant_mods"]}}}
|
||||
{"ref": "# Fractured Modifiers", "better": 1, "matchers": [{"string": "# 분열된 속성 부여 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_fractured_mods"]}}}
|
||||
{"ref": "# Implicit Modifiers", "better": 1, "matchers": [{"string": "# 고정 속성 부여 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_implicit_mods"]}}}
|
||||
{"ref": "# Life Regenerated per Second", "better": 1, "matchers": [{"string": "초당 생명력 재생 #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life_regen"]}}}
|
||||
{"ref": "# Modifiers", "better": 1, "matchers": [{"string": "# 속성 부여 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_affix_mods"]}}}
|
||||
{"ref": "# Notable Passive Skills", "better": 1, "matchers": [{"string": "# 주요 패시브 스킬 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_notable_passive_skills"]}}}
|
||||
{"ref": "# Prefix Modifiers", "better": 1, "matchers": [{"string": "# 접두어 속성 부여 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_prefix_mods"]}}}
|
||||
{"ref": "# Suffix Modifiers", "better": 1, "matchers": [{"string": "# 접미어 속성 부여 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_suffix_mods"]}}}
|
||||
{"ref": "# total Elemental Resistances", "better": 1, "matchers": [{"string": "총 원소 저항력 # "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_count_elemental_resistances"]}}}
|
||||
{"ref": "# total Resistances", "better": 1, "matchers": [{"string": "총 저항 # "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_count_resistances"]}}}
|
||||
{"ref": "#% Base Defence Percentile", "better": 1, "matchers": [{"string": "#% 기본 방어 백분위수 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_base_defence_percentile"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Atlas Memories", "better": 1, "matchers": [{"string": "떨어진 지도가 #%의 확률로 아틀라스 기억으로 변환 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_memory_line"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Conqueror Maps", "better": 1, "matchers": [{"string": "떨어진 지도가 #%의 확률로 정복자 지도로 변환 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_conqueror_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Elder Maps", "better": 1, "matchers": [{"string": "떨어진 지도가 #%의 확률로 엘더 지도로 변환 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_elder_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Maven Invitations", "better": 1, "matchers": [{"string": "떨어진 지도가 #%의 확률로 메이븐의 초대로 변환 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_maven_invitation"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Scarabs", "better": 1, "matchers": [{"string": "떨어진 지도가 #%의 확률로 갑충석으로 변환 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_scarab"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Shaper Maps", "better": 1, "matchers": [{"string": "떨어진 지도가 #%의 확률로 쉐이퍼 지도로 변환 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_shaper_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Unique Maps", "better": 1, "matchers": [{"string": "떨어진 지도가 #%의 확률로 고유 지도로 변환 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_unique_map"]}}}
|
||||
{"ref": "#% increased Burning Damage", "better": 1, "matchers": [{"string": "화상 피해 #% 증가"}, {"string": "화상 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_burning_damage"], "explicit": ["explicit.stat_1175385867"], "implicit": ["implicit.stat_1175385867"], "fractured": ["fractured.stat_1175385867"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "matchers": [{"string": "냉기 피해 #% 증가"}, {"string": "냉기 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage"], "explicit": ["explicit.stat_3291658075"], "implicit": ["implicit.stat_3291658075"], "fractured": ["fractured.stat_3291658075"], "scourge": ["scourge.stat_3291658075"], "crafted": ["crafted.stat_3291658075"]}}}
|
||||
{"ref": "#% increased Cold Damage with Attack Skills", "better": 1, "matchers": [{"string": "공격 스킬의 냉기 피해 #% 증가"}, {"string": "공격 스킬의 냉기 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage_with_attack_skills"], "explicit": ["explicit.stat_860668586"], "implicit": ["implicit.stat_860668586"]}}}
|
||||
{"ref": "#% increased Cold Spell Damage", "better": 1, "matchers": [{"string": "냉기 주문 피해 #% 증가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_spell_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "matchers": [{"string": "원소 피해 #% 증가"}, {"string": "원소 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage"], "explicit": ["explicit.stat_3141070085"], "implicit": ["implicit.stat_3141070085"], "fractured": ["fractured.stat_3141070085"], "enchant": ["enchant.stat_692420067"], "scourge": ["scourge.stat_3141070085"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attack Skills", "better": 1, "matchers": [{"string": "공격 스킬의 원소 피해 #% 증가"}, {"string": "공격 스킬의 원소 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage_with_attack_skills"], "explicit": ["explicit.stat_387439868"], "implicit": ["implicit.stat_387439868"], "fractured": ["fractured.stat_387439868"], "scourge": ["scourge.stat_387439868"], "crafted": ["crafted.stat_387439868"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "matchers": [{"string": "화염 피해 #% 증가"}, {"string": "화염 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage"], "explicit": ["explicit.stat_3962278098"], "implicit": ["implicit.stat_3962278098"], "fractured": ["fractured.stat_3962278098"], "scourge": ["scourge.stat_3962278098"], "crafted": ["crafted.stat_3962278098"]}}}
|
||||
{"ref": "#% increased Fire Damage with Attack Skills", "better": 1, "matchers": [{"string": "공격 스킬의 화염 피해 #% 증가"}, {"string": "공격 스킬의 화염 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage_with_attack_skills"], "implicit": ["implicit.stat_2468413380"]}}}
|
||||
{"ref": "#% increased Fire Spell Damage", "better": 1, "matchers": [{"string": "화염 주문 피해 #% 증가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_spell_damage"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "matchers": [{"string": "번개 피해 #% 증가"}, {"string": "번개 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage"], "explicit": ["explicit.stat_2231156303"], "implicit": ["implicit.stat_2231156303"], "fractured": ["fractured.stat_2231156303"], "scourge": ["scourge.stat_2231156303"], "crafted": ["crafted.stat_2231156303"]}}}
|
||||
{"ref": "#% increased Lightning Damage with Attack Skills", "better": 1, "matchers": [{"string": "공격 스킬의 번개 피해 #% 증가"}, {"string": "공격 스킬의 번개 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage_with_attack_skills"], "explicit": ["explicit.stat_4208907162"], "implicit": ["implicit.stat_4208907162"]}}}
|
||||
{"ref": "#% increased Lightning Spell Damage", "better": 1, "matchers": [{"string": "번개 주문 피해 #% 증가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_spell_damage"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "matchers": [{"string": "마나 재생 속도 #% 증가"}, {"string": "마나 재생 속도 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_mana_regen"], "explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "fractured": ["fractured.stat_789117908"], "scourge": ["scourge.stat_789117908"], "crafted": ["crafted.stat_789117908"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "matchers": [{"string": "이동 속도 #% 증가"}, {"string": "이동 속도 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_movement_speed"], "explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "fractured": ["fractured.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "scourge": ["scourge.stat_2250533757"], "crafted": ["crafted.stat_2250533757"]}}}
|
||||
{"ref": "#% increased Rarity of Items found", "better": 1, "matchers": [{"string": "발견하는 아이템 희귀도 #% 증가"}, {"string": "발견하는 아이템 희귀도 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_rarity"], "explicit": ["explicit.stat_3917489142"], "implicit": ["implicit.stat_3917489142"], "fractured": ["fractured.stat_3917489142"], "scourge": ["scourge.stat_3917489142"], "crafted": ["crafted.stat_3917489142"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "matchers": [{"string": "주문 피해 #% 증가"}, {"string": "주문 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_spell_damage"], "explicit": ["explicit.stat_2974417149"], "implicit": ["implicit.stat_2974417149"], "fractured": ["fractured.stat_2974417149"], "enchant": ["enchant.stat_2974417149"], "scourge": ["scourge.stat_2974417149"], "crafted": ["crafted.stat_2974417149"]}}}
|
||||
{"ref": "#% of Life Regenerated per Second", "better": 1, "matchers": [{"string": "초당 생명력 재생의 #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_percent_life_regen"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Life", "dp": true, "better": 1, "matchers": [{"string": "물리 공격 피해의 #%를 생명력으로 흡수"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_life"], "explicit": ["explicit.stat_3593843976", "explicit.stat_55876295"], "implicit": ["implicit.stat_3593843976", "implicit.stat_55876295"], "fractured": ["fractured.stat_3593843976", "fractured.stat_55876295"], "scourge": ["scourge.stat_3593843976"], "crafted": ["crafted.stat_3593843976", "crafted.stat_55876295"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Mana", "dp": true, "better": 1, "matchers": [{"string": "물리 공격 피해의 #%를 마나로 흡수"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_mana"], "explicit": ["explicit.stat_3237948413", "explicit.stat_669069897"], "implicit": ["implicit.stat_3237948413", "implicit.stat_669069897"], "fractured": ["fractured.stat_3237948413", "fractured.stat_669069897"], "enchant": ["enchant.stat_669069897"], "scourge": ["scourge.stat_3237948413"], "crafted": ["crafted.stat_3237948413", "crafted.stat_669069897"]}}}
|
||||
{"ref": "#% total increased maximum Energy Shield", "better": 1, "matchers": [{"string": "에너지 보호막 최대치 총 #% 증가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_energy_shield"]}}}
|
||||
{"ref": "#% total increased Physical Damage", "better": 1, "matchers": [{"string": "물리 피해 총 #% 증가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_physical_damage"]}}}
|
||||
{"ref": "+# total maximum Energy Shield", "better": 1, "matchers": [{"string": "에너지 보호막 최대치 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_energy_shield"]}}}
|
||||
{"ref": "+# total maximum Life", "better": 1, "matchers": [{"string": "총 최대 생명력 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life"]}}}
|
||||
{"ref": "+# total maximum Mana", "better": 1, "matchers": [{"string": "총 최대 마나 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_mana"]}}}
|
||||
{"ref": "+# total to all Attributes", "better": 1, "matchers": [{"string": "모든 능력치 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_attributes"]}}}
|
||||
{"ref": "+# total to Dexterity", "better": 1, "matchers": [{"string": "민첩 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_dexterity"]}}}
|
||||
{"ref": "+# total to Intelligence", "better": 1, "matchers": [{"string": "지능 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_intelligence"]}}}
|
||||
{"ref": "+# total to Level of Socketed Aura Gems", "better": 1, "matchers": [{"string": "장착한 오라 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_aura_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Bow Gems", "better": 1, "matchers": [{"string": "장착한 활 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_bow_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Chaos Gems", "better": 1, "matchers": [{"string": "장착한 카오스 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_chaos_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Cold Gems", "better": 1, "matchers": [{"string": "장착한 냉기 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_cold_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Curse Gems", "better": 1, "matchers": [{"string": "장착한 저주 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_curse_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Dexterity Gems", "better": 1, "matchers": [{"string": "장착한 민첩 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_dexterity_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Elemental Gems", "better": 1, "matchers": [{"string": "장착한 원소 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_elemental_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Fire Gems", "better": 1, "matchers": [{"string": "장착한 화염 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_fire_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Gems", "better": 1, "matchers": [{"string": "장착된 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Golem Gems", "better": 1, "matchers": [{"string": "장착한 골렘 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_golem_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Intelligence Gems", "better": 1, "matchers": [{"string": "장착한 지능 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_intelligence_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Lightning Gems", "better": 1, "matchers": [{"string": "장착한 번개 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_lightning_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Melee Gems", "better": 1, "matchers": [{"string": "장착한 근접 공격 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_melee_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Minion Gems", "better": 1, "matchers": [{"string": "장착한 소환수 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_minion_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Movement Gems", "better": 1, "matchers": [{"string": "장착한 이동 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_movement_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Projectile Gems", "better": 1, "matchers": [{"string": "장착한 투사체 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_projectile_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Skill Gems", "better": 1, "matchers": [{"string": "장착한 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_skill_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Spell Gems", "better": 1, "matchers": [{"string": "장착한 주문 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_spell_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Strength Gems", "better": 1, "matchers": [{"string": "장착한 힘 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_strength_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Support Gems", "better": 1, "matchers": [{"string": "장착한 보조 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_support_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Vaal Gems", "better": 1, "matchers": [{"string": "장착한 바알 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_vaal_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Warcry Gems", "better": 1, "matchers": [{"string": "장착한 함성 스킬 젬 레벨 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_warcry_gem_levels"]}}}
|
||||
{"ref": "+# total to Strength", "better": 1, "matchers": [{"string": "힘 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_strength"]}}}
|
||||
{"ref": "+#% Global Critical Strike Chance", "better": 1, "matchers": [{"string": "일반 치명타 확률 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_chance"]}}}
|
||||
{"ref": "+#% Global Critical Strike Multiplier", "better": 1, "matchers": [{"string": "일반 치명타 피해 배율 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_multiplier"]}}}
|
||||
{"ref": "+#% total Attack Speed", "better": 1, "matchers": [{"string": "총 공격 속도 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_attack_speed"]}}}
|
||||
{"ref": "+#% total Cast Speed", "better": 1, "matchers": [{"string": "총 시전 속도 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cast_speed"]}}}
|
||||
{"ref": "+#% total Critical Strike Chance for Spells", "better": 1, "matchers": [{"string": "총 주문 치명타 확률 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_critical_strike_chance_for_spells"]}}}
|
||||
{"ref": "+#% total Elemental Resistance", "better": 1, "matchers": [{"string": "원소 저항력 총 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_elemental_resistance"]}}}
|
||||
{"ref": "+#% total Resistance", "better": 1, "matchers": [{"string": "총 저항 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_resistance"]}}}
|
||||
{"ref": "+#% total to all Elemental Resistances", "better": 1, "matchers": [{"string": "모든 원소 저항력 총 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_elemental_resistances"]}}}
|
||||
{"ref": "+#% total to Chaos Resistance", "better": 1, "matchers": [{"string": "카오스 저항 총 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_chaos_resistance"]}}}
|
||||
{"ref": "+#% total to Cold Resistance", "better": 1, "matchers": [{"string": "냉기 저항 총 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cold_resistance"]}}}
|
||||
{"ref": "+#% total to Fire Resistance", "better": 1, "matchers": [{"string": "화염 저항 총 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_fire_resistance"]}}}
|
||||
{"ref": "+#% total to Lightning Resistance", "better": 1, "matchers": [{"string": "번개 저항 총 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_lightning_resistance"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage", "better": 1, "matchers": [{"string": "카오스 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage"], "explicit": ["explicit.stat_2223678961", "explicit.stat_3531280422"], "implicit": ["implicit.stat_2223678961", "implicit.stat_3531280422"], "fractured": ["fractured.stat_2223678961"], "enchant": ["enchant.stat_2223678961"], "scourge": ["scourge.stat_2223678961"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage to Attacks", "better": 1, "matchers": [{"string": "공격 시 카오스 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage_to_attacks"], "explicit": ["explicit.stat_674553446"], "implicit": ["implicit.stat_674553446"], "fractured": ["fractured.stat_674553446"], "crafted": ["crafted.stat_674553446"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage to Spells", "better": 1, "matchers": [{"string": "주문 시전 시 카오스 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage_to_spells"], "explicit": ["explicit.stat_2300399854"], "implicit": ["implicit.stat_2300399854"], "fractured": ["fractured.stat_2300399854"]}}}
|
||||
{"ref": "Adds # to # Cold Damage", "better": 1, "matchers": [{"string": "냉기 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage"], "explicit": ["explicit.stat_1037193709", "explicit.stat_2387423236"], "implicit": ["implicit.stat_1037193709", "implicit.stat_2387423236"], "fractured": ["fractured.stat_1037193709", "fractured.stat_2387423236"], "enchant": ["enchant.stat_1037193709"], "scourge": ["scourge.stat_1037193709"], "crafted": ["crafted.stat_1037193709", "crafted.stat_2387423236"]}}}
|
||||
{"ref": "Adds # to # Cold Damage to Attacks", "better": 1, "matchers": [{"string": "공격 시 냉기 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage_to_attacks"], "explicit": ["explicit.stat_4067062424"], "implicit": ["implicit.stat_4067062424"], "fractured": ["fractured.stat_4067062424"], "crafted": ["crafted.stat_4067062424"]}}}
|
||||
{"ref": "Adds # to # Cold Damage to Spells", "better": 1, "matchers": [{"string": "주문 시전 시 냉기 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage_to_spells"], "explicit": ["explicit.stat_2469416729"], "implicit": ["implicit.stat_2469416729"], "fractured": ["fractured.stat_2469416729"], "scourge": ["scourge.stat_2469416729"], "crafted": ["crafted.stat_2469416729"]}}}
|
||||
{"ref": "Adds # to # Damage", "better": 1, "matchers": [{"string": "# 피해에 # 추가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage"]}}}
|
||||
{"ref": "Adds # to # Damage to Attacks", "better": 1, "matchers": [{"string": "공격 시 # 피해에 # 추가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage_to_attacks"]}}}
|
||||
{"ref": "Adds # to # Damage to Spells", "better": 1, "matchers": [{"string": "주문 시전 시 # 피해에 # 추가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage_to_spells"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage", "better": 1, "matchers": [{"string": "# 원소 피해에 # 추가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage to Attacks", "better": 1, "matchers": [{"string": "공격 시 # 원소 피해에 # 추가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage_to_attacks"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage to Spells", "better": 1, "matchers": [{"string": "주문 시전 시 # 원소 피해에 # 추가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage_to_spells"]}}}
|
||||
{"ref": "Adds # to # Fire Damage", "better": 1, "matchers": [{"string": "화염 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage"], "explicit": ["explicit.stat_321077055", "explicit.stat_709508406"], "implicit": ["implicit.stat_321077055", "implicit.stat_709508406"], "fractured": ["fractured.stat_321077055", "fractured.stat_709508406"], "enchant": ["enchant.stat_709508406"], "scourge": ["scourge.stat_709508406"], "crafted": ["crafted.stat_321077055", "crafted.stat_709508406"]}}}
|
||||
{"ref": "Adds # to # Fire Damage to Attacks", "better": 1, "matchers": [{"string": "공격 시 화염 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage_to_attacks"], "explicit": ["explicit.stat_1573130764"], "implicit": ["implicit.stat_1573130764"], "fractured": ["fractured.stat_1573130764"], "crafted": ["crafted.stat_1573130764"]}}}
|
||||
{"ref": "Adds # to # Fire Damage to Spells", "better": 1, "matchers": [{"string": "주문 시전 시 화염 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage_to_spells"], "explicit": ["explicit.stat_1133016593"], "implicit": ["implicit.stat_1133016593"], "fractured": ["fractured.stat_1133016593"], "scourge": ["scourge.stat_1133016593"], "crafted": ["crafted.stat_1133016593"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage", "better": 1, "matchers": [{"string": "번개 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage"], "explicit": ["explicit.stat_1334060246", "explicit.stat_3336890334"], "implicit": ["implicit.stat_1334060246", "implicit.stat_3336890334"], "fractured": ["fractured.stat_1334060246", "fractured.stat_3336890334"], "enchant": ["enchant.stat_3336890334"], "scourge": ["scourge.stat_3336890334"], "crafted": ["crafted.stat_1334060246", "crafted.stat_3336890334"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage to Attacks", "better": 1, "matchers": [{"string": "공격 시 번개 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage_to_attacks"], "explicit": ["explicit.stat_1754445556"], "implicit": ["implicit.stat_1754445556"], "fractured": ["fractured.stat_1754445556"], "crafted": ["crafted.stat_1754445556"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage to Spells", "better": 1, "matchers": [{"string": "주문 시전 시 번개 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage_to_spells"], "explicit": ["explicit.stat_2831165374"], "implicit": ["implicit.stat_2831165374"], "fractured": ["fractured.stat_2831165374"], "scourge": ["scourge.stat_2831165374"], "crafted": ["crafted.stat_2831165374"]}}}
|
||||
{"ref": "Adds # to # Physical Damage", "better": 1, "matchers": [{"string": "물리 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage"], "explicit": ["explicit.stat_1940865751", "explicit.stat_960081730"], "implicit": ["implicit.stat_1940865751"], "fractured": ["fractured.stat_1940865751", "fractured.stat_960081730"], "scourge": ["scourge.stat_1940865751"], "crafted": ["crafted.stat_1940865751"]}}}
|
||||
{"ref": "Adds # to # Physical Damage to Attacks", "better": 1, "matchers": [{"string": "공격 시 물리 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage_to_attacks"], "explicit": ["explicit.stat_3032590688"], "implicit": ["implicit.stat_3032590688"], "fractured": ["fractured.stat_3032590688"], "crafted": ["crafted.stat_3032590688"]}}}
|
||||
{"ref": "Adds # to # Physical Damage to Spells", "better": 1, "matchers": [{"string": "주문 시전 시 물리 피해 #~# 추가"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage_to_spells"], "explicit": ["explicit.stat_2435536961"], "implicit": ["implicit.stat_2435536961"], "fractured": ["fractured.stat_2435536961"], "scourge": ["scourge.stat_2435536961"]}}}
|
||||
{"ref": "Has # Influences", "better": 1, "matchers": [{"string": "# 영향력이 부여되어 있습니다 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_influence_count"]}}}
|
||||
{"ref": "Has Crusader Influence", "better": 1, "matchers": [{"string": "십자군 영향력이 부여되어 있습니다 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_crusader_influence"]}}}
|
||||
{"ref": "Has Elder Influence", "better": 1, "matchers": [{"string": "엘더 영향력이 부여되어 있습니다 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_elder_influence"]}}}
|
||||
{"ref": "Has Hunter Influence", "better": 1, "matchers": [{"string": "사냥꾼 영향력이 부여되어 있습니다 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_hunter_influence"]}}}
|
||||
{"ref": "Has Logbook Area: Battleground Graves", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 전장 무덤 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_battleground_graves"]}}}
|
||||
{"ref": "Has Logbook Area: Bluffs", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 절벽 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_bluffs"]}}}
|
||||
{"ref": "Has Logbook Area: Cemetery", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 공동묘지 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_cemetery"]}}}
|
||||
{"ref": "Has Logbook Area: Desert Ruins", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 사막 폐허 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_desert_ruins"]}}}
|
||||
{"ref": "Has Logbook Area: Dried Riverbed", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 말라붙은 강바닥 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_dried_riverbed"]}}}
|
||||
{"ref": "Has Logbook Area: Forest Ruins", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 숲 폐허 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_forest_ruins"]}}}
|
||||
{"ref": "Has Logbook Area: Karui Wargraves", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 카루이 전쟁 무덤 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_karui_wargraves"]}}}
|
||||
{"ref": "Has Logbook Area: Mountainside", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 산비탈 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_mountainside"]}}}
|
||||
{"ref": "Has Logbook Area: Rotting Temple", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 썩어가는 사원 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_rotting_temple"]}}}
|
||||
{"ref": "Has Logbook Area: Sarn Slums", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 사안 빈민가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_sarn_slums"]}}}
|
||||
{"ref": "Has Logbook Area: Scrublands", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 관목지 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_scrublands"]}}}
|
||||
{"ref": "Has Logbook Area: Shipwreck Reef", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 난파선 암초 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_shipwreck_reef"]}}}
|
||||
{"ref": "Has Logbook Area: Utzaal Outskirts", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 웃자알 외곽 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_utzaal_outskirts"]}}}
|
||||
{"ref": "Has Logbook Area: Vaal Temple", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 바알 사원 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_vaal_temple"]}}}
|
||||
{"ref": "Has Logbook Area: Volcanic Island", "better": 1, "matchers": [{"string": "다음 일지 지역 보유: 화산섬 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_volcano"]}}}
|
||||
{"ref": "Has Logbook Faction: Black Scythe Mercenaries", "better": 0, "matchers": [{"string": "검은 낫 용병단"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_mercenaries"]}}}
|
||||
{"ref": "Has Logbook Faction: Druids of the Broken Circle", "better": 0, "matchers": [{"string": "끊어진 원의 드루이드"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_druids"]}}}
|
||||
{"ref": "Has Logbook Faction: Knights of the Sun", "better": 0, "matchers": [{"string": "태양의 기사단"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_knights"]}}}
|
||||
{"ref": "Has Logbook Faction: Order of the Chalice", "better": 0, "matchers": [{"string": "성배단"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_order"]}}}
|
||||
{"ref": "Has Redeemer Influence", "better": 1, "matchers": [{"string": "대속자 영향력이 부여되어 있습니다 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_redeemer_influence"]}}}
|
||||
{"ref": "Has Room: Antechamber", "better": 0, "matchers": [{"string": "대기실"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_antechamber"]}, "option": true}}
|
||||
{"ref": "Has Room: Apex of Ascension (Tier 3)", "better": 0, "matchers": [{"string": "승천의 정점 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Apex of Atzoatl", "better": 0, "matchers": [{"string": "앗조아틀의 정점"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_apex"]}, "option": true}}
|
||||
{"ref": "Has Room: Arena of Valour (Tier 2)", "better": 0, "matchers": [{"string": "용맹의 투기장 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Armourer's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "방어구 장인의 작업장 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Armoury (Tier 2)", "better": 0, "matchers": [{"string": "갑주 창고 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Atlas of Worlds (Tier 3)", "better": 0, "matchers": [{"string": "아틀라스의 세계 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Automaton Lab (Tier 2)", "better": 0, "matchers": [{"string": "오토마톤 제조실 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Banquet Hall", "better": 0, "matchers": [{"string": "연회장"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_banquet_hall"]}, "option": true}}
|
||||
{"ref": "Has Room: Barracks (Tier 2)", "better": 0, "matchers": [{"string": "주둔지 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Breach Containment Chamber (Tier 2)", "better": 0, "matchers": [{"string": "균열 봉쇄 시설 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Catalyst of Corruption (Tier 2)", "better": 0, "matchers": [{"string": "타락의 기폭제 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Cellar", "better": 0, "matchers": [{"string": "저장실"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cellar"]}, "option": true}}
|
||||
{"ref": "Has Room: Chamber of Iron (Tier 3)", "better": 0, "matchers": [{"string": "방어구의 방 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Chasm", "better": 0, "matchers": [{"string": "절벽길"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chasm_room"]}, "option": true}}
|
||||
{"ref": "Has Room: Cloister", "better": 0, "matchers": [{"string": "회랑"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cloister"]}, "option": true}}
|
||||
{"ref": "Has Room: Conduit of Lightning (Tier 3)", "better": 0, "matchers": [{"string": "번개의 도관 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Corruption Chamber (Tier 1)", "better": 0, "matchers": [{"string": "타락의 방 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Court of Sealed Death (Tier 3)", "better": 0, "matchers": [{"string": "봉인된 죽음의 법정 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Crucible of Flame (Tier 3)", "better": 0, "matchers": [{"string": "화염의 용광로 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Cultivar Chamber (Tier 2)", "better": 0, "matchers": [{"string": "컬티바의 방 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Defense Research Lab (Tier 3)", "better": 0, "matchers": [{"string": "방어물 연구소 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Demolition Lab (Tier 2)", "better": 0, "matchers": [{"string": "폭탄 제조실 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Department of Thaumaturgy (Tier 2)", "better": 0, "matchers": [{"string": "마법부 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Doryani's Institute (Tier 3)", "better": 0, "matchers": [{"string": "도리아니의 학회 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Engineering Department (Tier 2)", "better": 0, "matchers": [{"string": "공학부 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Explosives Room (Tier 1)", "better": 0, "matchers": [{"string": "폭발물 저장실 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Factory (Tier 3)", "better": 0, "matchers": [{"string": "공장 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Flame Workshop (Tier 1)", "better": 0, "matchers": [{"string": "화염 작업장 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Gemcutter's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "세공사의 작업장 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Glittering Halls (Tier 3)", "better": 0, "matchers": [{"string": "번쩍이는 복도 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Guardhouse (Tier 1)", "better": 0, "matchers": [{"string": "위병소 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Champions (Tier 3)", "better": 0, "matchers": [{"string": "용사의 전당 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Heroes (Tier 2)", "better": 0, "matchers": [{"string": "영웅의 전당 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Legends (Tier 3)", "better": 0, "matchers": [{"string": "전설의 전당 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Locks (Tier 2)", "better": 0, "matchers": [{"string": "자물쇠의 전당 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Lords (Tier 2)", "better": 0, "matchers": [{"string": "군주의 전당 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Mettle (Tier 1)", "better": 0, "matchers": [{"string": "패기의 전당 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Offerings (Tier 2)", "better": 0, "matchers": [{"string": "공물의 전당 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of War (Tier 3)", "better": 0, "matchers": [{"string": "전쟁의 전당 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Halls", "better": 0, "matchers": [{"string": "복도"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_halls"]}, "option": true}}
|
||||
{"ref": "Has Room: Hatchery (Tier 1)", "better": 0, "matchers": [{"string": "부화장 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_1"]}, "option": true}}
|
||||
{"ref": "Has Room: House of the Others (Tier 3)", "better": 0, "matchers": [{"string": "다른 존재의 보금자리 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hurricane Engine (Tier 2)", "better": 0, "matchers": [{"string": "폭풍 장치 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hybridisation Chamber (Tier 3)", "better": 0, "matchers": [{"string": "잡종화의 방 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Jeweller's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "보석 상인의 작업장 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Jewellery Forge (Tier 2)", "better": 0, "matchers": [{"string": "장신구 제련소 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Lightning Workshop (Tier 1)", "better": 0, "matchers": [{"string": "번개 작업장 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Locus of Corruption (Tier 3)", "better": 0, "matchers": [{"string": "타락의 현장 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Museum of Artefacts (Tier 3)", "better": 0, "matchers": [{"string": "유물 박물관 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Office of Cartography (Tier 2)", "better": 0, "matchers": [{"string": "지도 제작소 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Omnitect Forge (Tier 2)", "better": 0, "matchers": [{"string": "종합체 제련소 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Omnitect Reactor Plant (Tier 2)", "better": 0, "matchers": [{"string": "종합체 원전 시설 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Passageways", "better": 0, "matchers": [{"string": "통로"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_passageways"]}, "option": true}}
|
||||
{"ref": "Has Room: Pits", "better": 0, "matchers": [{"string": "구덩이"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_the_pits"]}, "option": true}}
|
||||
{"ref": "Has Room: Poison Garden (Tier 1)", "better": 0, "matchers": [{"string": "독초 정원 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Pools of Restoration (Tier 1)", "better": 0, "matchers": [{"string": "회복의 웅덩이 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Royal Meeting Room (Tier 1)", "better": 0, "matchers": [{"string": "왕실 회의실 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Sacrificial Chamber (Tier 1)", "better": 0, "matchers": [{"string": "희생의 방 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Sadist's Den (Tier 3)", "better": 0, "matchers": [{"string": "가학자의 굴 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Immortality (Tier 3)", "better": 0, "matchers": [{"string": "불멸의 지성소 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Unity (Tier 2)", "better": 0, "matchers": [{"string": "단결의 지성소 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Vitality (Tier 2)", "better": 0, "matchers": [{"string": "활력의 지성소 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Shrine of Empowerment (Tier 1)", "better": 0, "matchers": [{"string": "강화의 성소 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Shrine of Unmaking (Tier 3)", "better": 0, "matchers": [{"string": "파괴의 성소 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sparring Room (Tier 1)", "better": 0, "matchers": [{"string": "격투장 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Splinter Research Lab (Tier 1)", "better": 0, "matchers": [{"string": "파편 연구소 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Storage Room (Tier 1)", "better": 0, "matchers": [{"string": "저장고 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Storm of Corruption (Tier 3)", "better": 0, "matchers": [{"string": "타락의 태풍 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Strongbox Chamber (Tier 1)", "better": 0, "matchers": [{"string": "금고의 방 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Surveyor's Study (Tier 1)", "better": 0, "matchers": [{"string": "측량사의 조사 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Tempest Generator (Tier 1)", "better": 0, "matchers": [{"string": "폭풍 제조기 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Temple Defense Workshop (Tier 2)", "better": 0, "matchers": [{"string": "사원 방어물 작업장 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Temple Nexus (Tier 3)", "better": 0, "matchers": [{"string": "사원의 연결부 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Throne of Atziri (Tier 3)", "better": 0, "matchers": [{"string": "앗지리의 왕좌 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Tombs", "better": 0, "matchers": [{"string": "무덤"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_tombs"]}, "option": true}}
|
||||
{"ref": "Has Room: Torment Cells (Tier 1)", "better": 0, "matchers": [{"string": "고문용 감방 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Torture Cages (Tier 2)", "better": 0, "matchers": [{"string": "고문용 창살 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Toxic Grove (Tier 3)", "better": 0, "matchers": [{"string": "독성 수목원 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Trap Workshop (Tier 1)", "better": 0, "matchers": [{"string": "덫 작업장 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Treasury (Tier 2)", "better": 0, "matchers": [{"string": "보물 창고 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Tunnels", "better": 0, "matchers": [{"string": "터널"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_tunnels"]}, "option": true}}
|
||||
{"ref": "Has Room: Vault (Tier 1)", "better": 0, "matchers": [{"string": "금고실 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Warehouses (Tier 2)", "better": 0, "matchers": [{"string": "창고 (2등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Wealth of the Vaal (Tier 3)", "better": 0, "matchers": [{"string": "바알의 재물 (3등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Workshop (Tier 1)", "better": 0, "matchers": [{"string": "작업장 (1등급)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_1"]}, "option": true}}
|
||||
{"ref": "Has Shaper Influence", "better": 1, "matchers": [{"string": "쉐이퍼 영향력이 부여되어 있습니다 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_shaper_influence"]}}}
|
||||
{"ref": "Has Warlord Influence", "better": 1, "matchers": [{"string": "전쟁군주 영향력이 부여되어 있습니다 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_warlord_influence"]}}}
|
||||
{"ref": "Mirrored Tablet has # Islands", "better": 1, "matchers": [{"string": "복제 서판이 섬 #개 보유 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_lake_number_of_islands"]}}}
|
||||
{"ref": "More Currency: #%", "better": 1, "matchers": [{"string": "화폐 더 많음: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_currency_drops"]}}}
|
||||
{"ref": "More Divination Cards: #%", "better": 1, "matchers": [{"string": "점술 카드 더 많음: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_card_drops"]}}}
|
||||
{"ref": "More Maps: #%", "better": 1, "matchers": [{"string": "지도 더 많음: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_map_drops"]}}}
|
||||
{"ref": "More Scarabs: #%", "better": 1, "matchers": [{"string": "갑충석 더 많음: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_scarab_drops"]}}}
|
||||
{"ref": "Quality (Attack Modifiers): #%", "better": 1, "matchers": [{"string": "퀄리티 (공격 속성 부여): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_attack_quality"]}}}
|
||||
{"ref": "Quality (Attribute Modifiers): #%", "better": 1, "matchers": [{"string": "퀄리티 (능력치 속성 부여): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_attribute_quality"]}}}
|
||||
{"ref": "Quality (Caster Modifiers): #%", "better": 1, "matchers": [{"string": "퀄리티 (시전 속성 부여): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_caster_quality"]}}}
|
||||
{"ref": "Quality (Critical Modifiers): #%", "better": 1, "matchers": [{"string": "퀄리티 (치명타 속성 부여): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_critical_quality"]}}}
|
||||
{"ref": "Quality (Currency): #%", "better": 1, "matchers": [{"string": "퀄리티 (화폐): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_currency"]}}}
|
||||
{"ref": "Quality (Defence Modifiers): #%", "better": 1, "matchers": [{"string": "퀄리티 (방어 속성 부여): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_defense_quality"]}}}
|
||||
{"ref": "Quality (Divination Cards): #%", "better": 1, "matchers": [{"string": "퀄리티 (점술 카드): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_cards"]}}}
|
||||
{"ref": "Quality (Elemental Damage Modifiers): #%", "better": 1, "matchers": [{"string": "퀄리티 (원소 피해 속성 부여): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_elemental_quality"]}}}
|
||||
{"ref": "Quality (Life and Mana Modifiers): #%", "better": 1, "matchers": [{"string": "퀄리티 (생명력과 마나 속성 부여): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_resource_quality"]}}}
|
||||
{"ref": "Quality (Pack Size): #%", "better": 1, "matchers": [{"string": "퀄리티 (무리 규모): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_pack_size"]}}}
|
||||
{"ref": "Quality (Physical and Chaos Damage Modifiers): #%", "better": 1, "matchers": [{"string": "퀄리티 (물리 및 카오스 피해 속성 부여): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_physical_chaos_quality"]}}}
|
||||
{"ref": "Quality (Rarity): #%", "better": 1, "matchers": [{"string": "퀄리티 (희귀도): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_rarity"]}}}
|
||||
{"ref": "Quality (Resistance Modifiers): #%", "better": 1, "matchers": [{"string": "퀄리티 (저항 속성 부여): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_resistance_quality"]}}}
|
||||
{"ref": "Quality (Scarabs): #%", "better": 1, "matchers": [{"string": "퀄리티 (갑충석): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_scarabs"]}}}
|
||||
{"ref": "Quality (Speed Modifiers): #%", "better": 1, "matchers": [{"string": "퀄리티 (속도 속성 부여): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_speed_quality"]}}}
|
||||
{"ref": "Reflection of Abyss (Difficulty #)", "better": 1, "matchers": [{"string": "심연의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_38892"]}}}
|
||||
{"ref": "Reflection of Ambush (Difficulty #)", "better": 1, "matchers": [{"string": "매복의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_48307"]}}}
|
||||
{"ref": "Reflection of Angling (Difficulty #)", "better": 1, "matchers": [{"string": "강태공의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_40794"]}}}
|
||||
{"ref": "Reflection of Azurite (Difficulty #)", "better": 1, "matchers": [{"string": "남동석의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_40031"]}}}
|
||||
{"ref": "Reflection of Bestiary (Difficulty #)", "better": 1, "matchers": [{"string": "야수 도감의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_55569"]}}}
|
||||
{"ref": "Reflection of Breach (Difficulty #)", "better": 1, "matchers": [{"string": "균열의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62572"]}}}
|
||||
{"ref": "Reflection of Brutality (Difficulty #)", "better": 1, "matchers": [{"string": "잔인성의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_29096"]}}}
|
||||
{"ref": "Reflection of Camaraderie (Difficulty #)", "better": 1, "matchers": [{"string": "전우애의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_35395"]}}}
|
||||
{"ref": "Reflection of Catalysis (Difficulty #)", "better": 1, "matchers": [{"string": "촉매의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_57850"]}}}
|
||||
{"ref": "Reflection of Chaos (Difficulty #)", "better": 1, "matchers": [{"string": "혼돈의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_50834"]}}}
|
||||
{"ref": "Reflection of Conflict (Difficulty #)", "better": 1, "matchers": [{"string": "갈등의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_1931"]}}}
|
||||
{"ref": "Reflection of Darkness (Difficulty #)", "better": 1, "matchers": [{"string": "어둠의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_34457"]}}}
|
||||
{"ref": "Reflection of Delirium (Difficulty #)", "better": 1, "matchers": [{"string": "환영의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_22138"]}}}
|
||||
{"ref": "Reflection of Delve (Difficulty #)", "better": 1, "matchers": [{"string": "탐광의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_18737"]}}}
|
||||
{"ref": "Reflection of Demonfire (Difficulty #)", "better": 1, "matchers": [{"string": "악마불의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_28500"]}}}
|
||||
{"ref": "Reflection of Domination (Difficulty #)", "better": 1, "matchers": [{"string": "지배의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_63412"]}}}
|
||||
{"ref": "Reflection of Entrapment (Difficulty #)", "better": 1, "matchers": [{"string": "속박의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_44399"]}}}
|
||||
{"ref": "Reflection of Essence (Difficulty #)", "better": 1, "matchers": [{"string": "에센스의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_49862"]}}}
|
||||
{"ref": "Reflection of Experimentation (Difficulty #)", "better": 1, "matchers": [{"string": "실험의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_55676"]}}}
|
||||
{"ref": "Reflection of Flame (Difficulty #)", "better": 1, "matchers": [{"string": "화염의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_42468"]}}}
|
||||
{"ref": "Reflection of Fractured Dimensions (Difficulty #)", "better": 1, "matchers": [{"string": "분열된 차원의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_49488"]}}}
|
||||
{"ref": "Reflection of Frost (Difficulty #)", "better": 1, "matchers": [{"string": "서리의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_38110"]}}}
|
||||
{"ref": "Reflection of Guilt (Difficulty #)", "better": 1, "matchers": [{"string": "죄책감의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_25480"]}}}
|
||||
{"ref": "Reflection of Imprisonment (Difficulty #)", "better": 1, "matchers": [{"string": "갇힘의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_10363"]}}}
|
||||
{"ref": "Reflection of Kalandra (Difficulty #)", "better": 1, "matchers": [{"string": "칼란드라의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_36591"]}}}
|
||||
{"ref": "Reflection of Legion (Difficulty #)", "better": 1, "matchers": [{"string": "군단의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_403"]}}}
|
||||
{"ref": "Reflection of Metamorph (Difficulty #)", "better": 1, "matchers": [{"string": "변형의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_3699"]}}}
|
||||
{"ref": "Reflection of Occultism (Difficulty #)", "better": 1, "matchers": [{"string": "비술의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_24451"]}}}
|
||||
{"ref": "Reflection of Paradise (Difficulty #)", "better": 1, "matchers": [{"string": "낙원의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_50846"]}}}
|
||||
{"ref": "Reflection of Perverted Faith (Difficulty #)", "better": 1, "matchers": [{"string": "엇나간 믿음의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_27678"]}}}
|
||||
{"ref": "Reflection of Phaaryl (Difficulty #)", "better": 1, "matchers": [{"string": "파아릴의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_7674"]}}}
|
||||
{"ref": "Reflection of Possession (Difficulty #)", "better": 1, "matchers": [{"string": "빙의의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_25049"]}}}
|
||||
{"ref": "Reflection of Power (Difficulty #)", "better": 1, "matchers": [{"string": "힘의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_35950"]}}}
|
||||
{"ref": "Reflection of Scourge (Difficulty #)", "better": 1, "matchers": [{"string": "스컬지의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62360"]}}}
|
||||
{"ref": "Reflection of Stasis (Difficulty #)", "better": 1, "matchers": [{"string": "정체의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_32968"]}}}
|
||||
{"ref": "Reflection of Sulphite (Difficulty #)", "better": 1, "matchers": [{"string": "아황산염의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_45086"]}}}
|
||||
{"ref": "Reflection of the Black Scythe (Difficulty #)", "better": 1, "matchers": [{"string": "검은 낫의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_9662"]}}}
|
||||
{"ref": "Reflection of the Breachlord (Difficulty #)", "better": 1, "matchers": [{"string": "균열 군주의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62935"]}}}
|
||||
{"ref": "Reflection of the Broken Circle (Difficulty #)", "better": 1, "matchers": [{"string": "끊어진 원의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_43128"]}}}
|
||||
{"ref": "Reflection of the Chalice (Difficulty #)", "better": 1, "matchers": [{"string": "성배의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_64561"]}}}
|
||||
{"ref": "Reflection of the Chasm (Difficulty #)", "better": 1, "matchers": [{"string": "절벽길의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_57101"]}}}
|
||||
{"ref": "Reflection of the Dream (Difficulty #)", "better": 1, "matchers": [{"string": "꿈의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_27117"]}}}
|
||||
{"ref": "Reflection of the Harbingers (Difficulty #)", "better": 1, "matchers": [{"string": "선구자의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_37203"]}}}
|
||||
{"ref": "Reflection of the Hunter (Difficulty #)", "better": 1, "matchers": [{"string": "사냥꾼의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_18816"]}}}
|
||||
{"ref": "Reflection of the Monolith (Difficulty #)", "better": 1, "matchers": [{"string": "기둥의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_34796"]}}}
|
||||
{"ref": "Reflection of the Nightmare (Difficulty #)", "better": 1, "matchers": [{"string": "악몽의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_24232"]}}}
|
||||
{"ref": "Reflection of the Storm (Difficulty #)", "better": 1, "matchers": [{"string": "태풍의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_2745"]}}}
|
||||
{"ref": "Reflection of the Sun (Difficulty #)", "better": 1, "matchers": [{"string": "태양의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_60034"]}}}
|
||||
{"ref": "Reflection of the Trove (Difficulty #)", "better": 1, "matchers": [{"string": "발견물의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_46772"]}}}
|
||||
{"ref": "Reflection of the Wilderness (Difficulty #)", "better": 1, "matchers": [{"string": "황야의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_29224"]}}}
|
||||
{"ref": "Reflection of Thralldom (Difficulty #)", "better": 1, "matchers": [{"string": "예속의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_26813"]}}}
|
||||
{"ref": "Reflection of Torment (Difficulty #)", "better": 1, "matchers": [{"string": "고통의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_53950"]}}}
|
||||
{"ref": "Reflection of Tyranny (Difficulty #)", "better": 1, "matchers": [{"string": "폭정의 투영 (난이도 #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_60981"]}}}
|
||||
32
renderer/public/.DS_Store/vendor/pseudo-stats/ko/pseudo_stats.ndjson
vendored
Normal file
32
renderer/public/.DS_Store/vendor/pseudo-stats/ko/pseudo_stats.ndjson
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
{"ref": "# Life Regenerated per Second", "better": 1, "matchers": [{"string": "초당 생명력 재생 #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life_regen"]}}}
|
||||
{"ref": "#% increased Burning Damage", "better": 1, "matchers": [{"string": "화상 피해 #% 증가"}, {"string": "화상 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_burning_damage"], "explicit": ["explicit.stat_1175385867"], "implicit": ["implicit.stat_1175385867"], "fractured": ["fractured.stat_1175385867"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "matchers": [{"string": "냉기 피해 #% 증가"}, {"string": "냉기 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage"], "explicit": ["explicit.stat_3291658075"], "implicit": ["implicit.stat_3291658075"], "fractured": ["fractured.stat_3291658075"], "scourge": ["scourge.stat_3291658075"], "crafted": ["crafted.stat_3291658075"]}}}
|
||||
{"ref": "#% increased Cold Spell Damage", "better": 1, "matchers": [{"string": "냉기 주문 피해 #% 증가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_spell_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "matchers": [{"string": "원소 피해 #% 증가"}, {"string": "원소 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage"], "explicit": ["explicit.stat_3141070085"], "implicit": ["implicit.stat_3141070085"], "fractured": ["fractured.stat_3141070085"], "enchant": ["enchant.stat_692420067"], "scourge": ["scourge.stat_3141070085"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attack Skills", "better": 1, "matchers": [{"string": "공격 스킬의 원소 피해 #% 증가"}, {"string": "공격 스킬의 원소 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage_with_attack_skills"], "explicit": ["explicit.stat_387439868"], "implicit": ["implicit.stat_387439868"], "fractured": ["fractured.stat_387439868"], "scourge": ["scourge.stat_387439868"], "crafted": ["crafted.stat_387439868"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "matchers": [{"string": "화염 피해 #% 증가"}, {"string": "화염 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage"], "explicit": ["explicit.stat_3962278098"], "implicit": ["implicit.stat_3962278098"], "fractured": ["fractured.stat_3962278098"], "scourge": ["scourge.stat_3962278098"], "crafted": ["crafted.stat_3962278098"]}}}
|
||||
{"ref": "#% increased Fire Spell Damage", "better": 1, "matchers": [{"string": "화염 주문 피해 #% 증가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_spell_damage"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "matchers": [{"string": "번개 피해 #% 증가"}, {"string": "번개 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage"], "explicit": ["explicit.stat_2231156303"], "implicit": ["implicit.stat_2231156303"], "fractured": ["fractured.stat_2231156303"], "scourge": ["scourge.stat_2231156303"], "crafted": ["crafted.stat_2231156303"]}}}
|
||||
{"ref": "#% increased Lightning Spell Damage", "better": 1, "matchers": [{"string": "번개 주문 피해 #% 증가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_spell_damage"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "matchers": [{"string": "마나 재생 속도 #% 증가"}, {"string": "마나 재생 속도 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_mana_regen"], "explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "fractured": ["fractured.stat_789117908"], "scourge": ["scourge.stat_789117908"], "crafted": ["crafted.stat_789117908"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "matchers": [{"string": "이동 속도 #% 증가"}, {"string": "이동 속도 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_movement_speed"], "explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "fractured": ["fractured.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "scourge": ["scourge.stat_2250533757"], "crafted": ["crafted.stat_2250533757"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "matchers": [{"string": "주문 피해 #% 증가"}, {"string": "주문 피해 #% 감소", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_spell_damage"], "explicit": ["explicit.stat_2974417149"], "implicit": ["implicit.stat_2974417149"], "fractured": ["fractured.stat_2974417149"], "enchant": ["enchant.stat_2974417149"], "scourge": ["scourge.stat_2974417149"], "crafted": ["crafted.stat_2974417149"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Life", "dp": true, "better": 1, "matchers": [{"string": "물리 공격 피해의 #%를 생명력으로 흡수"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_life"], "explicit": ["explicit.stat_3593843976", "explicit.stat_55876295"], "implicit": ["implicit.stat_3593843976", "implicit.stat_55876295"], "fractured": ["fractured.stat_3593843976", "fractured.stat_55876295"], "scourge": ["scourge.stat_3593843976"], "crafted": ["crafted.stat_3593843976", "crafted.stat_55876295"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Mana", "dp": true, "better": 1, "matchers": [{"string": "물리 공격 피해의 #%를 마나로 흡수"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_mana"], "explicit": ["explicit.stat_3237948413", "explicit.stat_669069897"], "implicit": ["implicit.stat_3237948413", "implicit.stat_669069897"], "fractured": ["fractured.stat_3237948413", "fractured.stat_669069897"], "enchant": ["enchant.stat_669069897"], "scourge": ["scourge.stat_3237948413"], "crafted": ["crafted.stat_3237948413", "crafted.stat_669069897"]}}}
|
||||
{"ref": "#% total increased Physical Damage", "better": 1, "matchers": [{"string": "물리 피해 총 #% 증가 "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_physical_damage"]}}}
|
||||
{"ref": "+# total maximum Energy Shield", "better": 1, "matchers": [{"string": "에너지 보호막 최대치 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_energy_shield"]}}}
|
||||
{"ref": "+# total maximum Life", "better": 1, "matchers": [{"string": "총 최대 생명력 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life"]}}}
|
||||
{"ref": "+# total maximum Mana", "better": 1, "matchers": [{"string": "총 최대 마나 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_mana"]}}}
|
||||
{"ref": "+# total to all Attributes", "better": 1, "matchers": [{"string": "모든 능력치 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_attributes"]}}}
|
||||
{"ref": "+# total to Dexterity", "better": 1, "matchers": [{"string": "민첩 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_dexterity"]}}}
|
||||
{"ref": "+# total to Intelligence", "better": 1, "matchers": [{"string": "지능 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_intelligence"]}}}
|
||||
{"ref": "+# total to Strength", "better": 1, "matchers": [{"string": "힘 총 +# "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_strength"]}}}
|
||||
{"ref": "+#% Global Critical Strike Chance", "better": 1, "matchers": [{"string": "일반 치명타 확률 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_chance"]}}}
|
||||
{"ref": "+#% Global Critical Strike Multiplier", "better": 1, "matchers": [{"string": "일반 치명타 피해 배율 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_multiplier"]}}}
|
||||
{"ref": "+#% total Attack Speed", "better": 1, "matchers": [{"string": "총 공격 속도 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_attack_speed"]}}}
|
||||
{"ref": "+#% total Cast Speed", "better": 1, "matchers": [{"string": "총 시전 속도 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cast_speed"]}}}
|
||||
{"ref": "+#% total Elemental Resistance", "better": 1, "matchers": [{"string": "원소 저항력 총 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_elemental_resistance"]}}}
|
||||
{"ref": "+#% total to Chaos Resistance", "better": 1, "matchers": [{"string": "카오스 저항 총 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_chaos_resistance"]}}}
|
||||
{"ref": "+#% total to Cold Resistance", "better": 1, "matchers": [{"string": "냉기 저항 총 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cold_resistance"]}}}
|
||||
{"ref": "+#% total to Fire Resistance", "better": 1, "matchers": [{"string": "화염 저항 총 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_fire_resistance"]}}}
|
||||
{"ref": "+#% total to Lightning Resistance", "better": 1, "matchers": [{"string": "번개 저항 총 +#% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_lightning_resistance"]}}}
|
||||
54
renderer/public/.DS_Store/vendor/pseudo-stats/pseudo-parse.py
vendored
Normal file
54
renderer/public/.DS_Store/vendor/pseudo-stats/pseudo-parse.py
vendored
Normal file
@@ -0,0 +1,54 @@
|
||||
import json
|
||||
import os
|
||||
|
||||
|
||||
def get_script_dir():
|
||||
"""Returns the directory where the script is located."""
|
||||
return os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
|
||||
# List of localization codes
|
||||
localizations = ["en", "ru", "ko", "cmn-Hant"]
|
||||
|
||||
key_to_find = "trade.ids.pseudo" # The specific key path to check for
|
||||
|
||||
|
||||
def has_nested_key(obj, key_path):
|
||||
keys = key_path.split(".")
|
||||
for key in keys:
|
||||
if isinstance(obj, dict) and key in obj:
|
||||
obj = obj[key]
|
||||
else:
|
||||
return False
|
||||
return True
|
||||
|
||||
|
||||
def process_file(input_file_path, output_file_path):
|
||||
result_list = []
|
||||
|
||||
# Use 'utf-8' encoding when opening the input file
|
||||
with open(input_file_path, "r", encoding="utf-8") as input_file:
|
||||
for line in input_file:
|
||||
try:
|
||||
json_object = json.loads(line)
|
||||
if has_nested_key(json_object, key_to_find):
|
||||
result_list.append(json_object)
|
||||
except json.JSONDecodeError as e:
|
||||
print(f"Error parsing JSON: {e}")
|
||||
|
||||
with open(output_file_path, "w", encoding="utf-8") as output_file:
|
||||
for item in result_list:
|
||||
output_file.write(json.dumps(item, ensure_ascii=False) + "\n")
|
||||
|
||||
print(
|
||||
f"Processing complete for {input_file_path}. Check {output_file_path} for results."
|
||||
)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
for loc in localizations:
|
||||
input_file_path = f"{get_script_dir()}/../../data/{loc}/stats.ndjson.old" # Path to the input file
|
||||
output_file_path = (
|
||||
f"{get_script_dir()}/{loc}/all-pseudo.ndjson" # Path to the output file
|
||||
)
|
||||
process_file(input_file_path, output_file_path)
|
||||
32
renderer/public/.DS_Store/vendor/pseudo-stats/pseudo_keys.ndjson
vendored
Normal file
32
renderer/public/.DS_Store/vendor/pseudo-stats/pseudo_keys.ndjson
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
{"ref": "+#% total Elemental Resistance", "better": 1, "matchers": [{"string": "+#% total Elemental Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_elemental_resistance"]}}}
|
||||
{"ref": "+#% total to Fire Resistance", "better": 1, "matchers": [{"string": "+#% total to Fire Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_fire_resistance"]}}}
|
||||
{"ref": "+#% total to Cold Resistance", "better": 1, "matchers": [{"string": "+#% total to Cold Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cold_resistance"]}}}
|
||||
{"ref": "+#% total to Lightning Resistance", "better": 1, "matchers": [{"string": "+#% total to Lightning Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_lightning_resistance"]}}}
|
||||
{"ref": "+#% total to Chaos Resistance", "better": 1, "matchers": [{"string": "+#% total to Chaos Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_chaos_resistance"]}}}
|
||||
{"ref": "+# total to all Attributes", "better": 1, "matchers": [{"string": "+# total to all Attributes "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_attributes"]}}}
|
||||
{"ref": "+# total to Strength", "better": 1, "matchers": [{"string": "+# total to Strength "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_strength"]}}}
|
||||
{"ref": "+# total to Dexterity", "better": 1, "matchers": [{"string": "+# total to Dexterity "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_dexterity"]}}}
|
||||
{"ref": "+# total to Intelligence", "better": 1, "matchers": [{"string": "+# total to Intelligence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_intelligence"]}}}
|
||||
{"ref": "+# total maximum Life", "better": 1, "matchers": [{"string": "+# total maximum Life "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life"]}}}
|
||||
{"ref": "+# total maximum Mana", "better": 1, "matchers": [{"string": "+# total maximum Mana "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_mana"]}}}
|
||||
{"ref": "+# total maximum Energy Shield", "better": 1, "matchers": [{"string": "+# total maximum Energy Shield "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_energy_shield"]}}}
|
||||
{"ref": "+#% total Attack Speed", "better": 1, "matchers": [{"string": "+#% total Attack Speed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_attack_speed"]}}}
|
||||
{"ref": "+#% total Cast Speed", "better": 1, "matchers": [{"string": "+#% total Cast Speed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cast_speed"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "matchers": [{"string": "#% increased Movement Speed"}, {"string": "#% reduced Movement Speed", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_movement_speed"], "explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "fractured": ["fractured.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "scourge": ["scourge.stat_2250533757"], "crafted": ["crafted.stat_2250533757"]}}}
|
||||
{"ref": "#% total increased Physical Damage", "better": 1, "matchers": [{"string": "#% total increased Physical Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_physical_damage"]}}}
|
||||
{"ref": "+#% Global Critical Strike Chance", "better": 1, "matchers": [{"string": "+#% Global Critical Strike Chance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_chance"]}}}
|
||||
{"ref": "+#% Global Critical Strike Multiplier", "better": 1, "matchers": [{"string": "+#% Global Critical Strike Multiplier "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_multiplier"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "matchers": [{"string": "#% increased Elemental Damage"}, {"string": "Has #% increased Elemental Damage"}, {"string": "#% reduced Elemental Damage", "negate": true}, {"string": "Has #% reduced Elemental Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage"], "explicit": ["explicit.stat_3141070085"], "implicit": ["implicit.stat_3141070085"], "fractured": ["fractured.stat_3141070085"], "enchant": ["enchant.stat_692420067"], "scourge": ["scourge.stat_3141070085"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "matchers": [{"string": "#% increased Lightning Damage"}, {"string": "#% reduced Lightning Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage"], "explicit": ["explicit.stat_2231156303"], "implicit": ["implicit.stat_2231156303"], "fractured": ["fractured.stat_2231156303"], "scourge": ["scourge.stat_2231156303"], "crafted": ["crafted.stat_2231156303"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "matchers": [{"string": "#% increased Cold Damage"}, {"string": "#% reduced Cold Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage"], "explicit": ["explicit.stat_3291658075"], "implicit": ["implicit.stat_3291658075"], "fractured": ["fractured.stat_3291658075"], "scourge": ["scourge.stat_3291658075"], "crafted": ["crafted.stat_3291658075"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "matchers": [{"string": "#% increased Fire Damage"}, {"string": "#% reduced Fire Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage"], "explicit": ["explicit.stat_3962278098"], "implicit": ["implicit.stat_3962278098"], "fractured": ["fractured.stat_3962278098"], "scourge": ["scourge.stat_3962278098"], "crafted": ["crafted.stat_3962278098"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "matchers": [{"string": "#% increased Spell Damage"}, {"string": "#% reduced Spell Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_spell_damage"], "explicit": ["explicit.stat_2974417149"], "implicit": ["implicit.stat_2974417149"], "fractured": ["fractured.stat_2974417149"], "enchant": ["enchant.stat_2974417149"], "scourge": ["scourge.stat_2974417149"], "crafted": ["crafted.stat_2974417149"]}}}
|
||||
{"ref": "#% increased Lightning Spell Damage", "better": 1, "matchers": [{"string": "#% increased Lightning Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_spell_damage"]}}}
|
||||
{"ref": "#% increased Cold Spell Damage", "better": 1, "matchers": [{"string": "#% increased Cold Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_spell_damage"]}}}
|
||||
{"ref": "#% increased Fire Spell Damage", "better": 1, "matchers": [{"string": "#% increased Fire Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_spell_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% increased Elemental Damage with Attack Skills"}, {"string": "#% reduced Elemental Damage with Attack Skills", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage_with_attack_skills"], "explicit": ["explicit.stat_387439868"], "implicit": ["implicit.stat_387439868"], "fractured": ["fractured.stat_387439868"], "scourge": ["scourge.stat_387439868"], "crafted": ["crafted.stat_387439868"]}}}
|
||||
{"ref": "#% increased Burning Damage", "better": 1, "matchers": [{"string": "#% increased Burning Damage"}, {"string": "#% reduced Burning Damage", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_burning_damage"], "explicit": ["explicit.stat_1175385867"], "implicit": ["implicit.stat_1175385867"], "fractured": ["fractured.stat_1175385867"]}}}
|
||||
{"ref": "# Life Regenerated per Second", "better": 1, "matchers": [{"string": "# Life Regenerated per Second "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life_regen"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Life", "dp": true, "better": 1, "matchers": [{"string": "#% of Physical Attack Damage Leeched as Life"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_life"], "explicit": ["explicit.stat_3593843976", "explicit.stat_55876295"], "implicit": ["implicit.stat_3593843976", "implicit.stat_55876295"], "fractured": ["fractured.stat_3593843976", "fractured.stat_55876295"], "scourge": ["scourge.stat_3593843976"], "crafted": ["crafted.stat_3593843976", "crafted.stat_55876295"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Mana", "dp": true, "better": 1, "matchers": [{"string": "#% of Physical Attack Damage Leeched as Mana"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_mana"], "explicit": ["explicit.stat_3237948413", "explicit.stat_669069897"], "implicit": ["implicit.stat_3237948413", "implicit.stat_669069897"], "fractured": ["fractured.stat_3237948413", "fractured.stat_669069897"], "enchant": ["enchant.stat_669069897"], "scourge": ["scourge.stat_3237948413"], "crafted": ["crafted.stat_3237948413", "crafted.stat_669069897"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "matchers": [{"string": "#% increased Mana Regeneration Rate"}, {"string": "#% reduced Mana Regeneration Rate", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_mana_regen"], "explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "fractured": ["fractured.stat_789117908"], "scourge": ["scourge.stat_789117908"], "crafted": ["crafted.stat_789117908"]}}}
|
||||
292
renderer/public/.DS_Store/vendor/pseudo-stats/ru/all-pseudo.ndjson
vendored
Normal file
292
renderer/public/.DS_Store/vendor/pseudo-stats/ru/all-pseudo.ndjson
vendored
Normal file
@@ -0,0 +1,292 @@
|
||||
{"ref": "# Crafted Modifiers", "better": 1, "matchers": [{"string": "# ремесленных свойств "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_mods"]}}}
|
||||
{"ref": "# Crafted Prefix Modifiers", "better": 1, "matchers": [{"string": "# ремесленных свойств-префиксов "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_prefix_mods"]}}}
|
||||
{"ref": "# Crafted Suffix Modifiers", "better": 1, "matchers": [{"string": "# ремесленных свойств-суффиксов "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_crafted_suffix_mods"]}}}
|
||||
{"ref": "# Empty Modifiers", "better": 1, "matchers": [{"string": "# Пустые свойства "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_affix_mods"]}}}
|
||||
{"ref": "# Empty Prefix Modifiers", "better": 1, "matchers": [{"string": "# Пустые свойства-префиксы "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_prefix_mods"]}}}
|
||||
{"ref": "# Empty Suffix Modifiers", "better": 1, "matchers": [{"string": "# Пустые свойства-суффиксы "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_empty_suffix_mods"]}}}
|
||||
{"ref": "# Enchant Modifiers", "better": 1, "matchers": [{"string": "# зачарованных свойств "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_enchant_mods"]}}}
|
||||
{"ref": "# Fractured Modifiers", "better": 1, "matchers": [{"string": "# Расколотые свойства "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_fractured_mods"]}}}
|
||||
{"ref": "# Implicit Modifiers", "better": 1, "matchers": [{"string": "# собственных свойств "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_implicit_mods"]}}}
|
||||
{"ref": "# Life Regenerated per Second", "better": 1, "matchers": [{"string": "Регенерация # здоровья в секунду "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life_regen"]}}}
|
||||
{"ref": "# Modifiers", "better": 1, "matchers": [{"string": "# Свойств "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_affix_mods"]}}}
|
||||
{"ref": "# Notable Passive Skills", "better": 1, "matchers": [{"string": "# Значимое пассивное умение "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_notable_passive_skills"]}}}
|
||||
{"ref": "# Prefix Modifiers", "better": 1, "matchers": [{"string": "# Свойств-префиксов "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_prefix_mods"]}}}
|
||||
{"ref": "# Suffix Modifiers", "better": 1, "matchers": [{"string": "# Свойств-суффиксов "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_number_of_suffix_mods"]}}}
|
||||
{"ref": "# total Elemental Resistances", "better": 1, "matchers": [{"string": "всего # сопротивления стихиям "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_count_elemental_resistances"]}}}
|
||||
{"ref": "# total Resistances", "better": 1, "matchers": [{"string": "всего # сопротивления "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_count_resistances"]}}}
|
||||
{"ref": "#% Base Defence Percentile", "better": 1, "matchers": [{"string": "#% процента базовой защиты "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_base_defence_percentile"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Atlas Memories", "better": 1, "matchers": [{"string": "#% шанс преобразования выпавших карт в воспоминания Атласа "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_memory_line"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Conqueror Maps", "better": 1, "matchers": [{"string": "#% шанс преобразования выпавших карт в карты Завоевателей "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_conqueror_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Elder Maps", "better": 1, "matchers": [{"string": "#% шанс преобразования выпавших карт в карты Древнего "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_elder_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Maven Invitations", "better": 1, "matchers": [{"string": "#% шанс преобразования выпавших карт в приглашения Мейвен "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_maven_invitation"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Scarabs", "better": 1, "matchers": [{"string": "#% шанс выпадения карт в виде скарабеев "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_scarab"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Shaper Maps", "better": 1, "matchers": [{"string": "#% шанс преобразования выпавших карт в карты Создателя "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_shaper_map"]}}}
|
||||
{"ref": "#% chance for dropped Maps to convert to Unique Maps", "better": 1, "matchers": [{"string": "#% шанс преобразования выпавших карт в уникальные карты "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_conversion_unique_map"]}}}
|
||||
{"ref": "#% increased Burning Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от горения"}, {"string": "#% уменьшение урона от горения", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_burning_damage"], "explicit": ["explicit.stat_1175385867"], "implicit": ["implicit.stat_1175385867"], "fractured": ["fractured.stat_1175385867"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от холода"}, {"string": "#% уменьшение урона от холода", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage"], "explicit": ["explicit.stat_3291658075"], "implicit": ["implicit.stat_3291658075"], "fractured": ["fractured.stat_3291658075"], "scourge": ["scourge.stat_3291658075"], "crafted": ["crafted.stat_3291658075"]}}}
|
||||
{"ref": "#% increased Cold Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% увеличение урона от холода от умений атак"}, {"string": "#% уменьшение урона от холода от умений атак", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage_with_attack_skills"], "explicit": ["explicit.stat_860668586"], "implicit": ["implicit.stat_860668586"]}}}
|
||||
{"ref": "#% increased Cold Spell Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от холода чарами "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_spell_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от стихий"}, {"string": "#% уменьшение урона от стихий", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage"], "explicit": ["explicit.stat_3141070085"], "implicit": ["implicit.stat_3141070085"], "fractured": ["fractured.stat_3141070085"], "enchant": ["enchant.stat_692420067"], "scourge": ["scourge.stat_3141070085"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% увеличение урона от стихий от умений атак"}, {"string": "#% уменьшение урона от стихий от умений атак", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage_with_attack_skills"], "explicit": ["explicit.stat_387439868"], "implicit": ["implicit.stat_387439868"], "fractured": ["fractured.stat_387439868"], "scourge": ["scourge.stat_387439868"], "crafted": ["crafted.stat_387439868"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от огня"}, {"string": "#% уменьшение урона от огня", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage"], "explicit": ["explicit.stat_3962278098"], "implicit": ["implicit.stat_3962278098"], "fractured": ["fractured.stat_3962278098"], "scourge": ["scourge.stat_3962278098"], "crafted": ["crafted.stat_3962278098"]}}}
|
||||
{"ref": "#% increased Fire Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% увеличение урона от огня от умений атак"}, {"string": "#% уменьшение урона от огня от умений атак", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage_with_attack_skills"], "implicit": ["implicit.stat_2468413380"]}}}
|
||||
{"ref": "#% increased Fire Spell Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от огня чарами "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_spell_damage"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от молнии"}, {"string": "#% уменьшение урона от молнии", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage"], "explicit": ["explicit.stat_2231156303"], "implicit": ["implicit.stat_2231156303"], "fractured": ["fractured.stat_2231156303"], "scourge": ["scourge.stat_2231156303"], "crafted": ["crafted.stat_2231156303"]}}}
|
||||
{"ref": "#% increased Lightning Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% увеличение урона от молнии от умений атак"}, {"string": "#% уменьшение урона от молнии от умений атак", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage_with_attack_skills"], "explicit": ["explicit.stat_4208907162"], "implicit": ["implicit.stat_4208907162"]}}}
|
||||
{"ref": "#% increased Lightning Spell Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от молнии чарами "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_spell_damage"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "matchers": [{"string": "#% повышение скорости регенерации маны"}, {"string": "#% снижение скорости регенерации маны", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_mana_regen"], "explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "fractured": ["fractured.stat_789117908"], "scourge": ["scourge.stat_789117908"], "crafted": ["crafted.stat_789117908"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "matchers": [{"string": "#% повышение скорости передвижения"}, {"string": "#% снижение скорости передвижения", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_movement_speed"], "explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "fractured": ["fractured.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "scourge": ["scourge.stat_2250533757"], "crafted": ["crafted.stat_2250533757"]}}}
|
||||
{"ref": "#% increased Rarity of Items found", "better": 1, "matchers": [{"string": "#% повышение редкости найденных предметов"}, {"string": "#% снижение редкости найденных предметов", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_rarity"], "explicit": ["explicit.stat_3917489142"], "implicit": ["implicit.stat_3917489142"], "fractured": ["fractured.stat_3917489142"], "scourge": ["scourge.stat_3917489142"], "crafted": ["crafted.stat_3917489142"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от чар"}, {"string": "#% уменьшение урона от чар", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_spell_damage"], "explicit": ["explicit.stat_2974417149"], "implicit": ["implicit.stat_2974417149"], "fractured": ["fractured.stat_2974417149"], "enchant": ["enchant.stat_2974417149"], "scourge": ["scourge.stat_2974417149"], "crafted": ["crafted.stat_2974417149"]}}}
|
||||
{"ref": "#% of Life Regenerated per Second", "better": 1, "matchers": [{"string": "Регенерация #% здоровья в секунду "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_percent_life_regen"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Life", "dp": true, "better": 1, "matchers": [{"string": "#% физического урона от атак похищается в виде здоровья"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_life"], "explicit": ["explicit.stat_3593843976", "explicit.stat_55876295"], "implicit": ["implicit.stat_3593843976", "implicit.stat_55876295"], "fractured": ["fractured.stat_3593843976", "fractured.stat_55876295"], "scourge": ["scourge.stat_3593843976"], "crafted": ["crafted.stat_3593843976", "crafted.stat_55876295"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Mana", "dp": true, "better": 1, "matchers": [{"string": "#% физического урона от атак похищается в виде маны"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_mana"], "explicit": ["explicit.stat_3237948413", "explicit.stat_669069897"], "implicit": ["implicit.stat_3237948413", "implicit.stat_669069897"], "fractured": ["fractured.stat_3237948413", "fractured.stat_669069897"], "enchant": ["enchant.stat_669069897"], "scourge": ["scourge.stat_3237948413"], "crafted": ["crafted.stat_3237948413", "crafted.stat_669069897"]}}}
|
||||
{"ref": "#% total increased maximum Energy Shield", "better": 1, "matchers": [{"string": "Всего #% повышения энергетического щита "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_energy_shield"]}}}
|
||||
{"ref": "#% total increased Physical Damage", "better": 1, "matchers": [{"string": "Всего +#% к увеличению физического урона "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_physical_damage"]}}}
|
||||
{"ref": "+# total maximum Energy Shield", "better": 1, "matchers": [{"string": "Всего +# к максимуму энергетического щита "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_energy_shield"]}}}
|
||||
{"ref": "+# total maximum Life", "better": 1, "matchers": [{"string": "Всего +# к максимуму здоровья "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life"]}}}
|
||||
{"ref": "+# total maximum Mana", "better": 1, "matchers": [{"string": "Всего +# к максимуму маны "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_mana"]}}}
|
||||
{"ref": "+# total to all Attributes", "better": 1, "matchers": [{"string": "Всего +# ко всем характеристикам "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_attributes"]}}}
|
||||
{"ref": "+# total to Dexterity", "better": 1, "matchers": [{"string": "Всего +# к ловкости "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_dexterity"]}}}
|
||||
{"ref": "+# total to Intelligence", "better": 1, "matchers": [{"string": "Всего +# к интеллекту "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_intelligence"]}}}
|
||||
{"ref": "+# total to Level of Socketed Aura Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней аур "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_aura_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Bow Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней луков "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_bow_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Chaos Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней хаоса "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_chaos_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Cold Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней холода "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_cold_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Curse Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней проклятий "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_curse_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Dexterity Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней ловкости "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_dexterity_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Elemental Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней стихий "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_elemental_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Fire Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней огня "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_fire_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Golem Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней големов "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_golem_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Intelligence Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней интеллекта "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_intelligence_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Lightning Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней молнии "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_lightning_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Melee Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней ближнего боя "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_melee_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Minion Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней приспешников "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_minion_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Movement Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней передвижения "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_movement_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Projectile Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней снарядов "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_projectile_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Skill Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней умений "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_skill_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Spell Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней чар "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_spell_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Strength Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней силы "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_strength_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Support Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней поддержки "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_support_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Vaal Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней ваал "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_vaal_gem_levels"]}}}
|
||||
{"ref": "+# total to Level of Socketed Warcry Gems", "better": 1, "matchers": [{"string": "Всего +# к уровню размещённых камней боевых кличей "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_additional_warcry_gem_levels"]}}}
|
||||
{"ref": "+# total to Strength", "better": 1, "matchers": [{"string": "Всего +# к силе "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_strength"]}}}
|
||||
{"ref": "+#% Global Critical Strike Chance", "better": 1, "matchers": [{"string": "Всего +#% к глобальному шансу критического удара "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_chance"]}}}
|
||||
{"ref": "+#% Global Critical Strike Multiplier", "better": 1, "matchers": [{"string": "Всего +#% к множителю критического удара "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_multiplier"]}}}
|
||||
{"ref": "+#% total Attack Speed", "better": 1, "matchers": [{"string": "Всего +#% к скорости атаки "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_attack_speed"]}}}
|
||||
{"ref": "+#% total Cast Speed", "better": 1, "matchers": [{"string": "Всего +#% к скорости сотворения чар "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cast_speed"]}}}
|
||||
{"ref": "+#% total Critical Strike Chance for Spells", "better": 1, "matchers": [{"string": "Всего +#% к шансу критического удара чарами "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_critical_strike_chance_for_spells"]}}}
|
||||
{"ref": "+#% total Elemental Resistance", "better": 1, "matchers": [{"string": "Всего +#% сопротивления стихиям "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_elemental_resistance"]}}}
|
||||
{"ref": "+#% total Resistance", "better": 1, "matchers": [{"string": "Всего +#% сопротивления "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_resistance"]}}}
|
||||
{"ref": "+#% total to all Elemental Resistances", "better": 1, "matchers": [{"string": "Всего +#% к сопротивлению всем стихиям "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_elemental_resistances"]}}}
|
||||
{"ref": "+#% total to Chaos Resistance", "better": 1, "matchers": [{"string": "Всего +#% к сопротивлению хаосу "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_chaos_resistance"]}}}
|
||||
{"ref": "+#% total to Cold Resistance", "better": 1, "matchers": [{"string": "Всего +#% к сопротивлению холоду "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cold_resistance"]}}}
|
||||
{"ref": "+#% total to Fire Resistance", "better": 1, "matchers": [{"string": "Всего +#% к сопротивлению огню "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_fire_resistance"]}}}
|
||||
{"ref": "+#% total to Lightning Resistance", "better": 1, "matchers": [{"string": "Всего +#% к сопротивлению молнии "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_lightning_resistance"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage", "better": 1, "matchers": [{"string": "Добавляет от # до # урона хаосом"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage"], "explicit": ["explicit.stat_2223678961", "explicit.stat_3531280422"], "implicit": ["implicit.stat_2223678961", "implicit.stat_3531280422"], "fractured": ["fractured.stat_2223678961"], "enchant": ["enchant.stat_2223678961"], "scourge": ["scourge.stat_2223678961"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage to Attacks", "better": 1, "matchers": [{"string": "Добавляет от # до # урона хаосом к атакам"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage_to_attacks"], "explicit": ["explicit.stat_674553446"], "implicit": ["implicit.stat_674553446"], "fractured": ["fractured.stat_674553446"], "crafted": ["crafted.stat_674553446"]}}}
|
||||
{"ref": "Adds # to # Chaos Damage to Spells", "better": 1, "matchers": [{"string": "Добавляет от # до # урона хаосом к чарам"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_chaos_damage_to_spells"], "explicit": ["explicit.stat_2300399854"], "implicit": ["implicit.stat_2300399854"], "fractured": ["fractured.stat_2300399854"]}}}
|
||||
{"ref": "Adds # to # Cold Damage", "better": 1, "matchers": [{"string": "Добавляет от # до # урона от холода"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage"], "explicit": ["explicit.stat_1037193709", "explicit.stat_2387423236"], "implicit": ["implicit.stat_1037193709", "implicit.stat_2387423236"], "fractured": ["fractured.stat_1037193709", "fractured.stat_2387423236"], "enchant": ["enchant.stat_1037193709"], "scourge": ["scourge.stat_1037193709"], "crafted": ["crafted.stat_1037193709", "crafted.stat_2387423236"]}}}
|
||||
{"ref": "Adds # to # Cold Damage to Attacks", "better": 1, "matchers": [{"string": "Добавляет от # до # урона от холода к атакам"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage_to_attacks"], "explicit": ["explicit.stat_4067062424"], "implicit": ["implicit.stat_4067062424"], "fractured": ["fractured.stat_4067062424"], "crafted": ["crafted.stat_4067062424"]}}}
|
||||
{"ref": "Adds # to # Cold Damage to Spells", "better": 1, "matchers": [{"string": "Добавляет от # до # урона от холода к чарам"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_cold_damage_to_spells"], "explicit": ["explicit.stat_2469416729"], "implicit": ["implicit.stat_2469416729"], "fractured": ["fractured.stat_2469416729"], "scourge": ["scourge.stat_2469416729"], "crafted": ["crafted.stat_2469416729"]}}}
|
||||
{"ref": "Adds # to # Damage", "better": 1, "matchers": [{"string": "Добавляет от # до # урона "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage"]}}}
|
||||
{"ref": "Adds # to # Damage to Attacks", "better": 1, "matchers": [{"string": "Добавляет от # до # урона к атакам "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage_to_attacks"]}}}
|
||||
{"ref": "Adds # to # Damage to Spells", "better": 1, "matchers": [{"string": "Добавляет от # до # урона к чарам "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_damage_to_spells"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage", "better": 1, "matchers": [{"string": "Добавляет от # до # урона от стихий "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage to Attacks", "better": 1, "matchers": [{"string": "Добавляет от # до # урона от стихий к атакам "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage_to_attacks"]}}}
|
||||
{"ref": "Adds # to # Elemental Damage to Spells", "better": 1, "matchers": [{"string": "Добавляет от # до # урона от стихий к чарам "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_elemental_damage_to_spells"]}}}
|
||||
{"ref": "Adds # to # Fire Damage", "better": 1, "matchers": [{"string": "Добавляет от # до # урона от огня"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage"], "explicit": ["explicit.stat_321077055", "explicit.stat_709508406"], "implicit": ["implicit.stat_321077055", "implicit.stat_709508406"], "fractured": ["fractured.stat_321077055", "fractured.stat_709508406"], "enchant": ["enchant.stat_709508406"], "scourge": ["scourge.stat_709508406"], "crafted": ["crafted.stat_321077055", "crafted.stat_709508406"]}}}
|
||||
{"ref": "Adds # to # Fire Damage to Attacks", "better": 1, "matchers": [{"string": "Добавляет от # до # урона от огня к атакам"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage_to_attacks"], "explicit": ["explicit.stat_1573130764"], "implicit": ["implicit.stat_1573130764"], "fractured": ["fractured.stat_1573130764"], "crafted": ["crafted.stat_1573130764"]}}}
|
||||
{"ref": "Adds # to # Fire Damage to Spells", "better": 1, "matchers": [{"string": "Добавляет от # до # урона от огня к чарам"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_fire_damage_to_spells"], "explicit": ["explicit.stat_1133016593"], "implicit": ["implicit.stat_1133016593"], "fractured": ["fractured.stat_1133016593"], "scourge": ["scourge.stat_1133016593"], "crafted": ["crafted.stat_1133016593"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage", "better": 1, "matchers": [{"string": "Добавляет от # до # урона от молнии"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage"], "explicit": ["explicit.stat_1334060246", "explicit.stat_3336890334"], "implicit": ["implicit.stat_1334060246", "implicit.stat_3336890334"], "fractured": ["fractured.stat_1334060246", "fractured.stat_3336890334"], "enchant": ["enchant.stat_3336890334"], "scourge": ["scourge.stat_3336890334"], "crafted": ["crafted.stat_1334060246", "crafted.stat_3336890334"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage to Attacks", "better": 1, "matchers": [{"string": "Добавляет от # до # урона от молнии к атакам"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage_to_attacks"], "explicit": ["explicit.stat_1754445556"], "implicit": ["implicit.stat_1754445556"], "fractured": ["fractured.stat_1754445556"], "crafted": ["crafted.stat_1754445556"]}}}
|
||||
{"ref": "Adds # to # Lightning Damage to Spells", "better": 1, "matchers": [{"string": "Добавляет от # до # урона от молнии к чарам"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_lightning_damage_to_spells"], "explicit": ["explicit.stat_2831165374"], "implicit": ["implicit.stat_2831165374"], "fractured": ["fractured.stat_2831165374"], "scourge": ["scourge.stat_2831165374"], "crafted": ["crafted.stat_2831165374"]}}}
|
||||
{"ref": "Adds # to # Physical Damage", "better": 1, "matchers": [{"string": "Добавляет от # до # физического урона"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage"], "explicit": ["explicit.stat_1940865751", "explicit.stat_960081730"], "implicit": ["implicit.stat_1940865751"], "fractured": ["fractured.stat_1940865751", "fractured.stat_960081730"], "scourge": ["scourge.stat_1940865751"], "crafted": ["crafted.stat_1940865751"]}}}
|
||||
{"ref": "Adds # to # Physical Damage to Attacks", "better": 1, "matchers": [{"string": "Добавляет от # до # физического урона к атакам"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage_to_attacks"], "explicit": ["explicit.stat_3032590688"], "implicit": ["implicit.stat_3032590688"], "fractured": ["fractured.stat_3032590688"], "crafted": ["crafted.stat_3032590688"]}}}
|
||||
{"ref": "Adds # to # Physical Damage to Spells", "better": 1, "matchers": [{"string": "Добавляет от # до # физического урона к чарам"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_adds_physical_damage_to_spells"], "explicit": ["explicit.stat_2435536961"], "implicit": ["implicit.stat_2435536961"], "fractured": ["fractured.stat_2435536961"], "scourge": ["scourge.stat_2435536961"]}}}
|
||||
{"ref": "Has # Influences", "better": 1, "matchers": [{"string": "Имеет # влияний "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_influence_count"]}}}
|
||||
{"ref": "Has Crusader Influence", "better": 1, "matchers": [{"string": "Имеет влияние Крестоносца "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_crusader_influence"]}}}
|
||||
{"ref": "Has Elder Influence", "better": 1, "matchers": [{"string": "Имеет влияние Древнего "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_elder_influence"]}}}
|
||||
{"ref": "Has Hunter Influence", "better": 1, "matchers": [{"string": "Имеет влияние Охотника "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_hunter_influence"]}}}
|
||||
{"ref": "Has Logbook Area: Battleground Graves", "better": 1, "matchers": [{"string": "Содержит область журнала: Захоронение на поле боя "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_battleground_graves"]}}}
|
||||
{"ref": "Has Logbook Area: Bluffs", "better": 1, "matchers": [{"string": "Содержит область журнала: Откосы "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_bluffs"]}}}
|
||||
{"ref": "Has Logbook Area: Cemetery", "better": 1, "matchers": [{"string": "Содержит область журнала: Погост "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_cemetery"]}}}
|
||||
{"ref": "Has Logbook Area: Desert Ruins", "better": 1, "matchers": [{"string": "Содержит область журнала: Пустынные руины "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_desert_ruins"]}}}
|
||||
{"ref": "Has Logbook Area: Dried Riverbed", "better": 1, "matchers": [{"string": "Содержит область журнала: Высохшее русло "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_dried_riverbed"]}}}
|
||||
{"ref": "Has Logbook Area: Forest Ruins", "better": 1, "matchers": [{"string": "Содержит область журнала: Развалины в лесу "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_forest_ruins"]}}}
|
||||
{"ref": "Has Logbook Area: Karui Wargraves", "better": 1, "matchers": [{"string": "Содержит область журнала: Могилы воинов каруи "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_karui_wargraves"]}}}
|
||||
{"ref": "Has Logbook Area: Mountainside", "better": 1, "matchers": [{"string": "Содержит область журнала: Горный склон "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_mountainside"]}}}
|
||||
{"ref": "Has Logbook Area: Rotting Temple", "better": 1, "matchers": [{"string": "Содержит область журнала: Гниющий храм "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_rotting_temple"]}}}
|
||||
{"ref": "Has Logbook Area: Sarn Slums", "better": 1, "matchers": [{"string": "Содержит область журнала: Трущобы Сарна "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_sarn_slums"]}}}
|
||||
{"ref": "Has Logbook Area: Scrublands", "better": 1, "matchers": [{"string": "Содержит область журнала: Заросли кустарника "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_scrublands"]}}}
|
||||
{"ref": "Has Logbook Area: Shipwreck Reef", "better": 1, "matchers": [{"string": "Содержит область журнала: Риф разбитых кораблей "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_shipwreck_reef"]}}}
|
||||
{"ref": "Has Logbook Area: Utzaal Outskirts", "better": 1, "matchers": [{"string": "Содержит область журнала: Окраины Утцааля "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_utzaal_outskirts"]}}}
|
||||
{"ref": "Has Logbook Area: Vaal Temple", "better": 1, "matchers": [{"string": "Содержит область журнала: Храм ваал "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_vaal_temple"]}}}
|
||||
{"ref": "Has Logbook Area: Volcanic Island", "better": 1, "matchers": [{"string": "Содержит область журнала: Вулканический остров "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_area_volcano"]}}}
|
||||
{"ref": "Has Logbook Faction: Black Scythe Mercenaries", "better": 0, "matchers": [{"string": "Наёмники Чёрной косы"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_mercenaries"]}}}
|
||||
{"ref": "Has Logbook Faction: Druids of the Broken Circle", "better": 0, "matchers": [{"string": "Друиды Разомкнутого круга"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_druids"]}}}
|
||||
{"ref": "Has Logbook Faction: Knights of the Sun", "better": 0, "matchers": [{"string": "Рыцари Солнца"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_knights"]}}}
|
||||
{"ref": "Has Logbook Faction: Order of the Chalice", "better": 0, "matchers": [{"string": "Орден Чаши"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_logbook_faction_order"]}}}
|
||||
{"ref": "Has Redeemer Influence", "better": 1, "matchers": [{"string": "Имеет влияние Избавительницы "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_redeemer_influence"]}}}
|
||||
{"ref": "Has Room: Antechamber", "better": 0, "matchers": [{"string": "Прихожая"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_antechamber"]}, "option": true}}
|
||||
{"ref": "Has Room: Apex of Ascension (Tier 3)", "better": 0, "matchers": [{"string": "Пик вознесения (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Apex of Atzoatl", "better": 0, "matchers": [{"string": "Вершина Ацоатля"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_apex"]}, "option": true}}
|
||||
{"ref": "Has Room: Arena of Valour (Tier 2)", "better": 0, "matchers": [{"string": "Арена доблести (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Armourer's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Мастерская оружейника (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Armoury (Tier 2)", "better": 0, "matchers": [{"string": "Оружейная (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Atlas of Worlds (Tier 3)", "better": 0, "matchers": [{"string": "Атлас миров (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Automaton Lab (Tier 2)", "better": 0, "matchers": [{"string": "Лаборатория автоматов (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Banquet Hall", "better": 0, "matchers": [{"string": "Зал пиршеств"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_banquet_hall"]}, "option": true}}
|
||||
{"ref": "Has Room: Barracks (Tier 2)", "better": 0, "matchers": [{"string": "Казармы (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Breach Containment Chamber (Tier 2)", "better": 0, "matchers": [{"string": "Изолятор разломов (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Catalyst of Corruption (Tier 2)", "better": 0, "matchers": [{"string": "Ускоритель осквернения (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Cellar", "better": 0, "matchers": [{"string": "Подвал"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cellar"]}, "option": true}}
|
||||
{"ref": "Has Room: Chamber of Iron (Tier 3)", "better": 0, "matchers": [{"string": "Железный зал (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_armour_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Chasm", "better": 0, "matchers": [{"string": "Расселина"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chasm_room"]}, "option": true}}
|
||||
{"ref": "Has Room: Cloister", "better": 0, "matchers": [{"string": "Галерея"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cloister"]}, "option": true}}
|
||||
{"ref": "Has Room: Conduit of Lightning (Tier 3)", "better": 0, "matchers": [{"string": "Проводник молний (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Corruption Chamber (Tier 1)", "better": 0, "matchers": [{"string": "Зал осквернения (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Court of Sealed Death (Tier 3)", "better": 0, "matchers": [{"string": "Двор запечатанной смерти (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Crucible of Flame (Tier 3)", "better": 0, "matchers": [{"string": "Тигель пламени (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Cultivar Chamber (Tier 2)", "better": 0, "matchers": [{"string": "Зал культивации (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Defense Research Lab (Tier 3)", "better": 0, "matchers": [{"string": "Оборонная лаборатория (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Demolition Lab (Tier 2)", "better": 0, "matchers": [{"string": "Лаборатория сноса (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Department of Thaumaturgy (Tier 2)", "better": 0, "matchers": [{"string": "Отдел волшебства (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Doryani's Institute (Tier 3)", "better": 0, "matchers": [{"string": "Аудитория Дориани (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Engineering Department (Tier 2)", "better": 0, "matchers": [{"string": "Отдел механики (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Explosives Room (Tier 1)", "better": 0, "matchers": [{"string": "Комната взрывчатки (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Factory (Tier 3)", "better": 0, "matchers": [{"string": "Фабрика (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Flame Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Мастерская огней (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Gemcutter's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Мастерская камнереза (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_gem_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Glittering Halls (Tier 3)", "better": 0, "matchers": [{"string": "Сверкающие залы (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Guardhouse (Tier 1)", "better": 0, "matchers": [{"string": "Караульная (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Champions (Tier 3)", "better": 0, "matchers": [{"string": "Зал заступников (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Heroes (Tier 2)", "better": 0, "matchers": [{"string": "Зал героев (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Legends (Tier 3)", "better": 0, "matchers": [{"string": "Зал легенд (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Locks (Tier 2)", "better": 0, "matchers": [{"string": "Зал замков (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Lords (Tier 2)", "better": 0, "matchers": [{"string": "Покои владык (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Mettle (Tier 1)", "better": 0, "matchers": [{"string": "Зал храбрецов (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_legion_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of Offerings (Tier 2)", "better": 0, "matchers": [{"string": "Зал подношений (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hall of War (Tier 3)", "better": 0, "matchers": [{"string": "Зал войны (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breeding_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Halls", "better": 0, "matchers": [{"string": "Коридоры"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_halls"]}, "option": true}}
|
||||
{"ref": "Has Room: Hatchery (Tier 1)", "better": 0, "matchers": [{"string": "Питомник (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_1"]}, "option": true}}
|
||||
{"ref": "Has Room: House of the Others (Tier 3)", "better": 0, "matchers": [{"string": "Дом Иных (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Hurricane Engine (Tier 2)", "better": 0, "matchers": [{"string": "Механизм ураганов (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Hybridisation Chamber (Tier 3)", "better": 0, "matchers": [{"string": "Зал гибридизации (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_minions_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Jeweller's Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Мастерская ювелира (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Jewellery Forge (Tier 2)", "better": 0, "matchers": [{"string": "Горн ювелира (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trinket_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Lightning Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Мастерская гроз (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Locus of Corruption (Tier 3)", "better": 0, "matchers": [{"string": "Очаг осквернения (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_corruption_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Museum of Artefacts (Tier 3)", "better": 0, "matchers": [{"string": "Музей артефактов (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Office of Cartography (Tier 2)", "better": 0, "matchers": [{"string": "Кабинет картографии (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Omnitect Forge (Tier 2)", "better": 0, "matchers": [{"string": "Горн Всезодчего (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_fire_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Omnitect Reactor Plant (Tier 2)", "better": 0, "matchers": [{"string": "Реактор Всезодчего (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_boss_lightning_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Passageways", "better": 0, "matchers": [{"string": "Переходы"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_passageways"]}, "option": true}}
|
||||
{"ref": "Has Room: Pits", "better": 0, "matchers": [{"string": "Ямы"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_the_pits"]}, "option": true}}
|
||||
{"ref": "Has Room: Poison Garden (Tier 1)", "better": 0, "matchers": [{"string": "Ядовитый сад (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Pools of Restoration (Tier 1)", "better": 0, "matchers": [{"string": "Купели восстановления (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Royal Meeting Room (Tier 1)", "better": 0, "matchers": [{"string": "Царский зал аудиенций (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Sacrificial Chamber (Tier 1)", "better": 0, "matchers": [{"string": "Жертвенный зал (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_sacrifice_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Sadist's Den (Tier 3)", "better": 0, "matchers": [{"string": "Логово садиста (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Immortality (Tier 3)", "better": 0, "matchers": [{"string": "Святыня бессмертия (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Unity (Tier 2)", "better": 0, "matchers": [{"string": "Святилище единения (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Sanctum of Vitality (Tier 2)", "better": 0, "matchers": [{"string": "Святилище жизни (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_healing_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Shrine of Empowerment (Tier 1)", "better": 0, "matchers": [{"string": "Алтарь усиления (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Shrine of Unmaking (Tier 3)", "better": 0, "matchers": [{"string": "Обитель развоплощения (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_explosives_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Sparring Room (Tier 1)", "better": 0, "matchers": [{"string": "Тренировочная комната (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_weapon_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Splinter Research Lab (Tier 1)", "better": 0, "matchers": [{"string": "Лаборатория изучения осколков (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_breach_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Storage Room (Tier 1)", "better": 0, "matchers": [{"string": "Кладовая (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Storm of Corruption (Tier 3)", "better": 0, "matchers": [{"string": "Буря осквернения (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Strongbox Chamber (Tier 1)", "better": 0, "matchers": [{"string": "Запасник (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_strongbox_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Surveyor's Study (Tier 1)", "better": 0, "matchers": [{"string": "Кабинет топографа (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_cartography_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Tempest Generator (Tier 1)", "better": 0, "matchers": [{"string": "Генератор бурь (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_storm_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Temple Defense Workshop (Tier 2)", "better": 0, "matchers": [{"string": "Цех храмовой защиты (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Temple Nexus (Tier 3)", "better": 0, "matchers": [{"string": "Средоточие храма (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_empowering_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Throne of Atziri (Tier 3)", "better": 0, "matchers": [{"string": "Трон Атзири (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_queens_chambers_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Tombs", "better": 0, "matchers": [{"string": "Усыпальницы"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_tombs"]}, "option": true}}
|
||||
{"ref": "Has Room: Torment Cells (Tier 1)", "better": 0, "matchers": [{"string": "Клети мучений (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Torture Cages (Tier 2)", "better": 0, "matchers": [{"string": "Камеры пыток (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_torment_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Toxic Grove (Tier 3)", "better": 0, "matchers": [{"string": "Ядовитая роща (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_poison_room_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Trap Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Мастерская ловушек (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_trap_room_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Treasury (Tier 2)", "better": 0, "matchers": [{"string": "Сокровищница (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Tunnels", "better": 0, "matchers": [{"string": "Тоннели"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_tunnels"]}, "option": true}}
|
||||
{"ref": "Has Room: Vault (Tier 1)", "better": 0, "matchers": [{"string": "Хранилище (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_1"]}, "option": true}}
|
||||
{"ref": "Has Room: Warehouses (Tier 2)", "better": 0, "matchers": [{"string": "Склады (Уровень 2)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_chests_2"]}, "option": true}}
|
||||
{"ref": "Has Room: Wealth of the Vaal (Tier 3)", "better": 0, "matchers": [{"string": "Казна ваал (Уровень 3)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_currency_vault_3"]}, "option": true}}
|
||||
{"ref": "Has Room: Workshop (Tier 1)", "better": 0, "matchers": [{"string": "Мастерская (Уровень 1)"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_temple_workshop_1"]}, "option": true}}
|
||||
{"ref": "Has Shaper Influence", "better": 1, "matchers": [{"string": "Имеет влияние Создателя "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_shaper_influence"]}}}
|
||||
{"ref": "Has Warlord Influence", "better": 1, "matchers": [{"string": "Имеет влияние Вождя "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_has_warlord_influence"]}}}
|
||||
{"ref": "Mirrored Tablet has # Islands", "better": 1, "matchers": [{"string": "Зеркальная табличка имеет # островков "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_lake_number_of_islands"]}}}
|
||||
{"ref": "More Currency: #%", "better": 1, "matchers": [{"string": "Больше валюты: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_currency_drops"]}}}
|
||||
{"ref": "More Divination Cards: #%", "better": 1, "matchers": [{"string": "Больше гадальных карт: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_card_drops"]}}}
|
||||
{"ref": "More Maps: #%", "better": 1, "matchers": [{"string": "Больше карт: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_map_drops"]}}}
|
||||
{"ref": "More Scarabs: #%", "better": 1, "matchers": [{"string": "Больше скарабеев: #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_more_scarab_drops"]}}}
|
||||
{"ref": "Quality (Attack Modifiers): #%", "better": 1, "matchers": [{"string": "Качество (свойства атак): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_attack_quality"]}}}
|
||||
{"ref": "Quality (Attribute Modifiers): #%", "better": 1, "matchers": [{"string": "Качество (свойства характеристик): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_attribute_quality"]}}}
|
||||
{"ref": "Quality (Caster Modifiers): #%", "better": 1, "matchers": [{"string": "Качество (свойства чар): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_caster_quality"]}}}
|
||||
{"ref": "Quality (Critical Modifiers): #%", "better": 1, "matchers": [{"string": "Качество (свойства критического удара): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_critical_quality"]}}}
|
||||
{"ref": "Quality (Currency): #%", "better": 1, "matchers": [{"string": "Качество (валюта): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_currency"]}}}
|
||||
{"ref": "Quality (Defence Modifiers): #%", "better": 1, "matchers": [{"string": "Качество (свойства защиты): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_defense_quality"]}}}
|
||||
{"ref": "Quality (Divination Cards): #%", "better": 1, "matchers": [{"string": "Качество (гадальные карты): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_cards"]}}}
|
||||
{"ref": "Quality (Elemental Damage Modifiers): #%", "better": 1, "matchers": [{"string": "Качество (свойства стихийного урона): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_elemental_quality"]}}}
|
||||
{"ref": "Quality (Life and Mana Modifiers): #%", "better": 1, "matchers": [{"string": "Качество (свойства здоровья и маны): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_resource_quality"]}}}
|
||||
{"ref": "Quality (Pack Size): #%", "better": 1, "matchers": [{"string": "Качество (размер групп монстров): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_pack_size"]}}}
|
||||
{"ref": "Quality (Physical and Chaos Damage Modifiers): #%", "better": 1, "matchers": [{"string": "Качество (свойства физического урона и урона хаосом): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_physical_chaos_quality"]}}}
|
||||
{"ref": "Quality (Rarity): #%", "better": 1, "matchers": [{"string": "Качество (редкость): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_rarity"]}}}
|
||||
{"ref": "Quality (Resistance Modifiers): #%", "better": 1, "matchers": [{"string": "Качество (свойства сопротивлений): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_resistance_quality"]}}}
|
||||
{"ref": "Quality (Scarabs): #%", "better": 1, "matchers": [{"string": "Качество (скарабеи): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_map_quality_scarabs"]}}}
|
||||
{"ref": "Quality (Speed Modifiers): #%", "better": 1, "matchers": [{"string": "Качество (свойства скорости): #% "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_jewellery_speed_quality"]}}}
|
||||
{"ref": "Reflection of Abyss (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Бездны (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_38892"]}}}
|
||||
{"ref": "Reflection of Ambush (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Засады (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_48307"]}}}
|
||||
{"ref": "Reflection of Angling (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Рыбалки (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_40794"]}}}
|
||||
{"ref": "Reflection of Azurite (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Лазурита (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_40031"]}}}
|
||||
{"ref": "Reflection of Bestiary (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Бестиария (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_55569"]}}}
|
||||
{"ref": "Reflection of Breach (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Разлома (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62572"]}}}
|
||||
{"ref": "Reflection of Brutality (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Жестокости (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_29096"]}}}
|
||||
{"ref": "Reflection of Camaraderie (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Братства (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_35395"]}}}
|
||||
{"ref": "Reflection of Catalysis (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Катализа (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_57850"]}}}
|
||||
{"ref": "Reflection of Chaos (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Хаоса (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_50834"]}}}
|
||||
{"ref": "Reflection of Conflict (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Конфликта (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_1931"]}}}
|
||||
{"ref": "Reflection of Darkness (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Тьмы (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_34457"]}}}
|
||||
{"ref": "Reflection of Delirium (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Делириума (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_22138"]}}}
|
||||
{"ref": "Reflection of Delve (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Спуска (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_18737"]}}}
|
||||
{"ref": "Reflection of Demonfire (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Демонического пламени (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_28500"]}}}
|
||||
{"ref": "Reflection of Domination (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Господства (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_63412"]}}}
|
||||
{"ref": "Reflection of Entrapment (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Ловушек (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_44399"]}}}
|
||||
{"ref": "Reflection of Essence (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Сущности (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_49862"]}}}
|
||||
{"ref": "Reflection of Experimentation (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Экспериментов (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_55676"]}}}
|
||||
{"ref": "Reflection of Flame (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Пламени (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_42468"]}}}
|
||||
{"ref": "Reflection of Fractured Dimensions (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Расколотых измерений (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_49488"]}}}
|
||||
{"ref": "Reflection of Frost (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Мороза (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_38110"]}}}
|
||||
{"ref": "Reflection of Guilt (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Вины (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_25480"]}}}
|
||||
{"ref": "Reflection of Imprisonment (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Заточения (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_10363"]}}}
|
||||
{"ref": "Reflection of Kalandra (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Каландры (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_36591"]}}}
|
||||
{"ref": "Reflection of Legion (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Легиона (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_403"]}}}
|
||||
{"ref": "Reflection of Metamorph (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Метаморфа (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_3699"]}}}
|
||||
{"ref": "Reflection of Occultism (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Оккультизма (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_24451"]}}}
|
||||
{"ref": "Reflection of Paradise (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Рая (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_50846"]}}}
|
||||
{"ref": "Reflection of Perverted Faith (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Извращённой судьбы (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_27678"]}}}
|
||||
{"ref": "Reflection of Phaaryl (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Фаарила (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_7674"]}}}
|
||||
{"ref": "Reflection of Possession (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Одержимости (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_25049"]}}}
|
||||
{"ref": "Reflection of Power (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Силы (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_35950"]}}}
|
||||
{"ref": "Reflection of Scourge (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Нашествия (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62360"]}}}
|
||||
{"ref": "Reflection of Stasis (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Стазиса (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_32968"]}}}
|
||||
{"ref": "Reflection of Sulphite (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Сульфита (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_45086"]}}}
|
||||
{"ref": "Reflection of the Black Scythe (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Чёрной косы (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_9662"]}}}
|
||||
{"ref": "Reflection of the Breachlord (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Повелителя Разлома (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_62935"]}}}
|
||||
{"ref": "Reflection of the Broken Circle (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Разомкнутого круга (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_43128"]}}}
|
||||
{"ref": "Reflection of the Chalice (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Чаши (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_64561"]}}}
|
||||
{"ref": "Reflection of the Chasm (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Пропасти (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_57101"]}}}
|
||||
{"ref": "Reflection of the Dream (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Грёз (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_27117"]}}}
|
||||
{"ref": "Reflection of the Harbingers (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Предвестников (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_37203"]}}}
|
||||
{"ref": "Reflection of the Hunter (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Охотника (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_18816"]}}}
|
||||
{"ref": "Reflection of the Monolith (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Монолита (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_34796"]}}}
|
||||
{"ref": "Reflection of the Nightmare (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Кошмара (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_24232"]}}}
|
||||
{"ref": "Reflection of the Storm (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Шторма (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_2745"]}}}
|
||||
{"ref": "Reflection of the Sun (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Солнца (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_60034"]}}}
|
||||
{"ref": "Reflection of the Trove (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Сокровищ (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_46772"]}}}
|
||||
{"ref": "Reflection of the Wilderness (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Дикого края (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_29224"]}}}
|
||||
{"ref": "Reflection of Thralldom (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Рабства (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_26813"]}}}
|
||||
{"ref": "Reflection of Torment (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Мучений (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_53950"]}}}
|
||||
{"ref": "Reflection of Tyranny (Difficulty #)", "better": 1, "matchers": [{"string": "Отражение Тирании (Сложность #) "}], "trade": {"ids": {"pseudo": ["pseudo.lake_60981"]}}}
|
||||
32
renderer/public/.DS_Store/vendor/pseudo-stats/ru/pseudo_stats.ndjson
vendored
Normal file
32
renderer/public/.DS_Store/vendor/pseudo-stats/ru/pseudo_stats.ndjson
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
{"ref": "# Life Regenerated per Second", "better": 1, "matchers": [{"string": "Регенерация # здоровья в секунду "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life_regen"]}}}
|
||||
{"ref": "#% increased Burning Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от горения"}, {"string": "#% уменьшение урона от горения", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_burning_damage"], "explicit": ["explicit.stat_1175385867"], "implicit": ["implicit.stat_1175385867"], "fractured": ["fractured.stat_1175385867"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от холода"}, {"string": "#% уменьшение урона от холода", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_damage"], "explicit": ["explicit.stat_3291658075"], "implicit": ["implicit.stat_3291658075"], "fractured": ["fractured.stat_3291658075"], "scourge": ["scourge.stat_3291658075"], "crafted": ["crafted.stat_3291658075"]}}}
|
||||
{"ref": "#% increased Cold Spell Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от холода чарами "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_spell_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от стихий"}, {"string": "#% уменьшение урона от стихий", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage"], "explicit": ["explicit.stat_3141070085"], "implicit": ["implicit.stat_3141070085"], "fractured": ["fractured.stat_3141070085"], "enchant": ["enchant.stat_692420067"], "scourge": ["scourge.stat_3141070085"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attack Skills", "better": 1, "matchers": [{"string": "#% увеличение урона от стихий от умений атак"}, {"string": "#% уменьшение урона от стихий от умений атак", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_elemental_damage_with_attack_skills"], "explicit": ["explicit.stat_387439868"], "implicit": ["implicit.stat_387439868"], "fractured": ["fractured.stat_387439868"], "scourge": ["scourge.stat_387439868"], "crafted": ["crafted.stat_387439868"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от огня"}, {"string": "#% уменьшение урона от огня", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_damage"], "explicit": ["explicit.stat_3962278098"], "implicit": ["implicit.stat_3962278098"], "fractured": ["fractured.stat_3962278098"], "scourge": ["scourge.stat_3962278098"], "crafted": ["crafted.stat_3962278098"]}}}
|
||||
{"ref": "#% increased Fire Spell Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от огня чарами "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_spell_damage"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от молнии"}, {"string": "#% уменьшение урона от молнии", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_damage"], "explicit": ["explicit.stat_2231156303"], "implicit": ["implicit.stat_2231156303"], "fractured": ["fractured.stat_2231156303"], "scourge": ["scourge.stat_2231156303"], "crafted": ["crafted.stat_2231156303"]}}}
|
||||
{"ref": "#% increased Lightning Spell Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от молнии чарами "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_spell_damage"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "matchers": [{"string": "#% повышение скорости регенерации маны"}, {"string": "#% снижение скорости регенерации маны", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_mana_regen"], "explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "fractured": ["fractured.stat_789117908"], "scourge": ["scourge.stat_789117908"], "crafted": ["crafted.stat_789117908"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "matchers": [{"string": "#% повышение скорости передвижения"}, {"string": "#% снижение скорости передвижения", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_movement_speed"], "explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "fractured": ["fractured.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "scourge": ["scourge.stat_2250533757"], "crafted": ["crafted.stat_2250533757"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "matchers": [{"string": "#% увеличение урона от чар"}, {"string": "#% уменьшение урона от чар", "negate": true}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_spell_damage"], "explicit": ["explicit.stat_2974417149"], "implicit": ["implicit.stat_2974417149"], "fractured": ["fractured.stat_2974417149"], "enchant": ["enchant.stat_2974417149"], "scourge": ["scourge.stat_2974417149"], "crafted": ["crafted.stat_2974417149"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Life", "dp": true, "better": 1, "matchers": [{"string": "#% физического урона от атак похищается в виде здоровья"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_life"], "explicit": ["explicit.stat_3593843976", "explicit.stat_55876295"], "implicit": ["implicit.stat_3593843976", "implicit.stat_55876295"], "fractured": ["fractured.stat_3593843976", "fractured.stat_55876295"], "scourge": ["scourge.stat_3593843976"], "crafted": ["crafted.stat_3593843976", "crafted.stat_55876295"]}}}
|
||||
{"ref": "#% of Physical Attack Damage Leeched as Mana", "dp": true, "better": 1, "matchers": [{"string": "#% физического урона от атак похищается в виде маны"}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_physical_attack_damage_leeched_as_mana"], "explicit": ["explicit.stat_3237948413", "explicit.stat_669069897"], "implicit": ["implicit.stat_3237948413", "implicit.stat_669069897"], "fractured": ["fractured.stat_3237948413", "fractured.stat_669069897"], "enchant": ["enchant.stat_669069897"], "scourge": ["scourge.stat_3237948413"], "crafted": ["crafted.stat_3237948413", "crafted.stat_669069897"]}}}
|
||||
{"ref": "#% total increased Physical Damage", "better": 1, "matchers": [{"string": "Всего +#% к увеличению физического урона "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_physical_damage"]}}}
|
||||
{"ref": "+# total maximum Energy Shield", "better": 1, "matchers": [{"string": "Всего +# к максимуму энергетического щита "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_energy_shield"]}}}
|
||||
{"ref": "+# total maximum Life", "better": 1, "matchers": [{"string": "Всего +# к максимуму здоровья "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life"]}}}
|
||||
{"ref": "+# total maximum Mana", "better": 1, "matchers": [{"string": "Всего +# к максимуму маны "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_mana"]}}}
|
||||
{"ref": "+# total to all Attributes", "better": 1, "matchers": [{"string": "Всего +# ко всем характеристикам "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_attributes"]}}}
|
||||
{"ref": "+# total to Dexterity", "better": 1, "matchers": [{"string": "Всего +# к ловкости "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_dexterity"]}}}
|
||||
{"ref": "+# total to Intelligence", "better": 1, "matchers": [{"string": "Всего +# к интеллекту "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_intelligence"]}}}
|
||||
{"ref": "+# total to Strength", "better": 1, "matchers": [{"string": "Всего +# к силе "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_strength"]}}}
|
||||
{"ref": "+#% Global Critical Strike Chance", "better": 1, "matchers": [{"string": "Всего +#% к глобальному шансу критического удара "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_chance"]}}}
|
||||
{"ref": "+#% Global Critical Strike Multiplier", "better": 1, "matchers": [{"string": "Всего +#% к множителю критического удара "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_multiplier"]}}}
|
||||
{"ref": "+#% total Attack Speed", "better": 1, "matchers": [{"string": "Всего +#% к скорости атаки "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_attack_speed"]}}}
|
||||
{"ref": "+#% total Cast Speed", "better": 1, "matchers": [{"string": "Всего +#% к скорости сотворения чар "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cast_speed"]}}}
|
||||
{"ref": "+#% total Elemental Resistance", "better": 1, "matchers": [{"string": "Всего +#% сопротивления стихиям "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_elemental_resistance"]}}}
|
||||
{"ref": "+#% total to Chaos Resistance", "better": 1, "matchers": [{"string": "Всего +#% к сопротивлению хаосу "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_chaos_resistance"]}}}
|
||||
{"ref": "+#% total to Cold Resistance", "better": 1, "matchers": [{"string": "Всего +#% к сопротивлению холоду "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cold_resistance"]}}}
|
||||
{"ref": "+#% total to Fire Resistance", "better": 1, "matchers": [{"string": "Всего +#% к сопротивлению огню "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_fire_resistance"]}}}
|
||||
{"ref": "+#% total to Lightning Resistance", "better": 1, "matchers": [{"string": "Всего +#% к сопротивлению молнии "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_lightning_resistance"]}}}
|
||||
@@ -1,32 +1,333 @@
|
||||
{
|
||||
|
||||
"Add": "添加",
|
||||
"Retry": "重試",
|
||||
"Offline": "離線",
|
||||
"Online": "在線",
|
||||
"You": "你",
|
||||
"Browser": "瀏覧器",
|
||||
"Search": "搜尋",
|
||||
"min": "最小",
|
||||
"max": " 最大",
|
||||
"Restart required": "需要重啟",
|
||||
"Save": "保存",
|
||||
"Cancel": "取消",
|
||||
"Enabled": "啟用",
|
||||
"Disabled": "禁用",
|
||||
"No": "否",
|
||||
"Yes": "是",
|
||||
"Remove": "移除",
|
||||
"implicit": "固定",
|
||||
"explicit": "隨機",
|
||||
"enchant": "附魔",
|
||||
"crafted": "工藝",
|
||||
"fractured": "破裂",
|
||||
"scourge": "天災",
|
||||
"Not recognized modifier": "無法使用此詞綴",
|
||||
"Refresh": "刷新",
|
||||
"please_wait": "請稍候\u2026",
|
||||
"choose_file": "選擇文件",
|
||||
"app_is_ready": "已準備就緒並在後台運行",
|
||||
"reopen_settings": "按 {0} 以繼續編輯。",
|
||||
"seconds": "秒",
|
||||
"league": "聯盟",
|
||||
"realm": "區域",
|
||||
"realm_intl": "國際",
|
||||
"app": {
|
||||
"leagues_loading": "正在加載聯盟\u2026",
|
||||
"leagues_failed": "加載聯盟失敗",
|
||||
"leagues_failed_help": "確保該區域未進行維護。也嘗試點擊“瀏覽器”按鈕,可能需要在那裡完成 CAPTCHA 驗證。",
|
||||
"leagues_failed_help_alt": "價格檢查一個物品,並遵循那裡錯誤描述中的指示。",
|
||||
"thanks_3rd_party": "這個工具依賴於 {0} 和 {1},考慮支持它們",
|
||||
"toggle_browser_hint": "按 {0} 在瀏覽器和遊戲間切換。",
|
||||
"contact_me": "可在 PoE Discord 群組中聯繫我,",
|
||||
"version": "版本 {0}",
|
||||
"release_notes": "更新記錄",
|
||||
"report_bug": "在 GitHub 上報告錯誤",
|
||||
"quit": "退出"
|
||||
},
|
||||
"map.mods.heist": "劫盜",
|
||||
"map.mods.outdated": "過時",
|
||||
"Support development on": "支持開發"
|
||||
|
||||
}
|
||||
"map.mods.uber": "T17",
|
||||
"map.mods.outdated": "已過時",
|
||||
"Support development on": "支持開發於\u00A0",
|
||||
"Blighted": "枯疫",
|
||||
"Blight-ravaged": "枯疫肆虐",
|
||||
"Magic": "魔法",
|
||||
"Shaper": "塑者",
|
||||
"Elder": "尊師",
|
||||
"Crusader": "聖戰使者",
|
||||
"Hunter": "狩獵者",
|
||||
"Redeemer": "救贖者",
|
||||
"Warlord": "戰爭領主",
|
||||
"Superior": "卓越",
|
||||
"Anomalous": "異常",
|
||||
"Divergent": "分歧",
|
||||
"Phantasmal": "幻影",
|
||||
"item": {
|
||||
"prop_quality": "品質 {0}%",
|
||||
"base_percentile": "基礎百分位:{0}%",
|
||||
"armour": "護甲:{0}",
|
||||
"evasion_rating": "閃避值:{0}",
|
||||
"energy_shield": "能量護盾:{0}",
|
||||
"block": "格擋率:{0}%",
|
||||
"total_dps": "總 DPS:{0}",
|
||||
"physical_dps": "物理 DPS:{0}",
|
||||
"elemental_dps": "元素 DPS:{0}",
|
||||
"crit": "暴擊率:{0}%",
|
||||
"aps": "攻擊次數:{0}",
|
||||
"spirit": "精神:{0}",
|
||||
"has_empty_modifier": "1 個空的或已製作的修改詞綴",
|
||||
"has_empty_affix": "任何",
|
||||
"has_empty_prefix": "前綴",
|
||||
"has_empty_suffix": "後綴",
|
||||
"item_level": "物品等級:{0}",
|
||||
"stock": "庫存:{0}",
|
||||
"map_tier": "地圖階級:{0}",
|
||||
"area_level": "區域等級:{0}",
|
||||
"heist_wings_revealed": "已揭示翼數:{0}",
|
||||
"linked_sockets": "連接:{0}",
|
||||
"white_sockets": "白: {0}",
|
||||
"quality": "品質:{0}",
|
||||
"gem_level": "等級:{0}",
|
||||
"gem_sockets": "插槽:{0}",
|
||||
"rune_sockets": "插槽:{0}",
|
||||
"sentinel_charge": "充能:{0}",
|
||||
"find_in_stash": "在儲藏中尋找",
|
||||
"parse_error": "解析物品時發生錯誤",
|
||||
"parse_error_help": "這可能是一個錯誤,你可以在 GitHub 上報告。",
|
||||
"unknown": "未知物品",
|
||||
"unknown_help": "如果這個物品是在本聯盟中推出的,可能會在下一次應用程序更新中被支持。",
|
||||
"identification": "您正在嘗試價格檢查未鑑定的獨特物品,其基礎類型為“{0}”。是哪一個?",
|
||||
"open_on_wiki": "在 Wiki 上開啟物品",
|
||||
"open_on_poedb": "在 PoEDB 上開啟物品",
|
||||
"info": "物品信息",
|
||||
"corrupted": "已腐化",
|
||||
"not_corrupted": "未腐化",
|
||||
"mod_tier": "等級:{0}",
|
||||
"mod_rank": "排名:{0}",
|
||||
"mod_pseudo": "偽屬性",
|
||||
"mod_implicit": "隱性屬性",
|
||||
"mod_fractured": "裂隙",
|
||||
"mod_explicit": "顯性屬性",
|
||||
"mod_crafted": "已製作",
|
||||
"mod_scourge": "災厄",
|
||||
"unidentified": "未鉴定",
|
||||
"veiled": "笼罩",
|
||||
"foil_unique": "閃亮的獨特",
|
||||
"mirrored": "已镜像",
|
||||
"not_mirrored": "未镜像"
|
||||
},
|
||||
"item_category": {
|
||||
"prop": "類別:{0}",
|
||||
"map": "地圖",
|
||||
"jewel_abyss": "深淵珠寶",
|
||||
"accessory_amulet": "護符",
|
||||
"accessory_belt": "腰帶",
|
||||
"armour_chest": "身體護甲",
|
||||
"armour_boots": "靴子",
|
||||
"weapon_bow": "弓",
|
||||
"weapon_claw": "爪",
|
||||
"weapon_dagger": "匕首",
|
||||
"weapon_rod": "釣魚竿",
|
||||
"flask": "瓶子",
|
||||
"armour_gloves": "手套",
|
||||
"armour_helmet": "頭盔",
|
||||
"jewel": "珠寶",
|
||||
"weapon_oneaxe": "單手斧",
|
||||
"weapon_onemace": "單手錘",
|
||||
"weapon_onesword": "單手劍",
|
||||
"armour_quiver": "箭袋",
|
||||
"accessory_ring": "戒指",
|
||||
"weapon_runedagger": "符紋匕首",
|
||||
"weapon_sceptre": "權杖",
|
||||
"armour_shield": "盾牌",
|
||||
"weapon_staff": "法杖",
|
||||
"weapon_twoaxe": "雙手斧",
|
||||
"weapon_twomace": "雙手錘",
|
||||
"weapon_twosword": "雙手劍",
|
||||
"weapon_wand": "魔杖",
|
||||
"weapon_warstaff": "戰斗法杖",
|
||||
"jewel_cluster": "星团珠寶",
|
||||
"heistmission_blueprint": "劫盜藍圖",
|
||||
"heistmission_contract": "劫盜契約",
|
||||
"heistequipment_heisttool": "劫盜工具",
|
||||
"heistequipment_heistreward": "劫盜飾品",
|
||||
"heistequipment_heistweapon": "劫盜武器",
|
||||
"heistequipment_heistutility": "劫盜斗篷",
|
||||
"accessory_trinket": "飾品",
|
||||
"sanctum_relic": "聖殿遺物",
|
||||
"tincture": "色澤",
|
||||
"azmeri_charm": "阿茲麥麗符咒"
|
||||
},
|
||||
"filters": {
|
||||
"selected_some": "已選擇:{0}/{1},屬性",
|
||||
"selected_none": "忽略屬性",
|
||||
"hidden_toggle": "隱藏",
|
||||
"collapse": "折疊",
|
||||
"mods_toggle": "修改詞綴",
|
||||
"empty": "未找到相關屬性",
|
||||
"tier": "等級 {0}",
|
||||
"preset_pseudo": "偽屬性",
|
||||
"preset_base_item": "基礎物品",
|
||||
"hide_const_roll": "數值不是可變的",
|
||||
"hide_ele_dps": "元素傷害不是主要的 DPS 來源",
|
||||
"hide_phys_dps": "物理傷害不是主要的 DPS 來源",
|
||||
"hide_ele_res": "根據精確的元素抗性過濾不合理地提高價格",
|
||||
"hide_crafted_chaos": "沒有顯性詞綴的製作混沌抗性不存在價值",
|
||||
"hide_anointment": "買家可能會更改神佑",
|
||||
"hide_for_crafting": "僅在作為基礎物品價格檢查時選擇",
|
||||
"hide_empty_mod": "僅在物品有 6 個詞綴(其中 1 個已製作)或有 5 個詞綴時選擇",
|
||||
"tag_implicit": "隱性",
|
||||
"tag_fractured": "裂隙",
|
||||
"tag_crafted": "已製作",
|
||||
"tag_scourge": "災厄",
|
||||
"tag_enchant": "附魔",
|
||||
"tag_variant": "變體",
|
||||
"tag_corrupted": "腐化",
|
||||
"tag_synthesised": "合成",
|
||||
"tag_eldritch": "異界",
|
||||
"tag_pseudo": "偽屬性",
|
||||
"tag_explicit": "顯性",
|
||||
"tag_explicit_shaper": "塑者",
|
||||
"tag_explicit_elder": "尊師",
|
||||
"tag_explicit_crusader": "聖戰使者",
|
||||
"tag_explicit_hunter": "狩獵者",
|
||||
"tag_explicit_redeemer": "救贖者",
|
||||
"tag_explicit_warlord": "戰爭領主",
|
||||
"tag_explicit_delve": "采掘",
|
||||
"tag_explicit_veiled": "笼罩",
|
||||
"tag_explicit_incursion": "侵入"
|
||||
},
|
||||
"online_filter": {
|
||||
"offline_toggle": "離線 & 在線",
|
||||
"in_league_toggle": "在聯盟中",
|
||||
"listed_any_time": "上架時間:不限",
|
||||
"listed_1day": "1 天前",
|
||||
"listed_3days": "3 天前",
|
||||
"listed_1week": "1 週前",
|
||||
"listed_2weeks": "2 週前",
|
||||
"listed_1month": "1 個月前",
|
||||
"listed_2months": "2 個月前",
|
||||
"currency_any": "任意貨幣",
|
||||
"currency_only_chaos": "混沌石",
|
||||
"currency_only_div": "神聖石",
|
||||
"currency_chaos_div": "兩者皆可"
|
||||
},
|
||||
"widget": {
|
||||
"title": "小工具標題",
|
||||
"hide": "隱藏",
|
||||
"edit": "編輯",
|
||||
"move": "移動",
|
||||
"delete": "刪除"
|
||||
},
|
||||
"updates": {
|
||||
"maybe_outdated": "您的版本可能已過時",
|
||||
"latest": "您擁有最新版本",
|
||||
"error": "檢查更新時發生錯誤",
|
||||
"checking": "正在檢查更新",
|
||||
"downloading": "正在下載\u2026",
|
||||
"available": "更新可用:{0}",
|
||||
"never_checked": "上次檢查:從未",
|
||||
"last_checked": "上次檢查:{0}",
|
||||
"check_now": "立即檢查",
|
||||
"install_now": "立即安裝",
|
||||
"downloads_page": "開啟下載頁面",
|
||||
"installed_on_exit": "將在退出時自動安裝",
|
||||
"download_manually": "您可以從 GitHub 下載",
|
||||
"download_disabled": "您禁用了自動更新下載"
|
||||
},
|
||||
"widget_menu": {
|
||||
"add": "添加小工具\u2026",
|
||||
"always_show": "顯示活躍小工具的按鈕",
|
||||
"price_check": "價格檢查 (Ctrl + V)"
|
||||
},
|
||||
"stopwatch": {
|
||||
"name": "秒錶",
|
||||
"paused": "已暫停",
|
||||
"toggle_key": "開始和暫停",
|
||||
"reset_key": "重置"
|
||||
},
|
||||
"stash_search": {
|
||||
"enable_keys": "按鍵",
|
||||
"name": "儲藏搜尋",
|
||||
"search_text": "搜尋文字或正則表達式",
|
||||
"friendly_name": "友好名稱"
|
||||
},
|
||||
"image_strip": {
|
||||
"name": "圖像條"
|
||||
},
|
||||
"item_search": {
|
||||
"name": "物品搜尋",
|
||||
"input": "按名稱搜尋\u2026",
|
||||
"reset": "重置物品",
|
||||
"heist_target": "劫盜目標:",
|
||||
"target_gem": "技能寶石",
|
||||
"target_replica": "複製品",
|
||||
"too_many": "找到的物品過多,請更精確地輸入名稱。",
|
||||
"not_found": "未找到物品。",
|
||||
"ocr_gems_key": "執行技能寶石的 OCR"
|
||||
},
|
||||
"map_check": {
|
||||
"name": "地圖檢查",
|
||||
"has_outdated": "某些屬性的措辭已更改。檢查並在設置中更新危險地圖詞綴。(此消息將在移除所有過期屬性後隱藏)",
|
||||
"no_mods": "物品沒有詞綴。",
|
||||
"profile": "配置文件",
|
||||
"search_selected": "僅搜索選中的",
|
||||
"search_stat_col": "屬性(找到:{0})",
|
||||
"new_mods_icon": "顯示新詞綴圖標"
|
||||
},
|
||||
"trade_result": {
|
||||
"error": "交易網站請求失敗",
|
||||
"matched": "匹配:{0}",
|
||||
"trade": "交易",
|
||||
"price": "價格",
|
||||
"bulk": "大宗",
|
||||
"stock": "庫存",
|
||||
"fulfill": "完成",
|
||||
"listed": "上架",
|
||||
"seller": "賣家",
|
||||
"item_level": "物品等級",
|
||||
"gem_level": "等級",
|
||||
"quality": "品質",
|
||||
"base_item": "基礎物品",
|
||||
"graph_7d": "最近 7 天",
|
||||
"getting_price": "獲取價格 {0}",
|
||||
"getting_price_from": "來自 poe.ninja \u2026",
|
||||
"you_have": "您有",
|
||||
"stack": "堆疊"
|
||||
},
|
||||
"settings": {
|
||||
"title": "設置 - 流亡交易所 2",
|
||||
"language": "語言",
|
||||
"private_league": "或私密聯盟",
|
||||
"account_name": "賬戶名稱",
|
||||
"last_char_name": "最後角色名稱",
|
||||
"chat_cmd_add": "添加命令",
|
||||
"chat_cmd_send": "按下 Enter",
|
||||
"no_key": "未設置",
|
||||
"clear_hotkey": "可按 Backspace 清除快捷鍵",
|
||||
"overlay": "覆蓋層",
|
||||
"stash_scroll": "儲藏捲動",
|
||||
"delve_grid": "探索圖表格網",
|
||||
"window_title": "PoE 窗口標題",
|
||||
"thank_you": "應用程序開發感謝:",
|
||||
"hotkeys": "熱鍵",
|
||||
"chat": "聊天",
|
||||
"general": "一般",
|
||||
"debug": "調試",
|
||||
"about": "關於",
|
||||
"font_size": "字體大小",
|
||||
"overlay_bg": "當覆蓋層可點擊時的背景",
|
||||
"overlay_bg_none": "透明",
|
||||
"overlay_bg_focus_game": "點擊背景聚焦遊戲",
|
||||
"overlay_always_close": "總是完整關閉覆蓋層而不是隱藏",
|
||||
"poe_log_file": "PoE 日誌文件",
|
||||
"poe_cfg_file": "PoE 配置文件",
|
||||
"restore_clipboard": "恢復剪貼板",
|
||||
"show_overlay_ready": "當覆蓋層檢測到 PoE 窗口時顯示通知",
|
||||
"debug_hotkeys": "記錄所有按鍵"
|
||||
},
|
||||
"price_check": {
|
||||
"name": "價格檢查",
|
||||
"hotkey": "自動隱藏模式",
|
||||
"hotkey_locked": "開啟無需自動隱藏",
|
||||
"enable_browser": "啟用內置瀏覽器",
|
||||
"builtin_browser_warning": "我知道未來的版本可能會包含惡意代碼,可能會竊取我的 POESESSID。",
|
||||
"highlight_hint": "即使此設置關閉,您的物品也會被突出顯示",
|
||||
"show_seller": "顯示賣家",
|
||||
"fill_rolls": "填充屬性值",
|
||||
"fill_roll_exact": "精確值",
|
||||
"cursor_pos": "顯示記憶的光標位置",
|
||||
"extra_delay": "額外時間以防止虛假限制",
|
||||
"warn_expensive": "以下設置是在增加網站負載和便捷價格檢查/更準確搜索之間的折衷。",
|
||||
"accurate_collapsed": "在折疊的列表中顯示指示",
|
||||
"auto_search": "按下時自動搜尋",
|
||||
"select_stock": "始終選擇“庫存”過濾器",
|
||||
"show_prediction": "顯示價格預測",
|
||||
"remember_currency": "記住買方貨幣過濾器"
|
||||
},
|
||||
"poe2_new": {
|
||||
"beta_warning": "這是 POE2 的測試版,某些功能可能無法正常運作。",
|
||||
"beta_warning2": "如發現任何問題請回報。",
|
||||
"pseudo_note": "交易網站不支援偽屬性",
|
||||
"pseudo_note2": "物品可能會顯示比實際更高的價值",
|
||||
"parse_error": "由於某些原因,此物品的屬性無法解析。",
|
||||
"parse_error2": "可能包含尚未支援的詞綴。",
|
||||
"parse_error3": "(可能是來自 POE1 的新詞綴或修改後的措辭)",
|
||||
"bulk_exchange": "尚未實現大量交易匯率功能"
|
||||
}
|
||||
}
|
||||
@@ -101,5 +101,6 @@ export default {
|
||||
CHAT_GUILD: /^&(?:<(?<guild_tag>.+?)> )?(?<char_name>.+?): (?<body>.+)$/,
|
||||
CHAT_WHISPER_TO: /^@向 (?<char_name>.+?): (?<body>.+)$/,
|
||||
CHAT_WHISPER_FROM: /^@來自 (?:<(?<guild_tag>.+?)> )?(?<char_name>.+?): (?<body>.+)$/,
|
||||
CHAT_WEBTRADE_GEM: /^等級 (?<gem_lvl>\d+) (?<gem_qual>\d+)% (?<gem_name>.+)$/
|
||||
CHAT_WEBTRADE_GEM: /^等級 (?<gem_lvl>\d+) (?<gem_qual>\d+)% (?<gem_name>.+)$/,
|
||||
REQUIREMENTS: ''
|
||||
}
|
||||
|
||||
@@ -319,5 +319,15 @@
|
||||
"select_stock": "Always select \"Stock\" filter",
|
||||
"show_prediction": "Show price prediction",
|
||||
"remember_currency": "Remember the Buyout Currency filter"
|
||||
},
|
||||
"poe2_new": {
|
||||
"beta_warning": "This is in BETA for POE2, things will not work always as expected.",
|
||||
"beta_warning2": "Please report any issues.",
|
||||
"pseudo_note": "Pseudo mods not supported by trade site",
|
||||
"pseudo_note2": "Items may appear to be more valuable than they actually are",
|
||||
"parse_error": "For some reason this item's stats did not parse.",
|
||||
"parse_error2": "It likely has a mod that is not supported yet.",
|
||||
"parse_error3": "(Potentially new or changed wording from poe1)",
|
||||
"bulk_exchange": "Bulk exchange rates are not implemented yet"
|
||||
}
|
||||
}
|
||||
@@ -3007,6 +3007,7 @@
|
||||
{"name": "Grand Spectrum", "refName": "Grand Spectrum", "namespace": "UNIQUE", "unique": {"base": "Emerald"}}
|
||||
{"name": "Grand Spectrum", "refName": "Grand Spectrum", "namespace": "UNIQUE", "unique": {"base": "Ruby"}}
|
||||
{"name": "Grand Spectrum", "refName": "Grand Spectrum", "namespace": "UNIQUE", "unique": {"base": "Sapphire"}}
|
||||
{"name": "Heroic Tragedy", "refName": "Heroic Tragedy", "namespace": "UNIQUE", "unique": {"base": "Timeless Jewel"}}
|
||||
{"name": "Prism of Belief", "refName": "Prism of Belief", "namespace": "UNIQUE", "unique": {"base": "Diamond"}}
|
||||
{"name": "The Adorned", "refName": "The Adorned", "namespace": "UNIQUE", "unique": {"base": "Diamond"}}
|
||||
{"name": "Brain Rattler", "refName": "Brain Rattler", "namespace": "UNIQUE", "unique": {"base": "Studded Greatclub"}}
|
||||
@@ -3021,6 +3022,11 @@
|
||||
{"name": "Guiding Palm", "refName": "Guiding Palm", "namespace": "UNIQUE", "unique": {"base": "Shrine Sceptre"}}
|
||||
{"name": "Hoghunt", "refName": "Hoghunt", "namespace": "UNIQUE", "unique": {"base": "Felled Greatclub"}}
|
||||
{"name": "Hrimnor's Hymn", "refName": "Hrimnor's Hymn", "namespace": "UNIQUE", "unique": {"base": "Oak Greathammer"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "War Spear"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "Vampiric Blade"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "Charred Shortsword"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "Corroded Longsword"}}
|
||||
{"name": "INCOMPLETE", "refName": "INCOMPLETE", "namespace": "UNIQUE", "unique": {"base": "Rippled Greatsword"}}
|
||||
{"name": "Lifesprig", "refName": "Lifesprig", "namespace": "UNIQUE", "unique": {"base": "Attuned Wand"}}
|
||||
{"name": "Matsya", "refName": "Matsya", "namespace": "UNIQUE", "unique": {"base": "Crescent Quarterstaff"}}
|
||||
{"name": "Mist Whisper", "refName": "Mist Whisper", "namespace": "UNIQUE", "unique": {"base": "Makeshift Crossbow"}}
|
||||
|
||||
@@ -1,3 +1,33 @@
|
||||
{"ref": "+# total maximum Spirit", "better": 1, "id": "base_maximum_spirit", "matchers": [{"string": "# to maximum Spirit", "negate": false}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_spirit"]}}}
|
||||
{"ref": "# Life Regenerated per Second", "better": 1, "matchers": [{"string": "# Life Regenerated per Second "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life_regen"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "id": "cold_damage_+%", "matchers": [{"string": "#% increased Cold Damage", "negate": false}, {"string": "#% reduced Cold Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3291658075"], "pseudo": ["pseudo.pseudo_increased_cold_damage"]}}}
|
||||
{"ref": "#% increased Cold Spell Damage", "better": 1, "matchers": [{"string": "#% increased Cold Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_cold_spell_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "id": "elemental_damage_+%", "matchers": [{"string": "#% increased Elemental Damage", "negate": false}, {"string": "#% reduced Elemental Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3141070085"], "pseudo": ["pseudo.pseudo_increased_elemental_damage"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attacks", "better": 1, "id": "elemental_damage_with_attack_skills_+%", "matchers": [{"string": "#% increased Elemental Damage with Attacks", "negate": false}, {"string": "#% reduced Elemental Damage with Attacks", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_387439868"], "enchant": ["enchant.stat_387439868"], "rune": ["rune.stat_387439868"], "pseudo": ["pseudo.pseudo_increased_elemental_damage_with_attack_skills"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "id": "fire_damage_+%", "matchers": [{"string": "#% increased Fire Damage", "negate": false}, {"string": "#% reduced Fire Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3962278098"], "pseudo": ["pseudo.pseudo_increased_fire_damage"]}}}
|
||||
{"ref": "#% increased Fire Spell Damage", "better": 1, "matchers": [{"string": "#% increased Fire Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_fire_spell_damage"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "id": "lightning_damage_+%", "matchers": [{"string": "#% increased Lightning Damage", "negate": false}, {"string": "#% reduced Lightning Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2231156303"], "pseudo": ["pseudo.pseudo_increased_lightning_damage"]}}}
|
||||
{"ref": "#% increased Lightning Spell Damage", "better": 1, "matchers": [{"string": "#% increased Lightning Spell Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_lightning_spell_damage"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "id": "mana_regeneration_rate_+%", "matchers": [{"string": "#% increased Mana Regeneration Rate", "negate": false}, {"string": "#% reduced Mana Regeneration Rate", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "enchant": ["enchant.stat_789117908"], "rune": ["rune.stat_789117908"], "pseudo": ["pseudo.pseudo_increased_mana_regen"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "id": "base_movement_velocity_+%", "matchers": [{"string": "#% increased Movement Speed", "negate": false}, {"string": "#% reduced Movement Speed", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "sanctum": ["sanctum.stat_1416455556"], "pseudo": ["pseudo.pseudo_increased_movement_speed"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "id": "spell_damage_+%", "matchers": [{"string": "#% increased Spell Damage", "negate": false}, {"string": "#% reduced Spell Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2974417149"], "enchant": ["enchant.stat_2974417149"], "pseudo": ["pseudo.pseudo_increased_spell_damage"]}}}
|
||||
{"ref": "#% total increased Physical Damage", "better": 1, "matchers": [{"string": "#% total increased Physical Damage "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_increased_physical_damage"]}}}
|
||||
{"ref": "+# total maximum Energy Shield", "better": 1, "matchers": [{"string": "+# total maximum Energy Shield "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_energy_shield"]}}}
|
||||
{"ref": "+# total maximum Life", "better": 1, "matchers": [{"string": "+# total maximum Life "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_life"]}}}
|
||||
{"ref": "+# total maximum Mana", "better": 1, "matchers": [{"string": "+# total maximum Mana "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_mana"]}}}
|
||||
{"ref": "+# total to all Attributes", "better": 1, "matchers": [{"string": "+# total to all Attributes "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_all_attributes"]}}}
|
||||
{"ref": "+# total to Dexterity", "better": 1, "matchers": [{"string": "+# total to Dexterity "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_dexterity"]}}}
|
||||
{"ref": "+# total to Intelligence", "better": 1, "matchers": [{"string": "+# total to Intelligence "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_intelligence"]}}}
|
||||
{"ref": "+# total to Strength", "better": 1, "matchers": [{"string": "+# total to Strength "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_strength"]}}}
|
||||
{"ref": "+#% Global Critical Strike Chance", "better": 1, "matchers": [{"string": "+#% Global Critical Strike Chance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_chance"]}}}
|
||||
{"ref": "+#% Global Critical Strike Multiplier", "better": 1, "matchers": [{"string": "+#% Global Critical Strike Multiplier "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_global_critical_strike_multiplier"]}}}
|
||||
{"ref": "+#% total Attack Speed", "better": 1, "matchers": [{"string": "+#% total Attack Speed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_attack_speed"]}}}
|
||||
{"ref": "+#% total Cast Speed", "better": 1, "matchers": [{"string": "+#% total Cast Speed "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cast_speed"]}}}
|
||||
{"ref": "+#% total Elemental Resistance", "better": 1, "matchers": [{"string": "+#% total Elemental Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_elemental_resistance"]}}}
|
||||
{"ref": "+#% total to Chaos Resistance", "better": 1, "matchers": [{"string": "+#% total to Chaos Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_chaos_resistance"]}}}
|
||||
{"ref": "+#% total to Cold Resistance", "better": 1, "matchers": [{"string": "+#% total to Cold Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_cold_resistance"]}}}
|
||||
{"ref": "+#% total to Fire Resistance", "better": 1, "matchers": [{"string": "+#% total to Fire Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_fire_resistance"]}}}
|
||||
{"ref": "+#% total to Lightning Resistance", "better": 1, "matchers": [{"string": "+#% total to Lightning Resistance "}], "trade": {"ids": {"pseudo": ["pseudo.pseudo_total_lightning_resistance"]}}}
|
||||
{"ref": "+# to Strength", "better": 1, "id": "additional_strength", "matchers": [{"string": "# to Strength", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_4080418644"], "implicit": ["implicit.stat_4080418644"], "enchant": ["enchant.stat_4080418644"]}}}
|
||||
{"ref": "+# to Dexterity", "better": 1, "id": "additional_dexterity", "matchers": [{"string": "# to Dexterity", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_3261801346"], "implicit": ["implicit.stat_3261801346"], "enchant": ["enchant.stat_3261801346"]}}}
|
||||
{"ref": "+# to Intelligence", "better": 1, "id": "additional_intelligence", "matchers": [{"string": "# to Intelligence", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_328541901"], "implicit": ["implicit.stat_328541901"], "enchant": ["enchant.stat_328541901"]}}}
|
||||
@@ -29,7 +59,6 @@
|
||||
{"ref": "#% increased Evasion and Energy Shield", "better": 1, "id": "local_evasion_and_energy_shield_+%", "matchers": [{"string": "#% increased Evasion and Energy Shield", "negate": false}, {"string": "#% reduced Evasion and Energy Shield", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1999113824"], "enchant": ["enchant.stat_1999113824"]}}}
|
||||
{"ref": "#% increased Attribute Requirements", "better": 1, "id": "local_attribute_requirements_+%", "matchers": [{"string": "#% increased Attribute Requirements", "negate": false}, {"string": "#% reduced Attribute Requirements", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3639275092"], "enchant": ["enchant.stat_3639275092"]}}}
|
||||
{"ref": "+# to Stun Threshold", "better": 1, "id": "stun_threshold_+", "matchers": [{"string": "# to Stun Threshold", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_915769802"], "rune": ["rune.stat_915769802"]}}}
|
||||
{"ref": "#% increased Movement Speed", "better": 1, "id": "base_movement_velocity_+%", "matchers": [{"string": "#% increased Movement Speed", "negate": false}, {"string": "#% reduced Movement Speed", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2250533757"], "implicit": ["implicit.stat_2250533757"], "enchant": ["enchant.stat_2250533757"], "sanctum": ["sanctum.stat_1416455556"]}}}
|
||||
{"ref": "# to # Physical Thorns damage", "better": 1, "id": "thorns_minimum_base_physical_damage", "matchers": [{"string": "# to # Physical Thorns damage", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_2881298780"]}}}
|
||||
{"ref": "Adds # to # Physical Damage to Attacks", "better": 1, "id": "attack_minimum_added_physical_damage", "matchers": [{"string": "Adds # to # Physical Damage to Attacks", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_3032590688"], "implicit": ["implicit.stat_3032590688"]}}}
|
||||
{"ref": "Adds # to # Fire damage to Attacks", "better": 1, "id": "attack_minimum_added_fire_damage", "matchers": [{"string": "Adds # to # Fire damage to Attacks", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_1573130764"], "implicit": ["implicit.stat_1573130764"]}}}
|
||||
@@ -45,10 +74,6 @@
|
||||
{"ref": "Allies in your Presence deal # to # additional Attack Lightning Damage", "better": 1, "id": "allies_in_presence_attack_minimum_added_lightning_damage", "matchers": [{"string": "Allies in your Presence deal # to # additional Attack Lightning Damage", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_2854751904"]}}}
|
||||
{"ref": "No Physical Damage", "better": 1, "id": "local_physical_damage_+%", "matchers": [{"string": "No Physical Damage", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "Allies in your Presence deal #% increased Damage", "better": 1, "id": "allies_in_presence_damage_+%", "matchers": [{"string": "Allies in your Presence deal #% increased Damage", "negate": false}, {"string": "Allies in your Presence deal #% reduced Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1798257884"], "enchant": ["enchant.stat_1798257884"]}}}
|
||||
{"ref": "#% increased Spell Damage", "better": 1, "id": "spell_damage_+%", "matchers": [{"string": "#% increased Spell Damage", "negate": false}, {"string": "#% reduced Spell Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2974417149"], "enchant": ["enchant.stat_2974417149"]}}}
|
||||
{"ref": "#% increased Fire Damage", "better": 1, "id": "fire_damage_+%", "matchers": [{"string": "#% increased Fire Damage", "negate": false}, {"string": "#% reduced Fire Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3962278098"]}}}
|
||||
{"ref": "#% increased Cold Damage", "better": 1, "id": "cold_damage_+%", "matchers": [{"string": "#% increased Cold Damage", "negate": false}, {"string": "#% reduced Cold Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3291658075"]}}}
|
||||
{"ref": "#% increased Lightning Damage", "better": 1, "id": "lightning_damage_+%", "matchers": [{"string": "#% increased Lightning Damage", "negate": false}, {"string": "#% reduced Lightning Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2231156303"]}}}
|
||||
{"ref": "#% increased Chaos Damage", "better": 1, "id": "chaos_damage_+%", "matchers": [{"string": "#% increased Chaos Damage", "negate": false}, {"string": "#% reduced Chaos Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_736967255"]}}}
|
||||
{"ref": "#% increased Spell Physical Damage", "better": 1, "id": "spell_physical_damage_+%", "matchers": [{"string": "#% increased Spell Physical Damage", "negate": false}, {"string": "#% reduced Spell Physical Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2768835289"]}}}
|
||||
{"ref": "#% increased Trap Damage", "better": 1, "id": "trap_damage_+%", "matchers": [{"string": "#% increased Trap Damage", "negate": false}, {"string": "#% reduced Trap Damage", "negate": true}], "trade": {"ids": null}}
|
||||
@@ -64,7 +89,6 @@
|
||||
{"ref": "+# to Level of all Projectile Skills", "better": 1, "id": "projectile_skill_gem_level_+", "matchers": [{"string": "# to Level of all Projectile Skills", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_1202301673"]}}}
|
||||
{"ref": "# Life Regeneration per second", "better": 1, "id": "base_life_regeneration_rate_per_minute", "matchers": [{"string": "# Life Regeneration per second", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_3325883026"], "implicit": ["implicit.stat_3325883026"]}}}
|
||||
{"ref": "Allies in your Presence Regenerate # Life per second", "better": 1, "id": "allies_in_presence_life_regeneration_rate_per_minute", "matchers": [{"string": "Allies in your Presence Regenerate # Life per second", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_4010677958"]}}}
|
||||
{"ref": "#% increased Mana Regeneration Rate", "better": 1, "id": "mana_regeneration_rate_+%", "matchers": [{"string": "#% increased Mana Regeneration Rate", "negate": false}, {"string": "#% reduced Mana Regeneration Rate", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_789117908"], "implicit": ["implicit.stat_789117908"], "enchant": ["enchant.stat_789117908"], "rune": ["rune.stat_789117908"]}}}
|
||||
{"ref": "Leech #% of Physical Attack Damage as Life", "better": 1, "id": "base_life_leech_from_physical_attack_damage_permyriad", "matchers": [{"string": "Leech #% of Physical Attack Damage as Life", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_2557965901"], "enchant": ["enchant.stat_2557965901"]}}}
|
||||
{"ref": "Leeches #% of Physical Damage as Life", "better": 1, "id": "local_life_leech_from_physical_damage_permyriad", "matchers": [{"string": "Leeches #% of Physical Damage as Life", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_55876295"], "rune": ["rune.stat_55876295"]}}}
|
||||
{"ref": "Leech #% of Physical Attack Damage as Mana", "better": 1, "id": "base_mana_leech_from_physical_attack_damage_permyriad", "matchers": [{"string": "Leech #% of Physical Attack Damage as Mana", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_707457662"], "enchant": ["enchant.stat_707457662"]}}}
|
||||
@@ -114,7 +138,7 @@
|
||||
{"ref": "+#% to all Maximum Elemental Resistances", "better": 1, "id": "additional_maximum_all_elemental_resistances_%", "matchers": [{"string": "#% to all Maximum Elemental Resistances", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_1978899297"], "implicit": ["implicit.stat_1978899297"], "enchant": ["enchant.stat_1978899297"]}}}
|
||||
{"ref": "#% increased Energy Shield Recharge Rate", "better": 1, "id": "energy_shield_recharge_rate_+%", "matchers": [{"string": "#% increased Energy Shield Recharge Rate", "negate": false}, {"string": "#% reduced Energy Shield Recharge Rate", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_2339757871"]}}}
|
||||
{"ref": "#% chance to Pierce an Enemy", "better": 1, "id": "base_chance_to_pierce_%", "matchers": [{"string": "#% chance to Pierce an Enemy", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_2321178454"], "implicit": ["implicit.stat_2321178454"], "enchant": ["enchant.stat_2321178454"]}}}
|
||||
{"ref": "Bow Attacks fire an additional Arrow", "better": 1, "id": "number_of_additional_arrows", "matchers": [{"string": "Bow Attacks fire an additional Arrow", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "Bow Attacks fire an additional Arrow", "better": 1, "id": "number_of_additional_arrows", "matchers": [{"string": "Bow Attacks fire an additional Arrow", "negate": false}, {"string": "Bow Attacks fire # additional Arrows", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_3885405204"], "implicit": ["implicit.stat_3885405204"], "enchant": ["enchant.stat_3885405204"]}}}
|
||||
{"ref": "Loads an additional bolt", "better": 1, "id": "base_number_of_crossbow_bolts", "matchers": [{"string": "Loads an additional bolt", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_1039380318"], "implicit": ["implicit.stat_1039380318"], "enchant": ["enchant.stat_1039380318"]}}}
|
||||
{"ref": "#% increased Flask Life Recovery rate", "better": 1, "id": "flask_life_recovery_rate_+%", "matchers": [{"string": "#% increased Flask Life Recovery rate", "negate": false}, {"string": "#% reduced Flask Life Recovery rate", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_51994685"]}}}
|
||||
{"ref": "#% increased Flask Mana Recovery rate", "better": 1, "id": "flask_mana_recovery_rate_+%", "matchers": [{"string": "#% increased Flask Mana Recovery rate", "negate": false}, {"string": "#% reduced Flask Mana Recovery rate", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1412217137"]}}}
|
||||
@@ -132,7 +156,6 @@
|
||||
{"ref": "#% of Damage taken Recouped as Mana", "better": 1, "id": "damage_taken_goes_to_mana_%", "matchers": [{"string": "#% of Damage taken Recouped as Mana", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_472520716"], "enchant": ["enchant.stat_472520716"]}}}
|
||||
{"ref": "#% increased Stun Duration", "better": 1, "id": "local_base_stun_duration_+%", "matchers": [{"string": "#% increased Stun Duration", "negate": false}, {"string": "#% reduced Stun Duration", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_748522257"]}}}
|
||||
{"ref": "Causes #% increased Stun Buildup", "better": 1, "id": "local_hit_damage_stun_multiplier_+%", "matchers": [{"string": "Causes #% increased Stun Buildup", "negate": false}, {"string": "Causes #% reduced Stun Buildup", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_791928121"], "implicit": ["implicit.stat_791928121"], "enchant": ["enchant.stat_791928121"], "rune": ["rune.stat_791928121"]}}}
|
||||
{"ref": "#% increased Elemental Damage with Attacks", "better": 1, "id": "elemental_damage_with_attack_skills_+%", "matchers": [{"string": "#% increased Elemental Damage with Attacks", "negate": false}, {"string": "#% reduced Elemental Damage with Attacks", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_387439868"], "enchant": ["enchant.stat_387439868"], "rune": ["rune.stat_387439868"]}}}
|
||||
{"ref": "Gain #% of Damage as Extra Fire Damage", "better": 1, "id": "non_skill_base_all_damage_%_to_gain_as_fire", "matchers": [{"string": "Gain #% of Damage as Extra Fire Damage", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_3015669065"]}}}
|
||||
{"ref": "Gain #% of Damage as Extra Cold Damage", "better": 1, "id": "non_skill_base_all_damage_%_to_gain_as_cold", "matchers": [{"string": "Gain #% of Damage as Extra Cold Damage", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_2505884597"]}}}
|
||||
{"ref": "Gain #% of Damage as Extra Lightning Damage", "better": 1, "id": "non_skill_base_all_damage_%_to_gain_as_lightning", "matchers": [{"string": "Gain #% of Damage as Extra Lightning Damage", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_3278136794"]}}}
|
||||
@@ -197,7 +220,7 @@
|
||||
{"ref": "Causes Enemies to Explode on Critical kill, for #% of their Life as Physical Damage", "better": 1, "id": "local_explode_on_kill_with_crit_%_physical_damage_to_deal", "matchers": [{"string": "Causes Enemies to Explode on Critical kill, for #% of their Life as Physical Damage", "negate": false}], "trade": {"ids": {"implicit": ["implicit.stat_1541903247"]}}}
|
||||
{"ref": "Crushes Enemies on Hit", "better": 1, "id": "local_crush_on_hit", "matchers": [{"string": "Crushes Enemies on Hit", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "#% chance to Maim on Hit", "better": 1, "id": "local_maim_on_hit_%", "matchers": [{"string": "#% chance to Maim on Hit", "negate": false}], "trade": {"ids": {"enchant": ["enchant.stat_2763429652"]}}}
|
||||
{"ref": "#% increased Projectile Speed when thrown", "better": 1, "id": "local_projectile_speed_+%", "matchers": [{"string": "#% increased Projectile Speed when thrown", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "#% increased Projectile Speed when thrown", "better": 1, "id": "local_projectile_speed_+%", "matchers": [{"string": "#% increased Projectile Speed when thrown", "negate": false}], "trade": {"ids": {"implicit": ["implicit.stat_535217483"]}}}
|
||||
{"ref": "Uses both hand slots", "better": 1, "id": "local_weapon_uses_both_hands", "matchers": [{"string": "Uses both hand slots", "negate": false}], "trade": {"ids": null}}
|
||||
{"ref": "#% chance to Blind Enemies on hit", "better": 1, "id": "local_chance_to_blind_on_hit_%", "matchers": [{"string": "#% chance to Blind Enemies on hit", "negate": false}], "trade": {"ids": {"enchant": ["enchant.stat_2301191210"]}}}
|
||||
{"ref": "#% chance to Poison on Hit", "better": 1, "id": "local_poison_on_hit_%", "matchers": [{"string": "#% chance to Poison on Hit", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_795138349"], "enchant": ["enchant.stat_3885634897"], "rune": ["rune.stat_3885634897"]}}}
|
||||
@@ -254,7 +277,6 @@
|
||||
{"ref": "#% increased Daze Buildup", "better": 1, "id": "daze_build_up_+%", "matchers": [{"string": "#% increased Daze Buildup", "negate": false}, {"string": "#% reduced Daze Buildup", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1949833742"]}}}
|
||||
{"ref": "Debuffs on you expire #% faster", "better": 1, "id": "debuff_time_passed_+%", "matchers": [{"string": "Debuffs on you expire #% faster", "negate": false}, {"string": "Debuffs on you expire #% slower", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1238227257"]}}}
|
||||
{"ref": "#% increased Duration of Ignite, Shock and Chill on Enemies", "better": 1, "id": "ignite_shock_chill_duration_+%", "matchers": [{"string": "#% increased Duration of Ignite, Shock and Chill on Enemies", "negate": false}, {"string": "#% reduced Duration of Ignite, Shock and Chill on Enemies", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1062710370"]}}}
|
||||
{"ref": "#% increased Elemental Damage", "better": 1, "id": "elemental_damage_+%", "matchers": [{"string": "#% increased Elemental Damage", "negate": false}, {"string": "#% reduced Elemental Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_3141070085"]}}}
|
||||
{"ref": "Empowered Attacks deal #% increased Damage", "better": 1, "id": "empowered_attack_damage_+%", "matchers": [{"string": "Empowered Attacks deal #% increased Damage", "negate": false}, {"string": "Empowered Attacks deal #% reduced Damage", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_1569101201"]}}}
|
||||
{"ref": "Meta Skills gain #% increased Energy", "better": 1, "id": "energy_generated_+%", "matchers": [{"string": "Meta Skills gain #% increased Energy", "negate": false}, {"string": "Meta Skills gain #% reduced Energy", "negate": true}], "trade": {"ids": {"explicit": ["explicit.stat_4236566306"], "enchant": ["enchant.stat_4236566306"]}}}
|
||||
{"ref": "Damaging Ailments deal damage #% faster", "better": 1, "id": "damaging_ailments_deal_damage_+%_faster", "matchers": [{"string": "Damaging Ailments deal damage #% faster", "negate": false}], "trade": {"ids": {"explicit": ["explicit.stat_538241406"]}}}
|
||||
|
||||
760
renderer/public/data/pseudo-pseudo-runes.json
Normal file
760
renderer/public/data/pseudo-pseudo-runes.json
Normal file
@@ -0,0 +1,760 @@
|
||||
{
|
||||
"pseudo.pseudo_total_elemental_resistance": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_resistance": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_2923486259",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_2923486259",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_2923486259",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_fire_resistance": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_cold_resistance": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"pseudo.pseudo_total_lightning_resistance": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"pseudo.pseudo_total_chaos_resistance": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_2923486259",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_2923486259",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_2923486259",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"pseudo.pseudo_total_all_attributes": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3261801346",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3261801346",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_3261801346",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_4080418644",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_4080418644",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_4080418644",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_328541901",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_328541901",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_328541901",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_dexterity": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3261801346",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3261801346",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_3261801346",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_strength": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_4080418644",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_4080418644",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_4080418644",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_intelligence": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_328541901",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_328541901",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_328541901",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_life": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3299347043",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3299347043",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_3299347043",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_mana": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_1050105434",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_1050105434",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_1050105434",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo_total_energy_shield": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_4052037485",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3489782002",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_3489782002",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"pseudo.pseudo_total_attack_speed": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_210067635",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_681332047",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_681332047",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_210067635",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_cast_speed": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_2891184298",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_2891184298",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_movement_speed": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_2250533757",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_2250533757",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "enchant.stat_2250533757",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_physical_damage": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_1509134228",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_1509134228",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_elemental_damage": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3141070085",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"disabled": false
|
||||
},
|
||||
"pseudo.pseudo_increased_fire_damage": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3962278098",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_3141070085",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_cold_damage": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3291658075",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_3141070085",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_lightning_damage": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_2231156303",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_3141070085",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_spell_damage": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_2974417149",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_fire_spell_damage": {
|
||||
"filters": [],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_cold_spell_damage": {
|
||||
"filters": [],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_lightning_spell_damage": {
|
||||
"filters": [],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_mana_regen": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_789117908",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_789117908",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_789117908",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight"
|
||||
}
|
||||
}
|
||||
620
renderer/public/data/pseudo-pseudo.json
Normal file
620
renderer/public/data/pseudo-pseudo.json
Normal file
@@ -0,0 +1,620 @@
|
||||
{
|
||||
"pseudo.pseudo_total_elemental_resistance": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_resistance": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_2923486259",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_2923486259",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_fire_resistance": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3372524247",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_cold_resistance": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_4220027924",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_lightning_resistance": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_1671376347",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_chaos_resistance": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_2923486259",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_2923486259",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_all_attributes": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3261801346",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3261801346",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_4080418644",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_4080418644",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_328541901",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_328541901",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_dexterity": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3261801346",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3261801346",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_strength": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_4080418644",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_4080418644",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_intelligence": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_328541901",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_328541901",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_life": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3299347043",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3299347043",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_mana": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_1050105434",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_1050105434",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo_total_energy_shield": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_4052037485",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3489782002",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_3489782002",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_attack_speed": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_210067635",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_681332047",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_681332047",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_cast_speed": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_2891184298",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_2891184298",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_movement_speed": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_2250533757",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_2250533757",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "enchant.stat_2250533757",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_physical_damage": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_1509134228",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "rune.stat_1509134228",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_elemental_damage": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3141070085",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_fire_damage": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3962278098",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_3141070085",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_cold_damage": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3291658075",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_3141070085",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_lightning_damage": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_2231156303",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "explicit.stat_3141070085",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_increased_mana_regen": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_789117908",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_789117908",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"pseudo.pseudo_total_spirit": {
|
||||
"filters": [
|
||||
{
|
||||
"id": "explicit.stat_3981240776",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
},
|
||||
{
|
||||
"id": "implicit.stat_3981240776",
|
||||
"value": {
|
||||
"weight": 1
|
||||
},
|
||||
"disabled": false
|
||||
}
|
||||
],
|
||||
"type": "weight",
|
||||
"value": {
|
||||
"min": 0
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2,6 +2,7 @@ import fnv1a from "@sindresorhus/fnv1a";
|
||||
import type {
|
||||
BaseType,
|
||||
DropEntry,
|
||||
PseudoIdToTradeRequest,
|
||||
Stat,
|
||||
StatMatcher,
|
||||
TranslationDict,
|
||||
@@ -13,6 +14,7 @@ export let ITEM_DROP: DropEntry[];
|
||||
export let CLIENT_STRINGS: TranslationDict;
|
||||
export let CLIENT_STRINGS_REF: TranslationDict;
|
||||
export let APP_PATRONS: Array<{ from: string; months: number; style: number }>;
|
||||
export let PSEUDO_ID_TO_TRADE_REQUEST: PseudoIdToTradeRequest;
|
||||
|
||||
export let ITEM_BY_TRANSLATED = (
|
||||
ns: BaseType["namespace"],
|
||||
@@ -239,6 +241,10 @@ export async function init(lang: string) {
|
||||
await fetch(`${import.meta.env.BASE_URL}data/patrons.json`)
|
||||
).json();
|
||||
|
||||
PSEUDO_ID_TO_TRADE_REQUEST = await (
|
||||
await fetch(`${import.meta.env.BASE_URL}data/pseudo-pseudo.json`)
|
||||
).json();
|
||||
|
||||
await loadForLang(lang);
|
||||
|
||||
let failed = false;
|
||||
@@ -252,8 +258,11 @@ export async function init(lang: string) {
|
||||
}
|
||||
}
|
||||
if (failed) {
|
||||
throw new Error(
|
||||
`Cannot find stat${missing.length > 1 ? "s" : ""}: ${missing.join("\n")}`,
|
||||
// throw new Error(
|
||||
// `Cannot find stat${missing.length > 1 ? "s" : ""}: ${missing.join("\n")}`,
|
||||
// );
|
||||
console.log(
|
||||
"Cannot find stat" + (missing.length > 1 ? "s" : "") + missing.join("\n"),
|
||||
);
|
||||
}
|
||||
DELAYED_STAT_VALIDATION.clear();
|
||||
|
||||
@@ -30,6 +30,7 @@ export interface Stat {
|
||||
[type: string]: string[];
|
||||
};
|
||||
};
|
||||
// isFakePseudo?: true;
|
||||
}
|
||||
|
||||
export interface DropEntry {
|
||||
@@ -185,3 +186,23 @@ export interface TranslationDict {
|
||||
CHAT_WHISPER_FROM: RegExp;
|
||||
CHAT_WEBTRADE_GEM: RegExp;
|
||||
}
|
||||
|
||||
export interface Filter {
|
||||
id: string;
|
||||
value: {
|
||||
weight: number;
|
||||
};
|
||||
disabled: boolean;
|
||||
}
|
||||
|
||||
export interface PseudoIdToTradeRequest {
|
||||
[id: string]: {
|
||||
filters: Filter[];
|
||||
type: "weight";
|
||||
value: {
|
||||
min?: number;
|
||||
max?: number;
|
||||
};
|
||||
disabled?: boolean;
|
||||
};
|
||||
}
|
||||
|
||||
323
renderer/src/parser/en/app_i18n.json
Normal file
323
renderer/src/parser/en/app_i18n.json
Normal file
@@ -0,0 +1,323 @@
|
||||
{
|
||||
"please_wait": "Please wait\u2026",
|
||||
"choose_file": "Choose File",
|
||||
"app_is_ready": "Is ready and running in background",
|
||||
"reopen_settings": "Press {0} to continue editing.",
|
||||
"seconds": "seconds",
|
||||
"league": "League",
|
||||
"realm": "Realm",
|
||||
"realm_intl": "International",
|
||||
"app": {
|
||||
"leagues_loading": "Loading leagues\u2026",
|
||||
"leagues_failed": "Failed to load leagues",
|
||||
"leagues_failed_help": "Make sure the realm is not under maintenance. Also try clicking on the \"Browser\" button, you may need to complete a CAPTCHA there.",
|
||||
"leagues_failed_help_alt": "Price check an Item, and follow the instructions in the error description there.",
|
||||
"thanks_3rd_party": "This tool relies on {0} and {1}, consider supporting them as well",
|
||||
"toggle_browser_hint": "Press {0} to switch between browser and game.",
|
||||
"contact_me": "Contact me on one of the PoE Discords,",
|
||||
"version": "Version {0}",
|
||||
"release_notes": "Release notes",
|
||||
"report_bug": "Report a bug on GitHub",
|
||||
"quit": "Quit"
|
||||
},
|
||||
"map.mods.heist": "heist",
|
||||
"map.mods.uber": "T17",
|
||||
"map.mods.outdated": "outdated",
|
||||
"Support development on": "Support development\u00A0on",
|
||||
"Blighted": "Blighted",
|
||||
"Blight-ravaged": "Blight-ravaged",
|
||||
"Magic": "Magic",
|
||||
"Shaper": "Shaper",
|
||||
"Elder": "Elder",
|
||||
"Crusader": "Crusader",
|
||||
"Hunter": "Hunter",
|
||||
"Redeemer": "Redeemer",
|
||||
"Warlord": "Warlord",
|
||||
"Superior": "Superior",
|
||||
"Anomalous": "Anomalous",
|
||||
"Divergent": "Divergent",
|
||||
"Phantasmal": "Phantasmal",
|
||||
"item": {
|
||||
"prop_quality": "Q {0}%",
|
||||
"base_percentile": "Base Percentile: {0}%",
|
||||
"armour": "Armour: {0}",
|
||||
"evasion_rating": "Evasion Rating: {0}",
|
||||
"energy_shield": "Energy Shield: {0}",
|
||||
"block": "Block: {0}%",
|
||||
"total_dps": "Total DPS: {0}",
|
||||
"physical_dps": "Physical DPS: {0}",
|
||||
"elemental_dps": "Elemental DPS: {0}",
|
||||
"crit": "Critical Strike Chance: {0}%",
|
||||
"aps": "Attacks per Second: {0}",
|
||||
"spirit": "Spirit: {0}",
|
||||
"has_empty_modifier": "1 Empty or Crafted Modifier",
|
||||
"has_empty_affix": "Any",
|
||||
"has_empty_prefix": "Prefix",
|
||||
"has_empty_suffix": "Suffix",
|
||||
"item_level": "Item Level: {0}",
|
||||
"stock": "Stock: {0}",
|
||||
"map_tier": "Map Tier: {0}",
|
||||
"area_level": "Area Level: {0}",
|
||||
"heist_wings_revealed": "Wings Revealed: {0}",
|
||||
"linked_sockets": "Links: {0}",
|
||||
"white_sockets": "White: {0}",
|
||||
"quality": "Quality: {0}",
|
||||
"gem_level": "Level: {0}",
|
||||
"gem_sockets": "Sockets: {0}",
|
||||
"rune_sockets": "Sockets: {0}",
|
||||
"sentinel_charge": "Charge: {0}",
|
||||
"find_in_stash": "Find in Stash",
|
||||
"parse_error": "An error occurred while parsing the item",
|
||||
"parse_error_help": "This is probably a bug and you can report it on GitHub.",
|
||||
"unknown": "Unknown Item",
|
||||
"unknown_help": "If this Item was introduced in this League, it will likely be supported in the next app update.",
|
||||
"identification": "You are trying to price check unidentified Unique item with base type \"{0}\". Which one?",
|
||||
"open_on_wiki": "Open item on wiki",
|
||||
"open_on_poedb": "Open item on PoEDB",
|
||||
"info": "Item info",
|
||||
"corrupted": "Corrupted",
|
||||
"not_corrupted": "Not Corrupted",
|
||||
"mod_tier": "Tier: {0}",
|
||||
"mod_rank": "Rank: {0}",
|
||||
"mod_pseudo": "Pseudo",
|
||||
"mod_implicit": "Implicit",
|
||||
"mod_fractured": "Fractured",
|
||||
"mod_explicit": "Explicit",
|
||||
"mod_crafted": "Crafted",
|
||||
"mod_scourge": "Scourge",
|
||||
"unidentified": "Unidentified",
|
||||
"veiled": "Veiled",
|
||||
"foil_unique": "Foil Unique",
|
||||
"mirrored": "Mirrored",
|
||||
"not_mirrored": "Not Mirrored"
|
||||
},
|
||||
"item_category": {
|
||||
"prop": "Category: {0}",
|
||||
"map": "Map",
|
||||
"jewel_abyss": "Abyss Jewel",
|
||||
"accessory_amulet": "Amulet",
|
||||
"accessory_belt": "Belt",
|
||||
"armour_chest": "Body Armour",
|
||||
"armour_boots": "Boots",
|
||||
"weapon_bow": "Bow",
|
||||
"weapon_claw": "Claw",
|
||||
"weapon_dagger": "Dagger",
|
||||
"weapon_rod": "Fishing Rod",
|
||||
"flask": "Flask",
|
||||
"armour_gloves": "Gloves",
|
||||
"armour_helmet": "Helmet",
|
||||
"jewel": "Jewel",
|
||||
"weapon_oneaxe": "One-Handed Axe",
|
||||
"weapon_onemace": "One-Handed Mace",
|
||||
"weapon_onesword": "One-Handed Sword",
|
||||
"armour_quiver": "Quiver",
|
||||
"accessory_ring": "Ring",
|
||||
"weapon_runedagger": "Rune Dagger",
|
||||
"weapon_sceptre": "Sceptre",
|
||||
"armour_shield": "Shield",
|
||||
"weapon_staff": "Staff",
|
||||
"weapon_twoaxe": "Two-Handed Axe",
|
||||
"weapon_twomace": "Two-Handed Mace",
|
||||
"weapon_twosword": "Two-Handed Sword",
|
||||
"weapon_wand": "Wand",
|
||||
"weapon_warstaff": "Warstaff",
|
||||
"jewel_cluster": "Cluster Jewel",
|
||||
"heistmission_blueprint": "Heist Blueprint",
|
||||
"heistmission_contract": "Heist Contract",
|
||||
"heistequipment_heisttool": "Heist Tool",
|
||||
"heistequipment_heistreward": "Heist Brooch",
|
||||
"heistequipment_heistweapon": "Heist Gear",
|
||||
"heistequipment_heistutility": "Heist Cloak",
|
||||
"accessory_trinket": "Trinket",
|
||||
"sanctum_relic": "Sanctum Relic",
|
||||
"tincture": "Tincture",
|
||||
"azmeri_charm": "Charm"
|
||||
},
|
||||
"filters": {
|
||||
"selected_some": "{0} of {1}, stats",
|
||||
"selected_none": "Stats ignored",
|
||||
"hidden_toggle": "Hidden",
|
||||
"collapse": "Collapse",
|
||||
"mods_toggle": "Mods",
|
||||
"empty": "No relevant stats were found",
|
||||
"tier": "Tier {0}",
|
||||
"preset_pseudo": "Pseudo",
|
||||
"preset_base_item": "Base item",
|
||||
"hide_const_roll": "Roll is not variable",
|
||||
"hide_ele_dps": "Elemental damage is not the main source of DPS",
|
||||
"hide_phys_dps": "Physical damage is not the main source of DPS",
|
||||
"hide_ele_res": "Filtering by exact Elemental Resistance unreasonably increases the price",
|
||||
"hide_crafted_chaos": "Crafted Chaos Resistance without Explicit mod has no value",
|
||||
"hide_anointment": "Buyer will likely change anointment",
|
||||
"hide_for_crafting": "Select only if price-checking as base item for crafting",
|
||||
"hide_empty_mod": "Select only if item has 6 modifiers (1 of which is crafted) or if it has 5 modifiers",
|
||||
"tag_implicit": "implicit",
|
||||
"tag_fractured": "fractured",
|
||||
"tag_crafted": "crafted",
|
||||
"tag_scourge": "scourge",
|
||||
"tag_enchant": "enchant",
|
||||
"tag_variant": "variant",
|
||||
"tag_corrupted": "corrupted",
|
||||
"tag_synthesised": "synthesised",
|
||||
"tag_eldritch": "eldritch",
|
||||
"tag_pseudo": "pseudo",
|
||||
"tag_explicit": "explicit",
|
||||
"tag_explicit_shaper": "Shaper",
|
||||
"tag_explicit_elder": "Elder",
|
||||
"tag_explicit_crusader": "Crusader",
|
||||
"tag_explicit_hunter": "Hunter",
|
||||
"tag_explicit_redeemer": "Redeemer",
|
||||
"tag_explicit_warlord": "Warlord",
|
||||
"tag_explicit_delve": "Delve",
|
||||
"tag_explicit_veiled": "Veiled",
|
||||
"tag_explicit_incursion": "Incursion"
|
||||
},
|
||||
"online_filter": {
|
||||
"offline_toggle": "Offline & Online",
|
||||
"in_league_toggle": "In League",
|
||||
"listed_any_time": "Listed: Any Time",
|
||||
"listed_1day": "1 Day Ago",
|
||||
"listed_3days": "3 Days Ago",
|
||||
"listed_1week": "1 Week Ago",
|
||||
"listed_2weeks": "2 Weeks Ago",
|
||||
"listed_1month": "1 Month Ago",
|
||||
"listed_2months": "2 Months Ago",
|
||||
"currency_any": "Any Currency",
|
||||
"currency_only_chaos": "Chaos Orb",
|
||||
"currency_only_div": "Divine Orb",
|
||||
"currency_chaos_div": "Both Orbs"
|
||||
},
|
||||
"widget": {
|
||||
"title": "widget title",
|
||||
"hide": "hide",
|
||||
"edit": "edit",
|
||||
"move": "move",
|
||||
"delete": "delete"
|
||||
},
|
||||
"updates": {
|
||||
"maybe_outdated": "You may have an outdated version",
|
||||
"latest": "You have the latest version",
|
||||
"error": "Error while checking for updates",
|
||||
"checking": "Checking for updates",
|
||||
"downloading": "Downloading\u2026",
|
||||
"available": "Update available: {0}",
|
||||
"never_checked": "Last checked: never",
|
||||
"last_checked": "Last checked: {0}",
|
||||
"check_now": "Check now",
|
||||
"install_now": "Install now",
|
||||
"downloads_page": "Open the Downloads page",
|
||||
"installed_on_exit": "It will be installed automatically on exit",
|
||||
"download_manually": "You can download it from GitHub",
|
||||
"download_disabled": "You have disabled automatic updates download"
|
||||
},
|
||||
"widget_menu": {
|
||||
"add": "add widget\u2026",
|
||||
"always_show": "Show button for active widgets",
|
||||
"price_check": "Price check (Ctrl + V)"
|
||||
},
|
||||
"stopwatch": {
|
||||
"name": "Stopwatch",
|
||||
"paused": "paused",
|
||||
"toggle_key": "Start and Pause",
|
||||
"reset_key": "Reset"
|
||||
},
|
||||
"stash_search": {
|
||||
"enable_keys": "Keys",
|
||||
"name": "Stash search",
|
||||
"search_text": "search text or regex",
|
||||
"friendly_name": "friendly name"
|
||||
},
|
||||
"image_strip": {
|
||||
"name": "Image strip"
|
||||
},
|
||||
"item_search": {
|
||||
"name": "Item search",
|
||||
"input": "Search by name\u2026",
|
||||
"reset": "Reset items",
|
||||
"heist_target": "Heist target:",
|
||||
"target_gem": "Skill Gem",
|
||||
"target_replica": "Replicas",
|
||||
"too_many": "Too many items found, enter the name more precisely.",
|
||||
"not_found": "No items found.",
|
||||
"ocr_gems_key": "Perform an OCR for a Skill Gem"
|
||||
},
|
||||
"map_check": {
|
||||
"name": "Map check",
|
||||
"has_outdated": "Wording of some stats has been changed. Check and update dangerous map mods in the settings. (This message will be hidden as soon as you remove all outdated stats)",
|
||||
"no_mods": "Item has no modifiers.",
|
||||
"profile": "Profile",
|
||||
"search_selected": "Only selected",
|
||||
"search_stat_col": "Stat (found: {0})",
|
||||
"new_mods_icon": "Show icon for new mods"
|
||||
},
|
||||
"trade_result": {
|
||||
"error": "Trade site request failed",
|
||||
"matched": "Matched: {0}",
|
||||
"trade": "Trade",
|
||||
"price": "Price",
|
||||
"bulk": "bulk",
|
||||
"stock": "Stock",
|
||||
"fulfill": "Fulfill",
|
||||
"listed": "Listed",
|
||||
"seller": "Seller",
|
||||
"item_level": "iLvl",
|
||||
"gem_level": "Level",
|
||||
"quality": "Quality",
|
||||
"base_item": "Base item",
|
||||
"graph_7d": "Last 7 days",
|
||||
"getting_price": "Getting price {0}",
|
||||
"getting_price_from": "from poe.ninja \u2026",
|
||||
"you_have": "You have",
|
||||
"stack": "Stack"
|
||||
},
|
||||
"settings": {
|
||||
"title": "Settings - Exiled Exchange 2",
|
||||
"language": "Language",
|
||||
"private_league": "or Private League",
|
||||
"account_name": "Account name",
|
||||
"last_char_name": "Last character name",
|
||||
"chat_cmd_add": "Add command",
|
||||
"chat_cmd_send": "press Enter",
|
||||
"no_key": "Not Set",
|
||||
"clear_hotkey": "You can clear hotkey by pressing Backspace",
|
||||
"overlay": "Overlay",
|
||||
"stash_scroll": "Stash tab scrolling",
|
||||
"delve_grid": "Grid for Delve Chart",
|
||||
"window_title": "PoE window title",
|
||||
"thank_you": "App development continues thanks to:",
|
||||
"hotkeys": "Hotkeys",
|
||||
"chat": "Chat",
|
||||
"general": "General",
|
||||
"debug": "Debug",
|
||||
"about": "About",
|
||||
"font_size": "Font size",
|
||||
"overlay_bg": "Background when the Overlay is clickable",
|
||||
"overlay_bg_none": "Transparent",
|
||||
"overlay_bg_focus_game": "Clicking on the background focuses the game",
|
||||
"overlay_always_close": "Always fully close the overlay instead of hiding it",
|
||||
"poe_log_file": "PoE log file",
|
||||
"poe_cfg_file": "PoE config file",
|
||||
"restore_clipboard": "Restore clipboard",
|
||||
"show_overlay_ready": "Show a notification when the Overlay detects a PoE window",
|
||||
"debug_hotkeys": "Record all key presses"
|
||||
},
|
||||
"price_check": {
|
||||
"name": "Price check",
|
||||
"hotkey": "Auto-hide Mode",
|
||||
"hotkey_locked": "Open without auto-hide",
|
||||
"enable_browser": "Enable builtin browser",
|
||||
"builtin_browser_warning": "I am aware that future releases can potentially contain malicious code that can steal my POESESSID.",
|
||||
"highlight_hint": "Your items will be highlighted even if this setting is off",
|
||||
"show_seller": "Show seller",
|
||||
"fill_rolls": "Fill stat values",
|
||||
"fill_roll_exact": "Exact value",
|
||||
"cursor_pos": "Show memorized cursor position",
|
||||
"extra_delay": "Extra time to prevent spurious Rate limiting",
|
||||
"warn_expensive": "Settings below are a compromise between increasing load on PoE website and convenient price checking / more accurate search.",
|
||||
"accurate_collapsed": "Show indication on collapsed listings",
|
||||
"auto_search": "Perform an auto search, when pressing",
|
||||
"select_stock": "Always select \"Stock\" filter",
|
||||
"show_prediction": "Show price prediction",
|
||||
"remember_currency": "Remember the Buyout Currency filter"
|
||||
}
|
||||
}
|
||||
106
renderer/src/parser/en/client_strings.js
Normal file
106
renderer/src/parser/en/client_strings.js
Normal file
@@ -0,0 +1,106 @@
|
||||
// @ts-check
|
||||
/** @type{import('../../../src/assets/data/interfaces').TranslationDict} */
|
||||
export default {
|
||||
RARITY_NORMAL: 'Normal',
|
||||
RARITY_MAGIC: 'Magic',
|
||||
RARITY_RARE: 'Rare',
|
||||
RARITY_UNIQUE: 'Unique',
|
||||
RARITY_GEM: 'Gem',
|
||||
RARITY_CURRENCY: 'Currency',
|
||||
RARITY_DIVCARD: 'Divination Card',
|
||||
RARITY_QUEST: 'Quest',
|
||||
MAP_TIER: 'Map Tier: ',
|
||||
RARITY: 'Rarity: ',
|
||||
ITEM_CLASS: 'Item Class: ',
|
||||
ITEM_LEVEL: 'Item Level: ',
|
||||
CORPSE_LEVEL: 'Corpse Level: ',
|
||||
TALISMAN_TIER: 'Talisman Tier: ',
|
||||
GEM_LEVEL: 'Level: ',
|
||||
STACK_SIZE: 'Stack Size: ',
|
||||
SOCKETS: 'Sockets: ',
|
||||
QUALITY: 'Quality: ',
|
||||
PHYSICAL_DAMAGE: 'Physical Damage: ',
|
||||
ELEMENTAL_DAMAGE: 'Elemental Damage: ',
|
||||
CRIT_CHANCE: 'Critical Strike Chance: ',
|
||||
ATTACK_SPEED: 'Attacks per Second: ',
|
||||
ARMOUR: 'Armour: ',
|
||||
EVASION: 'Evasion Rating: ',
|
||||
ENERGY_SHIELD: 'Energy Shield: ',
|
||||
BLOCK_CHANCE: 'Chance to Block: ',
|
||||
CORRUPTED: 'Corrupted',
|
||||
UNIDENTIFIED: 'Unidentified',
|
||||
ITEM_SUPERIOR: /^Superior (.*)$/,
|
||||
MAP_BLIGHTED: /^Blighted (.*)$/,
|
||||
MAP_BLIGHT_RAVAGED: /^Blight-ravaged (.*)$/,
|
||||
INFLUENCE_SHAPER: 'Shaper Item',
|
||||
INFLUENCE_ELDER: 'Elder Item',
|
||||
INFLUENCE_CRUSADER: 'Crusader Item',
|
||||
INFLUENCE_HUNTER: 'Hunter Item',
|
||||
INFLUENCE_REDEEMER: 'Redeemer Item',
|
||||
INFLUENCE_WARLORD: 'Warlord Item',
|
||||
SECTION_SYNTHESISED: 'Synthesised Item',
|
||||
ITEM_SYNTHESISED: /^Synthesised (.*)$/,
|
||||
VEILED_PREFIX: 'Veiled Prefix',
|
||||
VEILED_SUFFIX: 'Veiled Suffix',
|
||||
FLASK_CHARGES: /^Currently has \d+ Charges$/,
|
||||
METAMORPH_HELP: "Combine this with four other different samples in Tane's Laboratory.",
|
||||
BEAST_HELP: 'Right-click to add this to your bestiary.',
|
||||
VOIDSTONE_HELP: 'Socket this into your Atlas to increase the Tier of all Maps.',
|
||||
METAMORPH_BRAIN: /^.* Brain$/,
|
||||
METAMORPH_EYE: /^.* Eye$/,
|
||||
METAMORPH_LUNG: /^.* Lung$/,
|
||||
METAMORPH_HEART: /^.* Heart$/,
|
||||
METAMORPH_LIVER: /^.* Liver$/,
|
||||
CANNOT_USE_ITEM: 'You cannot use this item. Its stats will be ignored',
|
||||
QUALITY_ANOMALOUS: /^Anomalous (.*)$/,
|
||||
QUALITY_DIVERGENT: /^Divergent (.*)$/,
|
||||
QUALITY_PHANTASMAL: /^Phantasmal (.*)$/,
|
||||
AREA_LEVEL: 'Area Level: ',
|
||||
HEIST_WINGS_REVEALED: 'Wings Revealed: ',
|
||||
HEIST_TARGET: 'Heist Target: ',
|
||||
HEIST_BLUEPRINT_ENCHANTS: 'Enchanted Armaments',
|
||||
HEIST_BLUEPRINT_TRINKETS: 'Thieves\' Trinkets or Currency',
|
||||
HEIST_BLUEPRINT_GEMS: 'Unusual Gems',
|
||||
HEIST_BLUEPRINT_REPLICAS: 'Replicas or Experimented Items',
|
||||
MIRRORED: 'Mirrored',
|
||||
MODIFIER_LINE: /^(?<type>[^"]+)(?:\s+"(?<name>[^"]+)")?(?:\s+\(Tier: (?<tier>\d+)\))?(?:\s+\(Rank: (?<rank>\d+)\))?$/,
|
||||
PREFIX_MODIFIER: 'Prefix Modifier',
|
||||
SUFFIX_MODIFIER: 'Suffix Modifier',
|
||||
CRAFTED_PREFIX: 'Master Crafted Prefix Modifier',
|
||||
CRAFTED_SUFFIX: 'Master Crafted Suffix Modifier',
|
||||
UNSCALABLE_VALUE: ' — Unscalable Value',
|
||||
CORRUPTED_IMPLICIT: 'Corruption Implicit Modifier',
|
||||
MODIFIER_INCREASED: /^(.+?)% Increased$/,
|
||||
INCURSION_OPEN: 'Open Rooms:',
|
||||
INCURSION_OBSTRUCTED: 'Obstructed Rooms:',
|
||||
EATER_IMPLICIT: /^Eater of Worlds Implicit Modifier \((?<rank>.+)\)$/,
|
||||
EXARCH_IMPLICIT: /^Searing Exarch Implicit Modifier \((?<rank>.+)\)$/,
|
||||
ELDRITCH_MOD_R1: 'Lesser',
|
||||
ELDRITCH_MOD_R2: 'Greater',
|
||||
ELDRITCH_MOD_R3: 'Grand',
|
||||
ELDRITCH_MOD_R4: 'Exceptional',
|
||||
ELDRITCH_MOD_R5: 'Exquisite',
|
||||
ELDRITCH_MOD_R6: 'Perfect',
|
||||
SENTINEL_CHARGE: 'Charge: ',
|
||||
SHAPER_MODS: ['of Shaping', "The Shaper's"],
|
||||
ELDER_MODS: ['of the Elder', "The Elder's"],
|
||||
CRUSADER_MODS: ["Crusader's", 'of the Crusade'],
|
||||
HUNTER_MODS: ["Hunter's", 'of the Hunt'],
|
||||
REDEEMER_MODS: ['of Redemption', "Redeemer's"],
|
||||
WARLORD_MODS: ["Warlord's", 'of the Conquest'],
|
||||
DELVE_MODS: ['Subterranean', 'of the Underground'],
|
||||
VEILED_MODS: ['Chosen', 'of the Order'],
|
||||
INCURSION_MODS: ["Guatelitzi's", "Xopec's", "Topotante's", "Tacati's", "Matatl's", 'of Matatl', "Citaqualotl's", 'of Citaqualotl', 'of Tacati', 'of Guatelitzi', 'of Puhuarte'],
|
||||
FOIL_UNIQUE: 'Foil Unique',
|
||||
UNMODIFIABLE: 'Unmodifiable',
|
||||
// ---
|
||||
CHAT_SYSTEM: /^: (?<body>.+)$/,
|
||||
CHAT_TRADE: /^\$(?:<(?<guild_tag>.+?)> )?(?<char_name>.+?): (?<body>.+)$/,
|
||||
CHAT_GLOBAL: /^#(?:<(?<guild_tag>.+?)> )?(?<char_name>.+?): (?<body>.+)$/,
|
||||
CHAT_PARTY: /^%(?:<(?<guild_tag>.+?)> )?(?<char_name>.+?): (?<body>.+)$/,
|
||||
CHAT_GUILD: /^&(?:<(?<guild_tag>.+?)> )?(?<char_name>.+?): (?<body>.+)$/,
|
||||
CHAT_WHISPER_TO: /^@To (?<char_name>.+?): (?<body>.+)$/,
|
||||
CHAT_WHISPER_FROM: /^@From (?:<(?<guild_tag>.+?)> )?(?<char_name>.+?): (?<body>.+)$/,
|
||||
CHAT_WEBTRADE_GEM: /^level (?<gem_lvl>\d+) (?<gem_qual>\d+)% (?<gem_name>.+)$/,
|
||||
REQUIREMENTS: 'Requirements'
|
||||
}
|
||||
187
renderer/src/parser/en/interfaces.ts
Normal file
187
renderer/src/parser/en/interfaces.ts
Normal file
@@ -0,0 +1,187 @@
|
||||
import type { ItemCategory } from "@/parser";
|
||||
|
||||
export interface StatMatcher {
|
||||
string: string;
|
||||
advanced?: string;
|
||||
negate?: true;
|
||||
value?: number;
|
||||
oils?: string; // Amulet anointment
|
||||
}
|
||||
|
||||
export enum StatBetter {
|
||||
NegativeRoll = -1,
|
||||
PositiveRoll = 1,
|
||||
NotComparable = 0,
|
||||
}
|
||||
|
||||
export interface Stat {
|
||||
ref: string;
|
||||
dp?: true;
|
||||
matchers: StatMatcher[];
|
||||
better: StatBetter;
|
||||
fromAreaMods?: true;
|
||||
fromUberAreaMods?: true;
|
||||
fromHeistAreaMods?: true;
|
||||
anointments?: Array<{ roll: number; oils: string }>; // Ring anointments
|
||||
trade: {
|
||||
inverted?: true;
|
||||
option?: true;
|
||||
ids: {
|
||||
[type: string]: string[];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
export interface DropEntry {
|
||||
query: string[];
|
||||
items: string[];
|
||||
}
|
||||
|
||||
export interface BaseType {
|
||||
name: string;
|
||||
refName: string;
|
||||
namespace: "DIVINATION_CARD" | "CAPTURED_BEAST" | "UNIQUE" | "ITEM" | "GEM";
|
||||
icon: string;
|
||||
w?: number;
|
||||
h?: number;
|
||||
tradeTag?: string;
|
||||
tradeDisc?: string;
|
||||
disc?: {
|
||||
propAR?: true;
|
||||
propEV?: true;
|
||||
propES?: true;
|
||||
hasImplicit?: { ref: Stat["ref"] };
|
||||
hasExplicit?: { ref: Stat["ref"] };
|
||||
sectionText?: string;
|
||||
mapTier?: "W" | "Y" | "R";
|
||||
};
|
||||
// extra info
|
||||
craftable?: {
|
||||
category: ItemCategory;
|
||||
corrupted?: true;
|
||||
uniqueOnly?: true;
|
||||
};
|
||||
unique?: {
|
||||
base: BaseType["refName"];
|
||||
fixedStats?: Array<Stat["ref"]>;
|
||||
};
|
||||
map?: {
|
||||
screenshot?: string;
|
||||
};
|
||||
gem?: {
|
||||
vaal?: true;
|
||||
awakened?: true;
|
||||
transfigured?: true;
|
||||
normalVariant?: BaseType["refName"];
|
||||
};
|
||||
armour?: {
|
||||
ar?: [min: number, max: number];
|
||||
ev?: [min: number, max: number];
|
||||
es?: [min: number, max: number];
|
||||
};
|
||||
}
|
||||
|
||||
export interface TranslationDict {
|
||||
RARITY_NORMAL: string;
|
||||
RARITY_MAGIC: string;
|
||||
RARITY_RARE: string;
|
||||
RARITY_UNIQUE: string;
|
||||
RARITY_GEM: string;
|
||||
RARITY_CURRENCY: string;
|
||||
RARITY_DIVCARD: string;
|
||||
RARITY_QUEST: string;
|
||||
MAP_TIER: string;
|
||||
RARITY: string;
|
||||
ITEM_CLASS: string;
|
||||
ITEM_LEVEL: string;
|
||||
CORPSE_LEVEL: string;
|
||||
TALISMAN_TIER: string;
|
||||
GEM_LEVEL: string;
|
||||
STACK_SIZE: string;
|
||||
SOCKETS: string;
|
||||
QUALITY: string;
|
||||
PHYSICAL_DAMAGE: string;
|
||||
ELEMENTAL_DAMAGE: string;
|
||||
CRIT_CHANCE: string;
|
||||
ATTACK_SPEED: string;
|
||||
ARMOUR: string;
|
||||
EVASION: string;
|
||||
ENERGY_SHIELD: string;
|
||||
BLOCK_CHANCE: string;
|
||||
CORRUPTED: string;
|
||||
UNIDENTIFIED: string;
|
||||
ITEM_SUPERIOR: RegExp;
|
||||
MAP_BLIGHTED: RegExp;
|
||||
MAP_BLIGHT_RAVAGED: RegExp;
|
||||
INFLUENCE_SHAPER: string;
|
||||
INFLUENCE_ELDER: string;
|
||||
INFLUENCE_CRUSADER: string;
|
||||
INFLUENCE_HUNTER: string;
|
||||
INFLUENCE_REDEEMER: string;
|
||||
INFLUENCE_WARLORD: string;
|
||||
SECTION_SYNTHESISED: string;
|
||||
ITEM_SYNTHESISED: RegExp;
|
||||
VEILED_PREFIX: string;
|
||||
VEILED_SUFFIX: string;
|
||||
FLASK_CHARGES: RegExp;
|
||||
METAMORPH_HELP: string;
|
||||
BEAST_HELP: string;
|
||||
VOIDSTONE_HELP: string;
|
||||
METAMORPH_BRAIN: RegExp;
|
||||
METAMORPH_EYE: RegExp;
|
||||
METAMORPH_LUNG: RegExp;
|
||||
METAMORPH_HEART: RegExp;
|
||||
METAMORPH_LIVER: RegExp;
|
||||
CANNOT_USE_ITEM: string;
|
||||
QUALITY_ANOMALOUS: RegExp;
|
||||
QUALITY_DIVERGENT: RegExp;
|
||||
QUALITY_PHANTASMAL: RegExp;
|
||||
AREA_LEVEL: string;
|
||||
HEIST_WINGS_REVEALED: string;
|
||||
HEIST_TARGET: string;
|
||||
HEIST_BLUEPRINT_ENCHANTS: string;
|
||||
HEIST_BLUEPRINT_TRINKETS: string;
|
||||
HEIST_BLUEPRINT_GEMS: string;
|
||||
HEIST_BLUEPRINT_REPLICAS: string;
|
||||
MIRRORED: string;
|
||||
MODIFIER_LINE: RegExp;
|
||||
PREFIX_MODIFIER: string;
|
||||
SUFFIX_MODIFIER: string;
|
||||
CRAFTED_PREFIX: string;
|
||||
CRAFTED_SUFFIX: string;
|
||||
UNSCALABLE_VALUE: string;
|
||||
CORRUPTED_IMPLICIT: string;
|
||||
MODIFIER_INCREASED: RegExp;
|
||||
INCURSION_OPEN: string;
|
||||
INCURSION_OBSTRUCTED: string;
|
||||
EATER_IMPLICIT: RegExp;
|
||||
EXARCH_IMPLICIT: RegExp;
|
||||
ELDRITCH_MOD_R1: string;
|
||||
ELDRITCH_MOD_R2: string;
|
||||
ELDRITCH_MOD_R3: string;
|
||||
ELDRITCH_MOD_R4: string;
|
||||
ELDRITCH_MOD_R5: string;
|
||||
ELDRITCH_MOD_R6: string;
|
||||
SENTINEL_CHARGE: string;
|
||||
SHAPER_MODS: string[];
|
||||
ELDER_MODS: string[];
|
||||
CRUSADER_MODS: string[];
|
||||
HUNTER_MODS: string[];
|
||||
REDEEMER_MODS: string[];
|
||||
WARLORD_MODS: string[];
|
||||
DELVE_MODS: string[];
|
||||
VEILED_MODS: string[];
|
||||
INCURSION_MODS: string[];
|
||||
FOIL_UNIQUE: string;
|
||||
UNMODIFIABLE: string;
|
||||
REQUIREMENTS: string;
|
||||
// ---
|
||||
CHAT_SYSTEM: RegExp;
|
||||
CHAT_TRADE: RegExp;
|
||||
CHAT_GLOBAL: RegExp;
|
||||
CHAT_PARTY: RegExp;
|
||||
CHAT_GUILD: RegExp;
|
||||
CHAT_WHISPER_TO: RegExp;
|
||||
CHAT_WHISPER_FROM: RegExp;
|
||||
CHAT_WEBTRADE_GEM: RegExp;
|
||||
}
|
||||
1286
renderer/src/parser/en/item-drop.json
Normal file
1286
renderer/src/parser/en/item-drop.json
Normal file
File diff suppressed because it is too large
Load Diff
3059
renderer/src/parser/en/items.ndjson
Normal file
3059
renderer/src/parser/en/items.ndjson
Normal file
File diff suppressed because it is too large
Load Diff
191
renderer/src/parser/en/patrons.json
Normal file
191
renderer/src/parser/en/patrons.json
Normal file
@@ -0,0 +1,191 @@
|
||||
[
|
||||
{"from": "A. Førde", "months": 3, "style": 1},
|
||||
{"from": "A. Koenig", "months": 1, "style": 1},
|
||||
{"from": "A. Logos", "months": 20, "style": 2},
|
||||
{"from": "A. Miller", "months": 11, "style": 1},
|
||||
{"from": "A. Nakarada", "months": 7, "style": 2},
|
||||
{"from": "A. Robinson", "months": 7, "style": 3},
|
||||
{"from": "A. West", "months": 27, "style": 3},
|
||||
{"from": "A. Zastre", "months": 5, "style": 1},
|
||||
{"from": "AbedNego", "months": 6, "style": 1},
|
||||
{"from": "aikodz", "months": 3, "style": 1},
|
||||
{"from": "Andrew S", "months": 1, "style": 1},
|
||||
{"from": "angrymouse", "months": 6, "style": 1},
|
||||
{"from": "aNitMotD", "months": 2, "style": 3},
|
||||
{"from": "applejacked", "months": 20, "style": 2},
|
||||
{"from": "Arte Lope", "months": 17, "style": 2},
|
||||
{"from": "Askanor", "months": 1, "style": 1},
|
||||
{"from": "Athena", "months": 10, "style": 3},
|
||||
{"from": "AZ", "months": 3, "style": 1},
|
||||
{"from": "B. Maszlag", "months": 16, "style": 2},
|
||||
{"from": "B. Stone", "months": 1, "style": 1},
|
||||
{"from": "B3ginner", "months": 1, "style": 1},
|
||||
{"from": "Baang", "months": 35, "style": 5},
|
||||
{"from": "bashcoder", "months": 4, "style": 1},
|
||||
{"from": "BearsInTheSky", "months": 1, "style": 1},
|
||||
{"from": "Bjoern B.", "months": 4, "style": 1},
|
||||
{"from": "Brotango", "months": 3, "style": 1},
|
||||
{"from": "Budget Boudica", "months": 23, "style": 3},
|
||||
{"from": "C. Niemeier", "months": 10, "style": 2},
|
||||
{"from": "C. Szilagy", "months": 15, "style": 2},
|
||||
{"from": "C.M. Tolman", "months": 4, "style": 2},
|
||||
{"from": "Calyx", "months": 36, "style": 5},
|
||||
{"from": "camenre", "months": 2, "style": 1},
|
||||
{"from": "Chee", "months": 2, "style": 1},
|
||||
{"from": "clopnaz", "months": 3, "style": 1},
|
||||
{"from": "Cod Smack", "months": 28, "style": 3},
|
||||
{"from": "Coolulder", "months": 42, "style": 5},
|
||||
{"from": "Cry0nicS", "months": 1, "style": 1},
|
||||
{"from": "cuinhellcat", "months": 2, "style": 1},
|
||||
{"from": "CysDg", "months": 1, "style": 1},
|
||||
{"from": "D. Bryan", "months": 2, "style": 1},
|
||||
{"from": "D. Ivanov", "months": 16, "style": 4},
|
||||
{"from": "D. Paulino", "months": 30, "style": 5},
|
||||
{"from": "D. Ward", "months": 8, "style": 2},
|
||||
{"from": "d0mEsPLiTa", "months": 12, "style": 3},
|
||||
{"from": "Dadaless", "months": 4, "style": 1},
|
||||
{"from": "Dante M.", "months": 27, "style": 4},
|
||||
{"from": "Darkscion", "months": 1, "style": 1},
|
||||
{"from": "deeray", "months": 38, "style": 3},
|
||||
{"from": "delasteve", "months": 1, "style": 2},
|
||||
{"from": "digininja", "months": 39, "style": 3},
|
||||
{"from": "dreamweaverkara", "months": 4, "style": 2},
|
||||
{"from": "DTauro", "months": 6, "style": 1},
|
||||
{"from": "Dvoth", "months": 3, "style": 1},
|
||||
{"from": "E. Giegerich", "months": 2, "style": 1},
|
||||
{"from": "E. Manhattan", "months": 12, "style": 2},
|
||||
{"from": "E. Troyak", "months": 4, "style": 3},
|
||||
{"from": "Ellendar", "months": 45, "style": 5},
|
||||
{"from": "EllieJelly", "months": 38, "style": 4},
|
||||
{"from": "facemask12", "months": 4, "style": 2},
|
||||
{"from": "FARIS2", "months": 4, "style": 2},
|
||||
{"from": "frsm", "months": 37, "style": 3},
|
||||
{"from": "gamingrobot", "months": 9, "style": 2},
|
||||
{"from": "Gdubz", "months": 4, "style": 3},
|
||||
{"from": "GRIMGeek", "months": 37, "style": 3},
|
||||
{"from": "Grotok", "months": 19, "style": 3},
|
||||
{"from": "gurthymyco", "months": 1, "style": 1},
|
||||
{"from": "haliun", "months": 7, "style": 3},
|
||||
{"from": "Harometras", "months": 3, "style": 1},
|
||||
{"from": "Heikki", "months": 34, "style": 3},
|
||||
{"from": "Holonaut", "months": 7, "style": 2},
|
||||
{"from": "HOOSIER", "months": 21, "style": 2},
|
||||
{"from": "Horstusius", "months": 8, "style": 2},
|
||||
{"from": "hyronimus84", "months": 1, "style": 1},
|
||||
{"from": "imaapty", "months": 4, "style": 2},
|
||||
{"from": "iqdrive", "months": 2, "style": 1},
|
||||
{"from": "J. Harmer", "months": 10, "style": 2},
|
||||
{"from": "J. Krzeminski", "months": 14, "style": 2},
|
||||
{"from": "J. Madill", "months": 19, "style": 2},
|
||||
{"from": "J. Müller", "months": 26, "style": 3},
|
||||
{"from": "J. Pollard", "months": 4, "style": 1},
|
||||
{"from": "J. Porter", "months": 35, "style": 3},
|
||||
{"from": "J. Rapp", "months": 23, "style": 3},
|
||||
{"from": "J. Reed", "months": 6, "style": 2},
|
||||
{"from": "J. Stratmann", "months": 43, "style": 3},
|
||||
{"from": "J. Wiegand", "months": 10, "style": 3},
|
||||
{"from": "jerbear_pnw", "months": 14, "style": 4},
|
||||
{"from": "Jordan", "months": 1, "style": 1},
|
||||
{"from": "JoyFired", "months": 7, "style": 1},
|
||||
{"from": "JP Bagdonas", "months": 8, "style": 3},
|
||||
{"from": "Jr Honorio", "months": 5, "style": 2},
|
||||
{"from": "K_fudge", "months": 1, "style": 2},
|
||||
{"from": "K. Hafenscher", "months": 26, "style": 4},
|
||||
{"from": "K. Hardy", "months": 4, "style": 4},
|
||||
{"from": "K. Kaptur", "months": 8, "style": 1},
|
||||
{"from": "K. Mohin", "months": 1, "style": 1},
|
||||
{"from": "KhaozNZ", "months": 5, "style": 1},
|
||||
{"from": "khay", "months": 20, "style": 2},
|
||||
{"from": "Kloozy", "months": 6, "style": 1},
|
||||
{"from": "kmalex4", "months": 33, "style": 3},
|
||||
{"from": "kruderf", "months": 1, "style": 1},
|
||||
{"from": "L. Chien", "months": 12, "style": 3},
|
||||
{"from": "L. Kelly", "months": 8, "style": 2},
|
||||
{"from": "L. MacNeil", "months": 32, "style": 5},
|
||||
{"from": "L. Sampaio Dias", "months": 2, "style": 1},
|
||||
{"from": "lecruz01", "months": 2, "style": 1},
|
||||
{"from": "Lendoria", "months": 22, "style": 4},
|
||||
{"from": "livejamie", "months": 26, "style": 2},
|
||||
{"from": "lord_lengl", "months": 2, "style": 1},
|
||||
{"from": "Lordius", "months": 1, "style": 1},
|
||||
{"from": "louislo", "months": 6, "style": 1},
|
||||
{"from": "Ludion R", "months": 3, "style": 1},
|
||||
{"from": "M. Aldous", "months": 30, "style": 3},
|
||||
{"from": "M. Kimble", "months": 34, "style": 4},
|
||||
{"from": "M. Lopez", "months": 10, "style": 3},
|
||||
{"from": "martin1*5", "months": 12, "style": 3},
|
||||
{"from": "Max10969", "months": 16, "style": 3},
|
||||
{"from": "Melu", "months": 1, "style": 1},
|
||||
{"from": "Mike", "months": 6, "style": 2},
|
||||
{"from": "MiksLynx", "months": 14, "style": 2},
|
||||
{"from": "Mindfire", "months": 2, "style": 1},
|
||||
{"from": "mmastrocinque", "months": 11, "style": 2},
|
||||
{"from": "Mr. Ozarka", "months": 10, "style": 2},
|
||||
{"from": "N. Baldwin", "months": 23, "style": 4},
|
||||
{"from": "N. Juretic", "months": 15, "style": 4},
|
||||
{"from": "N. Pawlawski", "months": 3, "style": 1},
|
||||
{"from": "N. Sabin", "months": 1, "style": 1},
|
||||
{"from": "Nakoma", "months": 2, "style": 1},
|
||||
{"from": "ninni", "months": 12, "style": 2},
|
||||
{"from": "nipser", "months": 3, "style": 1},
|
||||
{"from": "P. Pandian", "months": 8, "style": 3},
|
||||
{"from": "P. Roeper", "months": 26, "style": 3},
|
||||
{"from": "Pieman807", "months": 12, "style": 3},
|
||||
{"from": "Praestrom", "months": 2, "style": 1},
|
||||
{"from": "Quezion", "months": 29, "style": 4},
|
||||
{"from": "R. Chow", "months": 40, "style": 3},
|
||||
{"from": "R. Fidel", "months": 14, "style": 4},
|
||||
{"from": "R. Klippert", "months": 26, "style": 3},
|
||||
{"from": "R. Meliksetyan", "months": 1, "style": 1},
|
||||
{"from": "R. Myers", "months": 1, "style": 1},
|
||||
{"from": "Rafnak", "months": 3, "style": 1},
|
||||
{"from": "roxzin", "months": 4, "style": 1},
|
||||
{"from": "Rutschi", "months": 4, "style": 2},
|
||||
{"from": "rw", "months": 31, "style": 4},
|
||||
{"from": "Ryndaar", "months": 2, "style": 1},
|
||||
{"from": "S. Barton", "months": 20, "style": 3},
|
||||
{"from": "S. Bejan", "months": 16, "style": 2},
|
||||
{"from": "S. Goozey", "months": 25, "style": 2},
|
||||
{"from": "S. Jones", "months": 8, "style": 2},
|
||||
{"from": "Sanii", "months": 35, "style": 5},
|
||||
{"from": "SasQ", "months": 1, "style": 1},
|
||||
{"from": "Secret Wizard", "months": 6, "style": 2},
|
||||
{"from": "Seppi", "months": 1, "style": 1},
|
||||
{"from": "sergeantglasc", "months": 1, "style": 1},
|
||||
{"from": "smartmusic", "months": 2, "style": 1},
|
||||
{"from": "smifli", "months": 3, "style": 2},
|
||||
{"from": "sn0cr4sh", "months": 31, "style": 4},
|
||||
{"from": "snape3619", "months": 3, "style": 1},
|
||||
{"from": "Solaarian", "months": 15, "style": 2},
|
||||
{"from": "Splat", "months": 7, "style": 1},
|
||||
{"from": "stark4machines", "months": 13, "style": 2},
|
||||
{"from": "Steve O.", "months": 6, "style": 1},
|
||||
{"from": "StrangerKill", "months": 29, "style": 3},
|
||||
{"from": "Sy", "months": 23, "style": 2},
|
||||
{"from": "sycofly", "months": 14, "style": 2},
|
||||
{"from": "symphony", "months": 20, "style": 2},
|
||||
{"from": "T. Boone", "months": 3, "style": 1},
|
||||
{"from": "T. Pluta", "months": 16, "style": 3},
|
||||
{"from": "T. Rayne", "months": 3, "style": 1},
|
||||
{"from": "T. Trav", "months": 15, "style": 4},
|
||||
{"from": "Tactical96", "months": 2, "style": 1},
|
||||
{"from": "TH", "months": 11, "style": 1},
|
||||
{"from": "ThatGuyWasTaken", "months": 38, "style": 5},
|
||||
{"from": "TheDriveHome", "months": 31, "style": 4},
|
||||
{"from": "tony", "months": 1, "style": 1},
|
||||
{"from": "Traceur", "months": 11, "style": 3},
|
||||
{"from": "turmalin", "months": 4, "style": 2},
|
||||
{"from": "V. Chernenko", "months": 2, "style": 1},
|
||||
{"from": "Vandi", "months": 30, "style": 3},
|
||||
{"from": "vervalsen", "months": 1, "style": 1},
|
||||
{"from": "vii", "months": 13, "style": 4},
|
||||
{"from": "Vindexus", "months": 6, "style": 2},
|
||||
{"from": "vivi", "months": 3, "style": 1},
|
||||
{"from": "Vulinux", "months": 4, "style": 1},
|
||||
{"from": "W. Milas", "months": 42, "style": 4},
|
||||
{"from": "Washclof", "months": 4, "style": 1},
|
||||
{"from": "Wiggles", "months": 21, "style": 4},
|
||||
{"from": "Zach H", "months": 11, "style": 5},
|
||||
{"from": "Zigra", "months": 4, "style": 2},
|
||||
{"from": "zlajo", "months": 8, "style": 1}
|
||||
]
|
||||
2910
renderer/src/parser/en/stats.ndjson
Normal file
2910
renderer/src/parser/en/stats.ndjson
Normal file
File diff suppressed because it is too large
Load Diff
253
renderer/src/parser/en/testLoader.ts
Normal file
253
renderer/src/parser/en/testLoader.ts
Normal file
@@ -0,0 +1,253 @@
|
||||
import fnv1a from "@sindresorhus/fnv1a";
|
||||
import type {
|
||||
BaseType,
|
||||
DropEntry,
|
||||
Stat,
|
||||
StatMatcher,
|
||||
TranslationDict,
|
||||
} from "./interfaces";
|
||||
import path from "path";
|
||||
import fs from "fs";
|
||||
|
||||
export * from "./interfaces";
|
||||
|
||||
export let ITEM_DROP: DropEntry[];
|
||||
export let CLIENT_STRINGS: TranslationDict;
|
||||
export let CLIENT_STRINGS_REF: TranslationDict;
|
||||
export let APP_PATRONS: Array<{ from: string; months: number; style: number }>;
|
||||
|
||||
export let ITEM_BY_TRANSLATED = (
|
||||
ns: BaseType["namespace"],
|
||||
name: string,
|
||||
): BaseType[] | undefined => undefined;
|
||||
export let ITEM_BY_REF = (
|
||||
ns: BaseType["namespace"],
|
||||
name: string,
|
||||
): BaseType[] | undefined => undefined;
|
||||
export let ITEMS_ITERATOR = function* (
|
||||
includes: string,
|
||||
andIncludes?: string[],
|
||||
): Generator<BaseType> {};
|
||||
|
||||
export let ALTQ_GEM_NAMES = function* (): Generator<string> {};
|
||||
export let REPLICA_UNIQUE_NAMES = function* (): Generator<string> {};
|
||||
|
||||
export let STAT_BY_MATCH_STR = (
|
||||
name: string,
|
||||
): { matcher: StatMatcher; stat: Stat } | undefined => undefined;
|
||||
export let STAT_BY_REF = (name: string): Stat | undefined => undefined;
|
||||
export let STATS_ITERATOR = function* (
|
||||
includes: string,
|
||||
andIncludes?: string[],
|
||||
): Generator<Stat> {};
|
||||
|
||||
function dataBinarySearch(
|
||||
data: Uint32Array,
|
||||
value: number,
|
||||
rowOffset: number,
|
||||
rowSize: number,
|
||||
) {
|
||||
let left = 0;
|
||||
let right = data.length / rowSize - 1;
|
||||
while (left <= right) {
|
||||
const mid = Math.floor((left + right) / 2);
|
||||
const midValue = data[mid * rowSize + rowOffset];
|
||||
if (midValue < value) {
|
||||
left = mid + 1;
|
||||
} else if (midValue > value) {
|
||||
right = mid - 1;
|
||||
} else {
|
||||
return mid;
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
function ndjsonFindLines<T>(ndjson: string) {
|
||||
// it's preferable that passed `searchString` has good entropy
|
||||
return function* (
|
||||
searchString: string,
|
||||
andIncludes: string[] = [],
|
||||
): Generator<T> {
|
||||
let start = 0;
|
||||
while (start !== ndjson.length) {
|
||||
const matchPos = ndjson.indexOf(searchString, start);
|
||||
if (matchPos === -1) break;
|
||||
// works for first line too (-1 + 1 = 0)
|
||||
start = ndjson.lastIndexOf("\n", matchPos) + 1;
|
||||
const end = ndjson.indexOf("\n", matchPos);
|
||||
const jsonLine = ndjson.slice(start, end);
|
||||
if (andIncludes.every((str) => jsonLine.includes(str))) {
|
||||
yield JSON.parse(jsonLine) as T;
|
||||
}
|
||||
start = end + 1;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
function itemNamesFromLines(items: Generator<BaseType>) {
|
||||
let cached = "";
|
||||
return function* (): Generator<string> {
|
||||
if (!cached.length) {
|
||||
for (const item of items) {
|
||||
cached += item.name + "\n";
|
||||
}
|
||||
}
|
||||
|
||||
let start = 0;
|
||||
while (start !== cached.length) {
|
||||
const end = cached.indexOf("\n", start);
|
||||
yield cached.slice(start, end);
|
||||
start = end + 1;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
async function loadItems(language: string) {
|
||||
const ndjson = fs.readFileSync(
|
||||
path.resolve(__dirname, `./items.ndjson`),
|
||||
"utf-8",
|
||||
);
|
||||
const INDEX_WIDTH = 2;
|
||||
const indexNames = new Uint32Array(
|
||||
fs.readFileSync(path.resolve(__dirname, `./items-name.index.bin`)).buffer,
|
||||
);
|
||||
|
||||
const indexRefNames = new Uint32Array(
|
||||
fs.readFileSync(path.resolve(__dirname, `./items-ref.index.bin`)).buffer,
|
||||
);
|
||||
|
||||
function commonFind(index: Uint32Array, prop: "name" | "refName") {
|
||||
return function (
|
||||
ns: BaseType["namespace"],
|
||||
name: string,
|
||||
): BaseType[] | undefined {
|
||||
let start = dataBinarySearch(
|
||||
index,
|
||||
Number(fnv1a(`${ns}::${name}`, { size: 32 })),
|
||||
0,
|
||||
INDEX_WIDTH,
|
||||
);
|
||||
if (start === -1) return undefined;
|
||||
start = index[start * INDEX_WIDTH + 1];
|
||||
const out: BaseType[] = [];
|
||||
while (start !== ndjson.length) {
|
||||
const end = ndjson.indexOf("\n", start);
|
||||
const record = JSON.parse(ndjson.slice(start, end)) as BaseType;
|
||||
if (record.namespace === ns && record[prop] === name) {
|
||||
out.push(record);
|
||||
if (!record.disc && !record.unique) break;
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
start = end + 1;
|
||||
}
|
||||
return out;
|
||||
};
|
||||
}
|
||||
|
||||
ITEM_BY_TRANSLATED = commonFind(indexNames, "name");
|
||||
ITEM_BY_REF = commonFind(indexRefNames, "refName");
|
||||
ITEMS_ITERATOR = ndjsonFindLines<BaseType>(ndjson);
|
||||
ALTQ_GEM_NAMES = itemNamesFromLines(
|
||||
ITEMS_ITERATOR('altQuality":["Anomalous'),
|
||||
);
|
||||
REPLICA_UNIQUE_NAMES = itemNamesFromLines(
|
||||
ITEMS_ITERATOR('refName":"Replica'),
|
||||
);
|
||||
}
|
||||
|
||||
async function loadStats(language: string) {
|
||||
const ndjson = fs.readFileSync(
|
||||
path.resolve(__dirname, `./stats.ndjson`),
|
||||
"utf-8",
|
||||
);
|
||||
const INDEX_WIDTH = 2;
|
||||
const indexRef = new Uint32Array(
|
||||
fs.readFileSync(path.resolve(__dirname, `./stats-ref.index.bin`)).buffer,
|
||||
);
|
||||
const indexMatcher = new Uint32Array(
|
||||
fs.readFileSync(
|
||||
path.resolve(__dirname, `./stats-matcher.index.bin`),
|
||||
).buffer,
|
||||
);
|
||||
|
||||
STAT_BY_REF = function (ref: string) {
|
||||
let start = dataBinarySearch(
|
||||
indexRef,
|
||||
Number(fnv1a(ref, { size: 32 })),
|
||||
0,
|
||||
INDEX_WIDTH,
|
||||
);
|
||||
if (start === -1) return undefined;
|
||||
start = indexRef[start * INDEX_WIDTH + 1];
|
||||
const end = ndjson.indexOf("\n", start);
|
||||
return JSON.parse(ndjson.slice(start, end));
|
||||
};
|
||||
|
||||
STAT_BY_MATCH_STR = function (matchStr: string) {
|
||||
let start = dataBinarySearch(
|
||||
indexMatcher,
|
||||
Number(fnv1a(matchStr, { size: 32 })),
|
||||
0,
|
||||
INDEX_WIDTH,
|
||||
);
|
||||
if (start === -1) return undefined;
|
||||
start = indexMatcher[start * INDEX_WIDTH + 1];
|
||||
const end = ndjson.indexOf("\n", start);
|
||||
const stat = JSON.parse(ndjson.slice(start, end)) as Stat;
|
||||
|
||||
const matcher = stat.matchers.find(
|
||||
(m) => m.string === matchStr || m.advanced === matchStr,
|
||||
);
|
||||
if (!matcher) {
|
||||
// console.log('fnv1a32 collision')
|
||||
return undefined;
|
||||
}
|
||||
return { stat, matcher };
|
||||
};
|
||||
|
||||
STATS_ITERATOR = ndjsonFindLines<Stat>(ndjson);
|
||||
}
|
||||
|
||||
// assertion, to avoid regressions in stats.ndjson
|
||||
const DELAYED_STAT_VALIDATION = new Set<string>();
|
||||
export function stat(text: string) {
|
||||
DELAYED_STAT_VALIDATION.add(text);
|
||||
return text;
|
||||
}
|
||||
|
||||
export async function init(lang: string) {
|
||||
CLIENT_STRINGS_REF = (await import("./client_strings.js")).default;
|
||||
ITEM_DROP = JSON.parse(
|
||||
fs.readFileSync(path.resolve(__dirname, `./item-drop.json`), "utf-8"),
|
||||
) as DropEntry[];
|
||||
APP_PATRONS = JSON.parse(
|
||||
fs.readFileSync(path.resolve(__dirname, `./patrons.json`), "utf-8"),
|
||||
) as Array<{ from: string; months: number; style: number }>;
|
||||
|
||||
await loadForLang(lang);
|
||||
|
||||
let failed = false;
|
||||
const missing = [];
|
||||
|
||||
for (const text of DELAYED_STAT_VALIDATION) {
|
||||
if (STAT_BY_REF(text) == null) {
|
||||
// throw new Error(`Cannot find stat: ${text}`);
|
||||
missing.push(text);
|
||||
failed = true;
|
||||
}
|
||||
}
|
||||
if (failed) {
|
||||
throw new Error(
|
||||
`Cannot find stat${missing.length > 1 ? "s" : ""}: ${missing.join("\n")}`,
|
||||
);
|
||||
}
|
||||
DELAYED_STAT_VALIDATION.clear();
|
||||
}
|
||||
|
||||
export async function loadForLang(lang: string) {
|
||||
CLIENT_STRINGS = (await import("./client_strings.js")).default;
|
||||
await loadItems(lang);
|
||||
await loadStats(lang);
|
||||
}
|
||||
@@ -92,6 +92,7 @@ export function statSourcesTotal(
|
||||
);
|
||||
}
|
||||
|
||||
// Does actual translation?
|
||||
export function translateStatWithRoll(
|
||||
calc: StatCalculated,
|
||||
roll: StatRoll | undefined,
|
||||
|
||||
@@ -2,14 +2,27 @@
|
||||
<div
|
||||
class="bg-orange-400 text-gray-900 text-center text-sm font-bold text-shadow-lg"
|
||||
>
|
||||
This is in BETA for POE2, things will not work always as expected.
|
||||
{{ info.str1 }}
|
||||
<br />
|
||||
Please report any issues.
|
||||
{{ info.str2 }}
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { defineComponent } from "vue";
|
||||
import { useI18n } from "vue-i18n";
|
||||
|
||||
export default defineComponent({});
|
||||
export default defineComponent({
|
||||
setup() {
|
||||
const { t } = useI18n();
|
||||
|
||||
const info = {
|
||||
str1: t("poe2_new.beta_warning"),
|
||||
str2: t("poe2_new.beta_warning2"),
|
||||
};
|
||||
return {
|
||||
info,
|
||||
};
|
||||
},
|
||||
});
|
||||
</script>
|
||||
|
||||
@@ -223,7 +223,6 @@ export default defineComponent({
|
||||
wm.show(props.config.wmId);
|
||||
checkPosition.value = e.position;
|
||||
advancedCheck.value = e.focusOverlay;
|
||||
|
||||
item.value = (
|
||||
e.item ? ok(e.item as ParsedItem) : parseClipboard(e.clipboard)
|
||||
)
|
||||
|
||||
@@ -119,9 +119,9 @@
|
||||
class="mb-4 text-center bg-teal-800 rounded-xl"
|
||||
:class="presets.length > 1 ? 'mt-1' : 'mt-4'"
|
||||
>
|
||||
Pseudo mods not supported by trade site
|
||||
{{ t("poe2_new.pseudo_note") }}
|
||||
<br />
|
||||
Items may appear to be more valuable than they actually are
|
||||
{{ t("poe2_new.pseudo_note2") }}
|
||||
</div>
|
||||
<!-- Handled parse error -->
|
||||
<div
|
||||
@@ -129,9 +129,11 @@
|
||||
class="mb-4 text-center bg-purple-800 rounded-xl"
|
||||
:class="presets.length > 1 ? 'mt-1' : 'mt-4'"
|
||||
>
|
||||
For some reason this item's stats did not parse. <br />
|
||||
It likely has a mod that is not supported yet. <br />(Potentially new or
|
||||
changed wording from poe1)
|
||||
{{ t("poe2_new.parse_error") }}
|
||||
<br />
|
||||
{{ t("poe2_new.parse_error2") }}
|
||||
<br />
|
||||
{{ t("poe2_new.parse_error3") }}
|
||||
</div>
|
||||
<!-- Warning that bulk exchange does not work -->
|
||||
<div
|
||||
@@ -139,7 +141,7 @@
|
||||
class="mb-4 text-center bg-teal-900 rounded-xl"
|
||||
:class="presets.length > 1 ? 'mt-1' : 'mt-4'"
|
||||
>
|
||||
Bulk exchange rates are not implemented yet
|
||||
{{ t("poe2_new.bulk_exchange") }}
|
||||
</div>
|
||||
|
||||
<div
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
// import { stat, STAT_BY_REF } from "@/assets/data";
|
||||
import { STAT_BY_REF } from "@/assets/data";
|
||||
import {
|
||||
// populatePseudoRules,
|
||||
// pseudoRules,
|
||||
stat,
|
||||
STAT_BY_REF,
|
||||
} from "@/assets/data";
|
||||
// import { STAT_BY_REF } from "@/assets/data";
|
||||
import { ModifierType, StatCalculated, StatSource } from "@/parser/modifiers";
|
||||
import {
|
||||
calculatedStatToFilter,
|
||||
@@ -7,55 +12,55 @@ import {
|
||||
} from "../create-stat-filters";
|
||||
import type { StatFilter } from "../interfaces";
|
||||
|
||||
// const RESISTANCES_INFO = [
|
||||
// {
|
||||
// ref: stat("+#% to All Resistances"),
|
||||
// elements: ["fire", "cold", "lightning"],
|
||||
// chaos: true,
|
||||
// },
|
||||
// {
|
||||
// ref: stat("+#% to all Elemental Resistances"),
|
||||
// elements: ["fire", "cold", "lightning"],
|
||||
// },
|
||||
// { ref: stat("+#% to Fire Resistance"), elements: ["fire"] },
|
||||
// { ref: stat("+#% to Cold Resistance"), elements: ["cold"] },
|
||||
// { ref: stat("+#% to Lightning Resistance"), elements: ["lightning"] },
|
||||
// {
|
||||
// ref: stat("+#% to Fire and Lightning Resistances"),
|
||||
// elements: ["fire", "lightning"],
|
||||
// },
|
||||
// { ref: stat("+#% to Fire and Cold Resistances"), elements: ["fire", "cold"] },
|
||||
// {
|
||||
// ref: stat("+#% to Cold and Lightning Resistances"),
|
||||
// elements: ["cold", "lightning"],
|
||||
// },
|
||||
// { ref: stat("+#% to Chaos Resistance"), elements: [], chaos: true },
|
||||
// {
|
||||
// ref: stat("+#% to Fire and Chaos Resistances"),
|
||||
// elements: ["fire"],
|
||||
// chaos: true,
|
||||
// },
|
||||
// {
|
||||
// ref: stat("+#% to Cold and Chaos Resistances"),
|
||||
// elements: ["cold"],
|
||||
// chaos: true,
|
||||
// },
|
||||
// {
|
||||
// ref: stat("+#% to Lightning and Chaos Resistances"),
|
||||
// elements: ["lightning"],
|
||||
// chaos: true,
|
||||
// },
|
||||
// ];
|
||||
const RESISTANCES_INFO = [
|
||||
// {
|
||||
// ref: stat("+#% to All Resistances"),
|
||||
// elements: ["fire", "cold", "lightning"],
|
||||
// chaos: true,
|
||||
// },
|
||||
{
|
||||
ref: stat("+#% to all Elemental Resistances"),
|
||||
elements: ["fire", "cold", "lightning"],
|
||||
},
|
||||
{ ref: stat("+#% to Fire Resistance"), elements: ["fire"] },
|
||||
{ ref: stat("+#% to Cold Resistance"), elements: ["cold"] },
|
||||
{ ref: stat("+#% to Lightning Resistance"), elements: ["lightning"] },
|
||||
// {
|
||||
// ref: stat("+#% to Fire and Lightning Resistances"),
|
||||
// elements: ["fire", "lightning"],
|
||||
// },
|
||||
// { ref: stat("+#% to Fire and Cold Resistances"), elements: ["fire", "cold"] },
|
||||
// {
|
||||
// ref: stat("+#% to Cold and Lightning Resistances"),
|
||||
// elements: ["cold", "lightning"],
|
||||
// },
|
||||
{ ref: stat("+#% to Chaos Resistance"), elements: [""], chaos: true },
|
||||
// {
|
||||
// ref: stat("+#% to Fire and Chaos Resistances"),
|
||||
// elements: ["fire"],
|
||||
// chaos: true,
|
||||
// },
|
||||
// {
|
||||
// ref: stat("+#% to Cold and Chaos Resistances"),
|
||||
// elements: ["cold"],
|
||||
// chaos: true,
|
||||
// },
|
||||
// {
|
||||
// ref: stat("+#% to Lightning and Chaos Resistances"),
|
||||
// elements: ["lightning"],
|
||||
// chaos: true,
|
||||
// },
|
||||
];
|
||||
|
||||
// const ATTRIBUTES_INFO = [
|
||||
// { ref: stat("+# to all Attributes"), attributes: ["str", "dex", "int"] },
|
||||
// { ref: stat("+# to Strength"), attributes: ["str"] },
|
||||
// { ref: stat("+# to Dexterity"), attributes: ["dex"] },
|
||||
// { ref: stat("+# to Intelligence"), attributes: ["int"] },
|
||||
// { ref: stat("+# to Strength and Intelligence"), attributes: ["str", "int"] },
|
||||
// { ref: stat("+# to Strength and Dexterity"), attributes: ["str", "dex"] },
|
||||
// { ref: stat("+# to Dexterity and Intelligence"), attributes: ["dex", "int"] },
|
||||
// ];
|
||||
const ATTRIBUTES_INFO = [
|
||||
{ ref: stat("+# to all Attributes"), attributes: ["str", "dex", "int"] },
|
||||
{ ref: stat("+# to Strength"), attributes: ["str"] },
|
||||
{ ref: stat("+# to Dexterity"), attributes: ["dex"] },
|
||||
{ ref: stat("+# to Intelligence"), attributes: ["int"] },
|
||||
{ ref: stat("+# to Strength and Intelligence"), attributes: ["str", "int"] },
|
||||
{ ref: stat("+# to Strength and Dexterity"), attributes: ["str", "dex"] },
|
||||
{ ref: stat("+# to Dexterity and Intelligence"), attributes: ["dex", "int"] },
|
||||
];
|
||||
|
||||
interface PseudoRule {
|
||||
group?: string;
|
||||
@@ -71,130 +76,134 @@ interface PseudoRule {
|
||||
}
|
||||
|
||||
const PSEUDO_RULES: PseudoRule[] = [
|
||||
// {
|
||||
// pseudo: stat("+#% total Elemental Resistance"),
|
||||
// disabled: false,
|
||||
// stats: RESISTANCES_INFO.filter((info) => info.elements.length).map(
|
||||
// (info) => ({ ref: info.ref, multiplier: info.elements.length }),
|
||||
// ),
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("+#% total to Fire Resistance"),
|
||||
// group: "to_x_ele_res",
|
||||
// stats: RESISTANCES_INFO.filter((info) =>
|
||||
// info.elements.includes("fire"),
|
||||
// ).map((info) => ({ ref: info.ref })),
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("+#% total to Cold Resistance"),
|
||||
// group: "to_x_ele_res",
|
||||
// stats: RESISTANCES_INFO.filter((info) =>
|
||||
// info.elements.includes("cold"),
|
||||
// ).map((info) => ({ ref: info.ref })),
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("+#% total to Lightning Resistance"),
|
||||
// group: "to_x_ele_res",
|
||||
// stats: RESISTANCES_INFO.filter((info) =>
|
||||
// info.elements.includes("lightning"),
|
||||
// ).map((info) => ({ ref: info.ref })),
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("+#% total to Chaos Resistance"),
|
||||
// stats: RESISTANCES_INFO.filter((info) => info.chaos === true).map(
|
||||
// (info) => ({ ref: info.ref }),
|
||||
// ),
|
||||
// mutate(filter) {
|
||||
// if (
|
||||
// filter.sources.length === 1 &&
|
||||
// filter.sources[0].modifier.info.type === ModifierType.Crafted
|
||||
// ) {
|
||||
// filter.hidden = "filters.hide_crafted_chaos";
|
||||
// } else {
|
||||
// filter.disabled = false;
|
||||
// }
|
||||
// },
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("+# total to all Attributes"),
|
||||
// group: "to_all_attrs",
|
||||
// stats: [
|
||||
// { ref: stat("+# to all Attributes") },
|
||||
// // NOTE: not including other sources from `ATTRIBUTES_INFO`
|
||||
// ],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("+# total to Strength"),
|
||||
// group: "to_x_attr",
|
||||
// stats: ATTRIBUTES_INFO.filter((info) =>
|
||||
// info.attributes.includes("str"),
|
||||
// ).map((info) => ({ ref: info.ref })),
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("+# total to Dexterity"),
|
||||
// group: "to_x_attr",
|
||||
// stats: ATTRIBUTES_INFO.filter((info) =>
|
||||
// info.attributes.includes("dex"),
|
||||
// ).map((info) => ({ ref: info.ref })),
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("+# total to Intelligence"),
|
||||
// group: "to_x_attr",
|
||||
// stats: ATTRIBUTES_INFO.filter((info) =>
|
||||
// info.attributes.includes("int"),
|
||||
// ).map((info) => ({ ref: info.ref })),
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("+# total maximum Life"),
|
||||
// disabled: false,
|
||||
// stats: [
|
||||
// { ref: stat("+# to maximum Life"), required: true },
|
||||
// ...ATTRIBUTES_INFO.filter((info) => info.attributes.includes("str")).map(
|
||||
// (info) => ({ ref: info.ref, multiplier: 5 / 10 }),
|
||||
// ),
|
||||
// ],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("+# total maximum Mana"),
|
||||
// stats: [
|
||||
// { ref: stat("+# to maximum Mana"), required: true },
|
||||
// ...ATTRIBUTES_INFO.filter((info) => info.attributes.includes("int")).map(
|
||||
// (info) => ({ ref: info.ref, multiplier: 5 / 10 }),
|
||||
// ),
|
||||
// ],
|
||||
// },
|
||||
{
|
||||
pseudo: stat("+#% total Elemental Resistance"),
|
||||
disabled: false,
|
||||
stats: RESISTANCES_INFO.filter((info) => info.elements.length).map(
|
||||
(info) => ({ ref: info.ref, multiplier: info.elements.length }),
|
||||
),
|
||||
},
|
||||
{
|
||||
pseudo: stat("+#% total to Fire Resistance"),
|
||||
group: "to_x_ele_res",
|
||||
stats: RESISTANCES_INFO.filter((info) =>
|
||||
info.elements.includes("fire"),
|
||||
).map((info) => ({ ref: info.ref })),
|
||||
},
|
||||
{
|
||||
pseudo: stat("+#% total to Cold Resistance"),
|
||||
group: "to_x_ele_res",
|
||||
stats: RESISTANCES_INFO.filter((info) =>
|
||||
info.elements.includes("cold"),
|
||||
).map((info) => ({ ref: info.ref })),
|
||||
},
|
||||
{
|
||||
pseudo: stat("+#% total to Lightning Resistance"),
|
||||
group: "to_x_ele_res",
|
||||
stats: RESISTANCES_INFO.filter((info) =>
|
||||
info.elements.includes("lightning"),
|
||||
).map((info) => ({ ref: info.ref })),
|
||||
},
|
||||
{
|
||||
pseudo: stat("+#% total to Chaos Resistance"),
|
||||
stats: RESISTANCES_INFO.filter((info) => info.chaos === true).map(
|
||||
(info) => ({ ref: info.ref }),
|
||||
),
|
||||
mutate(filter) {
|
||||
if (
|
||||
filter.sources.length === 1 &&
|
||||
filter.sources[0].modifier.info.type === ModifierType.Crafted
|
||||
) {
|
||||
filter.hidden = "filters.hide_crafted_chaos";
|
||||
} else {
|
||||
filter.disabled = false;
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
pseudo: stat("+# total to all Attributes"),
|
||||
group: "to_all_attrs",
|
||||
stats: [
|
||||
{ ref: stat("+# to all Attributes") },
|
||||
// NOTE: not including other sources from `ATTRIBUTES_INFO`
|
||||
],
|
||||
},
|
||||
{
|
||||
pseudo: stat("+# total to Strength"),
|
||||
group: "to_x_attr",
|
||||
stats: ATTRIBUTES_INFO.filter((info) =>
|
||||
info.attributes.includes("str"),
|
||||
).map((info) => ({ ref: info.ref })),
|
||||
},
|
||||
{
|
||||
pseudo: stat("+# total to Dexterity"),
|
||||
group: "to_x_attr",
|
||||
stats: ATTRIBUTES_INFO.filter((info) =>
|
||||
info.attributes.includes("dex"),
|
||||
).map((info) => ({ ref: info.ref })),
|
||||
},
|
||||
{
|
||||
pseudo: stat("+# total to Intelligence"),
|
||||
group: "to_x_attr",
|
||||
stats: ATTRIBUTES_INFO.filter((info) =>
|
||||
info.attributes.includes("int"),
|
||||
).map((info) => ({ ref: info.ref })),
|
||||
},
|
||||
{
|
||||
pseudo: stat("+# total maximum Life"),
|
||||
disabled: false,
|
||||
stats: [
|
||||
{ ref: stat("+# to maximum Life"), required: true },
|
||||
...ATTRIBUTES_INFO.filter((info) => info.attributes.includes("str")).map(
|
||||
(info) => ({ ref: info.ref, multiplier: 5 / 10 }),
|
||||
),
|
||||
],
|
||||
},
|
||||
{
|
||||
pseudo: stat("+# total maximum Mana"),
|
||||
stats: [
|
||||
{ ref: stat("+# to maximum Mana"), required: true },
|
||||
...ATTRIBUTES_INFO.filter((info) => info.attributes.includes("int")).map(
|
||||
(info) => ({ ref: info.ref, multiplier: 5 / 10 }),
|
||||
),
|
||||
],
|
||||
},
|
||||
{
|
||||
pseudo: stat("+# total maximum Spirit"),
|
||||
stats: [{ ref: stat("+# to Spirit") }],
|
||||
},
|
||||
// {
|
||||
// pseudo: stat("#% total increased maximum Energy Shield"),
|
||||
// stats: [{ ref: stat("#% increased maximum Energy Shield") }],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("+# total maximum Energy Shield"),
|
||||
// stats: [
|
||||
// { ref: stat("+# to maximum Energy Shield") }, // global
|
||||
// ],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("+#% total Attack Speed"),
|
||||
// stats: [
|
||||
// { ref: stat("#% increased Attack Speed") }, // global
|
||||
// // { ref: stat('#% increased Attack and Cast Speed') }
|
||||
// ],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("+#% total Cast Speed"),
|
||||
// stats: [
|
||||
// { ref: stat("#% increased Cast Speed") },
|
||||
// // { ref: stat('#% increased Attack and Cast Speed') }
|
||||
// ],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("#% increased Movement Speed"),
|
||||
// stats: [{ ref: stat("#% increased Movement Speed") }],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("#% total increased Physical Damage"),
|
||||
// stats: [{ ref: stat("#% increased Global Physical Damage") }],
|
||||
// },
|
||||
{
|
||||
pseudo: stat("+# total maximum Energy Shield"),
|
||||
stats: [
|
||||
{ ref: stat("+# to maximum Energy Shield") }, // global
|
||||
],
|
||||
},
|
||||
{
|
||||
pseudo: stat("+#% total Attack Speed"),
|
||||
stats: [
|
||||
{ ref: stat("#% increased Attack Speed") }, // global
|
||||
// { ref: stat('#% increased Attack and Cast Speed') }
|
||||
],
|
||||
},
|
||||
{
|
||||
pseudo: stat("+#% total Cast Speed"),
|
||||
stats: [
|
||||
{ ref: stat("#% increased Cast Speed") },
|
||||
// { ref: stat('#% increased Attack and Cast Speed') }
|
||||
],
|
||||
},
|
||||
{
|
||||
pseudo: stat("#% increased Movement Speed"),
|
||||
stats: [{ ref: stat("#% increased Movement Speed") }],
|
||||
},
|
||||
{
|
||||
pseudo: stat("#% total increased Physical Damage"),
|
||||
stats: [{ ref: stat("#% increased Global Physical Damage") }],
|
||||
},
|
||||
// {
|
||||
// pseudo: stat("+#% Global Critical Strike Chance"),
|
||||
// group: "global_crit_chance",
|
||||
@@ -215,65 +224,65 @@ const PSEUDO_RULES: PseudoRule[] = [
|
||||
// pseudo: stat("+#% Global Critical Strike Multiplier"),
|
||||
// stats: [{ ref: stat("+#% to Global Critical Strike Multiplier") }],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("#% increased Elemental Damage"),
|
||||
// group: "incr_ele_dmg",
|
||||
// stats: [{ ref: stat("#% increased Elemental Damage") }],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("#% increased Lightning Damage"),
|
||||
// replaces: "incr_ele_dmg",
|
||||
// stats: [
|
||||
// { ref: stat("#% increased Lightning Damage"), required: true },
|
||||
// { ref: stat("#% increased Elemental Damage") },
|
||||
// ],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("#% increased Cold Damage"),
|
||||
// replaces: "incr_ele_dmg",
|
||||
// stats: [
|
||||
// { ref: stat("#% increased Cold Damage"), required: true },
|
||||
// { ref: stat("#% increased Elemental Damage") },
|
||||
// ],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("#% increased Fire Damage"),
|
||||
// group: "incr_fire_dmg",
|
||||
// replaces: "incr_ele_dmg",
|
||||
// stats: [
|
||||
// { ref: stat("#% increased Fire Damage"), required: true },
|
||||
// { ref: stat("#% increased Elemental Damage") },
|
||||
// ],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("#% increased Spell Damage"),
|
||||
// group: "incr_spell_dmg",
|
||||
// stats: [{ ref: stat("#% increased Spell Damage") }],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("#% increased Lightning Spell Damage"),
|
||||
// replaces: "incr_spell_dmg",
|
||||
// stats: [
|
||||
// { ref: stat("#% increased Lightning Spell Damage"), required: true },
|
||||
// { ref: stat("#% increased Spell Damage") },
|
||||
// ],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("#% increased Cold Spell Damage"),
|
||||
// replaces: "incr_spell_dmg",
|
||||
// stats: [
|
||||
// { ref: stat("#% increased Cold Spell Damage"), required: true },
|
||||
// { ref: stat("#% increased Spell Damage") },
|
||||
// ],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("#% increased Fire Spell Damage"),
|
||||
// replaces: "incr_spell_dmg",
|
||||
// stats: [
|
||||
// { ref: stat("#% increased Fire Spell Damage"), required: true },
|
||||
// { ref: stat("#% increased Spell Damage") },
|
||||
// ],
|
||||
// },
|
||||
{
|
||||
pseudo: stat("#% increased Elemental Damage"),
|
||||
group: "incr_ele_dmg",
|
||||
stats: [{ ref: stat("#% increased Elemental Damage") }],
|
||||
},
|
||||
{
|
||||
pseudo: stat("#% increased Lightning Damage"),
|
||||
replaces: "incr_ele_dmg",
|
||||
stats: [
|
||||
{ ref: stat("#% increased Lightning Damage"), required: true },
|
||||
{ ref: stat("#% increased Elemental Damage") },
|
||||
],
|
||||
},
|
||||
{
|
||||
pseudo: stat("#% increased Cold Damage"),
|
||||
replaces: "incr_ele_dmg",
|
||||
stats: [
|
||||
{ ref: stat("#% increased Cold Damage"), required: true },
|
||||
{ ref: stat("#% increased Elemental Damage") },
|
||||
],
|
||||
},
|
||||
{
|
||||
pseudo: stat("#% increased Fire Damage"),
|
||||
group: "incr_fire_dmg",
|
||||
replaces: "incr_ele_dmg",
|
||||
stats: [
|
||||
{ ref: stat("#% increased Fire Damage"), required: true },
|
||||
{ ref: stat("#% increased Elemental Damage") },
|
||||
],
|
||||
},
|
||||
{
|
||||
pseudo: stat("#% increased Spell Damage"),
|
||||
group: "incr_spell_dmg",
|
||||
stats: [{ ref: stat("#% increased Spell Damage") }],
|
||||
},
|
||||
{
|
||||
pseudo: stat("#% increased Lightning Spell Damage"),
|
||||
replaces: "incr_spell_dmg",
|
||||
stats: [
|
||||
{ ref: stat("#% increased Lightning Spell Damage"), required: true },
|
||||
{ ref: stat("#% increased Spell Damage") },
|
||||
],
|
||||
},
|
||||
{
|
||||
pseudo: stat("#% increased Cold Spell Damage"),
|
||||
replaces: "incr_spell_dmg",
|
||||
stats: [
|
||||
{ ref: stat("#% increased Cold Spell Damage"), required: true },
|
||||
{ ref: stat("#% increased Spell Damage") },
|
||||
],
|
||||
},
|
||||
{
|
||||
pseudo: stat("#% increased Fire Spell Damage"),
|
||||
replaces: "incr_spell_dmg",
|
||||
stats: [
|
||||
{ ref: stat("#% increased Fire Spell Damage"), required: true },
|
||||
{ ref: stat("#% increased Spell Damage") },
|
||||
],
|
||||
},
|
||||
// {
|
||||
// pseudo: stat("#% increased Elemental Damage with Attack Skills"),
|
||||
// replaces: "incr_ele_dmg",
|
||||
@@ -310,10 +319,10 @@ const PSEUDO_RULES: PseudoRule[] = [
|
||||
// pseudo: stat("#% of Physical Attack Damage Leeched as Mana"),
|
||||
// stats: [{ ref: stat("#% of Physical Attack Damage Leeched as Mana") }],
|
||||
// },
|
||||
// {
|
||||
// pseudo: stat("#% increased Mana Regeneration Rate"),
|
||||
// stats: [{ ref: stat("#% increased Mana Regeneration Rate") }],
|
||||
// },
|
||||
{
|
||||
pseudo: stat("#% increased Mana Regeneration Rate"),
|
||||
stats: [{ ref: stat("#% increased Mana Regeneration Rate") }],
|
||||
},
|
||||
];
|
||||
|
||||
export function filterPseudo(ctx: FiltersCreationContext) {
|
||||
|
||||
@@ -28,7 +28,6 @@ export function apiToSatisfySearch(
|
||||
stats: StatFilter[],
|
||||
filters: ItemFilters,
|
||||
): "trade" | "bulk" {
|
||||
console.log("item", item, "filter", filters, "stats", stats);
|
||||
if (stats.some((s) => !s.disabled)) {
|
||||
return "trade";
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ import {
|
||||
RATE_LIMIT_RULES,
|
||||
preventQueueCreation,
|
||||
} from "./common";
|
||||
import { STAT_BY_REF } from "@/assets/data";
|
||||
import { PSEUDO_ID_TO_TRADE_REQUEST, STAT_BY_REF } from "@/assets/data";
|
||||
import { RateLimiter } from "./RateLimiter";
|
||||
import { ModifierType } from "@/parser/modifiers";
|
||||
import { Cache } from "./Cache";
|
||||
@@ -105,7 +105,7 @@ interface TradeRequest {
|
||||
name?: string | { discriminator: string; option: string };
|
||||
type?: string | { discriminator: string; option: string };
|
||||
stats: Array<{
|
||||
type: "and" | "if" | "count" | "not";
|
||||
type: "and" | "if" | "count" | "not" | "weight";
|
||||
value?: FilterRange;
|
||||
filters: Array<{
|
||||
id: string;
|
||||
@@ -113,6 +113,7 @@ interface TradeRequest {
|
||||
min?: number;
|
||||
max?: number;
|
||||
option?: number | string;
|
||||
weight?: number;
|
||||
};
|
||||
disabled?: boolean;
|
||||
}>;
|
||||
@@ -299,6 +300,7 @@ export function createTradeRequest(
|
||||
);
|
||||
}
|
||||
|
||||
// Search by category not base type?
|
||||
const activeSearch =
|
||||
filters.searchRelaxed && !filters.searchRelaxed.disabled
|
||||
? filters.searchRelaxed
|
||||
@@ -427,6 +429,7 @@ export function createTradeRequest(
|
||||
|
||||
// BREAK ==============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
|
||||
|
||||
// Meta internal stuff, crafting as empty and setting dps/pdps/edps
|
||||
for (const stat of stats) {
|
||||
if (stat.tradeId[0] === "item.has_empty_modifier") {
|
||||
const TARGET_ID = {
|
||||
@@ -663,7 +666,9 @@ export function createTradeRequest(
|
||||
|
||||
const qAnd = query.stats[0];
|
||||
for (const stat of stats) {
|
||||
if (stat.tradeId.length === 1) {
|
||||
if (stat.tradeId[0].startsWith("pseudo.")) {
|
||||
query.stats.push(pseudoPseudoToQuery(stat.tradeId[0], stat));
|
||||
} else if (stat.tradeId.length === 1) {
|
||||
qAnd.filters.push(tradeIdToQuery(stat.tradeId[0], stat));
|
||||
} else {
|
||||
query.stats.push({
|
||||
@@ -699,7 +704,7 @@ export async function requestTradeResultList(
|
||||
{
|
||||
method: "POST",
|
||||
headers: {
|
||||
"Accept": "application/json",
|
||||
Accept: "application/json",
|
||||
"Content-Type": "application/json",
|
||||
},
|
||||
body: JSON.stringify(body),
|
||||
@@ -844,3 +849,10 @@ function nameToQuery(name: string, filters: ItemFilters) {
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
function pseudoPseudoToQuery(id: string, stat: StatFilter) {
|
||||
const filter = PSEUDO_ID_TO_TRADE_REQUEST[id];
|
||||
filter["value"] = { ...getMinMax(stat.roll) };
|
||||
filter["disabled"] = stat.disabled;
|
||||
return filter;
|
||||
}
|
||||
|
||||
@@ -12,12 +12,32 @@
|
||||
"useDefineForClassFields": true,
|
||||
"sourceMap": true,
|
||||
"paths": {
|
||||
"@/*": ["./src/*"],
|
||||
"@ipc/*": ["../ipc/*"]
|
||||
"@/*": [
|
||||
"./src/*"
|
||||
],
|
||||
"@ipc/*": [
|
||||
"../ipc/*"
|
||||
]
|
||||
},
|
||||
"types": ["vite/client"],
|
||||
"lib": ["esnext", "dom", "dom.iterable"]
|
||||
"types": [
|
||||
"vite/client",
|
||||
"vitest/importMeta"
|
||||
],
|
||||
"lib": [
|
||||
"esnext",
|
||||
"dom",
|
||||
"dom.iterable"
|
||||
]
|
||||
},
|
||||
"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"],
|
||||
"references": [{ "path": "./tsconfig.node.json" }]
|
||||
}
|
||||
"include": [
|
||||
"src/**/*.ts",
|
||||
"src/**/*.d.ts",
|
||||
"src/**/*.tsx",
|
||||
"src/**/*.vue"
|
||||
],
|
||||
"references": [
|
||||
{
|
||||
"path": "./tsconfig.node.json"
|
||||
}
|
||||
]
|
||||
}
|
||||
18
renderer/vitest.config.ts
Normal file
18
renderer/vitest.config.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
import { defineConfig } from "vitest/config";
|
||||
import tsconfigPaths from "vite-tsconfig-paths";
|
||||
|
||||
export default defineConfig({
|
||||
plugins: [tsconfigPaths()],
|
||||
test: {
|
||||
includeSource: ["src/**/*.{js,ts}"],
|
||||
globals: true,
|
||||
},
|
||||
define: {
|
||||
"import.meta.vitest": "undefined",
|
||||
},
|
||||
resolve: {
|
||||
alias: {
|
||||
"@/assets/data/en": "./src/parser/en",
|
||||
},
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user