80 lines
3.3 KiB
Markdown
80 lines
3.3 KiB
Markdown
# TuffXPlus
|
|
|
|
> [!WARNING]
|
|
> This is not a "crack" for Minecraft, it simply allows for better TuffClient & ShadowNetClient integration on servers.
|
|
|
|

|
|
|
|
> [!WARNING]
|
|
> > This version of TuffXPlus is not maintained by the Creators of the [original](https://github.com/tuffNetwork/) TuffXPlus and is an optimized version by @ryan_norshare which uses way less memory.
|
|
|
|
TuffX+ is a single, unified plugin that combines:
|
|
- Below Y0 *[previousely TuffX]* (Below Y0 support for modern world depth)
|
|
- ViaBlocks (custom block palette + chunk updates for modern blocks)
|
|
- ViaEntities (modern entity sync without nametags)
|
|
- TuffActions (swimming sync + creative item handling + module restrictions)
|
|
|
|
---
|
|
|
|
## Installation
|
|
|
|
### Requirements
|
|
- Java 17+
|
|
- Spigot/Paper 1.18+
|
|
- [ViaVersion](https://hangar.papermc.io/ViaVersion/ViaVersion) and [ViaBackwards](https://hangar.papermc.io/ViaVersion/ViaBackwards) (on the *backend* server *only*; not proxy)
|
|
|
|
> PacketEvents, Jackson, and WebSocket libraries are shaded into the jar.
|
|
|
|
*DO NOT* install the old TuffX plugin; *only* this one
|
|
|
|
It is highly recommended to install [AxSmithing](https://hangar.papermc.io/Artillex-Studios/AxSmithing) for smithing table support (not specific to TuffClient).
|
|
|
|
### Steps
|
|
|
|
1. Download the latest release from the [Releases page](https://github.com/TuffNetwork/TuffXPlus/releases) (or the latest beta from [the builds directory](builds)).
|
|
2. Drop `TuffXPlus-x.x.x.jar` into your server's `plugins` folder.
|
|
3. Start the server to generate `plugins/TuffXPlus/config.yml`.
|
|
4. Configure features in `config.yml` (`y0`, `registry`, `viablocks`, `viaentities`, `swimming`, `creative-items`, `restrictions`).
|
|
5. Restart the server or run `/tuffx reload`.
|
|
|
|
---
|
|
|
|
## Features
|
|
- Below Y0: sends extra chunk data for Y < 0 so TuffX client can see and interact with modern world depth.
|
|
- ViaBlocks: synchronizes modern block states to TuffX client with a custom palette.
|
|
- ViaEntities: syncs modern entities to TuffX client without nametags.
|
|
- TuffActions: swimming state sync and creative item handling.
|
|
- Restrictions: disallow TuffClient modules: [module list](/docs/restrictions.md)
|
|
- Optional server registry over WebSocket (for discovery).
|
|
|
|
## Commands
|
|
- `/tuffx reload` - reload the config
|
|
- `/viablocks get` - give a set of custom blocks (creative)
|
|
- `/viablocks refresh` - resend ViaBlocks data in view distance
|
|
- `/restrictions disallow` - add a module to the disallow list and send an update to all TuffClient clients
|
|
- `/restrictions allow` - remove a module from the disallow list and send an update
|
|
|
|
## Permissions
|
|
- `tuffx.reload`
|
|
- `tuffx.viablocks.command.get`
|
|
- `tuffx.viablocks.command.refresh`
|
|
- `tuffx.restrictions.command.disallow`
|
|
- `tuffx.restrictions.command.allow`
|
|
|
|
## Compiling
|
|
```sh
|
|
git clone https://github.com/TuffNetwork/TuffXPlus.git
|
|
cd TuffXPlus
|
|
./gradlew build
|
|
```
|
|
|
|
Output jar: `build/libs/TuffXPlus-x.x.x.jar`.
|
|
|
|
## Support
|
|
|
|
For general issues, [make an issue here](https://git.shadownetwork.shop/MrNorshare/TuffXOptimized/issues)
|
|
|
|
For immediate issues, [join our Discord](https://discord.gg/shadownetwork) and make a ticket
|
|
|
|
NOTE: this is not maintained by the Tuff Community but you can check them out here: [Discord](https://discord.gg/2nvk9Rprwt) [Github](https://github.com/tuffNetwork/) [Original Repo](https://github.com/TuffNetwork/TuffXPlus)
|