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
Next revision Both sides next revision
start:zh [2023/10/14 14:50]
hfsr [模块化]
start:zh [2023/10/14 15:35]
hfsr [可配置性]
Line 40: Line 40:
 --------------- ---------------
  
-开放式电脑的内存和磁盘大小都是的,可以在配置文件中根据你的喜好调整。这不仅让 OC 对服务器非常友好,还会带给你温暖的怀旧感,回到那个磁盘和内存都用 KB 和 MB 计算的年代。但由于 Lua 程序非常资源友好你可以在中等的开放式电脑解决大多数问题。而且如果不能,你总是可以在更大的内存条上花费更多钻石。+开放式电脑的内存和磁盘大小都是限的,可以在配置文件中根据你的喜好调整。这不仅有利于减轻OC对服务端造成的负荷,还会带给你温暖的怀旧感,回到那个磁盘和内存都用 KB 和 MB 计算的年代。但由于 Lua 程序占用的资源很少,中等性能的开放式电脑已经足以解决大多数问题。如果不能,你可以花费更多钻石制造更大的内存
  
-这些直观的限制之外OC 也已经被设计为能在服务器上完美运行:开放式电脑使用可变数量的低优先度线程来处理协程,几乎不对服务器 tick 造成延迟。附加地,运行中的程序会被强制可配置地限制资源消耗或者——如果没能这么——(游戏中的电脑)就会被强制崩溃,避免服务器被恶意或有缺陷的程序阻塞+除了这些直观的限制,我们还了OC能在服务端中完美运行而进行了特殊设计:开放式电脑使用固定数量的低优先度线程来处理协程,以尽量减少造成的服务tick延迟。另外,运行程序时所占用的资源会被强制限制在一个可配置的恒定标准之下,如果因为种种原因没能做到这点的话,(游戏中的)电脑会被强制崩溃,避免服务端因为恶意工作异常的程序出现延迟
  
  
-持续性+持续性
 ----------- -----------
  
-当开放式电脑离开加载的区块,它们会被暂停但一旦区块稍后被加载,它们也精确地在暂点自动恢复。这使开放式电脑能在 MC 环境中非常观地使用,因为你不必担心区块加载或恢复,也不需要添加来自其它模组的区块加载器来保持电脑运行。+当开放式电脑所在区块停止加载,它们的运行会被挂起,区块重新加载止的位置继续执行。这让玩家在MC环境中使开放式电脑时很符合,因为你不必担心区块加载或恢复,也不需要添加来自其它模组的区块加载器来保持电脑运行。
  
-具体来说,为了实现这个目标,OC 使用了一个原生库——[[https://​github.com/​fnuecke/​eris|Eris]] 库。这个库包含了官方的 Lua VM 实现,已经兼容并支持电脑被暂时暂停。当前这个库已经包含在 Windows, Mac OS X, Linux 和 BSD 版本的模组中,只需服务器运行所有纯净的 ​Lua 代码即可。如果这个库不适用于你的系统,模组会回到 LuaJ,一个基于 Java 的 Lua 实现,在这种情况下电脑续的,内存也不会被限制。+为了实现这个功能,OC引入了一个原生库——[[https://​github.com/​fnuecke/​eris|Eris]] 库。这个库包含了官方的 Lua 虚拟机实现,已经足以支持电脑暂停的功能现在这个库已经包含在 Windows, Mac OS X, Linux 和 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 63:
 --------------- ---------------
  
-模组中几乎所有方面都能通过配置文件调整。不需要能量才能运行的电脑的爱好者?把运行消耗设置到零。不想能量出现在游玩过程中?那么完全禁用它!感觉机器人走的太慢了?让它们快点。想要更的多方块屏幕?增大最大尺寸。快去查看 [[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}}