Skip to content

Commit

Permalink
Rewrite network patches
Browse files Browse the repository at this point in the history
  • Loading branch information
C0D3-M4513R committed Mar 18, 2024
1 parent 13179f7 commit 563a88c
Show file tree
Hide file tree
Showing 6 changed files with 28 additions and 127 deletions.
10 changes: 3 additions & 7 deletions patches/minecraft/net/minecraft/network/Connection.java.patch
Original file line number Diff line number Diff line change
@@ -1,13 +1,9 @@
--- a/net/minecraft/network/Connection.java
+++ b/net/minecraft/network/Connection.java
@@ -72,8 +_,13 @@
});
private final PacketFlow receiving;
@@ -74,6 +_,11 @@
private final Queue<Connection.PacketHolder> queue = Queues.newConcurrentLinkedQueue();
- private Channel channel;
- private SocketAddress address;
+ public Channel channel;
+ public SocketAddress address;
public Channel channel;
public SocketAddress address;
+ // Spigot Start
+ public java.util.UUID spoofedUUID;
+ public com.mojang.authlib.properties.Property[] spoofedProfile;
Expand Down
23 changes: 13 additions & 10 deletions patches/minecraft/net/minecraft/network/chat/TextColor.java.patch
Original file line number Diff line number Diff line change
@@ -1,31 +1,34 @@
--- a/net/minecraft/network/chat/TextColor.java
+++ b/net/minecraft/network/chat/TextColor.java
@@ -20,7 +_,7 @@
@@ -20,6 +_,7 @@
});
}, TextColor::serialize);
private static final Map<ChatFormatting, TextColor> LEGACY_FORMAT_TO_COLOR = Stream.of(ChatFormatting.values()).filter(ChatFormatting::isColor).collect(ImmutableMap.toImmutableMap(Function.identity(), (p_237301_) -> {
- return new TextColor(p_237301_.getColor(), p_237301_.getName());
+ return new TextColor(p_237301_.getColor(), p_237301_.getName(), p_237301_); // CraftBukkit
+ ketting$format = p_237301_; // Ketting - CraftBukkit
return new TextColor(p_237301_.getColor(), p_237301_.getName());
}));
private static final Map<String, TextColor> NAMED_COLORS = LEGACY_FORMAT_TO_COLOR.values().stream().collect(ImmutableMap.toImmutableMap((p_237297_) -> {
return p_237297_.name;
@@ -28,16 +_,26 @@
@@ -28,16 +_,30 @@
private final int value;
@Nullable
private final String name;
-
+ // CraftBukkit start
+ @Nullable
+ public final ChatFormatting format;
+
+ @SuppressWarnings("unused") //Ketting - mixin/minecraft compat
private TextColor(int p_131263_, String p_131264_) {
+ this(p_131263_, p_131264_, null);
+ public static @Nullable ChatFormatting ketting$format;
+ private static String wrap(String passthrough, @Nullable ChatFormatting format){
+ ketting$format = format;
+ return passthrough;
+ }
+ private TextColor(int p_131263_, String p_131264_, @Nullable ChatFormatting format) {
+ this(p_131263_, wrap(p_131264_, format));
+ }
+
private TextColor(int p_131263_, String p_131264_) {
this.value = p_131263_;
this.name = p_131264_;
+ this.format = format;
+ this.format = ketting$format;
}

private TextColor(int p_131261_) {
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

public ClientIntentionPacket(String p_134726_, int p_134727_, ConnectionProtocol p_134728_) {
this.protocolVersion = SharedConstants.getCurrentVersion().getProtocolVersion();
@@ -21,14 +_,19 @@
@@ -21,14 +_,16 @@

public ClientIntentionPacket(FriendlyByteBuf p_179801_) {
this.protocolVersion = p_179801_.readVarInt();
Expand All @@ -18,9 +18,6 @@
this.intention = ConnectionProtocol.getById(p_179801_.readVarInt());
+ this.fmlVersion = net.minecraftforge.network.NetworkHooks.getFMLVersion(hostName);
+ this.hostName = hostName.split("\0")[0];
+//- this(p_179801_.readVarInt(), p_179801_.readUtf(255), p_179801_.readUnsignedShort(), ClientIntent.byId(p_179801_.readVarInt()));
+//+ // Spigot - increase max hostName length
+//+ this(p_179801_.readVarInt(), p_179801_.readUtf(Short.MAX_VALUE), p_179801_.readUnsignedShort(), ClientIntent.byId(p_179801_.readVarInt()));
}

public void write(FriendlyByteBuf p_134737_) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,37 +26,6 @@
int i = p_135373_.getId();
if (i > 254) {
throw new IllegalArgumentException("Data value id is too big with " + i + "! (Max is 254)");
@@ -87,9 +_,9 @@

private <T> void createDataItem(EntityDataAccessor<T> p_135386_, T p_135387_) {
SynchedEntityData.DataItem<T> dataitem = new SynchedEntityData.DataItem<>(p_135386_, p_135387_);
- this.lock.writeLock().lock();
+ // this.lock.writeLock().lock(); // Spigot - not required
this.itemsById.put(p_135386_.getId(), dataitem);
- this.lock.writeLock().unlock();
+ // this.lock.writeLock().unlock(); // Spigot - not required
}

public <T> boolean hasItem(EntityDataAccessor<T> p_286294_) {
@@ -97,6 +_,8 @@
}

private <T> SynchedEntityData.DataItem<T> getItem(EntityDataAccessor<T> p_135380_) {
+ // Spigot start
+ /*
this.lock.readLock().lock();

SynchedEntityData.DataItem<T> dataitem;
@@ -112,6 +_,9 @@
}

return dataitem;
+ */
+ return (SynchedEntityData.DataItem<T>)this.itemsById.get(p_135380_.getId());
+ // Spigot end
}

public <T> T get(EntityDataAccessor<T> p_135371_) {
@@ -133,6 +_,13 @@

}
Expand All @@ -71,57 +40,6 @@
public boolean isDirty() {
return this.isDirty;
}
@@ -141,7 +_,7 @@
public List<SynchedEntityData.DataValue<?>> packDirty() {
List<SynchedEntityData.DataValue<?>> list = null;
if (this.isDirty) {
- this.lock.readLock().lock();
+ // this.lock.readLock().lock(); // Spigot - not required

for(SynchedEntityData.DataItem<?> dataitem : this.itemsById.values()) {
if (dataitem.isDirty()) {
@@ -154,7 +_,7 @@
}
}

- this.lock.readLock().unlock();
+ // this.lock.readLock().unlock(); // Spigot - not required
}

this.isDirty = false;
@@ -164,7 +_,7 @@
@Nullable
public List<SynchedEntityData.DataValue<?>> getNonDefaultValues() {
List<SynchedEntityData.DataValue<?>> list = null;
- this.lock.readLock().lock();
+ // this.lock.readLock().lock(); // Spigot - not required

for(SynchedEntityData.DataItem<?> dataitem : this.itemsById.values()) {
if (!dataitem.isSetToDefault()) {
@@ -176,12 +_,12 @@
}
}

- this.lock.readLock().unlock();
+ // this.lock.readLock().unlock(); // Spigot - not required
return list;
}

public void assignValues(List<SynchedEntityData.DataValue<?>> p_135357_) {
- this.lock.writeLock().lock();
+ // this.lock.writeLock().lock(); // Spigot - not required

try {
for(SynchedEntityData.DataValue<?> datavalue : p_135357_) {
@@ -192,7 +_,7 @@
}
}
} finally {
- this.lock.writeLock().unlock();
+ // this.lock.writeLock().unlock(); // Spigot - not required
}

this.entity.onSyncedDataUpdated(p_135357_);
@@ -209,6 +_,18 @@
public boolean isEmpty() {
return this.itemsById.isEmpty();
Expand Down
11 changes: 11 additions & 0 deletions src/main/resources/META-INF/accesstransformer.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -959,4 +959,15 @@ public net.minecraft.world.inventory.InventoryMenu f_39701_ # craftSlots
public-f net.minecraft.world.inventory.AbstractContainerMenu f_38841_ # lastSlots
public-f net.minecraft.world.inventory.AbstractContainerMenu f_38839_ # slots
public-f net.minecraft.world.inventory.AbstractContainerMenu f_150394_ # remoteSlots

public net.minecraft.network.protocol.game.ServerboundMovePlayerPacket f_134118_ # x
public net.minecraft.network.protocol.game.ServerboundMovePlayerPacket f_134119_ # y
public net.minecraft.network.protocol.game.ServerboundMovePlayerPacket f_134120_ # z
public net.minecraft.network.protocol.game.ServerboundMovePlayerPacket f_134121_ # yRot
public net.minecraft.network.protocol.game.ServerboundMovePlayerPacket f_134122_ # xRot
public net.minecraft.network.protocol.game.ServerboundMovePlayerPacket f_134124_ # hasPos
public net.minecraft.network.protocol.game.ServerboundMovePlayerPacket f_134125_ # hasRot

public net.minecraft.network.Connection f_129468_ # channel
public net.minecraft.network.Connection f_129469_ # address
#endgroup KETTING

0 comments on commit 563a88c

Please sign in to comment.