Tags
Creators
Details
Licensed AGPL-3.0-only
Published 2 years ago
Updated 2 months ago
All versions
1.4.1
Release
Raycasted Entity Occlusions 1.4.1last year 78
Compatibility
Minecraft: Java Edition
1.21–1.21.3
Platforms
Paper
Purpur
Changes
Massive changes, the entire plugin was refactored. No, you didn't miss 1.3.0, this is the follow up to 1.2.2.
Breaking Changes:
- Plugin is now called "Raycasted Entity Occlusions" instead of "Raycasted Entity Occlusion"
- This is just a grammar thing lol, but it means the config folder name has changes too, which is good because
- All config options have changed
- The existing ones have been renamed and new ones have been added. I recommend starting with a fresh config, it's not worth trying to transfer your old values. Just generate a fresh config and edit the values as you see fit, or you can use the
- Reworked commands
- The command is now /raycastedentityocclusions (alias /reo)
- Behind the scenes, it now uses the new Brigadier API instead of the outdated Bukkit method
- One of the subcommands, /reo set <key> <pair> allows you to change config values from the chat/console
- Proper multithreading
- Instead of making unsafe async worldstate checks, the plugin now routinely snapshots all loaded chunks and checks the snapshots when raycasting. A basic test seems to show a slight performance increase, but more importantly it is no longer performing unsafe actions
- Engine mode changes
- There are now only two engine modes, both with a new "piercing" feature. The first, 1, is a single raycast from the player to the entity. 2 runs the same cast as 1, but also predicts the player's future location and runs a cast from there. This helps account for players with higher ping.
- "Piercing" (controlled by max-occluding-count) is the number of solid blocks a raycast must pass through before being stopped. This helps with showing entities which will soon be visible.
- only-cull-sneaking-players is now a fully functional feature
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:bCjNZu0C:yft7PqXO"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:bCjNZu0C:yft7PqXO"
}

