
NoxesiumUtils
Communicate with The Noxesium Mod with ease.
- Загрузки
- 1K
- Подписчики
- 6
- Обновлён
- 16 октября 2024 г.
- Лицензия
- GPL-3.0-only
Опубликован 21 апреля 2023 г.
NoxesiumUtils
Communicate with the Noxesium Mod with ease.
🇺🇦 Made in Ukraine! Зроблено в Україні!
❤️ Support me on Patreon
With NoxesiumUtils 2.0.0 I am switching to the com.noxcrew.noxesium.paper implementation, instead of my own. This makes maintaining NoxesiumUtils easier.
What is Noxesium and why does it need Utils?
Noxesium Mod (by Noxcrew) is a fabric mod with feature additions, bugfixes, and performance improvements. It allows servers to offer a better experience to clients through access to additional features beyond vanilla limitations. However, servers need to have a plugin to communicate with the mod to actually be able to use it's features, and that's where NoxesiumUtils comes in. It allows server owners to easily communicate with the mod via commands and can also be used as a dependency for plugin developers.
Features
- Send server rules on join
- Send server rules to players with commands
- Check player's client settings.
- There is a little more to it, lol.
- Maybe more soon 🤔
Requirements
- Paper 1.20+
- CommandAPI
- The plugin won't do anything to players without the mod
Commands
Send Server Rule. Sends a server rule to a selection of players.
Set server rule for players
/noxesiumutils serverrule <rule> <players: selector> <value>
/noxesiumutils serverrule <rule> <players: selector> reset
Set entity rule for entities
/noxesiumutils entityrule <rule> <entities: selector> <value>
/noxesiumutils entityrule <rule> <entities: selector> reset
Check player's Noxesium Protocol Version.
/noxesiumutils check <player: player>
/noxesiumutils check <players: selector>
Check player's settings.
/noxesiumutils clientSettings <player: player>
For more detailed information on how everything here works, please refer to the Noxesium Mod README!
Config
The default config looks like this. Right now it only contains a setting to send server rules to a player on join.
# View Protocol documentation and information about the mod here:
# https://github.com/Noxcrew/noxesium
# Add some extra output for debugging purposes
extraDebugOutput: false
# If true will check the plugin's version once in a while.
checkForUpdates: true
# It true will send defaults to Noxesium Players on join.
sendDefaultsOnJoin: false
# Comment out the line if you don't want to send that rule.
defaults:
#cameraLocked: false
#disableBoatCollisions: false
#disableDeferredChunkUpdates: false
#disableMapUi: false
#disableSpinAttackCollisions: false
#disableUiOptimizations: false
#disableVanillaMusic: false
#enableSmootherClientTrident: false
#heldItemNameOffset: 0
#overrideGraphicsMode: FAST
#riptideCoyoteTime: 0
#showMapInUi: false
#qibDefinitions:
#customCreativeItems: []
On-join defaults
For example, the following changes will make the plugin automatically send
the players disableSpinAttackCollisions = true on join.
sendDefaultsOnJoin: true
defaults:
disableSpinAttackCollisions: true
Qib definitions
What are Qibs? Good question. I won't explain it perfectly, so please read the comments in this file in Noxcrew/noxesium.
The qibDefinitions list is a place to define the definitions which are made up of QibEffects (see list of them here).
Here's an example of a QibDefinition in the config:
qibDefinitions:
ding:
onEnter: 'play_ding'
onLeave: 'play_ding'
triggerEnterLeaveOnSwitch: false
Now scary part: writing QibEffects.
Each QibEffect is saved in its own json file which is saved in plugins/NoxesiumUtils/qibs folder.
Example of a QibEffect which plays the ding sound (plugins/NoxesiumUtils/qibs/play_ding.json):
{
"type": "PlaySound",
"effect": {
"namespace": "minecraft",
"path": "entity.experience_orb.pickup",
"volume": 1.0,
"pitch": 1.0
}
}
(probably very useful to some) A jumppad QibEffect example:
{
"type": "Multiple",
"effect": {
"effects": [
{
"type": "PlaySound",
"effect": {
"namespace": "minecraft",
"path": "entity.experience_orb.pickup",
"volume": 1.0,
"pitch": 1.0
}
},
{
"type": "Wait",
"effect": {
"ticks": 1,
"effect": {
"type": "SetVelocityYawPitch",
"effect": {
"yaw": 0,
"yawRelative": true,
"pitch": -45,
"pitchRelative": false,
"strength": 2.0,
"limit": 2.5
}
}
}
}
]
}
}
After making a QibEffect you use the file name of a QibEffect as an ID in a QibDefinition section (all fields are optional):
qibDefinitions:
ding:
onEnter: 'QIB_EFFECT_ID'
onLeave: 'QIB_EFFECT_ID'
whileInside: 'QIB_EFFECT_ID'
onJump: 'QIB_EFFECT_ID'
triggerEnterLeaveOnSwitch: false
After that you can reload the server and apply the rule to an entity:
/noxesiumutils entityRules qibBehavior [ENTITY] ding
And enable the Qib for all players:
/noxesiumutils serverRules qibBehaviors @a ding
Custom creative items
You cat enable a tab in the creative inventory menu for Noxesium players with
a command (/noxesiumutils serverRules customCreativeItems @a true).
This is the place where you define these items. Here's an example:
customCreativeItems:
- 'minecraft:stick[minecraft:enchantments={levels:{"minecraft:knockback":25}}]'
- 'netherite_chestplate[trim={pattern:wild,material:emerald},custom_name=''["",{"text":"Silly name ngl","italic":false}]'',lore=[''["",{"text":"I dont !!!!!!! understand how i will implement this","italic":false}]''],enchantments={levels:{aqua_affinity:1,blast_protection:4,protection:5}},custom_model_data=2]'
For Developers
View on GitHub
Ченджлог
2.0.0Релиз1.21, 1.21.1 · 16 октября 2024 г.
What's Changed
- Update 2.0 by @SuperNeon4ik in https://github.com/SuperNeon4ik/NoxesiumUtils/pull/19
- Support for all existing server rules
- Support for all existing entity rules (new!)
- Qib implementation
- New BukkitEvents:
NoxesiumPlayerReadyEvent(renamed existing event)NoxesiumPlayerRegisteredEventNoxesiumPlayerRiptideEventNoxesiumPlayerSettingsReceivedEvent(renamed existing event)NoxesiumPlayerVersionReceivedEvent(renamed existing event)NoxesiumQibTriggeredEvent
- Fix ModrinthUpdateChecker failing when not a single version is "release" in https://github.com/SuperNeon4ik/NoxesiumUtils/issues/22
2.0.0-preБета1.21, 1.21.1 · 12 октября 2024 г.
What's Changed
- Bump commons-io:commons-io from 2.11.0 to 2.14.0
- Update 2.0
- Support for all existing server rules
- Support for all existing entity rules (new!)
- Qib implementation
- New BukkitEvents:
NoxesiumPlayerReadyEvent(renamed existing event)NoxesiumPlayerRegisteredEventNoxesiumPlayerRiptideEventNoxesiumPlayerSettingsReceivedEvent(renamed existing event)NoxesiumPlayerVersionReceivedEvent(renamed existing event)NoxesiumQibTriggeredEvent
Full Changelog: https://github.com/SuperNeon4ik/NoxesiumUtils/compare/1.6.0...2.0.0-pre
1.6.0Релиз1.20.2, 1.20.3, 1.20.4 · 26 декабря 2023 г.
What's Changed
- Support boat collision rule by @TrollsterCooleg in https://github.com/SuperNeon4ik/NoxesiumUtils/pull/16
- Support for Minecraft 1.20.4
New Contributors
- @TrollsterCooleg made their first contribution in https://github.com/SuperNeon4ik/NoxesiumUtils/pull/16
Full Changelog: https://github.com/SuperNeon4ik/NoxesiumUtils/compare/1.5.1...1.6.0
1.5.1Релиз1.20, 1.20.1, 1.20.2 · 28 ноября 2023 г.
What's Changed
- Bump org.json:json from 20230227 to 20231013 by @dependabot in https://github.com/SuperNeon4ik/NoxesiumUtils/pull/13
- Add support for 1.20.2 by @SuperNeon4ik in https://github.com/SuperNeon4ik/NoxesiumUtils/pull/15
Full Changelog: https://github.com/SuperNeon4ik/NoxesiumUtils/compare/1.5.0...1.5.1
1.5.0Релиз1.19.4, 1.20, 1.20.1 · 27 августа 2023 г.
Important
If you have a plugin, that depends on NoxesiumUtils, please read through the README.md again. Since the v1 Noxesium Protocol there were a lot of internal changes.
What's Changed
- Support for Noxesium 1.0.0+ by @SuperNeon4ik in https://github.com/SuperNeon4ik/NoxesiumUtils/pull/10
Full Changelog: https://github.com/SuperNeon4ik/NoxesiumUtils/compare/1.4.4...1.5.0
1.4.4Релиз1.19.3, 1.19.4, 1.20.1 · 2 июля 2023 г.
What's Changed
- silly goofy silly hehe by @SuperNeon4ik in https://github.com/SuperNeon4ik/NoxesiumUtils/pull/8
Full Changelog: https://github.com/SuperNeon4ik/NoxesiumUtils/compare/1.4.3...1.4.4
1.4.3Релиз1.19.2, 1.19.3, 1.19.4 · 9 июня 2023 г.
What's Changed
- Use ModrinthUpdateChecker in favor of GithubUpdateChecker. by @SuperNeon4ik in https://github.com/SuperNeon4ik/NoxesiumUtils/pull/7
- Bump CommandAPI version
Full Changelog: https://github.com/SuperNeon4ik/NoxesiumUtils/compare/1.4.2...1.4.3
1.4.2Релиз1.19.2, 1.19.3, 1.19.4 · 9 июня 2023 г.
What's Changed
- Fix the ArrayList bug for real this time. by @SuperNeon4ik in https://github.com/SuperNeon4ik/NoxesiumUtils/pull/6
Full Changelog: https://github.com/SuperNeon4ik/NoxesiumUtils/compare/1.4.1...1.4.2
Комментарии
Загружаем…