初始提交:三玩法 Web 原型与设计文档

- 玩法一 数字一笔:规则库、求解器、26 关、竖屏触摸 Web 原型、测试
- 玩法二 连连气球:连消畅玩版核心、Web 原型、Cocos 球槽组件与导出脚本
- 玩法三 六边一笔:规则库、求解器、10 关 + 转墙实验包、Web 原型、测试
- 产品文档、UI 设计规范、各玩法 GDD / HANDOFF
- 文档移除全部外部参考作引用;删除玩法二 v0 旧稿
This commit is contained in:
cabinw
2026-09-16 14:30:59 +08:00
commit 8026e4628d
169 changed files with 22162 additions and 0 deletions
@@ -0,0 +1,60 @@
{
"checks": [
"两颗松手不扣步",
"触摸取消不提交",
"回滑撤回"
],
"levels": [
{
"level": 1,
"moves": 1,
"score": 1200
},
{
"level": 2,
"moves": 1,
"score": 1200
},
{
"level": 3,
"moves": 1,
"score": 2000
},
{
"level": 4,
"moves": 2,
"score": 3500
},
{
"level": 5,
"moves": 4,
"score": 7700
},
{
"level": 6,
"moves": 4,
"score": 8800
},
{
"level": 7,
"moves": 4,
"score": 8700
},
{
"level": 8,
"moves": 6,
"score": 14200
},
{
"level": 9,
"moves": 8,
"score": 20500
},
{
"level": 10,
"moves": 10,
"score": 23400
}
],
"errors": []
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 299 KiB

+241
View File
@@ -0,0 +1,241 @@
{
"checks": [
"刷新保留十关成绩",
"撤销精确恢复盘面及补球",
"重走结果确定一致",
"打乱保留数字和步数",
"撤销恢复打乱库存",
"自由模式无步数限制",
"帮助可用 Escape 关闭"
],
"layouts": [
{
"width": 320,
"height": 568,
"overflow": false,
"bodyHeight": 650,
"buttons": [
{
"id": "sound",
"w": 44,
"h": 44
},
{
"id": "help",
"w": 44,
"h": 44
},
{
"id": "undo",
"w": 69.5,
"h": 56
},
{
"id": "hint",
"w": 69.5,
"h": 56
},
{
"id": "shuffle",
"w": 69.5,
"h": 56
},
{
"id": "restart",
"w": 69.5,
"h": 56
}
]
},
{
"width": 360,
"height": 740,
"overflow": false,
"bodyHeight": 740,
"buttons": [
{
"id": "sound",
"w": 44,
"h": 44
},
{
"id": "help",
"w": 44,
"h": 44
},
{
"id": "undo",
"w": 74.25,
"h": 56
},
{
"id": "hint",
"w": 74.25,
"h": 56
},
{
"id": "shuffle",
"w": 74.25,
"h": 56
},
{
"id": "restart",
"w": 74.25,
"h": 56
}
]
},
{
"width": 390,
"height": 844,
"overflow": false,
"bodyHeight": 844,
"buttons": [
{
"id": "sound",
"w": 44,
"h": 44
},
{
"id": "help",
"w": 44,
"h": 44
},
{
"id": "undo",
"w": 81.75,
"h": 62
},
{
"id": "hint",
"w": 81.75,
"h": 62
},
{
"id": "shuffle",
"w": 81.75,
"h": 62
},
{
"id": "restart",
"w": 81.75,
"h": 62
}
]
},
{
"width": 430,
"height": 932,
"overflow": false,
"bodyHeight": 932,
"buttons": [
{
"id": "sound",
"w": 44,
"h": 44
},
{
"id": "help",
"w": 44,
"h": 44
},
{
"id": "undo",
"w": 91.75,
"h": 62
},
{
"id": "hint",
"w": 91.75,
"h": 62
},
{
"id": "shuffle",
"w": 91.75,
"h": 62
},
{
"id": "restart",
"w": 91.75,
"h": 62
}
]
},
{
"width": 844,
"height": 390,
"overflow": false,
"bodyHeight": 690,
"buttons": [
{
"id": "sound",
"w": 44,
"h": 44
},
{
"id": "help",
"w": 44,
"h": 44
},
{
"id": "undo",
"w": 88.75,
"h": 56
},
{
"id": "hint",
"w": 88.75,
"h": 56
},
{
"id": "shuffle",
"w": 88.75,
"h": 56
},
{
"id": "restart",
"w": 88.75,
"h": 56
}
]
},
{
"width": 1280,
"height": 900,
"overflow": false,
"bodyHeight": 900,
"buttons": [
{
"id": "sound",
"w": 44,
"h": 44
},
{
"id": "help",
"w": 44,
"h": 44
},
{
"id": "undo",
"w": 88.75,
"h": 62
},
{
"id": "hint",
"w": 88.75,
"h": 62
},
{
"id": "shuffle",
"w": 88.75,
"h": 62
},
{
"id": "restart",
"w": 88.75,
"h": 62
}
]
}
]
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

@@ -0,0 +1,10 @@
{
"url": "http://localhost:8003",
"debugPortAbsent": true,
"touch": {
"status": "won",
"score": "1,200 分",
"moves": "2"
},
"resetToCleanLevel1": true
}
@@ -0,0 +1,883 @@
{
"generatedAt": "2026-09-15T09:43:46.893Z",
"levels": [
{
"id": 1,
"title": "初芽",
"seed": 1234,
"budget": 3,
"solutionMoves": 1,
"spareMoves": 2,
"score": 1200,
"openings": 18,
"goals": [
{
"text": "合成 1 颗「4」",
"current": 1,
"target": 1,
"complete": true
}
],
"moves": [
{
"ids": [
3,
11,
10
],
"numbers": [
3,
2,
1
],
"created": 4,
"score": 1200
}
]
},
{
"id": 2,
"title": "回转",
"seed": 2212,
"budget": 4,
"solutionMoves": 1,
"spareMoves": 3,
"score": 1200,
"openings": 14,
"goals": [
{
"text": "完成 1 次倒序合成",
"current": 1,
"target": 1,
"complete": true
}
],
"moves": [
{
"ids": [
3,
8,
1
],
"numbers": [
3,
2,
1
],
"created": 4,
"score": 1200
}
]
},
{
"id": 3,
"title": "伸展",
"seed": 3421,
"budget": 5,
"solutionMoves": 1,
"spareMoves": 4,
"score": 2000,
"openings": 28,
"goals": [
{
"text": "一次连起 4 颗",
"current": 4,
"target": 4,
"complete": true
}
],
"moves": [
{
"ids": [
1,
2,
7,
8
],
"numbers": [
1,
2,
3,
4
],
"created": 5,
"score": 2000
}
]
},
{
"id": 4,
"title": "双生",
"seed": 4517,
"budget": 6,
"solutionMoves": 2,
"spareMoves": 4,
"score": 3500,
"openings": 38,
"goals": [
{
"text": "合成 2 颗「5」",
"current": 2,
"target": 2,
"complete": true
}
],
"moves": [
{
"ids": [
4,
9,
5,
8
],
"numbers": [
4,
3,
2,
1
],
"created": 5,
"score": 2000
},
{
"ids": [
2,
3,
7
],
"numbers": [
2,
3,
4
],
"created": 5,
"score": 3500
}
]
},
{
"id": 5,
"title": "丰收",
"seed": 5603,
"budget": 7,
"solutionMoves": 4,
"spareMoves": 3,
"score": 7700,
"openings": 4,
"goals": [
{
"text": "获得 6,500 分",
"current": 7700,
"target": 6500,
"complete": true
}
],
"moves": [
{
"ids": [
1,
2,
10
],
"numbers": [
1,
2,
3
],
"created": 4,
"score": 1200
},
{
"ids": [
11,
7,
18,
15
],
"numbers": [
4,
3,
2,
1
],
"created": 5,
"score": 3200
},
{
"ids": [
12,
14,
19,
20,
15
],
"numbers": [
1,
2,
3,
4,
5
],
"created": 6,
"score": 6200
},
{
"ids": [
8,
13,
9
],
"numbers": [
4,
3,
2
],
"created": 5,
"score": 7700
}
]
},
{
"id": 6,
"title": "抽叶",
"seed": 6723,
"budget": 8,
"solutionMoves": 4,
"spareMoves": 4,
"score": 8800,
"openings": 40,
"goals": [
{
"text": "合成 2 颗「6」",
"current": 2,
"target": 2,
"complete": true
},
{
"text": "一次连起 4 颗",
"current": 4,
"target": 4,
"complete": true
}
],
"moves": [
{
"ids": [
1,
9,
6,
4
],
"numbers": [
1,
2,
3,
4
],
"created": 5,
"score": 2000
},
{
"ids": [
2,
3,
7,
4
],
"numbers": [
2,
3,
4,
5
],
"created": 6,
"score": 4400
},
{
"ids": [
15,
17,
22,
20
],
"numbers": [
4,
3,
2,
1
],
"created": 5,
"score": 6400
},
{
"ids": [
18,
21,
11,
20
],
"numbers": [
2,
3,
4,
5
],
"created": 6,
"score": 8800
}
]
},
{
"id": 7,
"title": "繁枝",
"seed": 7841,
"budget": 9,
"solutionMoves": 4,
"spareMoves": 5,
"score": 8700,
"openings": 12,
"goals": [
{
"text": "合成 1 颗「7」",
"current": 1,
"target": 1,
"complete": true
}
],
"moves": [
{
"ids": [
4,
3,
2
],
"numbers": [
4,
3,
2
],
"created": 5,
"score": 1500
},
{
"ids": [
17,
9,
11,
2
],
"numbers": [
2,
3,
4,
5
],
"created": 6,
"score": 3900
},
{
"ids": [
7,
15,
19,
8
],
"numbers": [
4,
3,
2,
1
],
"created": 5,
"score": 5900
},
{
"ids": [
12,
21,
8,
2
],
"numbers": [
3,
4,
5,
6
],
"created": 7,
"score": 8700
}
]
},
{
"id": 8,
"title": "花径",
"seed": 8917,
"budget": 10,
"solutionMoves": 6,
"spareMoves": 4,
"score": 14200,
"openings": 18,
"goals": [
{
"text": "一次连起 5 颗",
"current": 5,
"target": 5,
"complete": true
},
{
"text": "获得 14,000 分",
"current": 14200,
"target": 14000,
"complete": true
}
],
"moves": [
{
"ids": [
4,
3,
5,
12
],
"numbers": [
4,
3,
2,
1
],
"created": 5,
"score": 2000
},
{
"ids": [
16,
17,
13,
11,
12
],
"numbers": [
1,
2,
3,
4,
5
],
"created": 6,
"score": 5000
},
{
"ids": [
15,
10,
23,
25
],
"numbers": [
4,
3,
2,
1
],
"created": 5,
"score": 7000
},
{
"ids": [
20,
21,
7,
25
],
"numbers": [
2,
3,
4,
5
],
"created": 6,
"score": 9400
},
{
"ids": [
19,
9,
18,
22
],
"numbers": [
1,
2,
3,
4
],
"created": 5,
"score": 11400
},
{
"ids": [
12,
22,
32,
31
],
"numbers": [
6,
5,
4,
3
],
"created": 7,
"score": 14200
}
]
},
{
"id": 9,
"title": "并蒂",
"seed": 9123,
"budget": 12,
"solutionMoves": 8,
"spareMoves": 4,
"score": 20500,
"openings": 16,
"goals": [
{
"text": "合成 2 颗「7」",
"current": 2,
"target": 2,
"complete": true
}
],
"moves": [
{
"ids": [
1,
2,
3
],
"numbers": [
2,
3,
4
],
"created": 5,
"score": 1500
},
{
"ids": [
3,
10,
6,
8,
17
],
"numbers": [
5,
4,
3,
2,
1
],
"created": 6,
"score": 4500
},
{
"ids": [
4,
12,
13,
7
],
"numbers": [
1,
2,
3,
4
],
"created": 5,
"score": 6500
},
{
"ids": [
22,
15,
9,
14,
7,
17
],
"numbers": [
1,
2,
3,
4,
5,
6
],
"created": 7,
"score": 10700
},
{
"ids": [
21,
16,
20,
27
],
"numbers": [
4,
3,
2,
1
],
"created": 5,
"score": 12700
},
{
"ids": [
11,
25,
19,
24,
27
],
"numbers": [
1,
2,
3,
4,
5
],
"created": 6,
"score": 15700
},
{
"ids": [
33,
29,
23,
28
],
"numbers": [
1,
2,
3,
4
],
"created": 5,
"score": 17700
},
{
"ids": [
30,
39,
28,
27
],
"numbers": [
3,
4,
5,
6
],
"created": 7,
"score": 20500
}
]
},
{
"id": 10,
"title": "满园",
"seed": 10429,
"budget": 14,
"solutionMoves": 10,
"spareMoves": 4,
"score": 23400,
"openings": 16,
"goals": [
{
"text": "合成 1 颗「8」",
"current": 1,
"target": 1,
"complete": true
},
{
"text": "获得 22,000 分",
"current": 23400,
"target": 22000,
"complete": true
}
],
"moves": [
{
"ids": [
1,
6,
3
],
"numbers": [
2,
3,
4
],
"created": 5,
"score": 1500
},
{
"ids": [
3,
7,
9,
5,
4
],
"numbers": [
5,
4,
3,
2,
1
],
"created": 6,
"score": 4500
},
{
"ids": [
10,
20,
19,
23
],
"numbers": [
4,
3,
2,
1
],
"created": 5,
"score": 6500
},
{
"ids": [
8,
13,
18,
23,
4
],
"numbers": [
2,
3,
4,
5,
6
],
"created": 7,
"score": 10000
},
{
"ids": [
14,
30,
31,
29
],
"numbers": [
4,
3,
2,
1
],
"created": 5,
"score": 12000
},
{
"ids": [
22,
16,
25,
29
],
"numbers": [
2,
3,
4,
5
],
"created": 6,
"score": 14400
},
{
"ids": [
27,
24,
33
],
"numbers": [
2,
3,
4
],
"created": 5,
"score": 15900
},
{
"ids": [
4,
29,
33,
37,
32
],
"numbers": [
7,
6,
5,
4,
3
],
"created": 8,
"score": 19900
},
{
"ids": [
28,
2,
15,
35
],
"numbers": [
4,
3,
2,
1
],
"created": 5,
"score": 21900
},
{
"ids": [
39,
38,
40
],
"numbers": [
2,
3,
4
],
"created": 5,
"score": 23400
}
]
}
],
"physics": {
"checkedStates": 1225,
"randomMerges": 1046,
"longestRun": 18,
"maxOverlap": 0.7719946571965153
}
}