Ritchie's Projectile Library
ModMIT

Ritchie's Projectile Library

A Minecraft modding library for better projectiles.

574.8K
Downloads
16
Followers
2 months ago
Updated
📦
7
Versions

📖About Ritchie's Projectile Library

Ritchie's Projectile Library

Code reused in multiple projects by rbasamoyai.

Adds the following features:

  • #ritchiesprojectilelib:precise_motion: an entity type tag that sends more
    detailed movement and position data to clients.
  • A configurable chunkloading system oriented towards modded long-range and
    fast projectiles.
    • Unloads forceloaded chunks that are no longer in use
    • Loads a portion of forceloaded chunks at a time to reduce performance
      impact while still allowing for many long distance projectiles
  • Screen shake effect for mods, particularly those focused on firearms and
    artillery
  • Projectile bursts, for effective simulation of things like fragmentation
    explosions, shotgun pellets, and shrapnel shells without having to rely on
    large amounts of entities

Depending on RPL

First, add the following maven to your repositories block:

repositories {
    //...
    maven { // Ritchie's Projectile Library
        url = "https://maven.realrobotix.me/master/"
        content {
            includeGroup("com.rbasamoyai") // THIS IS IMPORTANT
        }
    }
}

RPL artefacts are formatted as follows:

ritchiesprojectilelib-<rpl_version>+mc.<minecraft_version>-<rpl_platform>-build.<rpl_build_number>

where rpl_version is the version of Ritchie's Projectile Library,
minecraft_version is the Minecraft version, platform is the modloader
platform, of which forge, fabric, and common JARs are provided, and
build_number is the build number.

The latest build can be found in the GitHub actions history:
https://github.com/Wagers-of-Industrial-Warfare/RitchiesProjectileLib/actions

Depending on your build.gradle setup, add one of the following to your
dependencies block:

ForgeGradle (1.18.2-1.20.1)

implementation fg.deobf("com.rbasamoyai:ritchiesprojectilelib:<rpl_version>+mc.<minecraft_version>-forge-build.<rpl_build_number>") { transitive = false }

Loom (Fabric/Architectury)

modImplementation("com.rbasamoyai:ritchiesprojectilelib:<rpl_version>+mc.<minecraft_version>-<rpl_platform>-build.<rpl_build_number>") { transitive = false }

rpl_platform should either be common, forge, or fabric depending on
the Architectury subproject you add the mod to. For Fabric, only use fabric.