Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
1b08e7c
feat: allowSpectatorTpToAnyPlayer
OptiJava Jul 25, 2025
e321ec8
ci: update build.yml
OptiJava Aug 27, 2025
90c4877
Update OptCarpetSettings.java
jfglzs Aug 27, 2025
bf5b204
Update build.yml
jfglzs Aug 27, 2025
49579b1
Update OptCarpetSettings.java
jfglzs Aug 27, 2025
d8d0917
Update OptCarpetSettings.java
jfglzs Aug 27, 2025
50581d9
Update OptCarpetAddition.java
jfglzs Aug 27, 2025
d21ad4b
Update OptCarpetSettings.java
jfglzs Aug 27, 2025
96cbfa9
Update OptCarpetAddition.java
jfglzs Aug 27, 2025
a3c8f53
Update build.yml
jfglzs Aug 27, 2025
9e37add
Merge pull request #11 from jfglzs/dev
OptiJava Aug 27, 2025
947b2e0
Update EnableCommand rules
Aug 30, 2025
ea9db48
Merge pull request #12 from jfglzs/dev
OptiJava Sep 1, 2025
a015adb
update: translate
jfglzs Oct 19, 2025
e0b8616
update: update to 1.21.10
jfglzs Oct 25, 2025
7e5ffa6
update: optimize disk logger
jfglzs Dec 27, 2025
90ff370
update: optimize disk logger
jfglzs Dec 27, 2025
b9bf702
update: optimize code
jfglzs Dec 28, 2025
31b63d2
update: fix Crash Command BUG
jfglzs Dec 28, 2025
d76206e
update: README.md with optimizeFakePlayerSpawn details
OptiJava Dec 28, 2025
7337244
docs: README-en.md with porting difficulties for versions
OptiJava Dec 28, 2025
2a70e39
code: optimize Commandlogger
jfglzs Jan 10, 2026
c304964
code: optimize code
jfglzs Jan 10, 2026
957c3f7
fix: endif tab
OptiJava Jan 11, 2026
523d995
code: refactors PlayerTpCommand
jfglzs Jan 14, 2026
fc38a1b
code: fix bug
jfglzs Jan 16, 2026
83ba86d
code: fix some bugs
jfglzs Jan 19, 2026
1140a51
fix: unexcepted "//#endif"
jfglzs Feb 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@ jobs:
runs-on: ${{ matrix.os }}
steps:
- name: checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: validate gradle wrapper
uses: gradle/actions/wrapper-validation@v4
- name: setup jdk ${{ matrix.java }}
uses: actions/setup-java@v4
uses: actions/setup-java@v5
with:
java-version: ${{ matrix.java }}
distribution: 'adopt'
Expand Down
3 changes: 3 additions & 0 deletions README-en.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ Most other MC versions that are the same as the supported major versions but hav

