Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: astei/krypton
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.1.9
Choose a base ref
...
head repository: astei/krypton
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref

Commits on Mar 9, 2022

  1. Better mixin name

    astei committed Mar 9, 2022
    Copy the full SHA
    bfd6d9f View commit details
  2. Unschooled?

    astei committed Mar 9, 2022
    Copy the full SHA
    4d6054e View commit details
  3. Krypton 0.1.10-SNAPSHOT

    astei committed Mar 9, 2022
    Copy the full SHA
    e5dbc48 View commit details
  4. Resync splitter from Velocity

    astei committed Mar 9, 2022
    Copy the full SHA
    fff5cca View commit details
  5. Copy the full SHA
    c41bced View commit details

Commits on Mar 19, 2022

  1. Fix #67

    Since this mixin is now present in Lithium (which most users of Krypton run as well), there's no need for us to retain this historic optimization.
    astei committed Mar 19, 2022
    Copy the full SHA
    c6482d6 View commit details

Commits on Apr 17, 2022

  1. Update Krypton for 22w15a

    astei committed Apr 17, 2022
    Copy the full SHA
    422a430 View commit details

Commits on May 13, 2022

  1. Fix #69

    This PR changes chunk sending order, now preferring to send the chunks nearest to the player whenever possible.
    astei committed May 13, 2022
    Copy the full SHA
    d24cb7e View commit details

Commits on May 14, 2022

  1. fix #70 - send chunks in a spiral

    astei committed May 14, 2022
    Copy the full SHA
    3b66408 View commit details

