Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
start:zh [2022/08/11 09:58]
fight_xing [开放式电脑官方文档]
start:zh [2023/11/27 05:47] (current)
hfsr [可配置性]
Line 2: Line 2:
 ======================================= =======================================
  
-开放式电脑(OpenComputers,​ OC)是一个 Minecraft ​模组把电脑和机器人添游戏,使用 [[http://​www.lua.org/​|Lua]] [[http://​www.lua.org/​manual/​5.3/​manual.html|5.3]] ​作为编程语言。OC 借鉴了几个类似模组,比如 ComputerCraftStevesCarts 和 Modular Powersuits,创造一些新奇而有趣的东西。+开放式电脑(OpenComputers,​ OC)是一个Minecraft模组向游戏中用[[http://​www.lua.org/​|Lua]] [[http://​www.lua.org/​manual/​5.3/​manual.html|5.3]]编程的电脑和机器人。OC借鉴了几个类似模组的创意,比如ComputerCraftStevesCarts和Modular Powersuits,创造一些新奇而有趣的东西。
  
-**另请喜欢这个模组而有时间、能力的各位,帮助翻译一些英文文档,一起为 OC 社区做贡献!** +- [[start:​zh#​目录|方块物品文档]] 
- +- [[:​api:​zh|Lua API文档]] 
-- [[start:​zh#​目录|方块物品文档]] +- [[:​component:​zh|组件API文档]] \\ 
-- [[:​api:​zh|Lua API 文档]] +
-- [[:​component:​zh|Component ​API 文档]] \\ +
 \\  \\ 
 - [[:​tutorial:​zh|教程]] - [[:​tutorial:​zh|教程]]
 - [[tutorial:​oc1_basic_computer:​zh|入门]] - [[tutorial:​oc1_basic_computer:​zh|入门]]
-- [[http://​oc.cil.li/​|论坛主页]]\\+- [[http://​oc.cil.li/​|官方论坛主页]]\\
 \\ \\
-- [[https://​oc.shadowkat.net/​oc/​zh_CN/​|游戏内文档]]+- [[https://​oc.shadowkat.net/​oc/​zh_CN/​|HTML版游戏内手册]]
  
-通性+接能力
 ------------ ------------
  
-OC 可以通过以下几种MC交互:+OC的电脑可以通过若干式连接到外界的Minecraft世界,并交互:
  
-大部分开放式电脑的方块可以“看见”其它开放式电脑的方块,并且如果摆放在它们旁边就可以自动和它们动,或者可以使用 [[block:​cable|线缆]]距离连接它们。使用不同的网卡交换机在有线和无线两种层次上有逻辑地连接——或分离——各种组件也是可能的+对OC模组的大部分方块而言只要紧挨着摆放就可以它们“看见”彼此,并进行交互,或者可以使用[[block:​cable:zh|线缆]]以将它们间隔距离连接起来你还可以使用多种网卡交换机逻辑地连接或分组件,以有线和无线两种形式
  
-来自原版或其它模组的方块也可以通过 [[item:​redstone_card:​zh|红石卡]], [[block:​redstone_io:​zh|红石 I/O 端口]]或者一个 ​[[block:​adapter:​zh|适配器]]连接。很多来自其他模组的特方块已经被集成到适配器,例如来自建筑工业 ​2 或者热力膨胀的方块其它模组作者同样可以使用特定的 ​Java API 来为他们的方块添加特定的操作+来自原版Minecraft或其它模组的方块也可以通过[[item:​redstone_card:​zh|红石卡]],[[block:​redstone_io:​zh|红石I/​O端口]]或者[[block:​adapter:​zh|适配器]]与OC系统进行连接。很多来自其他模组的特方块已经可以与适配器交互,例如来自BuildCraftIndustrialCraft ​2或Thermal Expansion的方块其它模组作者同样可以使用Java API来为他们的方块添加相应句柄
  
-[[block:​robot:​zh|机器人]]几乎可以像真正的玩家一样与世界互动可以使用大多数工具、方块其他物品并且可以自己写序来决定机器人如何使用这个物品你可以写一个整理箱子的程序、挖矿程序, ​你甚至可以让它 [[api:​note:​zh|唱歌]] 或跳舞只有你想不到没有它做不到。+[[block:​robot:​zh|机器人]]几乎可以像真正的玩家一样与世界互动。 它们可以装备大多数工具、方块其他物品,你还可以控制机器人以你想要的方式使用物品你可以写程序让机器人整理物品容器、挖掘资源或是为你建造一座堡垒。你甚至可以让它[[api:​note:​zh|唱歌]]或跳舞以供你娱乐。只有你想不到的,没有它机器人做不到
  
-查看 [[component:​component_access:​zh|组件互动]]来了解如何通过 Lua 组件通信。+查看[[component:​component_access:​zh|访问组件]]页面来了解如何通过Lua组件通信。
  
 模块化 模块化
 ---------- ----------
  
-开放式电脑是用很多独立的模块构建的,例如显卡、硬盘扩展卡,允许精确的根据你的需要定制每台电脑。如果你想处理任务,可以构建小型电脑并节省资源或者你也可以将最后一颗钻石用在构建 ​MC 最昂贵、最强力的电脑上。+OC模组的电脑是由各种部件构建的,例如显卡、硬盘扩展卡。这使得你能够按照需求精确定制每台电脑。如果你想处理简单任务,可以节省构建电脑资源或者你也可以将所有资源都用在构建最昂贵、最强力的Minecraft电脑上。
  
-查看 [[:​start:​zh#​目录|方块和物品文档]] ​得能被用于构建你的电脑的组件列表。+查看[[:​start:​zh#​目录|方块和物品文档]]取可用于组装电脑的组件列表。
  
  
Line 40: Line 38:
 --------------- ---------------
  
-开放式电脑的内存和盘大小都是的,可以在配置文件中根据你的喜好调整。这不仅让 OC 对服务器非常友好,还会带给你温暖的怀旧感,回到那个盘和内存都用 KB 和 MB 计算的年代。但由于 Lua 程序非常资源友好你可以在中等的开放式电脑解决大多数问题。而且如果不能,你总是可以在更大的内存条上花费更多钻石。+OC模组电脑的内存和盘大小都是限的,具体数值可以在配置文件中根据你的喜好调整。这不仅有利于减轻OC对服务端造成的负荷,还会带给你温暖的怀旧感,回到那个盘和内存大小都用KB和MB计算的年代。但由于Lua程序占用的资源很少,中等性能OC模组电脑已经足以解决大多数问题。如果不能,你可以花费更多钻石制造更大的内存
  
-这些直观的限制之外,OC 也已经被设计能在服务上完美运行:开放式电脑使用可变数量的低优先度线程处理协程,几乎不对服务器 tick 造成延迟。附加地,运行中的程序会被强制、可配置地限资源消耗或者——如果没能这么——(游戏中的电脑)就会被强制崩溃,避免服务器被恶意或有缺陷的程序阻塞+除了这些直观的限制,我们还对OC进行了特殊设计,使其能在服务上完美运行:OC模组电脑使用固定数量的低优先度线程处理协程,以尽量减少造成的服务tick延迟。另外,运行中的程序在其占用资源达到一个可配置的恒定阈值后就会强退让,如果因为种种原因没能做到这点的话,(游戏中的电脑会被强制崩溃,避免服务端因为恶意工作异常的程序出现卡顿
  
  
-持续性+持续性
 ----------- -----------
  
-开放式电脑离开加载的区块,它们会被暂停但一旦区块稍后被加载,它们也精确地在暂点自动恢复。这使得开放式电脑能在 MC 环境中非常直观地使用,因为你不必担心区块加载或恢复,也不需要添加来自其它模组的区块加载器保持电脑运行。+OC模组电脑所在区块停止加载,它们的运行会被挂起,区块重新加载止的位置继续执行。这让玩家Minecraft环境中使用OC模组电脑时很符合直觉,因为你不必担心区块加载或恢复,也不需要添加来自其它模组的区块加载器保持电脑运行。
  
-具体来说,为了实现这个目标,OC 使用了一个原生库——[[https://​github.com/​fnuecke/​eris|Eris]] 库。这个库包含了官方的 Lua VM 实现,已经兼容并支持电脑被暂时暂停。当前这个库已经包含在 WindowsMac OS XLinux 和 BSD 版本的模组中,只需服务器运行所有纯净的 ​Lua 代码即可。如果这个库不适用于你的系统,模组会回到 LuaJ,一个基于 Java 的 Lua 实现,在这种情况下电脑不可持续,内存也不会被限制。+为了实现这个功能,OC引入了一个原生库——[[https://​github.com/​fnuecke/​eris|Eris]]库。这个库包含了官方的Lua虚拟机实现,已经足以支持电脑暂停的功能现在这个库已经包含在 WindowsMac OS XLinux和BSD版本的模组中,只需服务端支持即可,因为OC模组的所有Lua代码都仅在服务端执行。如果你的系统不支持此运行库,模组会回退到基于Java的Lua实现——LuaJ。这种情况下电脑不可持续,内存也不会被限制。
  
 能量 能量
 ----- -----
  
-电脑根据它们运行什么而消耗能量。每 tick 会消耗少量能量例如显卡和无线网卡会根据它们的工作负载消耗额外能量。这不仅很实,同样也能鼓励玩家优化他们的代码,不一台开放式电脑服务器一直运行不必要的任务。额外的能量消耗可以在配置文件中配置,甚至可以被完全移除,如果你想在一个不必考虑能量消耗的环境中工作的话。+电脑运行时会依据所做工作消耗能量。某些组件,例如显卡和无线网卡,除了每tick会消耗的少量能量外还会根据工作负载大小额外消耗能量。这不仅很实,同时还能鼓励玩家优化代码,不让OC模组的服务器一直忙于运行无用任务。能量消耗的准确数值可以在配置文件中修改,如果你想在完全不必考虑能量消耗的环境中工作的话,甚至可以移除
  
-开放式电脑模组用 [[block:​carpeted_capacitor:​zh|电容]] ​提供静电电,对于机器人有 ​[[item:​generator_upgrade:​zh|发电机升级]] 可用机器人和无人机还都可用使用 ​[[item:​solar_generator_upgrade:​zh|太阳能发电机升级]]。开放式电脑的设备同样可以由 [[:​crossmod_interoperation:​zh#​能量|其它模组]] 的能源当量供电。+开放式电脑模组中可以用[[block:​carpeted_capacitor:​zh|地毯式电容]]产生静电以供。此外,[[item:​generator_upgrade:​zh|发电机升级]]可机器人供电,[[item:​solar_generator_upgrade:​zh|太阳能发电机升级]]可以用于机器人和微控制器供电。开放式电脑的设备可以由[[:​crossmod_interoperation:​zh#​能量|其它模组]]的能源供电。
  
  
Line 63: Line 61:
 --------------- ---------------
  
-模组中几乎所有方面都能通过配置文件调整。不需要能量才能运行的电脑的爱好者?把运行消耗设置到零。不想能量出现在游玩过程中?那么完全禁用它!感觉机器人走的太慢了?让它们快点。想要更的多方块屏幕?增最大尺寸。快去查看 [[https://​github.com/​MightyPirates/​OpenComputers/​blob/​master-MC1.7.10/​src/​main/​resources/​application.conf|默认配置文件]] 来了解所有配置项。+模组中几乎一切都能通过配置文件调整。不喜欢需要能量才能运行的电脑?那就把运行时能量消耗设置到零。完全不想考虑能量?那么完全禁用它!感觉机器人走的太慢了?那就让它们快点。想要更的多方块屏幕?那就最大尺寸。你可以查看[[https://​github.com/​MightyPirates/​OpenComputers/​blob/​master-MC1.7.10/​src/​main/​resources/​application.conf|默认配置文件]](英文)来了解所有配置项。
  
 目录 目录
 ----------- -----------
 {{page>:​contents:​zh&​noheader&​noeditbutton&​nouser&​nofooter}} {{page>:​contents:​zh&​noheader&​noeditbutton&​nouser&​nofooter}}