| Minecraft Version | Support Status |
|-------------------|--------------------------------------------------------------------------|
| 1.21.10 | Supporting, developing actively |
| 1.21.5 | Supporting, developing actively |
| 1.21 | Supporting, developing actively |
| 1.20.4 | Supporting, developing actively |
Expand Down Expand Up @@ -296,6 +297,8 @@ Fix bug: lagging when spawn bot because mojang server is too slow :(

This rule force any bot use offline uuid.

Due to difficulties in porting, it is just for `1.17.1-1.21.5`. Use alternatives in higher versions. [iss#10](https://github.com/OptiJava/OptCarpetAddition/issues/10)

- Default value: `false`
- Acceptable value: `true` `false`
- Categories: `Optimization`
Expand Down
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ Language: [English](https://github.com/OptiJava/OptCarpetAddition/blob/master/RE

| Minecraft 版本 | 支持状态 |
|--------------|----------------------------|
| 1.21.10 | 支持,积极开发 |
| 1.21.5 | 支持,积极开发 |
| 1.21 | 支持,积极开发 |
| 1.20.4 | 支持,积极开发 |
Expand Down Expand Up @@ -297,6 +298,8 @@ DispenserBlockEntity dispenserBlockEntity = (DispenserBlockEntity)blockPointerIm

如果你的服务器连接mojang服务器的时间长,spawn假人的时候就会卡顿一会,此规则强制所有假人使用离线uuid,解决这一问题(但是也许引发新的问题

由于移植困难,仅支持`1.17.1-1.21.5`版本,高版本请使用替代品 [iss#10](https://github.com/OptiJava/OptCarpetAddition/issues/10)

- Default value: `false`
- Acceptable value: `true` `false`
- Categories: `Optimization`
Expand Down
6 changes: 5 additions & 1 deletion build.gradle
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
plugins {
id 'fabric-loom' version '1.10-SNAPSHOT' apply false
//旧版fabric loom 无法识别1.21.10
// id 'fabric-loom' version '1.10-SNAPSHOT' apply false
id 'fabric-loom' version '1.11-SNAPSHOT' apply false
id 'maven-publish'
id 'com.replaymod.preprocess' version '20c7ec554a'
}
Expand All @@ -10,8 +12,10 @@ preprocess {
def mc1204 = createNode('1.20.4' , 1_20_04, 'yarn')
def mc1210 = createNode('1.21' , 1_21_00, 'yarn')
def mc1215 = createNode('1.21.5' , 1_21_05, 'yarn')
def mc12110 = createNode('1.21.10', 1_21_10, 'yarn')

mc117 .link(mc1204, null)
mc1204.link(mc1210, null)
mc1210.link(mc1215, null)
mc1215.link(mc12110, null)
}
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ systemProp.http.socketTimeout=60000
systemProp.https.socketTimeout=60000

# Fabric Configurations
loader_version=0.16.14
loader_version=0.17.3
loader_requirement_version=>=0.15

# Mod Metadata
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
import org.apache.logging.log4j.Logger;

import java.io.File;
import java.util.Map;
import java.util.Objects;

public class OptCarpetAddition implements CarpetExtension, ModInitializer {
Expand All @@ -33,7 +34,7 @@ public class OptCarpetAddition implements CarpetExtension, ModInitializer {
@Override
public void onInitialize() {
LOGGER.info("OptCarpetAddition is loading...");
CarpetServer.manageExtension(new OptCarpetAddition());
CarpetServer.manageExtension(this);

ServerEntityWorldChangeEvents.AFTER_PLAYER_CHANGE_WORLD.register(new FixExperienceBug());
}
Expand All @@ -54,19 +55,21 @@ public void onGameStarted() {
//#else
if (Objects.equals(rule.name, "forceFakePlayerGameMode") && !Objects.equals(OptCarpetSettings.forceFakePlayerGameMode, "false")) {
//#endif
GameMode gameMode = GameMode.SURVIVAL;
GameMode gameMode;

if (OptCarpetSettings.forceFakePlayerGameMode.equals("creative")) {
gameMode = GameMode.CREATIVE;
} else if (OptCarpetSettings.forceFakePlayerGameMode.equals("adventure")) {
gameMode = GameMode.ADVENTURE;
} else {
gameMode = GameMode.SURVIVAL;
}

for (ServerPlayerEntity player : serverCommandSource.getServer().getPlayerManager().getPlayerList()) {
serverCommandSource.getServer().getPlayerManager().getPlayerList().forEach(player -> {
if (player instanceof EntityPlayerMPFake) {
player.changeGameMode(gameMode);
}
}
});
}

//#if MC >= 11900
Expand Down Expand Up @@ -144,7 +147,7 @@ public void registerCommands(CommandDispatcher<ServerCommandSource> dispatcher)

@Override
public void onPlayerLoggedIn(ServerPlayerEntity player) {
if (player instanceof EntityPlayerMPFake && !(Objects.equals(OptCarpetSettings.forceFakePlayerGameMode, "false"))) {
if (!(Objects.equals(OptCarpetSettings.forceFakePlayerGameMode, "false")) && player instanceof EntityPlayerMPFake) {
GameMode gameMode = GameMode.SURVIVAL;

if (OptCarpetSettings.forceFakePlayerGameMode.equals("creative")) {
Expand Down Expand Up @@ -174,4 +177,10 @@ public void onPlayerLoggedOut(ServerPlayerEntity player) {
public void registerLoggers() {
LoggerRegister.registry();
}

@Override
public Map<String, String> canHasTranslations(String lang) {
//add rule translator
return RuleTranslator.getTranslationFromResourcePath(lang);
}
}
Loading