- Fixed issue #105, where the config changes made in-game were not saving at all. Apologies in advance to everyone who was affected.
- The
1.20.4
version had wrong metadata infabric.mod.json
, regarding the support of1.20.3
yet again. I have now changed its supported Minecraft version back to>=1.20.3
, again.- Altho the
1.20.4
jar file will now accept being loaded in1.20.3
, I still do not know for sure if it actually works on1.20.3
. Here be dragons.
- Altho the
Given the changes and additions made in this release, it is highly recommended to read through this changelog before using this release.
Release v3.8
makes some changes to some exiting features, and adds a new server-sided feature called "stat announcement system". It also adds some new config properties that let the user control how this mod behaves.
The "betterstats" network protocol
This feature allows betterstats
clients and servers to communicate, which enables some extra features when this mod is present on a server. Some changes were made to this system;
- (Change 1) The protocol version has been changed to
2
. Was previously set to1
.- Note that both the client and the server must use the same protocol version for the server-sided features to work. If the client encounters a server with a different
betterstats
protocol version, the client will then treat the server as if it dosn't havebetterstats
installed, and vice-versa. - This was done because of the changes that were made to the protocol.
- Note that both the client and the server must use the same protocol version for the server-sided features to work. If the client encounters a server with a different
- (Change 2) After a client enables the
betterstats
connection with a server, they can no longer disable it until they disconnect. This change was done because it's pointless to disable the protocol once enabled, as the server still knows the client hasbetterstats
installed. - (Change 3) Next up, by default the client will now automatically always enable the
betterstats
protocol connection with the server, that is, when the client detectsbetterstats
on the server as well.- A config property called
client-trustAllServersBssNet
was added to control this behavior as well. - The first reason is so the user doesn't have to go to the "Statistics" menu to manually enable the connection each time they join a server.
- The second reason is because the "stat announcement system" recommends that the client have
betterstats
installed. If the client doesn't havebetterstats
, then all announed messages will appear in English and will not translate for that client. - The third reason is because of how Fabric API works. Previously, I made it so clients have to manually enable the connection every time they join a server, out of concern for privacy and the server finding out about the client being modded. However, it turns out Fabric API's registry synchronization system already likely exposes this information to the server anyways. So at that point, it's kinda pointless to have a manual toggle, as other mods and even Fabric itself may alreaydy be screaming to the server saying "I am a modded client".
- A config property called
The "stat announcement system"
(Always remember, this mod will never require being installed on the server. All server-sided features are optional)
The stat announcement system is a new optional server-sided feature whose purpose is to use the chat to announce players doing various unique things and achieving certain stats. As of v3.8
, the "SAS" only announces players doing certain things for their first time, however more features may be added to it in the future.
This system is also completely configurable, and may be disabled by those who don't like it or don't want it. The config properties are server-enableSAS
(Boolean) and server-sasConfig
(JsonObject).
This goal with SAS is to promote people's engagement with the game and their stats, as well as to let players acknowledge they've done something special. Well, unless you die in hardcore that is.. then the mod's gonna roast you;
The commands
- My personal library mod TCDCommons API's
/badges
command was moved over to this mod, so as to avoid registering features in my API mod. - Added a config property called
server-registerCommands
. It lets you control whether or not/statistics
and/badges
will be registered.
The player-badge system
Given the player badge system wasn't really all that useful or even used (at least, as far as I've noticed), I have decided to make it disabled by default. It may be re-enabled at any time using the tcdcommons
's config file. More info on that can be found in the v3.8
changelogs for tcdcommons
.
The mod configuration
For clarity and readability reasons, existing config properties were renamed, so it's easier to tell which one is for the client and which one is for the server. Note that server-sided config properties apply to singleplayer as well, and not just dedicated servers.
Config changes for this mod:
guiMobsFollowCursor
was renamed toclient-guiMobsFollowCursor
.- Added
client-trustAllServersBssNet
(Boolean) - Added
server-registerCommands
(Boolean) - Added
server-enableSAS
(Boolean) - Added
server-sasConfig
(JsonObject, aka the{}
JSON thingy)
Config changes for tcdcommons
:
- Renamed
enablePlayerBadges
toserver-enablePlayerBadges
- Renamed
broadcastEarningPlayerBadges
toserver-broadcastEarningPlayerBadges
- Renamed
enableHttpUtils
tocommon-enableHttpUtils
Now that looks a lot more readable. Because I mean.. prior to that, the config for both this mod and for tcdcommons
looked about as unreadable as this is:
To learn how to configure this mod, and tcdcommons
, here are the wiki pages I wrote:
Mod compatibility and crash fixes. Please refer to the changelogs on GitHub for more info on this release.
On another note, I just made a Google Form to collect feedback from the community. Feel free to share your rating and thoughts if you'd like to.
In order for me to avoid having to copy/paste the changelogs on every single platform, please refer to the changelogs on GitHub for more info about this release.
In the meantime, happy holidays to everyone!
Version v3.6
was not published on Modrinth due to it being a "beta"/"testing" version. However, this release makes some changes that finally make them considered a "release" instead of a "beta".
v3.6.1
is the first "Release" for1.20.4
.- The Credits tab has been reworked on (as of v3.6).
- The Credits tab will no longer credit translators for the current language. Instead, all contributors for all languages will be shown at all times. When contributing translations, feel free to add your own entry in the
contributors
section of thefabric.mod.json
file, but make sure you follow the JSON syntax appropriately. If you do not know how to or forget to, I can do it for you.
Note for translators: Even though the mod now credits contributors listed in the fabric.mod.json
file, it is still recommended to also mark your GitHub username in the corresponding translation file as well, so it is easier to keep track of who helped with a specific translation file.
- Updated Japanese translations thanks to Sw3et-Dre4mer (#96).
General changelogs:
- The technical world info in general stats will now only show up when
DEBUG_MODE
is enabled. - Added a separate stats tab for "Credits" and "Translators". The mod will now link to translators GitHub profiles.
The following changes were made to allow people to to incorporate the /stats
command into their data-packs and custom maps:
- Improved the
/stats
command output mechanicsclear
andedit
will now output an integer representing the number of affected players.- The output number will be
-1
if a command error or a syntax error takes place, and the command fails to execute.
- Added
query
. Useful for map-makers.query
will now output an integer representing the current stat value for a given stat of a given player.
Note that the same technical changes were made to the /badges
command for the embedded tcdcommons
API mod.