The version number of fuji follows
semver
now: https://semver.org/
This version including the following breaking changes if you are using them:
- refactor: lower the power of
chat.style content parser
.
- remove: the ability to parse
markdown language
. (This can be done via command rewrite if necessary, avoids the bypass of the usage of style tags.)- remove: the ability to parse
placeholders
, avoids the abuse of evaluating placeholders in chat message sent by players.- refactor: set the default requirement of level permission to 4 for
/lore
command. (command_toolbox.lore module)- refactor: set the default requirement of level permission to 4 for
/repair
command. (command_toolbox.repair module)
- feature: add
document string
for/fuji inspect fuji-commands
, making all commands registered by fujiself-explanatory
, with explanation offunction
andargument
. - feature: add
gui support
for/warp
command. (warp module)- add
/warp set-name
to set the display name of a warp. - add
/warp set-item
to set the item of a warp. - add
/warp set-lore
to set the lore of a warp.
- add
- feature: add new module
chat.stripe
to stripestyle tags
based on permissions, making it possible to control the usage of style tags. (chat.stripe module) - feature: add
requires_corresponding_permission_to_use_style_tag
option forcolor.anvil
andcolor.sign
module. (color module) - feature: add the ability to
cancel
a system message. (system_message module) - feature: add
transform nickname
option, which allows to add prefix, suffix and truncate the input nickname. (nickname module) - feature: skip un-necessary re-draw for
/fuji inspect configuration
and/fuji inspect registry
. (fuji module) - build: improve the github templates to use new features provided by github, providing a better experience for user feedback.
- docs: enrich the
chat
modules. - fix: should not warn the console about
required mods not installed
if the related module is disabled inconfig/fuji/config.json
. (carpet module)
The version number of fuji follows
semver
now: https://semver.org/
This version including the following breaking changes is you are using them:
- In this version, the
chat related modules
are divided into small pieces, and intended to work with other chat-related mods, like: patbox'sstyled chat
.
- feature: split the
sender
andcontent
in message, instead of encode thesender
into thecontent
, making it compatibility with otherchat linking mods
. (chat.style module)- feature: make the joint-point of
chat.style module
more precises, with better compatibility.- feature: extract
rewrite feature
fromchat.style module
intochat.rewrite module
, making it possible to use with other chat-related mods.- feature: extract
mention player feature
fromchat.style module
intochat.mention module
, making it possible to use with other chat-related mods.- feature: extract
chat spy feature
fromchat.style module
intochat.spy module
, making it possible to use with other chat related mods.- refactor: move
%fuji:player_prefix%
,%fuji:player_suffix%
and%fuji:pos%
placeholders fromchat.style module
intoplaceholder module
.- refactor: rename
/chat format
into/chat style
. (chat.style module)
- feature: add
/fuji inspect registry
command, to list all registries in the server, including static registries and dynamic registries. - feature: add
token replacement
forchat.display module
, making it possible to use with other chat-related mods. - feature: support deeper-level style passing in language file when replacing texts.
- feature: lazy computation for text replacement in language file.
- fix: accessing legacy random source from multiple threads in
mention player task
.
The version number of fuji follows
semver
now: https://semver.org/
- fix: the equal case of
/has-players?
command. (predicate module)
The version number of fuji follows
semver
now: https://semver.org/
- fix: a player will still be flagged as afk on moving. (afk module)
- fix: there is 1 game tick delayed before leave afk state. (afk module)
The version number of fuji follows
semver
now: https://semver.org/
- feature: add
/command-scheduler
list command, to list all jobs. (command scheduler module) - feature: now will log the console on executing commands of jobs. (command scheduler module)
- feature: add
ignore
option. (command spy module) - i18n: new translation for
zh_tw
. @yichifauzi - docs: enrich the docs.
The version number of fuji follows
semver
now: https://semver.org/
- i18n: new translation for
zh_tw
. @yichifauzi - fix: swap the icon of
my-works
andall-works
in/works
gui. (works module) - refactor: use quartz button to mean the help button, for ui consistency.
The version number of fuji follows
semver
now: https://semver.org/
- i18n: new translation for
zh_tw
. @yichifauzi - feature: add
gui support
for/world list
. (world module) - fix: the
next page button
not work in/works
gui. (works module).
The version number of fuji follows
semver
now: https://semver.org/
- docs: add new many examples.
- docs: adjust the layout of pages.
- feature: add
/skin use-online-skin
command. (skin module) - refactor: use network packet to execute commands instead of executing the commands internally. (command interactive module)
- This also fix the
command warmup
bypass when usingcommand interactive
to execute commands. - Enhance the compatibility with other mods.
- This also fix the
- refactor: rename
/skin clear
into/skin use-default-skins
. (skin module) - fix: the position of nametag will de-sync after the player set a new skin. (skin module + nametag module)
- fix: the missing language argument if the dimension of works is not exist. (works module)
- fix: the
object.value
language key doesn't parse the literal value. (fuji module)
The version number of fuji follows
semver
now: https://semver.org/
This version including the breaking changes if you are using them:
- refactor: rename the commands registered by
predicate module
into a unified style, all predicate commands are now suffixes with?
character. (predicate module)
- feature: add
all_commands_require_level_4_permission_to_use_by_default
option. - feature: add
gui support
for/command-bundle list
command. (command bundle module) - feature: add
/fuji inspect argument-types
command, to list all registered argument types. (fuji module) - feature: add
/fuji inspect configurations
command, to list loaded configuration files. (fuji module) - feature: only send the message feedback to player command source, to avoid the console spam. (predicate module)
- feature: add
predicate commands
:/is-op?
,/is-holding?
,/has-exp?
,/has-exp-level?
,/is-in-world?
,/is-in-gamemode?
(predicate module) - feature: allow to define
multiple default skins
. (skin module) - refactor: enhance the compatibility of hopper mixin of
production work
. (works module) - refactor: change the ui style from
oak button
intoquartz button
, it's clearer. - refactor: remove the un-used option
random_skin
The version number of fuji follows
semver
now: https://semver.org/
- feature: now the command suggestion for dynamic contents will be updated on the fly, without the server restart.
- feature: now will put a default kit set into a created new empty kit, as the slot placeholder to reduce the confusion. (kit module)
- feature: enhance the render function of bossbar, so that an instant bossbar will not be drawn in the client-side screen, if it's aborted in the first game-tick. (teleport warmup module and command warmup module)
- feature: now will not send the
Operation Success
as the command feedback if it has nothing to say. (follow theno news is good news
rule.)- Influence:
/send-title
,/send-toast
,/command-attachment
,/attachment
,/burn
,/freeze
and/json
- Influence:
- feature: now will not
info the console
on loading head categories, reducing the console spam. (head module) - feature: a clearer gui design, now making the
helper button
usingbook
item. - feature: skip the un-necessary nametag making while the player is changing dimension. (nametag module)
- feature: set the default requirement of commands registered by
predicate module
to level 4, since these commands is useless for default player. (predicate module) - fix: the player stats of interact with functional blocks doesn't get increased when interact these functional blocks using
functional commands
:/anvil
,/grindstone
,/stonecutter
. (functional module) - fix: now will not create a new kit using
/kit give
command if the kit is not-exist. (kit module) - fix: ensure the kit item will be given even the specified slot is not empty. (kit module)
- refactor: simplify the
fake player manager
module. (carpet.fake_player_manager module)
WARNING:
If you are using a version before
v1.5.9
, you should read the changelog ofv1.5.9
.
The version number of fuji follows
semver
now: https://semver.org/
Welcome our new contributors:
- @notlin4
- @Kaysil
- feature: add
/send-custom
command, which sends thecustom text
to a player, with pagination feature. (echo.send_custom module)- send custom text as a
book
:/send-custom as-book <player> guide --author "alice" --title "<rb>The Guice" --giveBook true --openBook true
- send custom text as a
message
:/send-custom as-message <player> guide
- send custom text as a
- docs: add many examples into the docs.
- fix: add the null-check to avoid other mods trigger the CommandNode#getRequiremnt too early.
WARNING:
If you are using a version before
v1.5.9
, you should read the changelog ofv1.5.9
.
The version number of fuji follows
semver
now: https://semver.org/
Welcome our new contributors:
- @notlin4
- @Kaysil
- feature: add
named cooldown
feature forcommand cooldown module
, now supports to createnamed cooldown
to associate cooldown with commands.- create a named cooldown:
/command-cooldown create example 3000
- test a named cooldown:
/command-cooldown test example <player> --onFailed "say false %fuji:command_cooldown_left_time 1%/%fuji:command_cooldown_left_usage 1%" say true
- create a named cooldown:
- feature: improve the kit giving logic:
- first: try to insert item in specified slot.
- second: try to insert item in any slot.
- third: drop the item in the ground with the player as its thrower.
- feature: allow to use the
delimiter |
to separatecommand string
intocommand list
. (command_meta module) - feature: unify the style of error messages for all registered fuji placeholders.
- build: now this project will follow the
semver
specification: https://semver.org/
WARNING:
If you are using a version before
v1.5.9
, you should read the changelog ofv1.5.9
.
- feature: better command feedback for
meta cmmands
, now the command feedback will be passed down, not only sends the error to the command executor, but also sends the error to the command initiator. (command_meta module and its submodules)- e.g.:
/run as console bad command
- e.g.:
- feature: now the command
/chain
will copy and passthe command source
to the next chain. (in the past,the first level of chain
is theinitiating command source
, andthe deeper levels
are always executed asthe console
.)- e.g.
run as player <player> chain test-level-perm %player:name% 4 chain say value is true)
- e.g.
- feature: add
/send-bossbar
command. (echo.send_bossbar module)- send a bossbar with attached commands to players.
- all in one example:
/send-bossbar <player> --stepType BACKWARD --totalMs 5000 --color PURPLE --style NOTCHED_6 --notifyMeOnComplete true --commandList "say the player %player:name% is healed|heal %player:name%" <rb>Healing is coming [elapsed_time]/[total_time]/[left_time]
- feature: add
interruptile
option, now you can configure theinterrupt disance
,interrupt on damage
andinterrupt in combat
per command and usingregex
to match them from up to downin order
. (command_warmup module)- You will need to re-configure the
config/fuji/modules/command_warmup/config.json
file.
- You will need to re-configure the
- feature: add
/fuji inspect
command, to inspect inner states of the server. (fuji module)- add
/fuji inspect server-commands
: inspect all registered commands in the server. - add
/fuji inspect fuji-commands
: inspect all commands registered byfuji
mod. - add
/fuji inspect modules
: inspect enabled/disabled modules of fuji.
- add
- feature: add optional target player argument for
/heal
andfeed
, (command_toolbox.heal
andcommand_toolbox.feed
module) - feature: update the
fabric loader
version fromv0.15.11
tov0.16.5
- feature: now will keep silent on adding missing language keys for language files, to avoid console spam.
- feature: simplify the placeholder module. (placeholder module)
- add
/placeholder list
: a gui to list all registered placeholders in server. - add
/placeholder parse
: to parse a given string with a given player.
- add
- feature: add
predicate module
, which provides commands to test conditions.- add
/test-level-perm
command - add
/test-string-perm
command
- add
- feature: enhance the
date parser
to support complex period, e.g.1s2m3h4d5w6M7y
. (temp-ban module) - refactor: rename
/helpop
into/help-op
. (command_toolbox.help_op module) - refactor: rename
/fuji list-commands
into/fuji inspect server-commands
. (fuji module) - fix: the
%fuji:inv%
,%fuji:item%
and%fuji:ender%
can't be resolved if the contextual player is null - fix: remove the unusable
type string
:ctx
,command-source
andsource
. (command_bundle module)
WARNING:
If you are using a version before
v1.5.9
, you should read the changelog ofv1.5.9
.
- feature: add
/tppos --targetPlayer <player>
optional argument. (tppos module) - feature: add
%fuji:protect%
placeholder. - fix: failed to reload data packs on command
/reload
.
WARNING:
If you are using a version before
v1.5.9
, you should read the changelog ofv1.5.9
.
- feature: a detailed exception feedback for
/run as console
,/run as player
and/run as fake-player
- also read the changelog of
v1.6.5
WARNING:
If you are using a version before
v1.5.9
, you should read the changelog ofv1.5.9
.
- feature: add
command bundle
module. (command-bundle module)- a user-friendly DSL to create new custom commands easily, with the interoperation of
variables
,placeholders
andselectors
. - support complex
command argument type
:required argument
,literal argument
and even theoptional argument
with a default value. - a powerful type-system to ensure the
type-safe
input, with fully command suggestion. - register and un-register commands on the fly, without the server restart!
- new commands:
/command-bundle list
,/command-bundle list-type-strings
...
- a user-friendly DSL to create new custom commands easily, with the interoperation of
- feature: add
log_debug_messages
option incore
inconfig.json
. - fix: the y finder for chunk teleportation. (top_chunks module)
WARNING:
If you are using a version before
v1.5.9
, you should read the changelog ofv1.5.9
.
- feature: add
/world list
command, to list all loaded worlds. (world module) - feature: add
/fuji list-commands
command, to query all commands registered in the server. (fuji module) - feature: add sign cache for
color.sign
module, making thesign text edit
reversible, don't lose your edit work! (color.sign module) - fix: ensure the requirement of commands is wrapped by command permission module after the server restart. (command_permission module)
- fix: the
anti_build
mixin doesn't work insingle-player world
in the client. (anti_build module) - fix: the
command spy
doesn't work insingle-player world
in the client. (command spy module)
WARNING:
If you are using a version before
v1.5.9
, you should read the changelog ofv1.5.9
.
- feature: add
/command-permission
command, which provides a user-friendly gui to query registered commands. (command permission module) - feature: add
/glow
command. (glow module) - feature: add
/freeze
command. (freeze module) - feature: improve the implementation of command permission module, this also allows the neo-forge to use this module via sinytra-connector. (command permission module)
- feature: add
spy_on_console
option. (command spy module) - feature: improve the command spy listener, now ensures all commands will be spied on. (command spy module)
- feature: now you can click the chunk score to teleport to the chunk position. (top_chunks module)
- feature: improve the compatibility with other mods. (chat module)
- feature: add soft fail for tickWeather() mixin, this also allow the neo-forge to use this module via sinytra-connector. (world module)
- feature: now will also copy the requirement of the root of the target command node, so that there will be no a dummy command for players without permission. (command alias module)
- feature: improve the priority of command warmup module. (better compatibility with other mods)
- feature: now requires the permission level 4 to use
/fly
,/god
,/jump
commands. - fix: possible concurrent modification exception if a player enter/leave the server. (tab_list module)
- fix: create multiple bossbar after issue
/world delete
. (teleport warmup module) - fix: in-correct max pages display after the search operation in a paged gui.
- fix: the
/world reset
command will not reset theforce-loading chunks
in the target world. - refactor: no longer depends on the
fabric-api
mod. - refactor: make
chat
module a sub-modulechat.style
module, this also allows to use thechat.display
andchat.history
module withStyledChat
mod, without thechat.style
module. - refactor: move the directory
config/fuji/modules/motd/motd/icon
intoconfig/fuji/modules/motd/icon
. (motd module)
WARNING:
If you are using a version before
v1.5.9
, you should read the changelog ofv1.5.9
.
- feature: add
/fiji about
command. (fuji module) - feature: use vanilla way to hide nametag if the player is sneaking. (nametag module)
- feature: locales for keyword in language file.
- refactor: rename
config module
intofuji module
. - fix: can't fetch online skin if the uuid exists in
usercache.json
is wrong. (head module)
WARNING:
If you are using a version before
v1.5.9
, you should read the changelog ofv1.5.9
.
- feature: improve the performance of parsing text from language file, also avoid many un-necessary copy operation.
- feature: now use the placeholder provided by
spark mod
to display/profiler
command. (profiler module) - feature: report error in the console if failed to parse args for a language value.
- feature: add locale language keys for
deathlog module
. - feature: now allow to enable
color module
insingle-player world
. - fix: the
escape parser
can't escape thefuji:random
placeholder. (e.g./run as console foreach give %fuji:escape player:name% minecraft:diamond %fuji:escape fuji:random 8 32 1%
)