@sakura2333/kancolle-data 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.d.ts ADDED
@@ -0,0 +1,21 @@
1
+ export interface KancolleDataPaths {
2
+ rootPath: string
3
+ manifestPath: string
4
+ improvement: {
5
+ listPath: string
6
+ detailPath: string
7
+ }
8
+ equipment: {
9
+ dropFromPath: string
10
+ specialBonusesPath: string
11
+ }
12
+ audit: {
13
+ buildReportPath: string
14
+ }
15
+ assets: {
16
+ useitemPath(id: number | string): string
17
+ }
18
+ }
19
+
20
+ declare const paths: KancolleDataPaths
21
+ export = paths
package/index.js ADDED
@@ -0,0 +1,26 @@
1
+ 'use strict'
2
+
3
+ const path = require('path')
4
+
5
+ const resolveData = (...parts) => path.join(__dirname, ...parts)
6
+
7
+ module.exports = Object.freeze({
8
+ rootPath: __dirname,
9
+ manifestPath: resolveData('manifest.json'),
10
+ improvement: Object.freeze({
11
+ listPath: resolveData('improvement', 'list.json'),
12
+ detailPath: resolveData('improvement', 'detail.nedb'),
13
+ }),
14
+ equipment: Object.freeze({
15
+ dropFromPath: resolveData('equipment', 'drop-from.nedb'),
16
+ specialBonusesPath: resolveData('equipment', 'special-bonuses.nedb'),
17
+ }),
18
+ audit: Object.freeze({
19
+ buildReportPath: resolveData('audit', 'build-report.json'),
20
+ }),
21
+ assets: Object.freeze({
22
+ useitemPath(id) {
23
+ return resolveData('assets', 'useitems', `${Number(id)}.png`)
24
+ },
25
+ }),
26
+ })
package/manifest.json ADDED
@@ -0,0 +1,149 @@
1
+ {
2
+ "packageVersion": "0.1.0",
3
+ "generatedAt": "2026-06-28T08:34:34+00:00",
4
+ "datasets": {
5
+ "improvement": {
6
+ "schemaVersion": 3,
7
+ "list": "improvement/list.json",
8
+ "detail": "improvement/detail.nedb"
9
+ },
10
+ "equipmentDropFrom": {
11
+ "schemaVersion": 1,
12
+ "path": "equipment/drop-from.nedb",
13
+ "status": "stale",
14
+ "error": "FileNotFoundError: [CACHE ONLY] cache miss: https://raw.githubusercontent.com/kcwiki/kancolle-data/refs/heads/master/wiki/ship.json -> raw.githubusercontent.com/kcwiki/kancolle-data/refs/heads/master/wiki/ship.json.html",
15
+ "sourceUrls": [
16
+ "https://raw.githubusercontent.com/kcwiki/kancolle-data/refs/heads/master/wiki/ship.json",
17
+ "https://raw.githubusercontent.com/kcwiki/kancolle-data/refs/heads/master/wiki/equipment.json"
18
+ ],
19
+ "refreshError": "FileNotFoundError: [CACHE ONLY] cache miss: https://raw.githubusercontent.com/kcwiki/kancolle-data/refs/heads/master/wiki/ship.json -> raw.githubusercontent.com/kcwiki/kancolle-data/refs/heads/master/wiki/ship.json.html"
20
+ },
21
+ "equipmentSpecialBonuses": {
22
+ "schemaVersion": 1,
23
+ "path": "equipment/special-bonuses.nedb",
24
+ "status": "stale",
25
+ "error": "FileNotFoundError: [CACHE ONLY] cache miss: https://raw.githubusercontent.com/KC3Kai/kancolle-replay/refs/heads/master/js/data/mst_slotitem_bonus.json -> raw.githubusercontent.com/KC3Kai/kancolle-replay/refs/heads/master/js/data/mst_slotitem_bonus.json.html",
26
+ "sourceUrl": "https://raw.githubusercontent.com/KC3Kai/kancolle-replay/refs/heads/master/js/data/mst_slotitem_bonus.json",
27
+ "refreshError": "FileNotFoundError: [CACHE ONLY] cache miss: https://raw.githubusercontent.com/KC3Kai/kancolle-replay/refs/heads/master/js/data/mst_slotitem_bonus.json -> raw.githubusercontent.com/KC3Kai/kancolle-replay/refs/heads/master/js/data/mst_slotitem_bonus.json.html"
28
+ },
29
+ "useitemIcons": {
30
+ "schemaVersion": 1,
31
+ "directory": "assets/useitems",
32
+ "count": 15
33
+ }
34
+ },
35
+ "sources": {
36
+ "akashiList": "https://akashi-list.me/",
37
+ "kcwikiData": [
38
+ "https://raw.githubusercontent.com/kcwiki/kancolle-data/refs/heads/master/wiki/ship.json",
39
+ "https://raw.githubusercontent.com/kcwiki/kancolle-data/refs/heads/master/wiki/equipment.json"
40
+ ],
41
+ "kc3SlotitemBonus": "https://raw.githubusercontent.com/KC3Kai/kancolle-replay/refs/heads/master/js/data/mst_slotitem_bonus.json"
42
+ },
43
+ "files": {
44
+ "LICENSES.md": {
45
+ "sha256": "40bddfdbcdc4b7812056e82fc5de18184097d2fdb903fab14262ea41e47c7594",
46
+ "bytes": 412
47
+ },
48
+ "README.md": {
49
+ "sha256": "2d3c30a768e2fdd543bba4c356999b506a8ebf6ec7684f2da2736b41dd681530",
50
+ "bytes": 884
51
+ },
52
+ "assets/useitems/100.png": {
53
+ "sha256": "6c056ddea6ed3d2bf425ff70a36e47ecbc1dfa3de29d14fec24533e7699778f2",
54
+ "bytes": 19758
55
+ },
56
+ "assets/useitems/104.png": {
57
+ "sha256": "d03aef31bb01e85f7d688997d1dd7c540ba486c33d07dbdb3022b7ceb43c5a9e",
58
+ "bytes": 19789
59
+ },
60
+ "assets/useitems/145.png": {
61
+ "sha256": "adb776649583f6f5247d835ab4263f30431ed556c6df808dcfb934f8f0fc2c79",
62
+ "bytes": 18783
63
+ },
64
+ "assets/useitems/150.png": {
65
+ "sha256": "79cf5a98164a489a79a82ce4b15d908dd48f5e60ab54782f6903dd6f1bef422d",
66
+ "bytes": 21310
67
+ },
68
+ "assets/useitems/2.png": {
69
+ "sha256": "c6d49fe10614fda38b27b30e2f71b2897a6e5b9db433912a952679c351bc7c26",
70
+ "bytes": 18075
71
+ },
72
+ "assets/useitems/241.png": {
73
+ "sha256": "d8252c64e9c4320f8a5708ad95c3cd493f77705399752189a0d04339060ff4e8",
74
+ "bytes": 19245
75
+ },
76
+ "assets/useitems/57.png": {
77
+ "sha256": "099226b22bc852df46dd3d92817e932df044e8050b6a74874418be152c41ee14",
78
+ "bytes": 128450
79
+ },
80
+ "assets/useitems/70.png": {
81
+ "sha256": "0f4075c759c4efd9c82f92311c5a657bff39f7ea0261be00818e8325cb0fc454",
82
+ "bytes": 45622
83
+ },
84
+ "assets/useitems/75.png": {
85
+ "sha256": "6db732f6217f551042d23df5cafff0b9b16bd00b34a52346c86a3c7d89f09352",
86
+ "bytes": 19226
87
+ },
88
+ "assets/useitems/77.png": {
89
+ "sha256": "00d525c6ddf022b60025f1d894756f9e54f1f682fa75af6857301fcd1e091706",
90
+ "bytes": 53783
91
+ },
92
+ "assets/useitems/78.png": {
93
+ "sha256": "7ad892b370da1501e27d5fc56fcf29c9e0f3e181481a4caa2886bbc38e061041",
94
+ "bytes": 21285
95
+ },
96
+ "assets/useitems/91.png": {
97
+ "sha256": "ba3fa1862fa44369991236339a720c2a28f083c9cba7c5be38a451ddc12742af",
98
+ "bytes": 21044
99
+ },
100
+ "assets/useitems/92.png": {
101
+ "sha256": "bf37a3091f90af02849679aaf8eaa3f5edc44415e79ee1d6a3d411e3b29ee572",
102
+ "bytes": 124067
103
+ },
104
+ "assets/useitems/94.png": {
105
+ "sha256": "02df557806b3fd7ff0469bc1c331dc1a42649fe98a221b89302095a52924e6df",
106
+ "bytes": 136922
107
+ },
108
+ "assets/useitems/95.png": {
109
+ "sha256": "0e5e16b66dab58c8a580cf8b244040cc6241926f34701f242300e46583551301",
110
+ "bytes": 28940
111
+ },
112
+ "audit/build-report.json": {
113
+ "sha256": "b470d6f0e16ff378217c85234b865e59b86d71bf9678a4d1a9eb301750f81cf3",
114
+ "bytes": 144
115
+ },
116
+ "equipment/drop-from.nedb": {
117
+ "sha256": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b",
118
+ "bytes": 1
119
+ },
120
+ "equipment/special-bonuses.nedb": {
121
+ "sha256": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b",
122
+ "bytes": 1
123
+ },
124
+ "improvement/detail.nedb": {
125
+ "sha256": "2e1f5068dfef350926206ca23c58d35c73f0f2384686a576caa330111d772cca",
126
+ "bytes": 467736
127
+ },
128
+ "improvement/list.json": {
129
+ "sha256": "29433d009cd04ef0383f14185f03a53691510da90963a3525ef90e4781dc8326",
130
+ "bytes": 209473
131
+ },
132
+ "index.d.ts": {
133
+ "sha256": "1a68db4ac48528ee534b9ef26324898bf41d7e4f32c3287e106c2073a1a68378",
134
+ "bytes": 380
135
+ },
136
+ "index.js": {
137
+ "sha256": "c41585d6158161154b272aa0f813df100a86bf97a6c3a7f43fa949713de16f71",
138
+ "bytes": 761
139
+ },
140
+ "schemas/equipment-drop-from.schema.json": {
141
+ "sha256": "b67bc757c8dd8523498abc0215656b7e8898485d060ddeac11577bb697a5279f",
142
+ "bytes": 963
143
+ },
144
+ "schemas/equipment-special-bonus.schema.json": {
145
+ "sha256": "03debb94d429c3565f0fe393928e45c7cbaf150d8478fbfa70073f96f8ced1de",
146
+ "bytes": 614
147
+ }
148
+ }
149
+ }
package/package.json ADDED
@@ -0,0 +1,35 @@
1
+ {
2
+ "name": "@sakura2333/kancolle-data",
3
+ "version": "0.1.0",
4
+ "description": "Versioned KanColle community datasets generated by kancolle-item-improvement-spider",
5
+ "main": "index.js",
6
+ "types": "index.d.ts",
7
+ "files": [
8
+ "index.js",
9
+ "index.d.ts",
10
+ "manifest.json",
11
+ "README.md",
12
+ "CHANGELOG.md",
13
+ "LICENSES.md",
14
+ "schemas/",
15
+ "improvement/",
16
+ "equipment/",
17
+ "assets/",
18
+ "audit/"
19
+ ],
20
+ "keywords": [
21
+ "kancolle",
22
+ "poi",
23
+ "data",
24
+ "improvement",
25
+ "equipment"
26
+ ],
27
+ "license": "MIT",
28
+ "publishConfig": {
29
+ "access": "public"
30
+ },
31
+ "scripts": {
32
+ "check": "node -e \"const d=require('./'); const fs=require('fs'); for(const p of [d.manifestPath,d.improvement.listPath,d.improvement.detailPath,d.equipment.dropFromPath,d.equipment.specialBonusesPath]) if(!fs.existsSync(p)) throw new Error('missing '+p)\"",
33
+ "prepack": "npm run check"
34
+ }
35
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "Equipment drop-from record",
4
+ "type": "object",
5
+ "required": ["equipmentId", "equipmentName", "sources"],
6
+ "properties": {
7
+ "equipmentId": { "type": "integer", "minimum": 1 },
8
+ "equipmentName": { "type": "string" },
9
+ "sources": {
10
+ "type": "array",
11
+ "items": {
12
+ "type": "object",
13
+ "required": ["shipId", "shipName", "method", "quantity"],
14
+ "properties": {
15
+ "shipId": { "type": "integer", "minimum": 1 },
16
+ "shipName": { "type": "string" },
17
+ "method": { "enum": ["initial", "remodel"] },
18
+ "quantity": { "type": "integer", "minimum": 1 },
19
+ "remodelLevel": { "type": "integer", "minimum": 1 },
20
+ "slotIndices": { "type": "array", "items": { "type": "integer", "minimum": 0 } },
21
+ "slotSizes": { "type": "array", "items": { "type": "integer", "minimum": 0 } }
22
+ }
23
+ }
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "Equipment special bonus record",
4
+ "type": "object",
5
+ "required": ["equipmentId", "equipmentName", "rules"],
6
+ "properties": {
7
+ "equipmentId": { "type": "integer", "minimum": 1 },
8
+ "equipmentName": { "type": "string" },
9
+ "rules": {
10
+ "type": "array",
11
+ "items": {
12
+ "type": "object",
13
+ "required": ["bonus", "conditions"],
14
+ "properties": {
15
+ "bonus": { "type": "object", "additionalProperties": { "type": "number" } },
16
+ "conditions": { "type": "object" }
17
+ }
18
+ }
19
+ }
20
+ }
21
+ }