Skip to content

A high-performance fork of Paper designed for large servers.

License

Notifications You must be signed in to change notification settings

Yive/Pufferfish

 
 

Repository files navigation

Pufferfish

A highly optimized Paper fork designed for large servers requiring both maximum performance, stability, and "enterprise" features.

Note: This fork is just so that it is easier for me to maintain my optimisation fork called Pluto

Features

  • Sentry Integration Easily track all errors coming from your server in excruciating detail
  • Better Entity Performance Reduces the performance impact of entities by skipping useless work and making barely-noticeable changes to behavior
  • Partial Asynchronous Processing Partially offloads some heavy work to other threads where possible without sacrificing stability
  • 8x Faster Map Rendering Reduces or eliminates lag spikes caused by plugins like ImageOnMap or ImageMaps
  • 30% faster hoppers over Paper (Airplane)
  • Reduced GC times & frequency from removing useless allocations, which also improves CPU performance (Airplane)
  • Fast raytracing which improves performance of any entity which utilizes line of sight, mainly Villagers (Airplane)
  • Faster crafting, reduction in uselessly loaded chunks, faster entity ticking, faster block ticking, faster bat spawning, and more!
  • Complete compatibility with any plugin compatible with Paper
  • And more coming soon...

Downloads

You can download the latest JAR file here.

API

You can find the javadocs here.

Maven:

<repositories>
    <repository>
        <id>yive-repo</id>
        <url>https://repo.yive.dev/snapshots</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>gg.pufferfish.pufferfish</groupId>
        <artifactId>pufferfish-api</artifactId>
        <version>1.21.5-R0.1-SNAPSHOT</version>
        <scope>provided</scope>
    </dependency>
</dependencies>

Gradle:

repositories {
    maven {
        url = 'https://repo.yive.dev/snapshots'
    }
}

dependencies {
    compileOnly 'gg.pufferfish.pufferfish:pufferfish-api:1.21.5-R0.1-SNAPSHOT'
}

Paperweight + Gradle KTS:

repositories {
    maven("https://repo.yive.dev/snapshots")
}

dependencies {
    paperweight.devBundle("gg.pufferfish.pufferfish", "1.21.5-R0.1-SNAPSHOT")
}

Building

./gradlew applyAllPatches
./gradlew createMojmapPaperclipJar

License

Patches are licensed under GPL-3.0. All other files are licensed under MIT.

About

A high-performance fork of Paper designed for large servers.

Resources

License

Stars

Watchers

Forks

Languages

  • Java 92.2%
  • Shell 7.8%