Skip to content

Commit

Permalink
Updates from main
Browse files Browse the repository at this point in the history
Co-authored-by: Kichura <68134602+kichura@users.noreply.github.com>
Co-authored-by: Erlend <49862976+erb3@users.noreply.github.com>
  • Loading branch information
3 people committed Aug 5, 2024
1 parent 7d71d30 commit ee2b864
Show file tree
Hide file tree
Showing 8 changed files with 40 additions and 37 deletions.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

53 changes: 29 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,37 +1,41 @@
# ViaFabric

[![ViaVersion Discord](https://img.shields.io/badge/chat-on%20discord-blue.svg)](https://viaversion.com/discord)
[![CurseForge Downloads](http://cf.way2muchnoise.eu/full_viafabric_downloads.svg)](https://viaversion.com/fabric)
[![Modrinth Downloads](https://img.shields.io/modrinth/dt/ViaFabric?label=Modrinth&logo=Modrinth&style=flat-square)](https://modrinth.com/mod/ViaFabric)
[![CurseForge Versions](http://cf.way2muchnoise.eu/versions/viafabric.svg)](https://viaversion.com/fabric)
[![CurseForge Downloads](http://cf.way2muchnoise.eu/full_viafabric_downloads.svg)](https://www.curseforge.com/minecraft/mc-mods/viafabric)
[![Modrinth Downloads](https://img.shields.io/modrinth/dt/ViaFabric?label=Modrinth&logo=Modrinth&style=flat-square)](https://viaversion.com/fabric)
[![CurseForge Versions](http://cf.way2muchnoise.eu/versions/viafabric.svg)](https://www.curseforge.com/minecraft/mc-mods/viafabric)
<!-- ^ GitHub seems to not like this https -->

### Client-side and server-side ViaVersion implementation for Fabric

Allows the connection to/from different Minecraft versions on your Minecraft client/server (LAN worlds too)

This mod can be installed on 1.8.9, 1.12.2, 1.14.4, 1.15.2, 1.16.5, 1.17.1, 1.18.2, 1.19.4, 1.20.1, 1.20.4, 1.20.6, 1.21 with Fabric Loader.
This mod can be installed on 1.14.4, 1.15.2, 1.16.5, 1.17.1, 1.18.2, 1.19.4, 1.20.1, 1.20.4, 1.20.6, 1.21 with Fabric Loader.

The `legacy` branch also supports Legacy Fabric 1.8.9 and 1.12.2 versions.

If you are using the latest Minecraft version and care about the gameplay being more enjoyable/functional, you may want to
check [ViaFabricPlus](https://modrinth.com/mod/viafabricplus) out. See the [differences](#viafabricplus) between ViaFabric and ViaFabricPlus.

## Dependencies

| Dependency | Download |
|-----------------------------------------------|----------------------------------------------------------------|
| (Bundled) ViaVersion | https://viaversion.com/ |
| (Bundled) Cotton Client Commands (MC 1.14-15) | https://jitpack.io/#TinfoilMC/ClientCommands |
| Fabric API (MC 1.14+) | https://modrinth.com/mod/fabric-api |
| Legacy Fabric API (MC 1.8.9 and 1.12.2) | https://modrinth.com/mod/legacy-fabric-api |
| Fabric API | https://modrinth.com/mod/fabric-api |

Note: ViaVersion is designed for Vanilla Minecraft servers. It probably will not work with modded registry entries or
registry synchronization (fabric-registry-sync mod).

## ViaVersion

### How can I install ViaBackwards/ViaRewind?:
### How can I install ViaBackwards/ViaRewind/ViaAprilFools?:

- Just drop them into mods folder. Make sure you are using versions compatible with the ViaVersion version you are
using.

### What versions can ViaVersion, ViaBackwards and ViaRewind translate?:
### What versions can ViaVersion, ViaBackwards, ViaRewind and ViaAprilFools translate?:

- **With [ViaVersion](https://viaversion.com)**:
Your server can accept newer versions. Your client can connect to older versions.
Expand All @@ -40,18 +44,18 @@ registry synchronization (fabric-registry-sync mod).
optionally [ViaRewind](https://viaversion.com/rewind))**:
Your server can accept older versions. Your client can connect to newer versions.

- **Adding [ViaAprilFools](https://viaversion.com/aprilfools)**: Your server can accept April Fools versions.

Note: When using ViaFabric for versions older than 1.17, you need [Java 8 builds](https://ci.viaversion.com/)

- Server-side: See https://viaversion.com/

- Client-side:

| | 1.8.x | 1.9.x | 1.10-1.20.x | 1.21.x |
|---------------|-------|-------|-------------|--------|
| 1.8.9 client ||| ⏪⟲ | ⏪⟲ | ⏪⟲ | ⏪⟲ | ⏪⟲ | ⏪⟲ | ⏪⟲ | ⏪⟲ |
| 1.12.2 client |||||||||||
| 1.14.4-1.20.6 clients ||||| ⟲ ⟲ |||||
| 1.21 client |||||||||||
| | 1.8.x | 1.9.x | 1.10-1.20.x | 1.21.x |
|-----------------------|-------|-------|-------------|--------|
| 1.14.4-1.20.6 clients ||||| ⟲ ⟲ |||||
| 1.21 client |||||||||||

✓ = [ViaVersion](https://viaversion.com) ⟲ = [ViaBackwards](https://viaversion.com/backwards)
= [ViaRewind](https://viaversion.com/rewind)
Expand All @@ -60,31 +64,32 @@ registry synchronization (fabric-registry-sync mod).

### Can ViaVersion, ViaBackwards and ViaRewind support snapshots?:

- Check https://ci.viaversion.com/ for development builds with snapshot support
- Check https://viaversion.com/donate for getting early access to snapshots. You can use the preview ViaVersion builds with ViaFabric by
putting them in the mods' folder. During Minecraft updates there will be usual a branch on this repository with the updated ViaFabric.

## Alternatives

### Client-side:

- [ViaForge](https://modrinth.com/mod/viaforge): Clientside Implementation of ViaVersion for Forge.
- [ViaFabricPlus](https://modrinth.com/mod/viafabricplus): Fabric mod for the latest Minecraft version with QoL fixes and enhancements to the gameplay.
- [ClientViaVersion](https://github.com/Gerrygames/ClientViaVersion): Discontinued 5zig plugin.
- [multiconnect](https://www.curseforge.com/minecraft/mc-mods/multiconnect): Discontinued Fabric mod for connecting to older
versions: down to 1.11 (stable) and 1.8 (experimental).
- [ViaForge](https://www.modrinth.com/mod/viaforge): Clientside Implementation of ViaVersion for Forge.
- [ViaFabricPlus](https://www.modrinth.com/mod/viafabricplus): Fabric ViaVersion/ViaLegacy/ViaAprilFools/ViaBedrock implementation with client-side fixes.

### Server-side:

- [ProtocolSupport](https://protocol.support/): Bukkit plugin for older client versions (down to 1.4.7).
- [ViaVersion](https://viaversion.com): Plugin for BungeeCord, CraftBukkit, SpongeCommon and Velocity servers.
- [ViaVersion](https://viaversion.com): Plugin for Velocity and Paper/Bukkit (and optionally also Sponge/BungeeCord).
- [ProtocolSupport](https://github.com/ProtocolSupport/ProtocolSupport): Discontinued Bukkit plugin for older client versions (down to 1.4.7).

### Standalone proxy:

- [DirtMultiversion](https://github.com/DirtPowered/DirtMultiversion): Proxy allowing to connect down to Beta 1.3 with
newer Minecraft client versions.
- [VIAaaS](https://github.com/ViaVersion/VIAaaS): Standalone ViaVersion proxy with ViaBackwards and ViaRewind, allowing
you to connect without a mod installed on your client. Supports online mode.
- [ViaProxy](https://github.com/ViaVersion/ViaProxy): Standalone ViaVersion proxy with ViaBackwards, ViaRewind and ViaLegacy,
allowing you to connect to a wide range of versions (down to classic versions) with your modern client (1.7.2+). Supports online mode.
- [VIAaaS](https://github.com/ViaVersion/VIAaaS): Standalone ViaVersion proxy with ViaBackwards and ViaRewind, allowing
you to connect without a mod installed on your client. Supports online mode.
- [DirtMultiversion](https://github.com/DirtPowered/DirtMultiversion): Discontinued Proxy allowing to connect down to Beta 1.3 with
newer Minecraft client versions.

### Cool things to try:

Expand Down Expand Up @@ -144,4 +149,4 @@ registry synchronization (fabric-registry-sync mod).
## Disclaimer

It cannot be guaranteed that this mod is allowed on specific servers as it can possibly cause problems with anti-cheat plugins.\
***(USE ONLY WITH CAUTION!)***
***(USE ONLY WITH CAUTION!)***
4 changes: 1 addition & 3 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ def ENV = System.getenv()

group = "com.viaversion.fabric"
description = "Client-side and server-side ViaVersion implementation for Fabric"
version = "0.4.14+" + ENV.GITHUB_RUN_NUMBER + "-" + getBranch()
version = "0.4.15+" + ENV.GITHUB_RUN_NUMBER + "-" + getBranch()
logger.lifecycle("Building ViaFabric: $version")

def getBranch() {
Expand Down Expand Up @@ -74,7 +74,6 @@ allprojects {
dependencies {
// transitive = false because Guava is conflicting on runClient
implementation("com.viaversion:viaversion:${rootProject.viaver_version}") { transitive = false }
implementation("org.yaml:snakeyaml:${rootProject.yaml_version}")

modImplementation("net.fabricmc:fabric-loader:${rootProject.loader_version}")
}
Expand Down Expand Up @@ -144,7 +143,6 @@ dependencies {
mappings("net.legacyfabric:yarn:1.13.2+build.541:v2")

includeJ8("com.viaversion:viaversion:${rootProject.viaver_version}")
include("org.yaml:snakeyaml:${rootProject.yaml_version}")
}

remapJar {
Expand Down
5 changes: 2 additions & 3 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
# suppress inspection "UnusedProperty" for whole file
org.gradle.jvmargs=-Xms32M -Xmx4G -XX:+UseG1GC -XX:+UseStringDeduplication

loader_version=0.15.11
viaver_version=5.0.2-SNAPSHOT
yaml_version=2.2
loader_version=0.16.0
viaver_version=5.0.3-SNAPSHOT

publish_mc_versions=1.12.2, 1.8.9
# example: 1.19.1-rc1. Can be a blank value
Expand Down
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
7 changes: 4 additions & 3 deletions gradlew
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,8 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
' "$PWD" ) || exit

# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
Expand Down Expand Up @@ -202,7 +203,7 @@ fi


# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='-Dfile.encoding=UTF-8 "-Xmx64m" "-Xms64m"'
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'

# Collect all arguments for the java command:
# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
Expand Down Expand Up @@ -248,4 +249,4 @@ eval "set -- $(
tr '\n' ' '
)" '"$@"'

exec "$JAVACMD" "$@"
exec "$JAVACMD" "$@"
4 changes: 2 additions & 2 deletions gradlew.bat
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ set APP_HOME=%DIRNAME%
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi

@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS=-Dfile.encoding=UTF-8 "-Xmx64m" "-Xms64m"
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"

@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
Expand Down Expand Up @@ -91,4 +91,4 @@ exit /b %EXIT_CODE%
:mainEnd
if "%OS%"=="Windows_NT" endlocal

:omega
:omega

0 comments on commit ee2b864

Please sign in to comment.