0.3.19
Compatibility
Changes
The client moves the pointer itself. A vanilla client reports where it is looking twenty
times a second, and a pointer sent frame by frame could only be as smooth as packets happened to
arrive. Now each reading of the aim becomes a one-tick segment of a schedule — from where the
last one ended to the new reading, starting at a whole tick of the world's clock a little ahead
— and the text shader plays it by the client's own clock (GameTime), showing each segment only
in its tick and a hold at the end. When a packet lands no longer matters, so the pointer goes
through the readings end to end with no jump, the way the client moves an entity between two
updates, about a tick behind the hand. Clients on the 26.2 pack only (input.client-motion);
older ones are sent every frame as before. Found and measured on a live client with the new
/vui debug mtrace (every reading and every packet for ten seconds) and /vui debug clock.
Each player sets their own pointer — /vui cursor, or VoidRpUi.cursorSettings(player, then)
from a server's own settings page: speed, smooth or frame by frame, and the clock alignment,
lined up against a ruler. Kept in cursor.yml; anything left alone follows the input section.
Experimental: the page in the world. For whoever holds voidrp.ui.world (operators by
default), the page can be drawn on a text display in front of the player, in a dark room, with
the crosshair as the pointer — no delay at all, since the client turns the camera itself. The
text shader's world variant lays the same glyphs on the display's plane. See the README.
From the fork by Noah Teetz:
- Latin-1 letters, German and English quotation marks and the euro sign in the text sheets; accented letters used to vanish without an error.
theme.ymlcan name a typeface of its own, pixel faces included; without it nothing changes.- Item icons at 48 units.
- Files under
plugins/VoidRpUI/pack/go into the resource pack as they are.
Also:
- The aim is read 60 times a second whatever
input.frame-ratesays; that now only limits a pointer sent frame by frame. input.client-clock-offset(0.9) and/vui debug offset,/vui debug motionto compare the two kinds of pointer live.
Full Changelog: https://github.com/VOIDRP-MINECRAFT/voidrp-ui/compare/v0.3.18...v0.3.19
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:K6cjpywA:ukyd0vWk"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:K6cjpywA:ukyd0vWk"
}

