This plugin replaces font for actionbar, scoreboard (title included) and boss-bar texts. Made this quite a while ago for Drag Championship (MCC recreation). Maybe someone might find this useful, dunno.
Requires PaperMC and ProtocolLib!
- Multiple font support
- Disable certain packets
- Custom "color code" for font
- Only allow text to change font if regex matches
- Reload command (v1.2.0 only)
In theory: 1.19–1.21
Tested versions: 1.19.2, 1.20.2, 1.21.3
If you are using v1.2.0 on 1.19 version, you might see "Unsupported class file major version 65" error, ignore it, the plugin will work anyway, and I won't bother to fix this.
There's a packet listener and what it does is basically gets every text (in json) that is sent to the player and changes font property. This plugin might be resource-intensive, but there wasn't really a way for me to make it work in any other way on the event server I mentioned above.
Just drop this plugin to your /plugins/ folder, modify configuration and you are good to go.
- /textfontmodifier or /tfm - reloads the plugin.
New version now has migration (pretty useless ngl) from old configuration (v1.0.0/v1.0.1) to a new one (v1.1.1).
The difference from v1.1.2 and v1.2.0 is that in the newer version, regex.value can be empty (and by default is)
fonts:
default-font:
name: namespace:key
special-symbol: $u
regex:
value: ''
invert: false
packets:
boss-bar:
enable: true
forced-font: default-font
action-bar:
enable: true
forced-font: default-font
scoreboard-title:
enable: true
forced-font: default-font
scoreboard-scores:
enable: true
forced-font: ''
config-version: 1v1.0.1/v1.0.0 old config.yml
font: minecraft:key
regex: '[\p{Print}&&[^~,],]+'
invert-regex: false
packets:
boss-bar: true
action-bar: true
scoreboard-title: true
scoreboard-scores: true
special-symbol-for-scoreboards: $uForced font means that it will use that specific font only and special symbol won't work. Note that you need to specify configuration key and not actual font!
The special symbol is a custom "color code" that replaces text's font. The font is changed until it crosses paths with another color ($usome &ctext, only some will get its font changed).
Be aware that this does not really work as a real color code, in Minecraft, message is split by colors, so text Hello &aWorld will get split into two parts and this plugin does not create seperate part if $u is inserted in a middle of the word (e.g. Hel$ulo). That means that the symbol can be anywhere in the text (or text part as I explained 🤓), it will change the whole text's font. Do not try to insert the symbol between colors (&a$u&b), it's not going to work.