Commits on May 16, 2022

  1. Fix chunk unload packets not sending & send packets in a more efficie…

    …nt order on player join (#71)
    
    * Chunk packet changes
    
    - Fix krypton not properly sending chunk unload packets
    - Optimize chunk send order for player joins (send chunks in spiral around player)
    
    * Refactor method & fix swapped booleans
    
    - Rename arguments of sendWatchPackets, to indicate their proper function
    - Update chunk unloading to work properly for large teleports (boolean values were swapped)
    
    * Remove logger used for debugging
    
    * Requested changes
    
    Signed-off-by: solonovamax <solonovamax@12oclockpoint.com>
    solonovamax authored May 16, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    8a3179d View commit details

Commits on May 24, 2022

  1. Copy the full SHA
    bd3972e View commit details

Commits on May 28, 2022

  1. Chunk loading order changes (#74)

    * Chunk packet changes
    
    - Fix krypton not properly sending chunk unload packets
    - Optimize chunk send order for player joins (send chunks in spiral around player)
    
    * Refactor method & fix swapped booleans
    
    - Rename arguments of sendWatchPackets, to indicate their proper function
    - Update chunk unloading to work properly for large teleports (boolean values were swapped)
    
    * Remove logger used for debugging
    
    * Requested changes
    
    Signed-off-by: solonovamax <solonovamax@12oclockpoint.com>
    
    * Add mixin debug code to build.gradle
    
    Signed-off-by: solonovamax <solonovamax@12oclockpoint.com>
    
    * Only send the chunks in the player's render distance to the client
    
    Signed-off-by: solonovamax <solonovamax@12oclockpoint.com>
    
    * Fix formatting errors
    
    Signed-off-by: solonovamax <solonovamax@12oclockpoint.com>
    
    * Possibly fix nullptr in chunk ticket manager
    
    Signed-off-by: solonovamax <solonovamax@12oclockpoint.com>
    solonovamax authored May 28, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    b23edf8 View commit details
  2. Fix null pointer exception (#75)

    Fix null pointer exception (and the unsupported operation exception that was previously introduced) in ChunkTicketManager
    
    Signed-off-by: solonovamax <solonovamax@12oclockpoint.com>
    solonovamax authored May 28, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    4045984 View commit details
  3. Fix issue with inverted boolean (#76)

    I really did a bruh moment here.
    Renamed the methods to avoid confusion in the future.
    
    Signed-off-by: solonovamax <solonovamax@12oclockpoint.com>
    solonovamax authored May 28, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    5e2d288 View commit details

Commits on May 30, 2022

  1. comment

    astei committed May 30, 2022
    Copy the full SHA
    918c654 View commit details

Commits on Jun 7, 2022

  1. Merge branch 'master' into dev/mc-1.19

    # Conflicts:
    #	src/main/java/me/steinborn/krypton/mixin/shared/network/flushconsolidation/ThreadedAnvilChunkStorageMixin.java
    astei committed Jun 7, 2022
    Copy the full SHA
    506d73d View commit details
  2. update for 1.19-rc2

    astei committed Jun 7, 2022
    Copy the full SHA
    b2cd4c1 View commit details

Commits on Jun 8, 2022

  1. "formal" 1.19 update

    astei committed Jun 8, 2022
    Copy the full SHA
    b472d2c View commit details
  2. 0.1.10

    astei committed Jun 8, 2022
    Copy the full SHA
    337c4d1 View commit details
  3. Copy the full SHA
    943a27e View commit details

Commits on Jun 23, 2022

  1. Fix

    astei committed Jun 23, 2022
    Copy the full SHA
    8d957c9 View commit details

Commits on Jul 30, 2022

  1. Update to 1.19.1 (#85)

    * Update to 1.19.1
    
    * Remove dead imports
    triphora authored Jul 30, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    87f253f View commit details
  2. 0.2.1

    astei committed Jul 30, 2022
    Copy the full SHA
    52ed84a View commit details

Commits on Mar 15, 2023

  1. Update to 1.19.4 (#95)

    DrexHD authored Mar 15, 2023

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    a246a12 View commit details

Commits on Mar 16, 2023

  1. 0.2.2

    astei committed Mar 16, 2023
    Copy the full SHA
    ddd5a4c View commit details
  2. Copy the full SHA
    af203ae View commit details

Commits on Apr 19, 2023

  1. Correctly handle negative compression thresholds even though this is …

    …not standardized whatsoever
    astei committed Apr 19, 2023
    Copy the full SHA
    80720b2 View commit details
  2. Add pipeline events

    astei committed Apr 19, 2023
    Copy the full SHA
    5896b60 View commit details
  3. Copy the full SHA
    4ce2286 View commit details
  4. proxy -> server

    astei committed Apr 19, 2023
    Copy the full SHA
    6562a2e View commit details

Commits on Jun 10, 2023

  1. Krypton 0.2.3

    astei committed Jun 10, 2023
    Copy the full SHA
    545721a View commit details

Commits on Sep 11, 2023

  1. Add system property to permit oversized packets.

    This should fix #91, but this is not enabled by default for security reasons. This also does not raise all relevant packet lengths capped by the protocol, although this can be added at a future point in time.
    
    With this system property enabled, Krypton permits packets with 5-byte VarInt prefixes and allows uncompressed packets to be up to 2GiB in size.
    astei committed Sep 11, 2023
    Copy the full SHA
    5fb9eba View commit details

Commits on Sep 13, 2023

  1. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    c118928 View commit details

Commits on Sep 23, 2023

  1. Extremely rough initial 1.20.2 version

    I had to axe a bunch of the mixins to get this version working. Of the stuff removed, most is now (mercifully) redundant with Mojang adding batch packets. The only change removed in this commit we can bring back is sending chunks in a spiral.
    astei committed Sep 23, 2023
    Copy the full SHA
    5fd6a75 View commit details
  2. fix

    astei committed Sep 23, 2023
    Copy the full SHA
    b3e3a2e View commit details
  3. Copy the full SHA
    ce63d99 View commit details
  4. Clean up access widener, 0.2.4

    astei committed Sep 23, 2023
    Copy the full SHA
    e6be3e9 View commit details

Commits on Dec 30, 2023

  1. Fix incompatibility with Fabric API 0.9.1 and later.

    Fixes #111.
    
    This isn't the cleanest possible fix, but it does entirely avoid the issue by cloning the contents of plugin messages.
    astei committed Dec 30, 2023
    Copy the full SHA
    da56647 View commit details
  2. Krypton 0.2.5

    astei committed Dec 30, 2023
    Copy the full SHA
    8e74a47 View commit details
  3. Copy the full SHA
    5d5870f View commit details

Commits on Jan 2, 2024

  1. 0.2.6

    astei committed Jan 2, 2024
    Copy the full SHA
    927923b View commit details

Commits on Apr 26, 2024

  1. Initial cut of Minecraft 1.20.5 version

    However, it looks like this keeps crashing in my local environment, and I need to dig deeper here...
    astei committed Apr 26, 2024
    Copy the full SHA
    66dcc36 View commit details

Commits on Apr 30, 2024

  1. 1.20.6

    astei committed Apr 30, 2024
    Copy the full SHA
    82aac06 View commit details
  2. Krypton 0.2.7

    astei committed Apr 30, 2024
    Copy the full SHA
    5a734a3 View commit details

Commits on Jun 22, 2024

  1. Krypton 0.2.8 (#117)

    BenCat07 authored Jun 22, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    d5c8f54 View commit details
Showing with 262 additions and 765 deletions.
  1. +26 −9 build.gradle
  2. +4 −6 gradle.properties
  3. +1 −1 gradle/wrapper/gradle-wrapper.properties
  4. +0 −25 src/main/java/me/steinborn/krypton/mixin/client/fastchunkentityaccess/ClientWorldMixin.java
  5. +0 −26 src/main/java/me/steinborn/krypton/mixin/server/fastchunkentityaccess/ServerWorldMixin.java
  6. +0 −18 src/main/java/me/steinborn/krypton/mixin/shared/bugfix/CustomPayloadS2CPacketFixMemoryLeakMixin.java
  7. +2 −2 .../java/me/steinborn/krypton/mixin/shared/debugaid/ResourceLeakDetectorDisableConditionalMixin.java
  8. +0 −13 ...n/java/me/steinborn/krypton/mixin/shared/fastchunkentityaccess/EntityTrackingSectionAccessor.java
  9. +0 −48 src/main/java/me/steinborn/krypton/mixin/shared/fastchunkentityaccess/SectionedEntityCacheMixin.java
  10. +0 −73 ...main/java/me/steinborn/krypton/mixin/shared/network/avoidwork/ThreadedAnvilChunkStorageMixin.java
  11. +0 −112 ...main/java/me/steinborn/krypton/mixin/shared/network/flushconsolidation/ClientConnectionMixin.java
  12. +0 −24 ...in/java/me/steinborn/krypton/mixin/shared/network/flushconsolidation/EntityTrackerEntryMixin.java
  13. +0 −162 .../me/steinborn/krypton/mixin/shared/network/flushconsolidation/ThreadedAnvilChunkStorageMixin.java
  14. +34 −0 src/main/java/me/steinborn/krypton/mixin/shared/network/microopt/StringEncodingMixin.java
  15. +0 −23 src/main/java/me/steinborn/krypton/mixin/shared/network/microopt/TacsTrackedEntityMixin.java
  16. +16 −46 .../me/steinborn/krypton/mixin/shared/network/microopt/{PacketByteBufMixin.java → VarIntsMixin.java}
  17. +1 −1 src/main/java/me/steinborn/krypton/mixin/shared/network/pipeline/LegacyQueryHandlerMixin.java
  18. +23 −11 src/main/java/me/steinborn/krypton/mixin/shared/network/pipeline/SplitterHandlerMixin.java
  19. +22 −30 ...in/java/me/steinborn/krypton/mixin/shared/network/pipeline/compression/ClientConnectionMixin.java
  20. +3 −0 ...ain/java/me/steinborn/krypton/mixin/shared/network/pipeline/encryption/ClientConnectionMixin.java
  21. +1 −1 ...me/steinborn/krypton/mixin/shared/network/pipeline/encryption/ServerLoginNetworkHandlerMixin.java
  22. +1 −2 src/main/java/me/steinborn/krypton/mod/client/KryptonClientInitializer.java
  23. +0 −4 src/main/java/me/steinborn/krypton/mod/shared/KryptonMixinPlugin.java
  24. +0 −9 src/main/java/me/steinborn/krypton/mod/shared/WorldEntityByChunkAccess.java
  25. +8 −0 src/main/java/me/steinborn/krypton/mod/shared/misc/KryptonPipelineEvent.java
  26. +17 −4 src/main/java/me/steinborn/krypton/mod/shared/network/VarintByteDecoder.java
  27. +51 −45 src/main/java/me/steinborn/krypton/mod/shared/network/compression/MinecraftCompressDecoder.java
  28. +0 −23 src/main/java/me/steinborn/krypton/mod/shared/network/util/AutoFlushUtil.java
  29. +19 −0 src/main/java/me/steinborn/krypton/mod/shared/network/util/QuietDecoderException.java
  30. +2 −1 src/main/java/me/steinborn/krypton/mod/shared/network/util/VarIntUtil.java
  31. +8 −0 src/main/java/me/steinborn/krypton/mod/shared/network/util/WellKnownExceptions.java
  32. +1 −7 src/main/resources/fabric.mod.json
  33. +2 −9 src/main/resources/krypton.accesswidener
  34. +20 −30 src/main/resources/krypton.mixins.json
35 changes: 26 additions & 9 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
plugins {
id 'fabric-loom' version '0.10-SNAPSHOT'
id 'fabric-loom' version '1.6-SNAPSHOT'
id 'maven-publish'
}

repositories {
maven {
url "https://repo.velocitypowered.com/snapshots/"
url "https://papermc.io/repo/repository/maven-public/"
}
maven { name 'Jitpack'; url 'https://jitpack.io' }
}

sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
sourceCompatibility = JavaVersion.VERSION_21
targetCompatibility = JavaVersion.VERSION_21

archivesBaseName = project.archives_base_name
version = project.mod_version
@@ -28,10 +28,7 @@ dependencies {
minecraft "com.mojang:minecraft:${project.minecraft_version}"
mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"
modImplementation include("com.velocitypowered:velocity-native:1.1.0-SNAPSHOT")

// Include LazyDFU so starting the server and client at the same time doesn't turn my computer into a fighter jet
modRuntime "com.github.astei:lazydfu:${project.lazydfu_version}"
modImplementation include("com.velocitypowered:velocity-native:3.3.0-SNAPSHOT")
}

test {
@@ -73,6 +70,26 @@ publishing {
}
}

afterEvaluate {
tasks.getByName("configureClientLaunch").doFirst {
loom {
runs {
all {
property("fabric.development=true")
property("mixin.hotSwap")
// vmArg("-javaagent:${dependencies.module(group = "net.fabricmc", name = "sponge-mixin")}")
def mixinJarFile = configurations.compileClasspath.files {
it.group == "net.fabricmc" && it.name == "sponge-mixin"
}.find { true }
vmArg("-javaagent:$mixinJarFile")

ideConfigGenerated = true
}
}
}
}
}

loom {
accessWidenerPath = file("src/main/resources/krypton.accesswidener")
}
}
10 changes: 4 additions & 6 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -2,12 +2,10 @@
org.gradle.jvmargs=-Xmx1G
# Fabric Properties
# check these on https://modmuss50.me/fabric.html
minecraft_version=1.18.2
yarn_mappings=1.18.2+build.1
loader_version=0.13.3
# Runtime
lazydfu_version=0.1.2
minecraft_version=1.21
yarn_mappings=1.21+build.2
loader_version=0.15.11
# Mod Properties
mod_version=0.1.9
mod_version=0.2.8
maven_group=me.steinborn
archives_base_name=krypton
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -10,9 +10,9 @@
public class ResourceLeakDetectorDisableConditionalMixin {
@Redirect(method = "<clinit>", at = @At(value = "INVOKE", target = "Lio/netty/util/ResourceLeakDetector;setLevel(Lio/netty/util/ResourceLeakDetector$Level;)V"))
private static void clinit$resourceLeakDetectorDisableConditional(ResourceLeakDetector.Level level) {
// If io.netty.leakDetection.level is defined, override the client disabling it by default.
// Otherwise, allow it to be disabled.
if (System.getProperty("io.netty.leakDetection.level") == null) {
// Allow the user to override the leak detection level in the Minecraft server with the
// io.netty.leakDetection.level system property.
ResourceLeakDetector.setLevel(level);
}
}

This file was deleted.

This file was deleted.

This file was deleted.

Loading