# 物流系统 v5.0 文档 ## 概述 物流系统 v5.0 是一个高级物品和流体传输系统,支持多容器操作和缓存模式。系统通过配置文件管理任务,支持复杂的过滤规则和优先级设置。 ## 核心功能 ### 1. 传输类型 - **物品传输**:在容器间移动物品 - **流体传输**:在容器间移动流体 ### 2. 缓存模式 - 适用于及作为输出也作为输入的容器 - 物品被送如时添加临时黑名单 这些物品不会被再次传输到别的容器 ### 3. 过滤规则 - **白名单**:只允许特定物品传输 - **黑名单**:禁止特定物品传输 - **数量限制**:设置一次传输物品数量 ### 4. 优先级系统 - 输出容器按优先级分组 - 高优先级容器优先接收物品 - 同优先级采用轮询机制 ## 配置文件结构 配置文件存储在 `config.cfg` 中,包含以下部分: ```lua { settings = { logEnabled = false, -- 日志开关 zhlog = false, -- 中文日志开关 delay = 0.01 -- 轮询延迟(秒) }, tasks = { -- 任务列表 -- 任务示例 { type = "item", -- 或 "fluid" input = { ["容器名"] = { cache = true/false, whitelist = {["物品名"] = {}}, blacklist = {["物品名"] = {}} } }, output = { ["容器名"] = { priority = 数字, cache = true/false, whitelist = {["物品名"] = {count = 数量}}, blacklist = {["物品名"] = {}} } } } }, Tlist = {} -- 缓存传输列表 } ``` ## 使用命令 ### 基本命令 | 命令 | 描述 | 示例 | |------|------|------| | `add ` | 添加新任务 | `add {"type":"item","input":{"left":{...}},"output":{"right":{...}}}` | | `list` | 列出所有任务 | `list` | | `remove <索引>` | 移除任务 | `remove 1` | | `set ` | 修改设置 | `set delay 0.05` | | `help` | 显示帮助信息 | `help` | | `exit` | 退出程序 | `exit` | ### 设置命令 | 键 | 值 | 描述 | |----|----|------| | `log` | true/false | 启用/禁用日志 | | `zh` | true/false | 启用/禁用中文日志 | | `delay` | 数字 | 设置轮询延迟(秒) | ## 任务配置示例 ### 物品传输任务 ```json { "type": "item", "input": { "left": { "cache": true, "whitelist": { "minecraft:stone": {} } } }, "output": { "right": { "priority": 1, "whitelist": { "minecraft:stone": {"count": 64} }, "blacklist": { "minecraft:dirt": {} } } } } ``` ### 流体传输任务 ```json { "type": "fluid", "input": { "tank_left": { "whitelist": { "water": {} } } }, "output": { "tank_right": { "priority": 2 } } } ``` ## 日志系统 - **日志级别**: - SUCCESS (绿色):成功操作 - SKIPPED (橙色):跳过操作 - INFO (白色):一般信息 - WARNING (黄色):警告信息 - ERROR (红色):错误信息 - DEBUG (浅灰色):调试信息 - **日志格式**: ``` [时间] 级别: 消息 ``` ## 注意事项 1. 确保所有容器名称正确且可访问 2. 确保所有容器链接到电脑的同一个调制解调器 3. 流体容器必须支持流体接口 4. 复杂的过滤规则可能影响性能 5. 轮询延迟设置过低可能导致CPU占用过高 系统通过高效的缓存机制和优先级处理,实现了复杂的多容器物流管理,适用于各种自动化场景。