Skip to content

Commit cb511a5

Browse files
Deleted some commands and aliases
Removed commands: - /defaultgamemode (use server.properties gamemode= instead) - /teleport (replaced with /tp only) - /experience (replaced with /xp only) - /spigot - /tps - /mspt - All colon-prefixed commands (e.g. /minecraft:time) Removed aliases: - ? (was alias for /help) - about (was alias for /version) - pl (was alias for /plugins)
1 parent 7bc38b5 commit cb511a5

4 files changed

Lines changed: 274 additions & 3 deletions

File tree

README.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,13 @@ Original [Paper](https://github.com/PaperMC/Paper) by [PaperMC](https://papermc.
88

99
## What was changed
1010

11+
- Updated file structure:
12+
- Configuration files (`bukkit.yml`, `paper-global.yml`, `paper-world-defaults.yml`, `spigot.yml`) moved to the `configs/` folder;
13+
- Data files (`banned-ips.json`, `banned-players.json`, `ops.json`, `usercache.json`, `whitelist.json`) moved to the `data/` folder;
14+
- Deleted `commands.yml`, `help.yml`, `permissions.yml` and `version_history.json`;
1115
- Removed telemetry, metrics (bStats), and the automatic update checker;
12-
- Deleted commands.yml, help.yml, permissions.yml and version_history.json;
13-
- Deleted some server messages;
16+
- Deleted some commands and aliases;
17+
- Deleted some server messages (f02890f);
1418
- And other changes.
1519

1620
## Download & Running
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
2+
From: Traveling-Trader <132439817+Traveling-Trader@users.noreply.github.com>
3+
Date: Fri, 22 May 2026 15:08:22 +0300
4+
Subject: [PATCH] Delete some commands and aliases
5+
6+
7+
diff --git a/src/main/java/org/bukkit/command/SimpleCommandMap.java b/src/main/java/org/bukkit/command/SimpleCommandMap.java
8+
index ad1330d87223dfcf3c9da40aa5ece8c21141f0d6..ca18362421616db3132128963d07cd2fbeb48664 100644
9+
--- a/src/main/java/org/bukkit/command/SimpleCommandMap.java
10+
+++ b/src/main/java/org/bukkit/command/SimpleCommandMap.java
11+
@@ -32,8 +32,7 @@ public class SimpleCommandMap implements CommandMap {
12+
13+
private void setDefaultCommands() {
14+
final ReloadCommand reload = new ReloadCommand("reload");
15+
- this.knownCommands.put("bukkit:reload", reload);
16+
- this.knownCommands.put("bukkit:rl", reload);
17+
+ register("bukkit", reload);
18+
register("bukkit", new co.aikar.timings.TimingsCommand("timings"));
19+
}
20+
21+
@@ -101,7 +100,7 @@ public class SimpleCommandMap implements CommandMap {
22+
* @return true if command was registered, false otherwise.
23+
*/
24+
private synchronized boolean register(@NotNull String label, @NotNull Command command, boolean isAlias, @NotNull String fallbackPrefix) {
25+
- knownCommands.put(fallbackPrefix + ":" + label, command);
26+
+ // knownCommands.put(fallbackPrefix + ":" + label, command);
27+
// Paper start
28+
Command known = knownCommands.get(label);
29+
if ((command instanceof BukkitCommand || isAlias) && (known != null && !known.canBeOverriden())) {
30+
diff --git a/src/main/java/org/bukkit/command/defaults/HelpCommand.java b/src/main/java/org/bukkit/command/defaults/HelpCommand.java
31+
index a34bf3b981f94e5e3f9b8e9b6fd528a66cfa171a..45b9f77f059882b350f24d7c955f28cf6853b0e4 100644
32+
--- a/src/main/java/org/bukkit/command/defaults/HelpCommand.java
33+
+++ b/src/main/java/org/bukkit/command/defaults/HelpCommand.java
34+
@@ -30,7 +30,7 @@ public class HelpCommand extends BukkitCommand {
35+
super("help");
36+
this.description = "Shows the help menu";
37+
this.usageMessage = "/help <pageNumber>\n/help <topic>\n/help <topic> <pageNumber>";
38+
- this.setAliases(Arrays.asList(new String[]{"?"}));
39+
+ this.setAliases(java.util.Collections.emptyList());
40+
this.setPermission("bukkit.command.help");
41+
}
42+
43+
diff --git a/src/main/java/org/bukkit/command/defaults/PluginsCommand.java b/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
44+
index 4d849e1283fdf6b0872a0f2183964cc93748c116..e24066d490ed0875517f556f1210b5e0198fcbb5 100644
45+
--- a/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
46+
+++ b/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
47+
@@ -16,7 +16,7 @@ public class PluginsCommand extends BukkitCommand {
48+
this.description = "Gets a list of plugins running on the server";
49+
this.usageMessage = "/plugins";
50+
this.setPermission("bukkit.command.plugins");
51+
- this.setAliases(Arrays.asList("pl"));
52+
+ this.setAliases(Collections.emptyList());
53+
}
54+
55+
@Override
56+
diff --git a/src/main/java/org/bukkit/command/defaults/ReloadCommand.java b/src/main/java/org/bukkit/command/defaults/ReloadCommand.java
57+
index fe96a200824fa3d8d790c103125971174fd0f4a2..7a569538263f6a2904a7a057056b785d6466c8e1 100644
58+
--- a/src/main/java/org/bukkit/command/defaults/ReloadCommand.java
59+
+++ b/src/main/java/org/bukkit/command/defaults/ReloadCommand.java
60+
@@ -15,9 +15,8 @@ public class ReloadCommand extends BukkitCommand {
61+
public ReloadCommand(@NotNull String name) {
62+
super(name);
63+
this.description = "Reloads the server configuration and plugins";
64+
- this.usageMessage = "/reload [confirm]"; // CleanPaper - removed permissions & commands
65+
+ this.usageMessage = "/reload [confirm]";
66+
this.setPermission("bukkit.command.reload");
67+
- this.setAliases(Arrays.asList("rl"));
68+
}
69+
70+
@org.jetbrains.annotations.ApiStatus.Internal // Paper
71+
@@ -37,7 +36,7 @@ public class ReloadCommand extends BukkitCommand {
72+
}
73+
}
74+
if (!confirmed) {
75+
- Command.broadcastCommandMessage(sender, text("Are you sure you wish to reload your server? This command will be removed soon. Doing so may cause bugs and memory leaks. It is recommended to restart instead of using /bukkit:reload. To confirm, please type ", net.kyori.adventure.text.format.NamedTextColor.RED).append(text("/bukkit:reload confirm", net.kyori.adventure.text.format.NamedTextColor.YELLOW)));
76+
+ Command.broadcastCommandMessage(sender, text("Are you sure you wish to reload your server? This command will be removed soon. Doing so may cause bugs and memory leaks. It is recommended to restart instead of using /reload. To confirm, please type ", net.kyori.adventure.text.format.NamedTextColor.RED).append(text("/reload confirm", net.kyori.adventure.text.format.NamedTextColor.YELLOW)));
77+
return true;
78+
}
79+
80+
diff --git a/src/main/java/org/bukkit/command/defaults/VersionCommand.java b/src/main/java/org/bukkit/command/defaults/VersionCommand.java
81+
index 91aabc6e39ab1a475b80f810638493c63605c1d1..16f4adac1bb59327b663e7afd82382320e912459 100644
82+
--- a/src/main/java/org/bukkit/command/defaults/VersionCommand.java
83+
+++ b/src/main/java/org/bukkit/command/defaults/VersionCommand.java
84+
@@ -49,7 +49,7 @@ public class VersionCommand extends BukkitCommand {
85+
this.description = "Gets the version of this server including any plugins in use";
86+
this.usageMessage = "/version [plugin name]";
87+
this.setPermission("bukkit.command.version");
88+
- this.setAliases(Arrays.asList("ver", "about"));
89+
+ this.setAliases(Arrays.asList("ver"));
90+
}
91+
92+
@Override
Lines changed: 175 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,175 @@
1+
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
2+
From: Traveling-Trader <132439817+Traveling-Trader@users.noreply.github.com>
3+
Date: Fri, 22 May 2026 15:08:21 +0300
4+
Subject: [PATCH] Delete some commands and aliases
5+
6+
7+
diff --git a/src/main/java/io/papermc/paper/SparksFly.java b/src/main/java/io/papermc/paper/SparksFly.java
8+
index e504771ff2e599050b50d2d299a72a77c3b29477..2ae9fa5045c051672133de9c6a11e61b3f657da6 100644
9+
--- a/src/main/java/io/papermc/paper/SparksFly.java
10+
+++ b/src/main/java/io/papermc/paper/SparksFly.java
11+
@@ -39,7 +39,6 @@ public final class SparksFly {
12+
private boolean disabledInConfigurationWarningLogged;
13+
14+
public SparksFly(final Server server) {
15+
- // CleanPaper - disable backgroundProfiler by default in Spark config
16+
try {
17+
java.io.File sparkFolder = new java.io.File("plugins/spark");
18+
java.io.File sparkConfig = new java.io.File(sparkFolder, "config.json");
19+
@@ -57,7 +56,6 @@ public final class SparksFly {
20+
21+
this.mainThreadTaskQueue = new ConcurrentLinkedQueue<>();
22+
this.logger = Logger.getLogger(ID);
23+
- this.logger.log(Level.INFO, "This server bundles the spark profiler. For more information please visit https://docs.papermc.io/paper/profiling");
24+
this.spark = PaperSparkModule.create(Compatibility.VERSION_1_0, server, this.logger, new PaperScheduler() {
25+
@Override
26+
public void executeAsync(final Runnable runnable) {
27+
diff --git a/src/main/java/io/papermc/paper/command/PaperCommands.java b/src/main/java/io/papermc/paper/command/PaperCommands.java
28+
index 6dfd0b1a85d518828b15158c01472ae4383b8882..8799558ba104cbca572e485b3e5e199a3b5e8fce 100644
29+
--- a/src/main/java/io/papermc/paper/command/PaperCommands.java
30+
+++ b/src/main/java/io/papermc/paper/command/PaperCommands.java
31+
@@ -23,7 +23,6 @@ public final class PaperCommands {
32+
33+
public static void registerCommands(final MinecraftServer server) {
34+
COMMANDS.put("paper", new PaperCommand("paper"));
35+
- COMMANDS.put("mspt", new MSPTCommand("mspt"));
36+
37+
COMMANDS.forEach((s, command) -> {
38+
server.server.getCommandMap().register(s, "Paper", command);
39+
@@ -32,8 +31,8 @@ public final class PaperCommands {
40+
41+
public static void registerCommands() {
42+
// Paper commands go here
43+
- registerInternalCommand(PaperVersionCommand.create(), "bukkit", PaperVersionCommand.DESCRIPTION, List.of("ver", "about"), Set.of());
44+
- registerInternalCommand(PaperPluginsCommand.create(), "bukkit", PaperPluginsCommand.DESCRIPTION, List.of("pl"), Set.of());
45+
+ registerInternalCommand(PaperVersionCommand.create(), "bukkit", PaperVersionCommand.DESCRIPTION, List.of("ver"), Set.of());
46+
+ registerInternalCommand(PaperPluginsCommand.create(), "bukkit", PaperPluginsCommand.DESCRIPTION, List.of(), Set.of());
47+
}
48+
49+
private static void registerInternalCommand(final LiteralCommandNode<CommandSourceStack> node, final String namespace, final String description, final List<String> aliases, final Set<CommandRegistrationFlag> flags) {
50+
diff --git a/src/main/java/io/papermc/paper/command/brigadier/PaperCommands.java b/src/main/java/io/papermc/paper/command/brigadier/PaperCommands.java
51+
index f37adc5dcad50a3e313c63ebee795161b4fa8b8f..0ce74e64c9fa061417716345f7be2ab770753d2d 100644
52+
--- a/src/main/java/io/papermc/paper/command/brigadier/PaperCommands.java
53+
+++ b/src/main/java/io/papermc/paper/command/brigadier/PaperCommands.java
54+
@@ -97,30 +97,22 @@ public class PaperCommands implements Commands, PaperRegistrar<LifecycleEventOwn
55+
public @Unmodifiable Set<String> registerWithFlagsInternal(final @Nullable PluginMeta pluginMeta, final String namespace, final @Nullable String helpNamespaceOverride, final LiteralCommandNode<CommandSourceStack> node, final @Nullable String description, final Collection<String> aliases, final Set<CommandRegistrationFlag> flags) {
56+
final APICommandMeta meta = new APICommandMeta(pluginMeta, description, List.of(), helpNamespaceOverride);
57+
final String literal = node.getLiteral();
58+
- final LiteralCommandNode<CommandSourceStack> pluginLiteral = PaperBrigadier.copyLiteral(namespace + ":" + literal, node);
59+
60+
- final Set<String> registeredLabels = new HashSet<>(aliases.size() * 2 + 2);
61+
+ final Set<String> registeredLabels = new HashSet<>(aliases.size() + 1);
62+
63+
- if (this.registerIntoDispatcher(pluginLiteral, true)) {
64+
- registeredLabels.add(pluginLiteral.getLiteral());
65+
- }
66+
if (this.registerIntoDispatcher(node, true)) { // Plugin commands should override vanilla commands
67+
registeredLabels.add(literal);
68+
}
69+
70+
// Add aliases
71+
- final List<String> registeredAliases = new ArrayList<>(aliases.size() * 2);
72+
+ final List<String> registeredAliases = new ArrayList<>(aliases.size());
73+
for (final String alias : aliases) {
74+
- if (this.registerCopy(alias, pluginLiteral, meta)) {
75+
+ if (this.registerCopy(alias, node, meta)) {
76+
registeredAliases.add(alias);
77+
}
78+
- if (this.registerCopy(namespace + ":" + alias, pluginLiteral, meta)) {
79+
- registeredAliases.add(namespace + ":" + alias);
80+
- }
81+
}
82+
83+
- pluginLiteral.apiCommandMeta = meta.withAliases(registeredAliases);
84+
- node.apiCommandMeta = pluginLiteral.apiCommandMeta;
85+
+ node.apiCommandMeta = meta.withAliases(registeredAliases);
86+
87+
registeredLabels.addAll(registeredAliases);
88+
return registeredLabels.isEmpty() ? Collections.emptySet() : Collections.unmodifiableSet(registeredLabels);
89+
diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
90+
index 82bd51ee07fb13efea0cb57a85df9d04bc487797..2a1c85837e112932415feaa491dec57cd0442119 100644
91+
--- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
92+
+++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
93+
@@ -387,10 +387,4 @@ public class GlobalConfiguration extends ConfigurationPart {
94+
}
95+
}
96+
}
97+
-
98+
- public UpdateChecker updateChecker;
99+
-
100+
- public class UpdateChecker extends ConfigurationPart {
101+
- public boolean enabled = false; // CleanPaper - disabled by default, no update checking
102+
- }
103+
}
104+
diff --git a/src/main/java/org/bukkit/craftbukkit/help/SimpleHelpMap.java b/src/main/java/org/bukkit/craftbukkit/help/SimpleHelpMap.java
105+
index 70b45a7d41f4bafac3b9738129d74af30e36b2a8..4a092d118cb4e90d9b179c8ecd5e9051934874ff 100644
106+
--- a/src/main/java/org/bukkit/craftbukkit/help/SimpleHelpMap.java
107+
+++ b/src/main/java/org/bukkit/craftbukkit/help/SimpleHelpMap.java
108+
@@ -64,6 +64,13 @@ public class SimpleHelpMap implements HelpMap {
109+
return this.helpTopics.get(topicName);
110+
}
111+
112+
+ String cleanTopicName = topicName.startsWith("/") ? topicName.substring(1) : topicName;
113+
+ if (cleanTopicName.equalsIgnoreCase("CleanPaper") || cleanTopicName.equalsIgnoreCase("Bukkit") || cleanTopicName.equalsIgnoreCase("Paper") || cleanTopicName.equalsIgnoreCase("Spigot")) {
114+
+ if (this.helpTopics.containsKey("CleanPaper")) {
115+
+ return this.helpTopics.get("CleanPaper");
116+
+ }
117+
+ }
118+
+
119+
return null;
120+
}
121+
122+
@@ -203,18 +210,31 @@ public class SimpleHelpMap implements HelpMap {
123+
return ((PluginIdentifiableCommand) command).getPlugin().getName();
124+
}
125+
if (command instanceof VanillaCommandWrapper wrapper) {
126+
- return wrapper.helpCommandNamespace;
127+
+ String ns = wrapper.helpCommandNamespace;
128+
+ if ("Paper".equalsIgnoreCase(ns) || "Spigot".equalsIgnoreCase(ns) || "Bukkit".equalsIgnoreCase(ns)) {
129+
+ return "CleanPaper";
130+
+ }
131+
+ return ns;
132+
}
133+
if (command instanceof BukkitCommand) {
134+
- return "Bukkit";
135+
+ return "CleanPaper";
136+
}
137+
return null;
138+
}
139+
140+
private boolean commandInIgnoredPlugin(Command command, Set<String> ignoredPlugins) {
141+
+ if (ignoredPlugins.contains("CleanPaper")) {
142+
+ return true;
143+
+ }
144+
if ((command instanceof BukkitCommand) && ignoredPlugins.contains("Bukkit")) {
145+
return true;
146+
}
147+
+ if (command instanceof VanillaCommandWrapper wrapper) {
148+
+ String ns = wrapper.helpCommandNamespace;
149+
+ if (ns != null && ignoredPlugins.contains(ns)) {
150+
+ return true;
151+
+ }
152+
+ }
153+
if (command instanceof PluginIdentifiableCommand && ignoredPlugins.contains(((PluginIdentifiableCommand) command).getPlugin().getName())) {
154+
return true;
155+
}
156+
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
157+
index 025ec3f3e84a3367b4d709c8c3ecd98f6dfecab4..2048a5e90c9e86387d2caa9ee7ce1ca9c5e2ac34 100644
158+
--- a/src/main/java/org/spigotmc/SpigotConfig.java
159+
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
160+
@@ -66,7 +66,6 @@ public class SpigotConfig {
161+
SpigotConfig.config.options().copyDefaults(true);
162+
163+
SpigotConfig.commands = new HashMap<>();
164+
- SpigotConfig.commands.put("spigot", new SpigotCommand("spigot"));
165+
166+
SpigotConfig.version = SpigotConfig.getInt("config-version", 13);
167+
SpigotConfig.set("config-version", 13);
168+
@@ -229,7 +228,6 @@ public class SpigotConfig {
169+
}
170+
171+
private static void tpsCommand() {
172+
- SpigotConfig.commands.put("tps", new TicksPerSecondCommand("tps"));
173+
}
174+
175+
public static int playerSample;

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ group=com.villagev.studio.cleanpaper
22
version=26.1.2.build.64-stable
33
apiVersion=26.1.2
44
mcVersion=26.1.2
5-
cleanPaperVersion=0.5.0-SNAPSHOT
5+
cleanPaperVersion=0.7.2-SNAPSHOT
66
paperRef=5c917dababca4087b9df4d44b415d85125479830
77

88
org.gradle.configuration-cache=true

0 commit comments

Comments
 (0)