Repository Analysis

PaperMC/Paper

The most widely used, high performance Minecraft server that aims to fix gameplay and mechanics inconsistencies

24.6 Moderate AI signal View on GitHub
24.6
Adjusted Score
24.6
Raw Score
100%
Time Factor
2026-05-26
Last Push
12,320
Stars
Java
Language
348,931
Lines of Code
3329
Files
796
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 779HIGH 4MEDIUM 2LOW 11

Pattern Findings

796 matches across 6 categories. Click a row to expand file-level details.

Hallucination Indicators779 hits · 8555 pts
SeverityFileLineSnippet
CRITICAL…r-api/src/test/java/org/bukkit/support/TestServer.java43 return io.papermc.paper.registry.RegistryAccess.registryAccess().getRegistry(((Class<Keyed>)invocationOnMock
CRITICALpaper-api/src/main/java/org/bukkit/Effect.java496 return this.data != null && com.google.common.collect.Iterables.any(this.data, aClass -> aClass.isAssignableFrom
CRITICALpaper-api/src/main/java/org/bukkit/RegionAccessor.java424 com.google.common.base.Preconditions.checkArgument(type.getEntityClass() != null, "%s is not a valid EntityType,
CRITICALpaper-api/src/main/java/org/bukkit/RegionAccessor.java429 com.google.common.base.Preconditions.checkArgument(type.getEntityClass() != null, "%s is not a valid EntityType,
CRITICALpaper-api/src/main/java/org/bukkit/Server.java1340 return this.broadcast(net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deser
CRITICALpaper-api/src/main/java/org/bukkit/FireworkEffect.java47 public static final net.kyori.adventure.util.Index<String, org.bukkit.FireworkEffect.Type> NAMES = net.kyori.adv
CRITICALpaper-api/src/main/java/org/bukkit/UnsafeValues.java161 return new com.destroystokyo.paper.util.VersionFetcher.DummyVersionFetcher();
CRITICAL…ava/org/bukkit/configuration/ConfigurationSection.java1090 return this.getComponent(path, net.kyori.adventure.text.minimessage.MiniMessage.miniMessage(), fallback);
CRITICAL…ava/org/bukkit/configuration/ConfigurationSection.java1103 this.setComponent(path, net.kyori.adventure.text.minimessage.MiniMessage.miniMessage(), value);
CRITICAL…-api/src/main/java/org/bukkit/entity/LivingEntity.java1393 com.google.common.base.Preconditions.checkArgument(hand != null && hand.isHand(), String.format("Expected a vali
CRITICALpaper-api/src/main/java/org/bukkit/entity/Player.java77 return net.kyori.adventure.identity.Identity.identity(this.getUniqueId());
CRITICALpaper-api/src/main/java/org/bukkit/entity/Player.java2806 this.sendResourcePacks(net.kyori.adventure.resource.ResourcePackRequest.resourcePackRequest()
CRITICALpaper-api/src/main/java/org/bukkit/entity/Player.java2810 .packs(net.kyori.adventure.resource.ResourcePackInfo.resourcePackInfo(uuid, java.net.URI.create(url), hash))
CRITICALpaper-api/src/main/java/org/bukkit/entity/Player.java3561 return net.kyori.adventure.text.event.HoverEvent.showEntity(op.apply(net.kyori.adventure.text.event.HoverEvent.S
CRITICALpaper-api/src/main/java/org/bukkit/entity/Entity.java1089 return net.kyori.adventure.text.event.HoverEvent.showEntity(op.apply(net.kyori.adventure.text.event.HoverEvent.S
CRITICAL…c/main/java/org/bukkit/plugin/SimplePluginManager.java601 callEvent(new com.destroystokyo.paper.event.server.ServerExceptionEvent(new com.destroystokyo.paper.exception.Se
CRITICAL…c/main/java/org/bukkit/plugin/SimplePluginManager.java674 callEvent(new com.destroystokyo.paper.event.server.ServerExceptionEvent(new com.destroystokyo.paper.
CRITICALpaper-api/src/main/java/org/bukkit/plugin/Plugin.java211 return net.kyori.adventure.text.logger.slf4j.ComponentLogger.logger(getLogger().getName());
CRITICALpaper-api/src/main/java/org/bukkit/plugin/Plugin.java227 return org.apache.logging.log4j.LogManager.getLogger(getLogger().getName());
CRITICAL…i/src/main/java/org/bukkit/plugin/java/JavaPlugin.java291 private static final PluginLoader INSTANCE = net.kyori.adventure.util.Services.service(PluginLoader.class)
CRITICAL…i/src/main/java/org/bukkit/plugin/java/JavaPlugin.java295 init(server, description, dataFolder, file, classLoader, description, com.destroystokyo.paper.utils.PaperPluginL
CRITICAL…ain/java/org/bukkit/plugin/java/PluginClassLoader.java74 this.logger = com.destroystokyo.paper.utils.PaperPluginLogger.getLogger(description); // Paper - Register logger
CRITICAL…ain/java/org/bukkit/plugin/java/PluginClassLoader.java77 this.classLoaderGroup = io.papermc.paper.plugin.provider.classloader.PaperClassLoaderStorage.instance().register
CRITICAL…ain/java/org/bukkit/plugin/java/PluginClassLoader.java322 if (org.bukkit.configuration.serialization.ConfigurationSerializable.class.isAssignableFrom(clazz)) {
CRITICAL…ain/java/org/bukkit/plugin/java/PluginClassLoader.java324 org.bukkit.configuration.serialization.ConfigurationSerialization.registerClass(serializable);
CRITICAL…ain/java/org/bukkit/plugin/java/PluginClassLoader.java329 if (org.bukkit.configuration.serialization.ConfigurationSerializable.class.isAssignableFrom(clazz)) {
CRITICAL…ain/java/org/bukkit/plugin/java/PluginClassLoader.java331 org.bukkit.configuration.serialization.ConfigurationSerialization.unregisterClass(serializable);
CRITICAL…ava/org/bukkit/plugin/messaging/StandardMessenger.java544 channel = org.apache.commons.lang3.StringUtils.normalizeSpace(channel);
CRITICAL…/src/main/java/org/bukkit/permissions/Permissible.java139 return net.kyori.adventure.util.TriState.byBoolean(this.hasPermission(permission));
CRITICAL…/src/main/java/org/bukkit/permissions/Permissible.java153 return net.kyori.adventure.util.TriState.byBoolean(this.hasPermission(permission));
CRITICALpaper-api/src/main/java/org/bukkit/map/MapCursor.java71 this.caption = caption == null ? null : net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.leg
CRITICALpaper-api/src/main/java/org/bukkit/map/MapCursor.java124 this.caption = caption == null ? null : net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.leg
CRITICALpaper-api/src/main/java/org/bukkit/map/MapCursor.java270 return this.caption == null ? null : net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacy
CRITICALpaper-api/src/main/java/org/bukkit/map/MapCursor.java281 this.caption = caption == null ? null : net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.leg
CRITICAL…i/src/main/java/org/bukkit/scoreboard/DisplaySlot.java32 public static final net.kyori.adventure.util.Index<String, DisplaySlot> NAMES = net.kyori.adventure.util.Index.creat
CRITICAL…pi/src/main/java/org/bukkit/scoreboard/Scoreboard.java174 return this.registerNewObjective(name, criteria, net.kyori.adventure.text.serializer.legacy.LegacyComponentSeria
CRITICAL…src/main/java/org/bukkit/inventory/SmithingRecipe.java48 com.google.common.base.Preconditions.checkArgument(!result.isEmpty() || this instanceof ComplexRecipe, "Recipe c
CRITICAL…/src/main/java/org/bukkit/inventory/InventoryView.java286 return net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(this.get
CRITICAL…-api/src/main/java/org/bukkit/inventory/ItemStack.java1094 return io.papermc.paper.inventory.ItemRarity.valueOf(this.getItemMeta().getRarity().name());
CRITICAL…src/main/java/org/bukkit/command/SimpleCommandMap.java138 String[] args = org.apache.commons.lang3.StringUtils.split(commandLine, ' '); // Paper - fix adjacent spaces (fr
CRITICAL…src/main/java/org/bukkit/command/SimpleCommandMap.java163 server.getPluginManager().callEvent(new com.destroystokyo.paper.event.server.ServerExceptionEvent(new com.de
CRITICAL…src/main/java/org/bukkit/command/SimpleCommandMap.java169 server.getPluginManager().callEvent(new com.destroystokyo.paper.event.server.ServerExceptionEvent(new com.de
CRITICAL…src/main/java/org/bukkit/command/SimpleCommandMap.java250 server.getPluginManager().callEvent(new com.destroystokyo.paper.event.server.ServerExceptionEvent(new com.de
CRITICAL…main/java/org/bukkit/command/ProxiedCommandSender.java27 net.kyori.adventure.audience.ForwardingAudience.Single.super.sendMessage(source, message, type);
CRITICALpaper-api/src/main/java/org/bukkit/command/Command.java196 if (!permissionMessage.equals(net.kyori.adventure.text.Component.empty())) {
CRITICALpaper-api/src/main/java/org/bukkit/command/Command.java197 target.sendMessage(permissionMessage.replaceText(net.kyori.adventure.text.TextReplacementConfig.builder().ma
CRITICALpaper-api/src/main/java/org/bukkit/command/Command.java335 return net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().serializeOrNull(perm
CRITICALpaper-api/src/main/java/org/bukkit/command/Command.java406 this.permissionMessage = net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().de
CRITICALpaper-api/src/main/java/org/bukkit/command/Command.java461 broadcastCommandMessage(source, net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySecti
CRITICALpaper-api/src/main/java/org/bukkit/command/Command.java469 net.kyori.adventure.text.TextComponent.Builder result = net.kyori.adventure.text.Component.text()
CRITICALpaper-api/src/main/java/org/bukkit/command/Command.java473 .append(net.kyori.adventure.text.Component.text(": "))
CRITICALpaper-api/src/main/java/org/bukkit/command/Command.java495 net.kyori.adventure.text.TextComponent.Builder colored = net.kyori.adventure.text.Component.text()
CRITICALpaper-api/src/main/java/org/bukkit/command/Command.java498 .append(net.kyori.adventure.text.Component.text("["), result, net.kyori.adventure.text.Component.text("]"));
CRITICAL…pi/src/main/java/org/bukkit/command/CommandSender.java138 this.sendMessage(net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().serialize(
CRITICAL…pi/src/main/java/org/bukkit/command/CommandSender.java150 this.sendMessage(net.kyori.adventure.text.minimessage.MiniMessage.miniMessage().deserialize(message, this));
CRITICAL…pi/src/main/java/org/bukkit/command/CommandSender.java163 this.sendMessage(net.kyori.adventure.text.minimessage.MiniMessage.miniMessage().deserialize(message, this, resol
CRITICAL…pi/src/main/java/org/bukkit/command/CommandSender.java172 this.sendMessage(net.kyori.adventure.text.Component.text(message));
CRITICAL…pi/src/main/java/org/bukkit/command/CommandSender.java200 this.sendMessage(new net.md_5.bungee.api.chat.TextComponent(components).toLegacyText());
CRITICAL…n/java/org/bukkit/command/PluginCommandYamlParser.java70 newCmd.permissionMessage(net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySect
CRITICAL…in/java/org/bukkit/command/defaults/ReloadCommand.java75 return com.google.common.collect.Lists.newArrayList("permissions", "commands"); // Paper
719 more matches not shown…
Cross-File Repetition4 hits · 20 pts
SeverityFileLineSnippet
HIGH…pi/src/test/java/org/bukkit/support/MatcherAssert.java0* the block data created for the material %s is not an instance of the data class from that material. *
HIGH…pi/src/test/java/org/bukkit/support/MatcherAssert.java0* the block data created for the material %s is not an instance of the data class from that material. *
HIGH…er/src/test/java/org/bukkit/support/MatcherAssert.java0* the block data created for the material %s is not an instance of the data class from that material. *
HIGH…er/src/test/java/org/bukkit/support/MatcherAssert.java0* the block data created for the material %s is not an instance of the data class from that material. *
Over-Commented Block10 hits · 10 pts
SeverityFileLineSnippet
LOW…t/java/org/bukkit/metadata/MetadataConversionTest.java1// Copyright (C) 2011 Ryan Michela
LOW…-api/src/main/java/org/bukkit/inventory/ItemStack.java1241
LOW…-server/src/main/resources/configurations/commands.yml1# This is the Bukkit commands configuration file for Paper.
LOWpaper-server/src/main/resources/configurations/help.yml1# This is the Bukkit help configuration file for Paper.
LOWpaper-server/src/main/resources/configurations/help.yml21# general-topics:
LOWpaper-server/src/main/resources/configurations/help.yml41#
LOWpaper-server/src/main/resources/configurations/help.yml61# Docs: https://docs.papermc.io/
LOW…bukkit/craftbukkit/inventory/CraftInventoryPlayer.java81 ServerPlayer player = ((CraftPlayer) this.getHolder()).getHandle();
LOW…bukkit/craftbukkit/inventory/CraftInventoryPlayer.java101 // The player's hotbar is indexed 0-8 in setItem(). The order goes: 0-8 hotbar, 9-35 normal inventory, 36 boots,
LOWbuild-data/dev-imports.txt1# You can use this file to import files from minecraft libraries into the project
Self-Referential Comments1 hit · 4 pts
SeverityFileLineSnippet
MEDIUMpaper-server/src/main/resources/configurations/help.yml7# This file is divided up into the following parts:
Decorative Section Separators1 hit · 4 pts
SeverityFileLineSnippet
MEDIUMpaper-server/src/main/resources/configurations/help.yml15# ================================================================
Redundant / Tautological Comments1 hit · 2 pts
SeverityFileLineSnippet
LOWpaper-server/src/main/resources/configurations/help.yml17# Set this to true to list the individual command help topics in the master help.