|
| 1 | +--- |
| 2 | +title: 迁移其他商店插件配置 |
| 3 | +description: 将其他商店插件配置迁移到 MatrixShop 的建议路径和提示词模板。 |
| 4 | +--- |
| 5 | + |
| 6 | +# 迁移其他商店插件配置 |
| 7 | + |
| 8 | +这一页讨论的不是“怎么照抄原插件结构”,而是: |
| 9 | + |
| 10 | +如何把其他商店插件的配置迁移成 MatrixShop 当前主线支持的结构。 |
| 11 | + |
| 12 | +## 常见迁移来源 |
| 13 | + |
| 14 | +当前最值得优先支持的来源有: |
| 15 | + |
| 16 | +- `UltimateShop` |
| 17 | +- `EconomyShopGUI` |
| 18 | +- `Shopkeepers` |
| 19 | +- `QuickShop` |
| 20 | + |
| 21 | +## 迁移原则 |
| 22 | + |
| 23 | +### 1. 不保留源插件的目录结构 |
| 24 | + |
| 25 | +迁移目标应该是 MatrixShop 当前支持的目录,而不是保留源插件键名。 |
| 26 | + |
| 27 | +例如: |
| 28 | + |
| 29 | +- 静态分类商店 -> `SystemShop` |
| 30 | +- 玩家上架市场 -> `PlayerShop / GlobalMarket / Auction` |
| 31 | +- 箱子和告示牌商店 -> `ChestShop` |
| 32 | + |
| 33 | +### 2. 以功能归类,不以插件名归类 |
| 34 | + |
| 35 | +不要把: |
| 36 | + |
| 37 | +- `UltimateShop` |
| 38 | +- `EconomyShopGUI` |
| 39 | + |
| 40 | +简单当作“旧版商城配置”整体照搬。 |
| 41 | + |
| 42 | +应该先识别它们的实际能力,再映射到: |
| 43 | + |
| 44 | +- `SystemShop` |
| 45 | +- `PlayerShop` |
| 46 | +- `GlobalMarket` |
| 47 | +- `ChestShop` |
| 48 | + |
| 49 | +### 3. 把货币层拆出来 |
| 50 | + |
| 51 | +如果源插件把货币写在每个页面或商品里,迁移时要按 MatrixShop 规则重组: |
| 52 | + |
| 53 | +1. 商品级 |
| 54 | +2. 商店级 |
| 55 | +3. 模块级 |
| 56 | +4. 默认 `vault` |
| 57 | + |
| 58 | +## 具体建议 |
| 59 | + |
| 60 | +### UltimateShop -> MatrixShop |
| 61 | + |
| 62 | +最常见的映射目标是: |
| 63 | + |
| 64 | +- `SystemShop/settings.yml` |
| 65 | +- `SystemShop/shops/*.yml` |
| 66 | + |
| 67 | +映射思路: |
| 68 | + |
| 69 | +- 源分类 -> `shops/<category>.yml` |
| 70 | +- 商品显示 -> `name / lore / material / item` |
| 71 | +- 价格 -> `goods.<id>.price` |
| 72 | +- 限购 -> `goods.<id>.buy-max` |
| 73 | +- 页面标题和布局 -> `Title / layout / icons / template` |
| 74 | + |
| 75 | +推荐提示词: |
| 76 | + |
| 77 | +```text |
| 78 | +把下面这份 UltimateShop 配置迁移成 MatrixShop 的 SystemShop。 |
| 79 | +要求: |
| 80 | +- 输出目标文件路径 |
| 81 | +- 使用 MatrixShop 当前目录结构 |
| 82 | +- 不保留 UltimateShop 原键名 |
| 83 | +- 如果货币需要统一,优先放到 shop 级或模块级 |
| 84 | +``` |
| 85 | + |
| 86 | +### EconomyShopGUI -> MatrixShop |
| 87 | + |
| 88 | +最常见的映射目标也是: |
| 89 | + |
| 90 | +- `SystemShop/settings.yml` |
| 91 | +- `SystemShop/shops/*.yml` |
| 92 | + |
| 93 | +映射思路: |
| 94 | + |
| 95 | +- 商店页 -> 一个 `shops/<page>.yml` |
| 96 | +- GUI 排列 -> `layout` 和 `icons` |
| 97 | +- 商品 -> `goods` |
| 98 | + |
| 99 | +推荐提示词: |
| 100 | + |
| 101 | +```text |
| 102 | +把下面这份 EconomyShopGUI 配置迁移成 MatrixShop 的 SystemShop。 |
| 103 | +要求: |
| 104 | +- 每个页面生成一个 shops/*.yml |
| 105 | +- 价格和限购转换为 MatrixShop goods 结构 |
| 106 | +- 不要输出 EconomyShopGUI 原始键名 |
| 107 | +``` |
| 108 | + |
| 109 | +### QuickShop -> MatrixShop |
| 110 | + |
| 111 | +这类物理箱店不要迁到 `SystemShop`。 |
| 112 | + |
| 113 | +更合理的目标是: |
| 114 | + |
| 115 | +- `ChestShop/settings.yml` |
| 116 | +- `ChestShop/signs.yml` |
| 117 | +- `ChestShop/ui/*.yml` |
| 118 | + |
| 119 | +推荐提示词: |
| 120 | + |
| 121 | +```text |
| 122 | +把这份 QuickShop 需求迁移成 MatrixShop ChestShop 配置。 |
| 123 | +要求: |
| 124 | +- 使用 MatrixShop 当前的 ChestShop 结构 |
| 125 | +- 不输出 shops/*.yml |
| 126 | +- 保留箱子店、告示牌和展示物的行为设计 |
| 127 | +``` |
| 128 | + |
| 129 | +## 输出建议 |
| 130 | + |
| 131 | +让 agent 做迁移时,建议始终要求它: |
| 132 | + |
| 133 | +1. 先给出目标文件路径 |
| 134 | +2. 再给出完整 YAML |
| 135 | +3. 如果存在不支持的源功能,只写一小段差异说明 |
| 136 | + |
| 137 | +这样输出最容易直接落地。 |
0 commit comments