
自定义画作
将您自己的自定义画作添加到Minecraft中。
查看大图
向 Minecraft 添加你自己的自定义画作!添加任意数量的画作,不受原版画作重新贴图的限制!每幅画都可以拥有自定义尺寸和纹理,甚至可以添加名称和艺术家标签。使用自定义的“画作包”,你可以将自定义画作添加到任何世界,甚至服务器中!

开箱即用,你还会看到一个内置包,其中包含捆绑在游戏资源中、通常无法放置的四幅元素主题画作。尽情享受你的时尚风格的风、地、火和水之画作吧!

为了更好地配合你游戏中的所有画作,此模组还创建了一个画作选择菜单。放置画作时,游戏不再每次都随机选择,而是会打开一个菜单,你可以在其中选择包和画作,并带有搜索和过滤功能。现在,你可以每次都精准地放置你想要的画作!

该模组还赋予每幅画作自己独特的物品图标——无论是来自你安装的包还是原版变体!每幅画作的艺术品都会被缩小,并配上挂钩和阴影,以适配标准的16×16物品形状,这样你就可以在背包、快捷栏和物品展示框中一目了然地分辨出它们。灵感主要来自 Vanilla Tweaks 的“独特画作物品”资源包。自定义包和原版渲染分别在客户端配置中有各自的开关。

请注意,此模组中_并不_包含任何新画作。你需要自己提供! 你可以在不添加任何包的情况下使用此模组,它仍然会提供隐藏画作和精美的新画作选择菜单。但是,如果你在寻找支持此模组的画作包,可以看看我的 著名真实画作 包,它为现实世界中最著名的一些画作添加了风格化的表现!
向你的世界添加画作包
向世界添加画作包的最简单方式是将其放入世界存档内的 custompaintings 文件夹中,例如 .minecraft/saves/My Awesome World/custompaintings/FamousPaintings-1.0.zip。该包可以是 zip 或文件夹形式。
└── .minecraft/
├── config/
├── logs/
├── resourcepacks/
├── saves/
│ └── My Awesome World/
│ ├── advancements/
│ ├── custompaintings/
│ │ └── FamousPaintings-1.0.zip ᐊ
│ ├── data/
│ ├── datapacks/
│ ├── DIM1/
│ ├── DIM-1/
│ ├── entities/
│ ├── playerdata/
│ ├── poi/
│ ├── region/
│ ├── stats/
│ └── level.dat
├── options.txt
└── servers.dat
你也可以通过打开模组的主菜单(见下文),导航到“管理包”界面,然后将包 zip 文件或文件夹拖放到游戏窗口中来向世界添加包,操作方式类似于资源包。模组会负责复制文件,并自动刷新列表让你知道操作成功!

