This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
start:zh [2023/10/14 15:07] hfsr [资源限制] |
start:zh [2023/10/14 15:32] hfsr [能量] |
||
---|---|---|---|
Line 45: | Line 45: | ||
- | 可持续性 | + | 持续性 |
----------- | ----------- | ||
- | 当开放式电脑离开加载的区块,它们会被暂停,但一旦区块稍后被加载,它们也会精确地在暂停点自动恢复。这使得开放式电脑能在 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#能量|其它模组]] 的能源供电。 |