1.0.4
Compatibility
Changes
π§© Perfect Messages v1.0.4 β Visual Power & Smooth Control
β¨ New Features
-
πΌοΈ Image Support in Messages You can now insert custom 128Γ128 images at the beginning of messages:
/perfectmessage @a "pic.png b50d4Hello, %player_name%!"β«οΈ Images are stored in
mods/pm/images/β the folder is automatically created on launch. β«οΈ Works perfectly with multiline messages and aligns vertically. -
β¨οΈ Customizable Key Binding The message log window can now be toggled via Settings β Controls β PM: Toggle Message Log. Default key:
N(you can now freely change it β it works correctly). -
π¬ Command Rename The main command is now:
/perfectmessage(replaces
/showmessagein previous versions)
βοΈ Improvements
- πͺΆ Optimized message log rendering β significantly less FPS drop when many messages are shown.
- π Smoother fade in/out transitions for pop-up messages.
- π Better transparency balance for message backgrounds.
- π§ Improved placeholder parsing and color handling (
&,&#hex, gradients, and obfuscated text). - π Automatic folder creation for
mods/pm/imageson first run.
π Bug Fixes
- Fixed: Key binding always stuck to
Nand couldnβt be changed. - Fixed: Rare flicker on message disappearance.
- Fixed: Message duration overlapping from previous message timings.
- Fixed: Occasional texture reload issues for new image messages.
π§° Technical Notes
- Works on Minecraft 1.19.2 and 1.20.1 (Forge).
- Full client-side sync for LAN multiplayer.
- Uses efficient texture caching and lazy loading for images.
β€οΈ Perfect Messages β Your Messages, Your Story.
Cinematic messages, smooth fades, and image-enhanced dialogues β now even better.
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:BRNTontS:9jdfVKXR"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:BRNTontS:9jdfVKXR"
}

