ViaFabricPlus/README.md

131 lines
9.8 KiB
Markdown
Raw Normal View History

2023-03-15 19:57:09 +01:00
<div align="center">
<img src="https://raw.githubusercontent.com/FlorianMichael/ViaFabricPlus/main/src/main/resources/assets/viafabricplus/icon.png" width="150">
<h1>ViaFabricPlus</h1>
<a href="https://fabricmc.net"><img src="https://img.shields.io/badge/Mod%20Loader-Fabric-lightyellow?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAFHGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDIgNzkuMTYwOTI0LCAyMDE3LzA3LzEzLTAxOjA2OjM5ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTEyLTE2VDE2OjU0OjE3LTA4OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOS0wNy0yOFQyMToxNzo0OC0wNzowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOS0wNy0yOFQyMToxNzo0OC0wNzowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDowZWRiMWMyYy1mZjhjLWU0NDEtOTMxZi00OTVkNGYxNGM3NjAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MGVkYjFjMmMtZmY4Yy1lNDQxLTkzMWYtNDk1ZDRmMTRjNzYwIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6MGVkYjFjMmMtZmY4Yy1lNDQxLTkzMWYtNDk1ZDRmMTRjNzYwIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDowZWRiMWMyYy1mZjhjLWU0NDEtOTMxZi00OTVkNGYxNGM3NjAiIHN0RXZ0OndoZW49IjIwMTgtMTItMTZUMTY6NTQ6MTctMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE4IChXaW5kb3dzKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4/HiGMAAAAtUlEQVRYw+XXrQqAMBQF4D2P2eBL+QIG8RnEJFaNBjEum+0+zMQLtwwv+wV3ZzhhMDgfJ0wUSinxZUQWgKos1JP/AbD4OneIDyQPwCFniA+EJ4CaXm4TxAXCC0BNHgLhAdAnx9hC8PwGSRtAFVMQjF7cNTWED8B1cgwW20yfJgAvrssAsZ1cB3g/xckAxr6FmCDU5N6f488BrpCQ4rQBJkiMYh4ACmLzwOQF0CExinkCsvw7vgGikl+OotaKRwAAAABJRU5ErkJggg=="></a>
<img src="https://img.shields.io/badge/Enviroment-Client-purple">
<a href="https://discord.gg/BwWhCHUKDf"><img src="https://img.shields.io/discord/1033745845809586356?color=0098DB&label=Discord&logo=discord&logoColor=0098DB"></a> <br />
<a href="https://modrinth.com/mod/viafabricplus"><img src="https://img.shields.io/badge/dynamic/json?color=158000&label=downloads&prefix=+%20&query=downloads&url=https://api.modrinth.com/v2/project/rIC2XJV4&logo=modrinth"></a>
<a href="https://curseforge.com/minecraft/mc-mods/viafabricplus"><img src="https://cf.way2muchnoise.eu/full_830604_downloads.svg"></a>
2023-04-14 21:56:43 +02:00
#### Fabric mod to connect to EVERY Minecraft server version (Release, Beta, Alpha, Classic, Snapshots, Bedrock) with QoL fixes to the gameplay
2023-03-15 19:57:09 +01:00
This project has nothing to do with the original ViaFabric and is therefore also not compact
</div>
2023-02-24 14:55:38 +01:00
2023-03-22 13:33:42 +01:00
# Why?
2023-03-15 15:26:24 +01:00
ViaFabricPlus is supposed to be an alternative to [multiconnect](https://github.com/Earthcomputer/multiconnect) that offers more compactness and more clientside improvements,
as ViaFabricPlus implements all Via platforms (ViaVersion, ViaBackwards, ViaLegacy, ViaAprilFools, ViaBedrock) and adds tons of clientside fixes and QoL improvements like old rendering for all platforms.
2023-03-15 15:24:01 +01:00
2023-04-19 04:17:49 +02:00
## History
ViaFabricPlus has been around since 2019, but it was never a standalone mod, it was always part of my utility mods, most recently it was in a project with several devs, since development ended I decided to release it as a standalone mod.
2023-03-22 13:33:42 +01:00
# For developers and translators
2023-03-15 19:57:09 +01:00
Contributions in the form of pull requests are always welcome, please just stick to my code style and make sure your code is easy to update and compatible with other mods.
2023-03-22 13:33:42 +01:00
2023-03-21 13:42:18 +01:00
### Translations
Translations for other languages are always welcome, in **~/resources/assets/viafabricplus/lang** you can find all translations, <br>
2023-03-19 16:05:42 +01:00
if you know a language well, feel free to make a PR and add translations for that language <br>
2023-03-22 13:33:42 +01:00
2023-03-19 16:05:42 +01:00
**Currently supported languages**:
2023-03-23 14:58:29 +01:00
- English (by **[FlorianMichael](https://github.com/FlorianMichael)**)
- German (by **[FlorianMichael](https://github.com/FlorianMichael)** and **[J0J0HA](https://github.com/J0J0HA)**)
- Thai (by **[NyaruToru](https://github.com/NyaruToru)**)
2023-03-26 11:30:35 +02:00
- Simplified Chinese (by **[yingcan](https://github.com/x-yingcan-x)** and **[luluxiaoyu](https://github.com/luluxiaoyu)**)
2023-03-22 13:33:42 +01:00
- Japanese (by **[U5KUN](https://github.com/U5KUN)**)
- Luxembourgish (by **[Graf]()**)
- Ukrainian (by **[Fundi1330](https://github.com/Fundi1330)**)
2023-03-26 11:30:35 +02:00
- Traditional Chinese (by **[luluxiaoyu](https://github.com/luluxiaoyu)**)
2023-04-06 20:54:18 +02:00
- Czech (by **[MIOGMIOG](https://github.com/MIOGMIOG)**)
2023-04-09 22:33:04 +02:00
- Polish (by **[Blayung](https://github.com/Blayung)**)
2023-03-22 13:33:42 +01:00
### Dependencies
| Dependency | Download |
|------------------------|------------------------------------------------------------|
| Fabric API | https://github.com/fabricMC/fabric |
| ViaVersion | https://github.com/ViaVersion/ViaVersion |
| ViaBackwards | https://github.com/ViaVersion/ViaBackwards |
| Snake YAML | https://mvnrepository.com/artifact/org.yaml/snakeyaml/1.33 |
| ViaLegacy | https://github.com/RaphiMC/ViaLegacy |
| ViaAprilFools | https://github.com/RaphiMC/ViaAprilFools |
| ViaBedrock | https://github.com/RaphiMC/ViaBedrock |
| MC-Structs | https://github.com/Lenni0451/MCStructs |
| Reflect | https://github.com/Lenni0451/Reflect |
| ViaLoadingBase | https://github.com/FlorianMichael/ViaLoadingBase |
| Netty-transport-RakNet | https://github.com/CloudburstMC/Network/tree/develop |
### Setting up a Workspace
ViaFabricPlus uses Gradle, to make sure that it is installed properly you can check [Gradle's website](https://gradle.org/install/).
1. Clone the repository using `git clone https://github.com/FlorianMichael/ViaFabricPlus`.
2. CD into the local repository.
3. Run `./gradlew genSources`.
4. Open the folder as a Gradle project in your preferred IDE.
5. Run the mod.
## To learn more about the API and about addons, you can simply click [here](.github/DEVELOPER_API.md)
# For users
2023-03-22 15:00:00 +01:00
## To learn more about how to use this mod, you can simply click [here](.github/USAGE.md)
### If you encounter any issues, please report them on the [issue tracker](https://github.com/FlorianMichael/ViaFabricPlus/issues).
2023-03-19 16:05:42 +01:00
2023-03-15 15:24:01 +01:00
## Compatibility
ViaFabricPlus is structured to interfere with mods as little as possible.
It should work fine with most if not all mods and modpacks.
### Known incompatibilities:
- ***[ViaFabric](https://github.com/ViaVersion/ViaFabric)***
- ***[multiconnect](https://github.com/Earthcomputer/multiconnect)***
## Supported Server versions
2023-04-05 18:47:42 +02:00
- Release (1.0.0 - 1.20 [23w14a])
- Beta (b1.0 - b1.8.1)
2023-03-21 13:42:18 +01:00
- Alpha (a1.0.15 - a1.2.6)
- Classic (c0.0.15 - c0.30 including [CPE](https://wiki.vg/Classic_Protocol_Extension))
- Snapshots (3D Shareware, 20w14infinite, Combat Test 8C)
- Bedrock (1.19.70)
2023-03-10 00:48:12 +01:00
## Clientside related Fixes
2023-04-19 03:41:30 +02:00
<details>
<summary>Click to open</summary>
2023-03-10 00:41:09 +01:00
- [x] Bounding boxes for all versions
- [x] Entity interaction and movement related packet fixes
- [x] Sync and async mouse/keyboard handling in <= 1.12.2
- [x] Mining speeds and item attributes
- [x] Filter item creative tabs for only available items
- [x] Combat system in <= 1.8
2023-03-21 13:42:18 +01:00
- [x] Tons of modifications to ViaVersion, ViaAprilFools, ViaLegacy and ViaBedrock to make it more legit (Metadata fixes, broken packets, edge-cases)
2023-03-10 00:48:12 +01:00
- [x] Visual and screen related changes (newer Command Block features, GameMode selection, ...)
2023-03-10 00:41:09 +01:00
- [x] Chat signatures (secure login) for all versions (1.19.0, 1.19.1, 1.19.2)
2023-04-14 21:56:43 +02:00
- [x] Address parsing for all Minecraft versions
2023-03-10 00:41:09 +01:00
- [x] PackFormats and HTTP Header for all resource pack versions
- [x] Raytrace related fixes in <= 1.8
- [x] Implementing HUD changes for <= b1.7.3
- [x] Chat lengths of all versions
- [x] Implementing non-sequenced block placement in <= 1.18.2
- [x] Animation related fixes (1.7 Sneaking, c0.30 walking animation, ...)
- [x] Fixed clientside packet handling (1.16.5 transactions, 1.19.0 tablist, ...)
2023-04-19 03:41:30 +02:00
</details>
2023-03-21 13:21:44 +01:00
#### TODO:
2023-03-10 00:48:12 +01:00
- [ ] More extensions for Classic Protocol Extensions protocol
2023-03-06 22:04:29 +01:00
- [ ] Window click interactions in <= 1.16.5
2023-03-10 00:41:09 +01:00
2023-03-17 21:31:55 +01:00
## Classic stuff
### Custom protocol extensions
2023-03-15 15:24:01 +01:00
ViaFabricPlus implements new Classic Extensions into the CPE protocol of ViaLegacy which are rather client side. <br>
- **WeatherType** extension (version **1**)
2023-03-17 21:31:55 +01:00
### Protocol commands
2023-03-15 15:24:01 +01:00
To better control the Classic Protocol, there are a few clientside commands, the command prefix is **/v**: <br>
- **/vhelp** - Displays all commands, available from: **c0.28-c0.30**
- **/vsettime <Time (Long)>** - Changes the Clientside World Time, available from: **c0.28-c0.30**
- **/vlistextensions** - Displays all classic protocol extensions, available in: **c0.30 CPE**
2023-02-24 15:18:20 +01:00
## Alternatives
- [ClientViaVersion](https://github.com/Gerrygames/ClientViaVersion): Discontinued 5zig plugin.
- [multiconnect](https://www.curseforge.com/minecraft/mc-mods/multiconnect): Fabric mod for connecting to older
versions: down to 1.11 (stable) and 1.8 (experimental).
2023-02-24 23:49:49 +01:00
- [ViaFabric](https://www.curseforge.com/minecraft/mc-mods/viafabric): Client-side and server-side ViaVersion implementation for Fabric
2023-02-24 15:18:20 +01:00
2023-03-18 00:50:38 +01:00
## ⚠️ WARNING ⚠️
2023-02-24 14:55:38 +01:00
**I cannot guarantee that this mod is allowed on every (or even any) server. This mod may cause problems with anti cheat
plugins. USE AT OWN RISK**