创造模式物品栏
与原版画作类似,你所有的自定义画作都会出现在创造模式物品栏的功能方块下。物品模型会根据你提供的纹理和画作尺寸在运行时动态生成,以提供令人惊讶的高质量画作近似效果!灵感主要来自 Vanilla Tweaks 的“独特画作物品”资源包。此功能可通过客户端的配置和配置菜单进行切换。
切石机配方
基于 Vanilla Tweaks 的“画作选择器”数据包,你所有自定义画作的独特物品也将作为切石机配方提供!只需将通用/随机画作物品放入输入槽,你就能制作出绑定到特定画作的物品,放置时将跳过 UI 并始终放置该画作变体!这同样适用于原版画作变体——放入一个通用画作,然后选择你想要的精确的烤肉串、阿兹特克等,包括那些通常无法放置的风、地、火和水元素画作。自定义包和原版配方在服务端/每个世界的配置中各有自己的开关。
向你的服务器添加画作包
向服务器添加包必须由拥有服务器文件系统访问权限的服务器管理员完成。与在单人世界中安装类似,只需将包复制到服务器世界存档内的 custompaintings 文件夹中即可。
└── <服务器根目录>/
├── config/
├── logs/
├── world/
│ ├── advancements/
│ ├── custompaintings/
│ │ └── FamousPaintings-1.0.zip ᐊ
│ ├── data/
│ ├── datapacks/
│ ├── DIM1/
│ ├── DIM-1/
│ ├── entities/
│ ├── playerdata/
│ ├── poi/
│ ├── region/
│ ├── stats/
│ └── level.dat
├── banned-ips.json
├── banned-players.json
├── eula.txt
├── ops.json
├── server.properties
├── usercache.json
└── whitelist.json
从 3.0.0 之前的资源包迁移
如果你是 3.0.0 更改为服务器驱动自定义格式画作包之前的 Custom Paintings 用户(即你仍然拥有资源包风格的画作包),迁移到新版本的最简单方法是直接安装新版本的模组并加入你的世界!然后,如果你打开模组主菜单(如果安装了 Mod Menu,则通过它打开,或通过按键绑定——有关模组主菜单的更多信息,请参阅下方章节)并导航到“转换传统包”界面。你应该会在那里看到你的资源包风格画作包列表,你可以点击将每个包直接迁移到当前世界中安装的新格式!
如果你想同时快速转换多个世界或服务器的包,请取消选中顶部的开关(或在未连接到世界时访问同一界面),将转换后的包输出到通用临时目录,然后点击“打开输出文件夹”在电脑的文件浏览器中查看它们!
创建画作包
包格式
此模组的自定义画作由画作包驱动。要为模组创建画作包,请在电脑上某处为其创建一个文件夹,并起一个有用的名字,例如“Scott 的自定义画作”。在该文件夹内,创建另一个名为“images”的文件夹,并将你所有的画作图片复制到其中。确保它们都是 PNG 图像文件。如果你有其他格式,可以使用在线文件转换器进行转换(用你喜欢的搜索引擎找一个;网上有很多很多)。然后,在包根文件夹内,还要创建一个名为 custompaintings.json 的文件。
.
└── Scott's Custom Paintings/
├── images/
│ ├── castlescape.png
│ ├── sunsetbeach.png
│ ├── worldmap.png
│ └── spookyforest.png
└── custompaintings.json
打开 custompaintings.json 文件,并填入类似以下内容:
{
"id": "scottscustompaintings",
"name": "Scott's Custom Paintings",
"description": "Scott's Custom Paintings",
"paintings": [
{
"id": "castlescape",
"name": "Castle in the Mountains",
"artist": "Scott Lang",
"width": 2,
"height": 3
},
{
"id": "sunsetbeach",
"name": "Sunset at the Beach",
"artist": "Claude Monet",
"width": 2,
"height": 2
},
{
"id": "worldmap",
"name": "World Map",
"artist": "Scott Lang",
"width": 4,
"height": 3
},
{
"id": "spookyforest",
"name": "Nighttime Forest",
"artist": "Scott Lang",
"width": 3,
"height": 1
}
]
}
包属性
id:文本;仅限字母数字、下划线和短划线 - 画作包的唯一 ID。此 ID 必须与所有其他画作包不同(也不同于其他添加自定义画作的 Fabric 模组的模组 ID)。
name:文本(可选) - 画作选择器中显示的此包的名称。如果省略,UI 将仅显示资源包的文件名。
description:文本(可选) - 画作选择器中显示的包的简短描述。
paintings:列表[画作] - 画作选择器 UI 中所有可用的画作定义。每个画作的 ID 应对应于图像的文件名(不带 '.png')。
migrations:列表[迁移] - 与此包关联的自动迁移。你不太可能需要手动创建迁移,但独立的画作包编辑器_(即将推出)_可以在你将大型包拆分为多个较小的包时为你生成它们。
画作属性
每幅画作都需要定义自己的属性,以告知模组画作在游戏中应如何显示。
id:文本;仅限字母数字、下划线和短划线 - 画作的唯一 ID。此 ID 应对应于包“images”文件夹中画作的 PNG 图像文件的名称(不带 '.png')。
name:文本(可选) - 画作的名称。
artist:文本(可选) - 画作的艺术家。
width:整数 - 此画作应占用的方块宽度。例如,原版大金刚画作的值应为 4。
height:整数 - 此画作应占用的方块高度。例如,原版大金刚画作的值应为 3。
模组主菜单(配置、包管理、缓存管理等){#main-menu}
模组带有一个主菜单,用于访问与该模组配合使用的一系列实用工具。如果你安装了 Mod Menu,你可以在模组列表中找到模组的配置按钮进入主菜单。

否则,你可以在 Minecraft 原版按键绑定菜单中配置一个按键绑定(默认 U 键),按下该键将打开 Custom Paintings 主菜单。

这两个选项都会打开模组的主菜单,其中包含按钮,可导航至你使用 Custom Paintings 模组所需的所有配置、管理和实用工具!

模组配置
管理模组配置(针对客户端/单人游戏设置)的最简单方式是通过 UI。从主菜单导航到配置页面,即可在游戏内调整你的设置。

该模组有多个配置文件来调整模组行为。有一些仅限客户端的配置位于 Minecraft 安装文件夹的主配置文件夹中,以及世界存档文件夹内(服务器上为 world)的世界特定配置。
客户端/全局配置
你的客户端有一个“全局”配置文件,适用于你所有的单人游戏世界。此文件位于 <minecraft 目录>/config/custompaintings.toml。你也可以通过主菜单中的配置界面修改它。
覆盖原版渲染距离(overrideRenderDistance):true|false - 是否覆盖游戏默认的画作渲染距离阈值。默认情况下,画作与所有其他实体在同一距离渲染,但启用此选项后,你可以强制游戏从更远的地方渲染它们。默认为 false。
渲染距离缩放(renderDistanceScale):整数;1-64 - 用于缩放画作渲染距离阈值的数字。数字越大,表示可以从更远的地方渲染。仅在 overrideRenderDistance 为 true 时适用。默认为 16。
在本地缓存来自服务器的图像(cacheImages):true|false - 是否缓存已从服务器下载的画作图像。这样做可以减少加载时间并节省网络/服务器资源,但意味着将图像永久存储在磁盘上,这可能会占用大量空间。默认为 true。
保留缓存图像的天数(cacheTtl):整数;1-1000 - 缓存的画作图像在被标记为过期并自动删除之前,应在缓存中存储多长时间。默认为 14。
静默所有传统包转换提示(silenceAllConvertPrompts):true|false - 是否静默关于将传统(3.0.0 之前)资源包风格画作包转换为新格式的提示。加入世界后,模组会检查你的 resourcepacks 文件夹中是否有任何旧式画作包,并提示你从模组主菜单进行转换。将此设置为 true 可全局静默这些提示。默认为 false。
在自定义画作物品上渲染艺术品(renderArtworkOnItems):true|false - 是否在画作物品图标上渲染每幅自定义画作的艺术品(在背包、快捷栏、物品展示框等中)。当为 false 时,自定义画作物品将回退到通用的原版画作图标。默认为 true。
在原版画作物品上渲染艺术品(renderVanillaArtworkOnItems):true|false - 与 renderArtworkOnItems 对应的原版版本:当物品堆栈标识出特定画作变体时(例如,创造模式物品栏中的画作条目),是否在原版画作变体(烤肉串、阿兹特克、大地等)的物品上渲染画作艺术品。当为 false 时,这些物品使用通用的原版画作图标。默认为 true。
单人游戏每世界配置
每个世界的存档文件夹中也有一个配置文件,例如 <minecraft 目录>/saves/My World/config/custompaintings.toml。如果你在单人游戏中,你也可以从与客户端配置相同的游戏内菜单中修改这些设置。
静默此世界的传统包转换提示(silenceConvertPrompt):true|false - 与客户端配置中的 silenceAllConvertPrompts 相同,但仅适用于当前世界。默认为 false。
使用切石机选择特定画作(pickPaintingWithStoneCutter):true|false - 是否为活动自定义包中的每幅画作添加切石机配方,以便通用画作物品可以被切割成绑定到特定自定义画作变体的物品(在放置时跳过选择器 UI)。默认为 true。
使用切石机选择特定原版画作(pickVanillaPaintingWithStoneCutter):true|false - 与 pickPaintingWithStoneCutter 对应的原版版本:是否为每个可放置的原版画作变体(烤肉串、阿兹特克等)添加切石机配方。默认为 true。
服务端配置
最后,服务器上还有一个配置文件,位于世界的存档文件夹内,例如 <服务器根目录>/world/config/custompaintings.toml。你需要访问服务器的文件系统才能更改这些设置。
限制向客户端的图像传输(throttleImageDownloads):true|false - 是否限制自定义画作图像在客户端加入服务器时发送给客户端的速率。强烈建议保持启用此选项,尤其是如果你的服务器规模为中等至大型(10+ 名玩家)。默认为 true。
每秒最大图像数据包数(maxImagePacketsPerSecond):整数;0-∞ - 每秒发送给已连接客户端的图像网络数据包的最大数量。仅在 throttleImageDownloads 为 true 时适用。设置为 0 可禁用按数据包数量的限制。默认为 40。
每客户端每秒最大图像数据包数(maxPerClientImagePacketsPerSecond):整数;0-∞ - 每秒发送给已连接客户端的图像网络数据包的最大数量,按客户端计算。仅在 throttleImageDownloads 为 true 时适用。设置为 0 可禁用按客户端的数据包数量限制。
每个图像数据包的最大大小(KB)(maxImagePacketSize):整数;0-∞:可发送给客户端的每个画作图像网络数据包的最大大小,以 KB 为单位。仅在 throttleImageDownloads 为 true 时适用。设置为 0(不推荐)可在单个网络数据包中完整发送所有图像。默认为 256。
启用或禁用包,或将包添加到你的世界
打开包管理界面会显示你世界/服务器中所有可用包的摘要。对于单人游戏,以及如果你在服务器上拥有 OP 权限,你会看到类似资源包界面的内容,可以启用和禁用包,而无需手动处理文件。
在单人游戏世界中,你还可以将包直接拖放到游戏界面上,将其添加到世界中。

转换旧版(3.0.0 之前)包到新格式
如果你已经有适用于旧版本模组(使用资源包系统)的画作包,模组可以帮助你将包迁移到新格式,甚至直接将其添加到你的世界中。

卸载此模组与数据完整性
从 v3.0.0 开始,Custom Paintings 会将你所有的画作选择和相关数据存储在世界的存档文件夹中的单独文件中。这意味着即使在没有安装模组的情况下加载游戏(例如,在升级到新的 Minecraft 版本后),也不会丢失数据!当你决定再次安装模组时,所有数据都将被加载,你的画作将被恢复。
3.0.0 之前(资源包)版本
在 3.0.0 之前,Custom Paintings 是基于资源包的,而非服务器驱动。如果你来自于旧版本,或者周围有旧包,以下是工作方式不同的部分:
包是 Minecraft 资源包。 不是将包放入世界的
custompaintings/文件夹中,而是将其放入resourcepacks/并像任何其他资源包一样启用它——没有游戏内包管理或拖放安装,也没有服务端图像传输。在多人游戏中,每个玩家(和服务器)都必须安装模组以及相同版本、完全相同的包,否则画作将无法渲染。该模组实际上是针对单人游戏设计的。纹理位于包的
assets树中。custompaintings.json位于资源包的根目录,每幅画作的 PNG 位于assets/<包 ID>/textures/painting/<画作 ID>.png——包id决定了纹理目录。(3.0.0+ 格式改为使用带有images/子文件夹的独立包文件夹。)图像为 PNG,理想情况下每方块 16 像素。JSON 模式略有不同。 包
id仅允许字母数字和下划线(不允许短划线),没有description字段,任何没有匹配条目的画作纹理默认使用 1×1。画作name和artist字段是在 v2.0.0 中添加的。paintings和migrations列表的工作方式相同。管理是通过命令/按键绑定驱动的。 没有统一的主菜单。清理界面(未知画作、不匹配画作、运行迁移)通过
/custompaintings manage或“杂项”按键绑定部分中未绑定的按键绑定访问,其余/custompaintings命令套件(identify、count、fix、move、reassign、remove)则从聊天中处理有针对性的修复。
正在加载版本记录…

正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。