Add release name
This commit is contained in:
parent
4145c11a3a
commit
548b3c083b
28
README.md
28
README.md
|
@ -4,24 +4,34 @@ A Bukkit server implementation utilizing Mixin.
|
||||||
|
|
||||||
![Actions](https://img.shields.io/github/workflow/status/IzzelAliz/Arclight/Java%20CI%20with%20Gradle?style=flat-square) ![GitHub](https://img.shields.io/github/license/IzzelAliz/Arclight?style=flat-square)
|
![Actions](https://img.shields.io/github/workflow/status/IzzelAliz/Arclight/Java%20CI%20with%20Gradle?style=flat-square) ![GitHub](https://img.shields.io/github/license/IzzelAliz/Arclight?style=flat-square)
|
||||||
|
|
||||||
| Minecraft | Forge | Status | Build |
|
| Release | Forge | Status | Build |
|
||||||
|:---------:|:-------:| :---: |:------------------------------------------------------------------------------------------------------------------------------------------------------:|
|
|:-------------:|:-------:|:------:|:------------------------------------------------------------------------------------------------------------------------------------------------------:|
|
||||||
| 1.19.x | 43.1.3 | ACTIVE | [![1.19 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight-19?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight-19) |
|
| Horn (1.19.x) | 43.1.3 | ACTIVE | [![1.19 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight-19?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight-19) |
|
||||||
| 1.18.x | 40.1.80 | ACTIVE | [![1.18 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight-18?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight-18) |
|
| 1.18.x | 40.1.80 | LTS | [![1.18 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight-18?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight-18) |
|
||||||
| 1.17.x | 37.1.0 | [LEGACY](https://github.com/IzzelAliz/Arclight/releases/tag/1.17/1.0.2) | [![1.17 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight-17?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight-17) |
|
| 1.16.x | 36.2.39 | LTS | [![1.16 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight-16?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight-16) |
|
||||||
| 1.16.x | 36.2.39 | ACTIVE | [![1.16 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight-16?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight-16) |
|
|
||||||
| 1.15.x | 31.2.48 | [LEGACY](https://github.com/IzzelAliz/Arclight/releases/tag/1.15/1.0.19) | [![1.15 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight-15?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight-15) |
|
**Legacy versions**:
|
||||||
| 1.14.x | 28.2.0 | [LEGACY](https://github.com/IzzelAliz/Arclight/releases/tag/1.0.6) | [![1.14 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight) |
|
|
||||||
|
<details>
|
||||||
|
|
||||||
|
| Release | Forge | Status | Build |
|
||||||
|
|:-------:|:-------:|:------------------------------------------------------------------------:|:------------------------------------------------------------------------------------------------------------------------------------------------------:|
|
||||||
|
| 1.17.x | 37.1.0 | [LEGACY](https://github.com/IzzelAliz/Arclight/releases/tag/1.17/1.0.2) | [![1.17 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight-17?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight-17) |
|
||||||
|
| 1.15.x | 31.2.48 | [LEGACY](https://github.com/IzzelAliz/Arclight/releases/tag/1.15/1.0.19) | [![1.15 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight-15?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight-15) |
|
||||||
|
| 1.14.x | 28.2.0 | [LEGACY](https://github.com/IzzelAliz/Arclight/releases/tag/1.0.6) | [![1.14 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight) |
|
||||||
|
|
||||||
* Legacy version still accepts pull requests.
|
* Legacy version still accepts pull requests.
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
![](.github/arclightlogo.jpg)
|
![](.github/arclightlogo.jpg)
|
||||||
|
|
||||||
## Installing
|
## Installing
|
||||||
|
|
||||||
* Download the jar from [release page](https://github.com/IzzelAliz/Arclight/releases) or build server. (see the table
|
* Download the jar from [release page](https://github.com/IzzelAliz/Arclight/releases) or build server. (see the table
|
||||||
above)
|
above)
|
||||||
* Launch with command `java -jar arclight-forge-<mc>-<version>.jar nogui`. The `nogui` argument will disable the server control panel.
|
* Launch with command `java -jar arclight-forge-<mc>-<version>.jar nogui`. The `nogui` argument will disable the server
|
||||||
|
control panel.
|
||||||
|
|
||||||
## Support
|
## Support
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,7 @@ package io.izzel.arclight.common.mixin.core.server;
|
||||||
import com.google.common.collect.ImmutableList;
|
import com.google.common.collect.ImmutableList;
|
||||||
import com.mojang.datafixers.DataFixer;
|
import com.mojang.datafixers.DataFixer;
|
||||||
import com.mojang.serialization.DynamicOps;
|
import com.mojang.serialization.DynamicOps;
|
||||||
|
import io.izzel.arclight.api.ArclightVersion;
|
||||||
import io.izzel.arclight.common.bridge.core.command.ICommandSourceBridge;
|
import io.izzel.arclight.common.bridge.core.command.ICommandSourceBridge;
|
||||||
import io.izzel.arclight.common.bridge.core.server.MinecraftServerBridge;
|
import io.izzel.arclight.common.bridge.core.server.MinecraftServerBridge;
|
||||||
import io.izzel.arclight.common.bridge.core.world.WorldBridge;
|
import io.izzel.arclight.common.bridge.core.world.WorldBridge;
|
||||||
|
@ -548,7 +549,7 @@ public abstract class MinecraftServerMixin extends ReentrantBlockableEventLoop<T
|
||||||
@DontObfuscate
|
@DontObfuscate
|
||||||
@Overwrite
|
@Overwrite
|
||||||
public String getServerModName() {
|
public String getServerModName() {
|
||||||
return BrandingControl.getServerBranding() + " arclight";
|
return BrandingControl.getServerBranding() + " arclight/" + ArclightVersion.current().getReleaseName();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -5,6 +5,7 @@ import com.google.common.collect.HashBiMap;
|
||||||
import com.google.common.collect.ImmutableList;
|
import com.google.common.collect.ImmutableList;
|
||||||
import com.google.common.collect.ImmutableMap;
|
import com.google.common.collect.ImmutableMap;
|
||||||
import com.google.common.collect.ImmutableSet;
|
import com.google.common.collect.ImmutableSet;
|
||||||
|
import io.izzel.arclight.api.ArclightVersion;
|
||||||
import io.izzel.arclight.api.EnumHelper;
|
import io.izzel.arclight.api.EnumHelper;
|
||||||
import io.izzel.arclight.api.Unsafe;
|
import io.izzel.arclight.api.Unsafe;
|
||||||
import io.izzel.arclight.common.bridge.bukkit.EntityTypeBridge;
|
import io.izzel.arclight.common.bridge.bukkit.EntityTypeBridge;
|
||||||
|
@ -94,6 +95,7 @@ public class BukkitRegistry {
|
||||||
private static final BiMap<ResourceLocation, Statistic> STATS = HashBiMap.create(Unsafe.getStatic(CraftStatistic.class, "statistics"));
|
private static final BiMap<ResourceLocation, Statistic> STATS = HashBiMap.create(Unsafe.getStatic(CraftStatistic.class, "statistics"));
|
||||||
|
|
||||||
public static void registerAll() {
|
public static void registerAll() {
|
||||||
|
CrashReportCallables.registerCrashCallable("Arclight Release", ArclightVersion.current()::getReleaseName);
|
||||||
CrashReportCallables.registerCrashCallable("Arclight", new CraftCrashReport());
|
CrashReportCallables.registerCrashCallable("Arclight", new CraftCrashReport());
|
||||||
loadMaterials();
|
loadMaterials();
|
||||||
loadPotions();
|
loadPotions();
|
||||||
|
|
|
@ -85,19 +85,20 @@ public class AbstractBootstrap {
|
||||||
var cw = new ClassWriter(ClassWriter.COMPUTE_MAXS);
|
var cw = new ClassWriter(ClassWriter.COMPUTE_MAXS);
|
||||||
node.accept(cw);
|
node.accept(cw);
|
||||||
byte[] bytes = cw.toByteArray();
|
byte[] bytes = cw.toByteArray();
|
||||||
Unsafe.defineClass("com.mojang.brigadier.tree.CommandNode", bytes, 0, bytes.length, IModLocator.class.getClassLoader() /* MC-BOOTSTRAP */ , getClass().getProtectionDomain());
|
Unsafe.defineClass("com.mojang.brigadier.tree.CommandNode", bytes, 0, bytes.length, IModLocator.class.getClassLoader() /* MC-BOOTSTRAP */, getClass().getProtectionDomain());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void setupMod() throws Exception {
|
protected void setupMod() throws Exception {
|
||||||
ArclightVersion.setVersion(ArclightVersion.v1_19_R1);
|
ArclightVersion.setVersion(ArclightVersion.HORN);
|
||||||
try (InputStream stream = getClass().getModule().getResourceAsStream("/META-INF/MANIFEST.MF")) {
|
try (InputStream stream = getClass().getModule().getResourceAsStream("/META-INF/MANIFEST.MF")) {
|
||||||
Manifest manifest = new Manifest(stream);
|
Manifest manifest = new Manifest(stream);
|
||||||
Attributes attributes = manifest.getMainAttributes();
|
Attributes attributes = manifest.getMainAttributes();
|
||||||
String version = attributes.getValue(Attributes.Name.IMPLEMENTATION_VERSION);
|
String version = attributes.getValue(Attributes.Name.IMPLEMENTATION_VERSION);
|
||||||
extract(getClass().getModule().getResourceAsStream("/common.jar"), version);
|
extract(getClass().getModule().getResourceAsStream("/common.jar"), version);
|
||||||
String buildTime = attributes.getValue("Implementation-Timestamp");
|
String buildTime = attributes.getValue("Implementation-Timestamp");
|
||||||
LogManager.getLogger("Arclight").info(ArclightLocale.getInstance().get("logo"), version, buildTime);
|
LogManager.getLogger("Arclight").info(ArclightLocale.getInstance().get("logo"),
|
||||||
|
ArclightLocale.getInstance().get("release-name." + ArclightVersion.current().getReleaseName()), version, buildTime);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -15,8 +15,8 @@ allprojects {
|
||||||
agpVersion = '1.23'
|
agpVersion = '1.23'
|
||||||
minecraftVersion = '1.19.2'
|
minecraftVersion = '1.19.2'
|
||||||
forgeVersion = '43.1.3'
|
forgeVersion = '43.1.3'
|
||||||
apiVersion = '1.4.0'
|
apiVersion = '1.5.0'
|
||||||
toolsVersion = '1.3.+'
|
toolsVersion = '1.3.0'
|
||||||
mixinVersion = '0.8.5'
|
mixinVersion = '0.8.5'
|
||||||
gitHash = getGitHash()
|
gitHash = getGitHash()
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,10 +8,15 @@ logo = [
|
||||||
" §1/_/ |§9/_/ §3\\__§6/_§e/_/§6\\_ /_//_/ /"
|
" §1/_/ |§9/_/ §3\\__§6/_§e/_/§6\\_ /_//_/ /"
|
||||||
" §1 §9 §3 §6 §e §6/__/ \\/"
|
" §1 §9 §3 §6 §e §6/__/ \\/"
|
||||||
""
|
""
|
||||||
" §aVersion {}"
|
" §aVersion {} / {}"
|
||||||
" §aBuild Date {}"
|
" §aBuild Date {}"
|
||||||
""
|
""
|
||||||
]
|
]
|
||||||
|
# Translate the word in parenthesis only.
|
||||||
|
# If there's same Chinese word with same meaning in your language(i.e. Kanji in Japanese), then remove the parenthesis.
|
||||||
|
release-name {
|
||||||
|
Horn = "角 (Horn)"
|
||||||
|
}
|
||||||
java {
|
java {
|
||||||
deprecated = [
|
deprecated = [
|
||||||
"You are running an outdated Java version"
|
"You are running an outdated Java version"
|
||||||
|
@ -82,12 +87,6 @@ comments {
|
||||||
locale.comment = "Language/I18n settings"
|
locale.comment = "Language/I18n settings"
|
||||||
optimization {
|
optimization {
|
||||||
comment = "Optimization related settings"
|
comment = "Optimization related settings"
|
||||||
disable-data-fixer.comment = [
|
|
||||||
"Disable the DataFixerUpper system which is used for level data upgrading"
|
|
||||||
"This can hopefully speedup startup and world load and reduce memory usage of 80-200mb"
|
|
||||||
"Arclight and its developers are not reponsible for any data loss or corruption"
|
|
||||||
"DO NOT USE IN PRODUCTION!"
|
|
||||||
]
|
|
||||||
goal-selector-update-interval.comment = [
|
goal-selector-update-interval.comment = [
|
||||||
"Interval in ticks to update the goal selector"
|
"Interval in ticks to update the goal selector"
|
||||||
"Higher values costs less resources"
|
"Higher values costs less resources"
|
||||||
|
@ -105,7 +104,7 @@ comments {
|
||||||
async-catcher.dump.comment = "Dump stack trace information in debug.log"
|
async-catcher.dump.comment = "Dump stack trace information in debug.log"
|
||||||
compatibility {
|
compatibility {
|
||||||
symlink-world.comment = [
|
symlink-world.comment = [
|
||||||
"Create symbol links to mod dimension folder that matches Bukkit format"
|
"Create symbol links to mod dimension folder that matches Bukkit world name"
|
||||||
"Enable this could improve plugin compotibility"
|
"Enable this could improve plugin compotibility"
|
||||||
"Changing this on production server will cause changes to mod world names"
|
"Changing this on production server will cause changes to mod world names"
|
||||||
" and cause data loss on plugins relying world names"
|
" and cause data loss on plugins relying world names"
|
||||||
|
|
|
@ -8,7 +8,7 @@ logo = [
|
||||||
" §1/_/ |§9/_/ §3\\__§6/_§e/_/§6\\_ /_//_/ /"
|
" §1/_/ |§9/_/ §3\\__§6/_§e/_/§6\\_ /_//_/ /"
|
||||||
" §1 §9 §3 §6 §e §6/__/ \\/"
|
" §1 §9 §3 §6 §e §6/__/ \\/"
|
||||||
""
|
""
|
||||||
" §aVersión {}"
|
" §aVersión {} / {}"
|
||||||
" §aFecha de compilación {}"
|
" §aFecha de compilación {}"
|
||||||
""
|
""
|
||||||
]
|
]
|
||||||
|
|
|
@ -8,7 +8,7 @@ logo = [
|
||||||
" §1/_/ |§9/_/ §3\\__§6/_§e/_/§6\\_ /_//_/ /"
|
" §1/_/ |§9/_/ §3\\__§6/_§e/_/§6\\_ /_//_/ /"
|
||||||
" §1 §9 §3 §6 §e §6/__/ \\/"
|
" §1 §9 §3 §6 §e §6/__/ \\/"
|
||||||
""
|
""
|
||||||
" §aVersion {}"
|
" §aVersion {} / {}"
|
||||||
" §aDate du Build {}"
|
" §aDate du Build {}"
|
||||||
""
|
""
|
||||||
]
|
]
|
||||||
|
|
|
@ -8,7 +8,7 @@ logo = [
|
||||||
" §1/_/ |§9/_/ §3\\__§6/_§e/_/§6\\_ /_//_/ /"
|
" §1/_/ |§9/_/ §3\\__§6/_§e/_/§6\\_ /_//_/ /"
|
||||||
" §1 §9 §3 §6 §e §6/__/ \\/"
|
" §1 §9 §3 §6 §e §6/__/ \\/"
|
||||||
""
|
""
|
||||||
" §a버전: {}"
|
" §a버전: {} / {}"
|
||||||
" §a빌드 날짜: {}"
|
" §a빌드 날짜: {}"
|
||||||
""
|
""
|
||||||
]
|
]
|
||||||
|
|
|
@ -8,7 +8,7 @@ logo = [
|
||||||
" §1/_/ |§9/_/ §3\\__§6/_§e/_/§6\\_ /_//_/ /"
|
" §1/_/ |§9/_/ §3\\__§6/_§e/_/§6\\_ /_//_/ /"
|
||||||
" §1 §9 §3 §6 §e §6/__/ \\/"
|
" §1 §9 §3 §6 §e §6/__/ \\/"
|
||||||
""
|
""
|
||||||
" §aВерсия {}"
|
" §aВерсия {} / {}"
|
||||||
" §aДата сборки {}"
|
" §aДата сборки {}"
|
||||||
""
|
""
|
||||||
]
|
]
|
||||||
|
|
|
@ -8,10 +8,13 @@ logo = [
|
||||||
" §1/_/ |§9/_/ §3\\__§6/_§e/_/§6\\_ /_//_/ /"
|
" §1/_/ |§9/_/ §3\\__§6/_§e/_/§6\\_ /_//_/ /"
|
||||||
" §1 §9 §3 §6 §e §6/__/ \\/"
|
" §1 §9 §3 §6 §e §6/__/ \\/"
|
||||||
""
|
""
|
||||||
" §a运行版本 {}"
|
" §a运行版本 {} / {}"
|
||||||
" §a构建日期 {}"
|
" §a构建日期 {}"
|
||||||
""
|
""
|
||||||
]
|
]
|
||||||
|
release-name {
|
||||||
|
Horn = "角"
|
||||||
|
}
|
||||||
java {
|
java {
|
||||||
deprecated = [
|
deprecated = [
|
||||||
"您正在使用过时的 Java 版本"
|
"您正在使用过时的 Java 版本"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user