diff --git a/README.md b/README.md
index 9a15df216..f27d4d7d2 100644
--- a/README.md
+++ b/README.md
@@ -6,14 +6,11 @@
-
-
-
-
+
diff --git a/bukkit/compatibility/src/main/java/net/momirealms/craftengine/bukkit/compatibility/BukkitCompatibilityManager.java b/bukkit/compatibility/src/main/java/net/momirealms/craftengine/bukkit/compatibility/BukkitCompatibilityManager.java
index 2d1879e43..049efa25f 100644
--- a/bukkit/compatibility/src/main/java/net/momirealms/craftengine/bukkit/compatibility/BukkitCompatibilityManager.java
+++ b/bukkit/compatibility/src/main/java/net/momirealms/craftengine/bukkit/compatibility/BukkitCompatibilityManager.java
@@ -106,6 +106,7 @@ public class BukkitCompatibilityManager implements CompatibilityManager {
}
if (this.isPluginEnabled("AuraSkills")) {
this.registerLevelerProvider("AuraSkills", new AuraSkillsLevelerProvider());
+ logHook("AuraSkills");
}
if (this.isPluginEnabled("MythicMobs")) {
BukkitItemManager.instance().registerExternalItemProvider(new MythicMobsProvider());
diff --git a/bukkit/compatibility/src/main/java/net/momirealms/craftengine/bukkit/compatibility/papi/ImageExpansion.java b/bukkit/compatibility/src/main/java/net/momirealms/craftengine/bukkit/compatibility/papi/ImageExpansion.java
index c6ac983c1..e86171c4c 100644
--- a/bukkit/compatibility/src/main/java/net/momirealms/craftengine/bukkit/compatibility/papi/ImageExpansion.java
+++ b/bukkit/compatibility/src/main/java/net/momirealms/craftengine/bukkit/compatibility/papi/ImageExpansion.java
@@ -59,6 +59,8 @@ public class ImageExpansion extends PlaceholderExpansion {
int codepoint;
if (param.length == 4) {
codepoint = image.codepointAt(Integer.parseInt(param[2]), Integer.parseInt(param[3]));
+ } else if (param.length == 3) {
+ codepoint = image.codepointAt(Integer.parseInt(param[2]), 0);
} else if (param.length == 2) {
codepoint = image.codepointAt(0,0);
} else {
diff --git a/bukkit/paper-loader/src/main/java/net/momirealms/craftengine/bukkit/plugin/PaperCraftEngineBootstrap.java b/bukkit/paper-loader/src/main/java/net/momirealms/craftengine/bukkit/plugin/PaperCraftEngineBootstrap.java
index 1af1956bf..aadff5866 100644
--- a/bukkit/paper-loader/src/main/java/net/momirealms/craftengine/bukkit/plugin/PaperCraftEngineBootstrap.java
+++ b/bukkit/paper-loader/src/main/java/net/momirealms/craftengine/bukkit/plugin/PaperCraftEngineBootstrap.java
@@ -50,6 +50,7 @@ public class PaperCraftEngineBootstrap implements PluginBootstrap {
new ModernEventHandler(context, this.plugin).register();
} else {
try {
+ logger.info("Patching the server...");
RuntimePatcher.patch(this.plugin);
} catch (Exception e) {
throw new RuntimeException("Failed to patch server", e);
diff --git a/common-files/src/main/resources/translations/en.yml b/common-files/src/main/resources/translations/en.yml
index 31d995f66..4d46ce56c 100644
--- a/common-files/src/main/resources/translations/en.yml
+++ b/common-files/src/main/resources/translations/en.yml
@@ -113,7 +113,6 @@ warning.config.image.missing_char: "Issue found in file - The im
warning.config.image.codepoint_conflict: "Issue found in file - The image '' is using a character '()' in font that has been used by another image ''."
warning.config.image.invalid_codepoint_grid: "Issue found in file - Image '' has an invalid 'chars' codepoint grid."
warning.config.image.invalid_char: "Issue found in file - Image '' has a char parameter containing combining characters, which may result in image splitting."
-warning.config.image.file_not_found: "Issue found in file - PNG file '' not found for image ''."
warning.config.image.invalid_hex_value: "Issue found in file - The image '' is using a unicode character '' that is not a valid hexadecimal (radix 16) value."
warning.config.recipe.duplicate: "Issue found in file - Duplicated recipe ''. Please check if there is the same configuration in other files."
warning.config.recipe.missing_type: "Issue found in file - The recipe '' is missing the required 'type' argument."
@@ -349,4 +348,6 @@ warning.config.selector.invalid_type: "Issue found in file - The
warning.config.selector.invalid_target: "Issue found in file - The config '' is using an invalid selector target ''."
warning.config.resource_pack.item_model.conflict.vanilla: "Failed to generate item model for '' because this item model has been occupied by a vanilla item."
warning.config.resource_pack.item_model.already_exist: "Failed to generate item model for '' because the file '' already exists."
-warning.config.resource_pack.model.generation.already_exist: "Failed to generate model because the model file '' already exists."
\ No newline at end of file
+warning.config.resource_pack.model.generation.already_exist: "Failed to generate model because the model file '' already exists."
+warning.config.resource_pack.generation.missing_texture: "Missing texture: ''."
+warning.config.resource_pack.generation.missing_model: "Missing model: ''."
\ No newline at end of file
diff --git a/common-files/src/main/resources/translations/tr.yml b/common-files/src/main/resources/translations/tr.yml
index 7c1c475b5..64f30f644 100644
--- a/common-files/src/main/resources/translations/tr.yml
+++ b/common-files/src/main/resources/translations/tr.yml
@@ -79,7 +79,6 @@ warning.config.image.invalid_font_chars: " dosyasında sorun bulu
warning.config.image.missing_char: " dosyasında sorun bulundu - '' resmi gerekli 'char' argümanı eksik."
warning.config.image.codepoint_conflict: " dosyasında sorun bulundu - '' resmi, yazı tipinde başka bir resim '' tarafından kullanılmış olan '()' karakterini kullanıyor."
warning.config.image.invalid_codepoint_grid: " dosyasında sorun bulundu - '' resminin geçersiz bir 'chars' kod noktası ızgarası var."
-warning.config.image.file_not_found: " dosyasında sorun bulundu - '' resmi için '' PNG dosyası bulunamadı."
warning.config.image.invalid_hex_value: " dosyasında sorun bulundu - '' resmi, geçerli bir onaltılık (16 tabanlı) değer olmayan '' unicode karakterini kullanıyor."
warning.config.recipe.duplicate: " dosyasında sorun bulundu - Yinelenen tarif ''. Diğer dosyalarda aynı yapılandırmanın olup olmadığını kontrol edin."
warning.config.recipe.missing_type: " dosyasında sorun bulundu - '' tarifi gerekli 'type' argümanı eksik."
diff --git a/common-files/src/main/resources/translations/zh_cn.yml b/common-files/src/main/resources/translations/zh_cn.yml
index d9feadebf..9280141c9 100644
--- a/common-files/src/main/resources/translations/zh_cn.yml
+++ b/common-files/src/main/resources/translations/zh_cn.yml
@@ -113,7 +113,6 @@ warning.config.image.missing_char: "在文件 发现问题 - 图
warning.config.image.codepoint_conflict: "在文件 发现问题 - 图片 '' 在字体 中使用的字符 '()' 已被其他图片 '' 占用"
warning.config.image.invalid_codepoint_grid: "在文件 发现问题 - 图片 '' 的 'chars' 码位网格无效"
warning.config.image.invalid_char: "在文件 发现问题 - 图片 '' 的 'char' 参数包含组合字符可能导致图片分裂"
-warning.config.image.file_not_found: "在文件 发现问题 - 图片 '' 的 PNG 文件 '' 未找到"
warning.config.image.invalid_hex_value: "在文件 发现问题 - 图片 '' 使用的 Unicode 字符 '' 不是有效的十六进制值"
warning.config.recipe.duplicate: "在文件 发现问题 - 重复的配方 '' 请检查其他文件中是否存在相同配置"
warning.config.recipe.missing_type: "在文件 发现问题 - 配方 '' 缺少必需的 'type' 参数"
diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/Config.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/Config.java
index b0aa4e218..af49ec1b7 100644
--- a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/Config.java
+++ b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/Config.java
@@ -188,6 +188,7 @@ public class Config {
UpdaterSettings
.builder()
.setVersioning(new BasicVersioning("config-version"))
+ .addIgnoredRoute(PluginProperties.getValue("config"), "resource-pack.delivery.hosting", '.')
.build()
);
try {
diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/template/TemplateManagerImpl.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/template/TemplateManagerImpl.java
index 1141f6083..82a3727cc 100644
--- a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/template/TemplateManagerImpl.java
+++ b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/template/TemplateManagerImpl.java
@@ -242,6 +242,8 @@ public class TemplateManagerImpl implements TemplateManager {
result.put(placeholder, NullTemplateArgument.INSTANCE);
} else if (rawArgument instanceof Number number) {
result.put(placeholder, new ObjectTemplateArgument(number));
+ } else if (rawArgument instanceof Boolean booleanValue) {
+ result.put(placeholder, new ObjectTemplateArgument(booleanValue));
} else {
// 将参数字符串化后,应用参数再放入
Object applied = applyArgument(rawArgument.toString(), parentArguments);