4.5 KiB
4.5 KiB
CSV存档系统使用说明
🎯 新的存档方式
根据您的需求,存档系统已经完全重新设计,现在只使用CSV格式保存迷宫和路径信息。
📁 文件格式
存档文件采用CSV格式,路径信息直接嵌入在迷宫数据中:
路径标记格式:
- 空地 + 路径:
0
→p10
(表示第10步) - 金币 + 路径:
g15
→g15p10
(金币15,路径第10步) - 陷阱 + 路径:
t20
→t20p10
(陷阱20,路径第10步) - 机关 + 路径:
l24
→l24p10
(机关24,路径第10步) - boss + 路径:
b92
→b92p10
(boss92,路径第10步) - 起点 + 路径:
s
→sp1
(起点,路径第1步) - 终点 + 路径:
e
→ep25
(终点,路径第25步)
示例CSV内容:
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
1,g28p11,p10,p9,p14,p16,p17,p18,p19,p20,p21,p22,p23,t14p24,p25,1
1,1,1,g27p8,1,1,1,1,1,1,1,1,1,1,p26,1
1,p5,p6,p7,0,0,0,t14,0,0,1,0,1,p28,p27,1
1,p4,1,1,1,1,1,0,1,t16,1,0,1,ep29,1,1
🎮 功能特性
1. 保存功能
- 快速保存:
Ctrl+S
- 自动使用时间戳命名 - 命名保存: 通过存档界面自定义名称
- 路径完整性: 保存完整的路径序列到CSV
2. 读档功能
- CSV解析: 自动解析CSV中的路径信息
- 路径重建: 完整恢复路径序列和位置
- 格式兼容: 支持复杂的路径标记格式
3. 路径处理
- 多路径支持: 处理一个格子被多次经过的情况(如
p35p37
) - 特殊格子: 正确处理起点、终点、金币、陷阱等特殊元素
- 顺序保持: 确保路径顺序完全正确
🔧 操作方法
保存游戏:
- 快速保存: 按
Ctrl+S
自动保存到saves/maze_save_时间戳.csv
- 命名保存:
- 点击"读档"按钮
- 按
N
键新建存档 - 输入文件名(自动添加.csv后缀)
- 按回车确认
加载游戏:
- 点击"读档"按钮或按
Ctrl+L
- 使用↑↓键选择存档文件
- 按回车加载选中的存档
- 游戏会显示完整的路径信息
管理存档:
- 查看列表: 显示所有CSV存档文件
- 删除存档: 选中后按
Delete
键 - 按时间排序: 最新的存档显示在前面
📂 存档文件结构
saves/
├── maze_save_20250629_174154.csv # 时间戳命名的存档
├── my_best_solution.csv # 自定义命名的存档
└── level_1_complete.csv # 另一个自定义存档
💡 高级特性
路径重叠处理:
当路径多次经过同一个格子时,系统会正确保存多个路径标记:
p35p37
- 表示第35步和第37步都经过这个格子g15p10p20
- 表示金币15,第10步和第20步都经过
自动解析:
系统使用正则表达式自动识别所有路径标记:
# 识别 g15p10p20 中的所有路径号:10, 20
path_matches = re.findall(r'p(\d+)', cell)
🎨 界面说明
存档界面:
- 文件格式: 显示"输入存档名称(.csv)"提示
- 路径信息: 加载时显示"存档加载成功"
- 完整显示: 加载后立即显示完整路径
快捷键:
- Ctrl+S: 保存包含路径的CSV文件
- Ctrl+L: 打开读档界面
- N键: 新建存档(在存档界面中)
- Delete: 删除选中的存档
📊 数据完整性
保存时:
- ✅ 完整的迷宫结构
- ✅ 完整的路径序列(1到N的所有步骤)
- ✅ 特殊元素的属性值
- ✅ 路径与元素的关联关系
加载时:
- ✅ 自动解析所有路径标记
- ✅ 重建完整的路径序列
- ✅ 恢复原始迷宫结构
- ✅ 正确处理路径重叠
🔄 兼容性
- 向前兼容: 支持读取旧版本生成的CSV文件
- 标准格式: 使用标准CSV格式,可用Excel等工具查看
- 跨平台: 文件在不同操作系统间完全兼容
📝 注意事项
- 文件名: 会自动添加.csv后缀,无需手动输入
- 路径完整性: 确保所有路径步骤都被正确保存和加载
- 特殊字符: 避免在存档名中使用特殊字符
- 存储位置: 所有存档保存在
saves/
目录下
🏆 优势
- 简洁明了: 路径信息直接可见,易于理解
- 完全兼容: 与您现有的CSV工作流程完美集成
- 数据完整: 保存所有必要信息,无信息丢失
- 易于调试: 可以直接查看和编辑CSV文件
- 标准格式: 使用标准CSV格式,通用性强
现在您的存档系统完全符合您的需求:只保存CSV文件,路径信息嵌入其中,格式清晰易懂!🎉