Skip to content

适用于 Minecraft 1.12.2 的 DarknessLib 模组

用于处理光照计算及类似内容的库模组

次浏览
17 次浏览
已更新
已更新 18.10.2026

概述

DarknessLib 是一个库模组,提供处理光照计算的功能,并内置支持最常见的动态光源模组。由于它是一个库模组,它本身几乎不做任何事情,但其他模组可以添加对它的支持,以减少创建相同类型代码的需要。

特性

此库提供以下内容:

  • 用于检查相对光照等级的函数(它也会考虑站在灵魂沙上等因素)
  • 支持 Atomic Stryker 的 Dynamic Lights、Optifine 的 Dynamic Lights 和 Smooth Entity Light。功能基于玩家对玩家生效(如果启用,任何使用上述动态光源模组的玩家,其光源都会被计入其总光照中,而不是客户端说很亮而服务端说不亮),并且有一个可配置的列表,你可以向其中添加额外的手持光源(如果它们尚未被发现,因为该库具有内置功能,会尝试从所有已注册的方块中确定光源)
  • 一个内置的载具列表,依赖该库的模组可以在检查光照等级之前检查该列表(因为当你坐在矿车或船内时,两者都会遮挡光照等级)
  • IMC 支持,允许模组将手持光源和载具添加到模组内的相应列表中(或者你可以在问题追踪器上提交工单,附上模组 ID 和载具实体类的路径,我会将其包含在内部列表中)

配置

该模组还附带一些配置选项:

动态光源列表:

添加到此列表中的物品/方块将被视为手持光源,前提是存在 AtomicStryker 的 Dynamic Lights,或者 Optifine 的 Dynamic Lights 已启用(并且动态光源模式已启用),或者存在 Smooth Entity Light。大多数发光方块会被自动检测为光源,因此你可能不必将它们添加到此列表中(请查看日志,它会列出所有找到的光源)

格式:modid:name:meta;lightlevel,其中 meta 和 lightlevel 是可选的(如果未指定,光照等级会自动设为 15)。

需要重启 Minecraft!

S:"Dynamic Lights List" <

动态光源模式:

如果启用此项(客户端和服务端),手持光源将被视为实际光源,前提是存在 AtomicStryker 的 Dynamic Lights,或者 Optifine 的 Dynamic Lights 已启用,或者存在 Smooth Entity Light。

B:"Dynamic Lights Mode"=false

IMC

如果你想将你的模组中的载具添加到载具列表,可以使用以下代码:

FMLInterModComms.sendMessage("darknesslib", "addVehicle", "path.to.mod.Entity"); //或任何能获取确切路径的替代方式

其中路径就是你的载具实体的路径(请务必事先检查光照计算是否受其影响)。如果你的载具继承自原版的 Minecart 或 Boat,它们会被系统自动检测到。当然,如果你有很多载具,你只需要为它们注册你的基类(假设你有一个)。

如果你想将你的模组中的手持光源添加到动态光源列表,可以使用以下代码:

FMLInterModComms.sendMessage("darknesslib", "addLightsource", new ItemStack(INSERTITEMREFERENCEHERE);

FMLInterModComms.sendMessage("darknesslib", "addLightsource", "modid:name:meta;lightlevel");

其中 ItemStack 版本会将光照等级设为 15,而 String 版本如果省略 meta 则默认为 OreDictionary.WILDCARDVALUE(如果省略,光照等级也会设为 15)。

模组支持

此模组内置支持:

  • MrCrayfish 的 Vehicle Mod 中的载具。

使用此库的模组

Grue(自 1.6.0 版本起)

Hungering Darkness(自 1.3.0 版本起)

捐赠

如果你想支持我的模组开发,可以考虑成为赞助者!你可以点击下方的图片访问我的 Patreon 页面。

服务器托管

我由 Aim2Game 赞助,你可以使用以下代码为自己的服务器获得折扣!ABYSSAL25 - 新客户终身享受 25% 折扣 ABYSSAL50 - 新客户首月享受 50% 折扣

整合包

此模组可以作为整合包的一部分重新分发,前提是给予作者(我,Shinoow)适当的署名,并附上该模组 Curse/CurseForge 页面的链接。你不允许在第三方网站上重新分发该模组(通过镜像该模组或创建“模组安装器”),对于被发现违反此规定的网站将采取法律行动。

Discord

我为我的模组设置了一个 discord 服务器(方便地命名为“AbyssalCraft”)。点击下方的图片加入!

如何安装 DarknessLib

  1. Install Millida Launcher

    The launcher is free: download it at millida.net/launcher and sign in with any nickname.

  2. Click “Install” on this page

    The launcher opens and installs the mod for Minecraft 1.12.2 on Forge automatically.

  3. Launch the game

    A profile with it appears in the launcher: click “Play”.

Minecraft 1.12.2 runs on Java 8: with a different Java version the game may close right after launch.

版本

含依赖项

Minecraft加载器文件日期操作
1.12.2—DarknessLib-1.12.2-1.1.2.jar50.9 KB
1.12.2ForgeDarknessLib-1.12.2-1.1.1.jar50.7 KB

常见问题

Which Minecraft versions does DarknessLib work on?

Only Minecraft 1.12.2: there are no files for other versions.

Is DarknessLib for Forge or Fabric?

Only for Forge: 1.12.2. There are no files for Fabric or NeoForge: a mod for another loader will not start.

Does DarknessLib need other mods?

The author lists no required dependencies: the Forge loader is enough.

Which Java does DarknessLib need?

Minecraft 1.12.2 runs on Java 8. If the game closes right after launch, the usual cause is the wrong Java version in the profile settings.

How do I download DarknessLib?

With Millida Launcher: it installs DarknessLib into a modpack by itself, for the right game version and loader. The launcher is free.

评价

成为第一个评价 DarknessLib 的人

评论 0

登录后即可评论登录

相似模组

全部模组

了解更多