48 Commits
Author SHA1 Message Date
AlexProgrammerDEandgithub-actions[bot] e55c3574ba chore(release): bump version to 1.3.0 2026-07-15 07:14:07 +00:00
AlexProgrammerDE f4d6a6aca3 docs(branding): emphasize AnarchyMod requirement 2026-07-15 09:11:17 +02:00
AlexProgrammerDE 47e0b3c9d2 docs(branding): update 6b6t ban messaging 2026-07-15 09:10:10 +02:00
AlexProgrammerDE c674f3cbfa feat: support Minecraft 26.2 2026-07-15 09:08:41 +02:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
869c285729 chore(deps): update all non-major dependencies to v1.17.14 (#36)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-12 23:29:39 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
c17c61d325 chore(deps): update all non-major dependencies to v1.17.13 (#35)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-01 21:12:04 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
c530629e24 chore(deps): update gradle to v9.6.1 (#34)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-28 02:28:16 +00:00
AlexandGitHub e0e19720c8 Update _config.yml 2026-06-24 18:36:49 +02:00
AlexandGitHub 103b892f53 Create CODEOWNERS 2026-06-24 18:35:49 +02:00
AlexandGitHub b534dd09fc Create _config.yml 2026-06-24 18:16:10 +02:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
d6c941c6ca chore(deps): update actions/checkout action to v7 (#32)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-24 18:14:15 +02:00
AlexandGitHub 80a12d92c9 Create CNAME 2026-06-24 18:13:37 +02:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
1ef0eb4570 chore(deps): update all non-major dependencies (#33)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-20 16:42:57 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
62e7cf1c1c chore(deps): update all non-major dependencies to v0.9.6 (#31)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-17 10:59:33 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
37f771fa2d chore(deps): update all non-major dependencies to v1.17.11 (#30)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-14 21:29:59 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
ab61808829 chore(deps): update all non-major dependencies to v1.17.7 (#29)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-09 19:46:47 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
716e67727b chore(deps): update all non-major dependencies to v0.9.5 (#28)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-05 23:06:17 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
62ee66fdd0 chore(deps): update all non-major dependencies to v1.16.3 (#27)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-02 04:38:16 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
79d7858f68 chore(deps): update gradle to v9.5.1 (#26)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-18 21:16:33 +00:00
AlexProgrammerDEandgithub-actions[bot] 0e3fd5af41 chore(release): bump version to 1.2.2-SNAPSHOT 2026-05-17 13:48:34 +00:00
AlexProgrammerDEandgithub-actions[bot] 5c8cf83e7f chore(release): bump version to 1.2.1 2026-05-17 13:43:57 +00:00
AlexProgrammerDE 1a571e42e2 ci(release): include 26.1 artifacts 2026-05-17 15:41:05 +02:00
AlexProgrammerDEandgithub-actions[bot] ddd6174fc0 chore(release): bump version to 1.2.1-SNAPSHOT 2026-05-17 13:10:21 +00:00
AlexProgrammerDEandgithub-actions[bot] ff15da1b62 chore(release): bump version to 1.2.0 2026-05-17 13:05:38 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
209f02c6cd chore(deps): update gradle/actions action to v6 (#25)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-17 15:05:08 +02:00
AlexProgrammerDE f64fb2dfdb feat: 26.1 2026-05-17 15:03:16 +02:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
213061f125 chore(deps): update plugin fabric-loom to v1.16.2 (#24)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-15 17:34:51 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
6a6c92ea0a chore(deps): update gradle/actions action to v6 (#15)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-14 01:05:47 +02:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
61ec7e32cc chore(deps): update all non-major dependencies (#22)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-13 21:06:02 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
5c1d513d35 chore(deps): update plugin dev.kikugie.stonecutter to v0.9.3 (#21)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-03 00:27:51 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
7e3c9abbca chore(deps): update gradle to v9.5.0 (#20)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-30 04:29:14 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
1d3527b834 fix(deps): update dependency com.google.code.gson:gson to v2.14.0 (#19)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-25 05:44:01 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
e102f65531 chore(deps): update plugin dev.kikugie.stonecutter to v0.9.2 (#18)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-20 19:53:13 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
8ee4a0763c chore(deps): update plugin dev.kikugie.stonecutter to v0.9.1 (#17)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-18 04:28:13 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
d985762d7a chore(deps): update plugin fabric-loom to v1.16.1 (#16)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-07 01:43:23 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
493a15d34d chore(deps): update gradle to v9.4.1 (#14)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-20 21:54:29 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
7ae7110f90 chore(deps): update plugin dev.kikugie.stonecutter to v0.9 (#13)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-18 21:54:36 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
bba6fc3b3e chore(deps): update plugin fabric-loom to v1.15.5 (#12)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-15 01:43:47 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
5d32b1a447 chore(deps): update gradle to v9.4.0 (#11)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-05 17:59:29 +00:00
AlexProgrammerDEandgithub-actions[bot] 026a1260f9 chore(release): bump version to 1.1.1-SNAPSHOT 2026-03-01 09:35:23 +00:00
AlexProgrammerDEandgithub-actions[bot] b85506f476 chore(release): bump version to 1.1.0 2026-03-01 09:24:23 +00:00
AlexProgrammerDEandClaude Opus 4.6 0a3b019962 refactor: migrate to Stonecutter for multi-version management
Replace 20 separate mc-* submodules and common module with a single
Stonecutter-managed source tree using preprocessor comments. This
eliminates massive code duplication while preserving all version-specific
behavior across 1.19.4 through 1.21.11.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-03-01 10:06:02 +01:00
LaurandGitHub d2676ac1d2 Added support for versions 1.19.4 through 1.21.7 (#10) 2026-03-01 08:15:38 +01:00
AlexProgrammerDEandgithub-actions[bot] 37815c4858 chore(release): bump version to 1.0.5-SNAPSHOT 2026-02-28 08:04:24 +00:00
AlexProgrammerDEandgithub-actions[bot] d5317783f0 chore(release): bump version to 1.0.4 2026-02-28 08:02:23 +00:00
AlexProgrammerDE 1f623d9501 chore: update homepage url 2026-02-28 09:01:46 +01:00
AlexProgrammerDEandClaude Opus 4.6 16ce2ccbd2 fix: align release and set-version workflows with SkinsRestorer
Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-27 21:04:28 +01:00
AlexProgrammerDEandgithub-actions[bot] 4803212976 chore(release): bump version to 1.0.4-SNAPSHOT 2026-02-27 20:00:56 +00:00
77 changed files with 584 additions and 889 deletions
+1
View File
@@ -0,0 +1 @@
* @AlexProgrammerDE
+129 -9
View File
@@ -2,44 +2,164 @@ name: Build
on:
push:
branches: [main]
branches: [ main ]
pull_request:
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
- uses: actions/setup-java@v5
with:
distribution: temurin
java-version: 21
java-version: 25
- uses: gradle/actions/setup-gradle@v5
- uses: gradle/actions/setup-gradle@v6
- run: ./gradlew build
- run: ./gradlew chiseledBuild
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.19.4
path: versions/1.19.4/build/libs/anarchymod-mc-1.19.4-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20
path: versions/1.20/build/libs/anarchymod-mc-1.20-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20.1
path: versions/1.20.1/build/libs/anarchymod-mc-1.20.1-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20.2
path: versions/1.20.2/build/libs/anarchymod-mc-1.20.2-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20.3
path: versions/1.20.3/build/libs/anarchymod-mc-1.20.3-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20.4
path: versions/1.20.4/build/libs/anarchymod-mc-1.20.4-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20.5
path: versions/1.20.5/build/libs/anarchymod-mc-1.20.5-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20.6
path: versions/1.20.6/build/libs/anarchymod-mc-1.20.6-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21
path: versions/1.21/build/libs/anarchymod-mc-1.21-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.1
path: versions/1.21.1/build/libs/anarchymod-mc-1.21.1-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.2
path: versions/1.21.2/build/libs/anarchymod-mc-1.21.2-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.3
path: versions/1.21.3/build/libs/anarchymod-mc-1.21.3-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.4
path: versions/1.21.4/build/libs/anarchymod-mc-1.21.4-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.5
path: versions/1.21.5/build/libs/anarchymod-mc-1.21.5-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.6
path: versions/1.21.6/build/libs/anarchymod-mc-1.21.6-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.7
path: versions/1.21.7/build/libs/anarchymod-mc-1.21.7-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.8
path: mc-1.21.8/build/libs/anarchymod-mc-1.21.8-*.jar
path: versions/1.21.8/build/libs/anarchymod-mc-1.21.8-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.9
path: mc-1.21.9/build/libs/anarchymod-mc-1.21.9-*.jar
path: versions/1.21.9/build/libs/anarchymod-mc-1.21.9-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.10
path: mc-1.21.10/build/libs/anarchymod-mc-1.21.10-*.jar
path: versions/1.21.10/build/libs/anarchymod-mc-1.21.10-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.11
path: mc-1.21.11/build/libs/anarchymod-mc-1.21.11-*.jar
path: versions/1.21.11/build/libs/anarchymod-mc-1.21.11-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-26.1
path: versions/26.1/build/libs/anarchymod-mc-26.1-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-26.1.1
path: versions/26.1.1/build/libs/anarchymod-mc-26.1.1-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-26.1.2
path: versions/26.1.2/build/libs/anarchymod-mc-26.1.2-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-26.2
path: versions/26.2/build/libs/anarchymod-mc-26.2-*.jar
if-no-files-found: error
+67 -24
View File
@@ -1,18 +1,15 @@
name: Release
name: Publish Release
on:
workflow_dispatch:
inputs:
version:
description: "Release version (e.g. 1.1.0)"
description: 'Version to release'
required: true
after-version:
description: "Next snapshot version (e.g. 1.2.0-SNAPSHOT)"
description: 'Snapshot version after release'
required: true
permissions:
contents: write
jobs:
set-release-version:
uses: ./.github/workflows/set-version.yml
@@ -22,28 +19,36 @@ jobs:
build:
needs: set-release-version
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v6
- name: Checkout repository
uses: actions/checkout@v7
with:
ref: ${{ github.ref }}
fetch-depth: 0
- uses: actions/setup-java@v5
- name: Set up Gradle
uses: gradle/actions/setup-gradle@v6
- name: Set up JDK 25
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: 21
java-version: '25'
distribution: 'temurin'
- uses: gradle/actions/setup-gradle@v5
- name: Build with Gradle
run: ./gradlew chiseledBuild
- run: ./gradlew build
- name: Generate changelog
- name: Build Changelog
id: changelog
uses: mikepenz/release-changelog-builder-action@v6
with:
commitMode: true
mode: COMMIT
toTag: ${{ github.ref }}
configurationJson: |
{
"template": "#{{CHANGELOG}}",
"commit_template": "- [`#{{SHORT_MERGE_SHA}}`](https://github.com/#{{OWNER}}/#{{REPO}}/commit/#{{MERGE_SHA}}) #{{TITLE}}",
"categories": [
{ "title": "## Features", "labels": ["feat", "feature"] },
{ "title": "## Fixes", "labels": ["fix", "bug"] },
@@ -53,16 +58,14 @@ jobs:
{ "title": "## Build", "labels": ["build", "chore", "ci"] },
{ "title": "## Other", "labels": [] }
],
"empty_template": "no changes",
"label_extractor": [
{
"pattern": "^(build|chore|ci|docs|feat|fix|perf|refactor|revert|style|test)(\\([\\w\\-\\.]+\\))?(!)?: ([\\w ])+([\\s\\S]*)",
"pattern": "^(build|chore|ci|docs|feat|fix|perf|refactor|revert|style|test){1}(\\([\\w\\-\\.]+\\))?(!)?: ([\\w ])+([\\s\\S]*)",
"on_property": "title",
"method": "match",
"target": "$1"
}
],
"template": "#{{CHANGELOG}}",
"pr_template": "- [`#{{SHORT_MERGE_SHA}}`](https://github.com/#{{OWNER}}/#{{REPO}}/commit/#{{MERGE_SHA}}) #{{TITLE}}",
"custom_placeholders": [
{
"name": "SHORT_MERGE_SHA",
@@ -91,10 +94,30 @@ jobs:
| Minecraft Version | Download |
|---|---|
| 1.19.4 | [\`anarchymod-mc-1.19.4-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.19.4-${VERSION}.jar) |
| 1.20 | [\`anarchymod-mc-1.20-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20-${VERSION}.jar) |
| 1.20.1 | [\`anarchymod-mc-1.20.1-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20.1-${VERSION}.jar) |
| 1.20.2 | [\`anarchymod-mc-1.20.2-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20.2-${VERSION}.jar) |
| 1.20.3 | [\`anarchymod-mc-1.20.3-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20.3-${VERSION}.jar) |
| 1.20.4 | [\`anarchymod-mc-1.20.4-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20.4-${VERSION}.jar) |
| 1.20.5 | [\`anarchymod-mc-1.20.5-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20.5-${VERSION}.jar) |
| 1.20.6 | [\`anarchymod-mc-1.20.6-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20.6-${VERSION}.jar) |
| 1.21 | [\`anarchymod-mc-1.21-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21-${VERSION}.jar) |
| 1.21.1 | [\`anarchymod-mc-1.21.1-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.1-${VERSION}.jar) |
| 1.21.2 | [\`anarchymod-mc-1.21.2-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.2-${VERSION}.jar) |
| 1.21.3 | [\`anarchymod-mc-1.21.3-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.3-${VERSION}.jar) |
| 1.21.4 | [\`anarchymod-mc-1.21.4-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.4-${VERSION}.jar) |
| 1.21.5 | [\`anarchymod-mc-1.21.5-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.5-${VERSION}.jar) |
| 1.21.6 | [\`anarchymod-mc-1.21.6-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.6-${VERSION}.jar) |
| 1.21.7 | [\`anarchymod-mc-1.21.7-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.7-${VERSION}.jar) |
| 1.21.8 | [\`anarchymod-mc-1.21.8-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.8-${VERSION}.jar) |
| 1.21.9 | [\`anarchymod-mc-1.21.9-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.9-${VERSION}.jar) |
| 1.21.10 | [\`anarchymod-mc-1.21.10-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.10-${VERSION}.jar) |
| 1.21.11 | [\`anarchymod-mc-1.21.11-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.11-${VERSION}.jar) |
| 26.1 | [\`anarchymod-mc-26.1-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-26.1-${VERSION}.jar) |
| 26.1.1 | [\`anarchymod-mc-26.1.1-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-26.1.1-${VERSION}.jar) |
| 26.1.2 | [\`anarchymod-mc-26.1.2-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-26.1.2-${VERSION}.jar) |
| 26.2 | [\`anarchymod-mc-26.2-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-26.2-${VERSION}.jar) |
${CHANGELOG}
EOF
@@ -103,10 +126,30 @@ jobs:
gh release create "${VERSION}" \
--title "AnarchyMod ${VERSION}" \
--notes "${NOTES}" \
mc-1.21.8/build/libs/anarchymod-mc-1.21.8-${VERSION}.jar \
mc-1.21.9/build/libs/anarchymod-mc-1.21.9-${VERSION}.jar \
mc-1.21.10/build/libs/anarchymod-mc-1.21.10-${VERSION}.jar \
mc-1.21.11/build/libs/anarchymod-mc-1.21.11-${VERSION}.jar
versions/1.19.4/build/libs/anarchymod-mc-1.19.4-${VERSION}.jar \
versions/1.20/build/libs/anarchymod-mc-1.20-${VERSION}.jar \
versions/1.20.1/build/libs/anarchymod-mc-1.20.1-${VERSION}.jar \
versions/1.20.2/build/libs/anarchymod-mc-1.20.2-${VERSION}.jar \
versions/1.20.3/build/libs/anarchymod-mc-1.20.3-${VERSION}.jar \
versions/1.20.4/build/libs/anarchymod-mc-1.20.4-${VERSION}.jar \
versions/1.20.5/build/libs/anarchymod-mc-1.20.5-${VERSION}.jar \
versions/1.20.6/build/libs/anarchymod-mc-1.20.6-${VERSION}.jar \
versions/1.21/build/libs/anarchymod-mc-1.21-${VERSION}.jar \
versions/1.21.1/build/libs/anarchymod-mc-1.21.1-${VERSION}.jar \
versions/1.21.2/build/libs/anarchymod-mc-1.21.2-${VERSION}.jar \
versions/1.21.3/build/libs/anarchymod-mc-1.21.3-${VERSION}.jar \
versions/1.21.4/build/libs/anarchymod-mc-1.21.4-${VERSION}.jar \
versions/1.21.5/build/libs/anarchymod-mc-1.21.5-${VERSION}.jar \
versions/1.21.6/build/libs/anarchymod-mc-1.21.6-${VERSION}.jar \
versions/1.21.7/build/libs/anarchymod-mc-1.21.7-${VERSION}.jar \
versions/1.21.8/build/libs/anarchymod-mc-1.21.8-${VERSION}.jar \
versions/1.21.9/build/libs/anarchymod-mc-1.21.9-${VERSION}.jar \
versions/1.21.10/build/libs/anarchymod-mc-1.21.10-${VERSION}.jar \
versions/1.21.11/build/libs/anarchymod-mc-1.21.11-${VERSION}.jar \
versions/26.1/build/libs/anarchymod-mc-26.1-${VERSION}.jar \
versions/26.1.1/build/libs/anarchymod-mc-26.1.1-${VERSION}.jar \
versions/26.1.2/build/libs/anarchymod-mc-26.1.2-${VERSION}.jar \
versions/26.2/build/libs/anarchymod-mc-26.2-${VERSION}.jar
set-after-version:
needs: build
+14 -11
View File
@@ -1,32 +1,35 @@
name: Set Version
name: set-version
on:
workflow_dispatch:
inputs:
version:
description: "Version to set (e.g. 1.1.0 or 1.2.0-SNAPSHOT)"
description: 'Version to set'
required: true
workflow_call:
inputs:
version:
description: "Version to set"
required: true
type: string
permissions:
contents: write
jobs:
set-version:
name: Set Version
permissions:
contents: write
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Checkout repository
uses: actions/checkout@v7
with:
ref: ${{ github.ref }}
- name: Set version
run: sed -i "s/version = \".*\"/version = \"${{ inputs.version }}\"/" build.gradle.kts
- name: Set Version
run: sed -i "s/mod_version=.*/mod_version=${{ inputs.version }}/" gradle.properties
- uses: stefanzweifel/git-auto-commit-action@v7
- name: Commit Version
uses: stefanzweifel/git-auto-commit-action@v7
with:
commit_message: "chore(release): bump version to ${{ inputs.version }}"
commit_message: 'chore(release): bump version to ${{ inputs.version }}'
+1
View File
@@ -0,0 +1 @@
mod.6b6t.org
+26 -3
View File
@@ -3,7 +3,7 @@
[![Build](https://github.com/6b6t/AnarchyMod/actions/workflows/build.yml/badge.svg)](https://github.com/6b6t/AnarchyMod/actions/workflows/build.yml)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
🔓 Bypass a potential Mojang blacklist of 6b6t - the biggest anarchy server in the world.
🔓 The Minecraft mod required to play on 6b6t — bypass Mojang's ban of the world's biggest anarchy server.
## Features
@@ -15,20 +15,43 @@
| Minecraft | Module |
|-----------|--------------|
| 1.19.4 | `mc-1.19.4` |
| 1.20 | `mc-1.20` |
| 1.20.1 | `mc-1.20.1` |
| 1.20.2 | `mc-1.20.2` |
| 1.20.3 | `mc-1.20.3` |
| 1.20.4 | `mc-1.20.4` |
| 1.20.5 | `mc-1.20.5` |
| 1.20.6 | `mc-1.20.6` |
| 1.21 | `mc-1.21` |
| 1.21.1 | `mc-1.21.1` |
| 1.21.2 | `mc-1.21.2` |
| 1.21.3 | `mc-1.21.3` |
| 1.21.4 | `mc-1.21.4` |
| 1.21.5 | `mc-1.21.5` |
| 1.21.6 | `mc-1.21.6` |
| 1.21.7 | `mc-1.21.7` |
| 1.21.8 | `mc-1.21.8` |
| 1.21.9 | `mc-1.21.9` |
| 1.21.10 | `mc-1.21.10` |
| 1.21.11 | `mc-1.21.11` |
| 26.1 | `mc-26.1` |
| 26.1.1 | `mc-26.1.1` |
| 26.1.2 | `mc-26.1.2` |
| 26.2 | `mc-26.2` |
## Installation
1. Install [Fabric Loader](https://fabricmc.net/) and [Fabric API](https://modrinth.com/mod/fabric-api) for your Minecraft version
AnarchyMod is required to connect to and play on 6b6t.
1. Install [Fabric Loader](https://fabricmc.net/) and [Fabric API](https://modrinth.com/mod/fabric-api) for your
Minecraft version
2. Download the matching JAR from [Releases](https://github.com/6b6t/AnarchyMod/releases)
3. Place the JAR in your `.minecraft/mods` folder
## Building from Source
Requires Java 21+.
Requires Java 25+ for the full multi-version build.
```sh
git clone https://github.com/6b6t/AnarchyMod.git
+19
View File
@@ -0,0 +1,19 @@
title: AnarchyMod
description: 🔓 The Minecraft mod required to play on 6b6t — bypass Mojang's ban of the world's biggest anarchy server.
theme: jekyll-theme-hacker
# The release jar lives on the Releases page, so hide the source zip/tar buttons.
show_downloads: false
# This repo is a Gradle project, so keep everything that is not the site out of
# the generated pages. Dotfiles and dotfolders (.github, .gradle, ...) are
# already ignored by Jekyll.
exclude:
- src/
- build/
- gradle/
- run/
- gradlew
- gradlew.bat
- build.gradle.kts
- settings.gradle.kts
+70 -11
View File
@@ -1,20 +1,79 @@
plugins {
id("java")
id("net.fabricmc.fabric-loom-remap") version "1.17.14"
id("maven-publish")
}
group = "net.blockhost"
version = "1.0.3"
val minecraftVersion = stonecutter.current.project
val loaderVersion = property("loader_version") as String
val fabricApiVersion = property("fabric_api_version") as String
val javaVersion = (property("java_version") as String).toInt()
repositories {
mavenCentral()
version = property("mod_version")!!
group = property("maven_group")!!
base {
archivesName.set("anarchymod-mc-${minecraftVersion}")
}
dependencies {
testImplementation(platform("org.junit:junit-bom:6.0.3"))
testImplementation("org.junit.jupiter:junit-jupiter")
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
minecraft("com.mojang:minecraft:$minecraftVersion")
mappings(loom.officialMojangMappings())
modImplementation("net.fabricmc:fabric-loader:$loaderVersion")
modImplementation("net.fabricmc.fabric-api:fabric-api:$fabricApiVersion")
implementation("com.google.code.gson:gson:2.14.0")
}
tasks.test {
useJUnitPlatform()
}
loom {
runConfigs.all {
ideConfigGenerated(true)
runDir = "../../run"
}
}
tasks.processResources {
inputs.property("version", project.version)
inputs.property("minecraft_version", minecraftVersion)
inputs.property("loader_version", loaderVersion)
inputs.property("java_version", javaVersion)
filteringCharset = "UTF-8"
filesMatching("fabric.mod.json") {
expand(
"version" to project.version,
"minecraft_version" to minecraftVersion,
"loader_version" to loaderVersion,
"java_version" to javaVersion
)
}
filesMatching("anarchymod.mixins.json") {
expand(
"java_version" to javaVersion
)
}
}
tasks.withType<JavaCompile>().configureEach {
options.encoding = "UTF-8"
options.release.set(javaVersion)
}
java {
toolchain.languageVersion.set(JavaLanguageVersion.of(javaVersion))
withSourcesJar()
}
tasks.jar {
from("LICENSE") {
rename { "${it}_${base.archivesName.get()}" }
}
}
publishing {
publications {
create<MavenPublication>("mavenJava") {
artifactId = base.archivesName.get()
from(components["java"])
}
}
}
-18
View File
@@ -1,18 +0,0 @@
plugins {
id("java-library")
}
group = rootProject.group
version = rootProject.version
repositories {
mavenCentral()
}
dependencies {
implementation("com.google.code.gson:gson:2.13.2")
}
java {
toolchain.languageVersion.set(JavaLanguageVersion.of(21))
}
+2
View File
@@ -0,0 +1,2 @@
[.ShellClassInfo]
LocalizedResourceName=AnarchyMod
+2
View File
@@ -1 +1,3 @@
org.gradle.jvmargs=-Xmx1G
mod_version=1.3.0
maven_group=net.blockhost
Binary file not shown.
+3 -1
View File
@@ -1,7 +1,9 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip
networkTimeout=10000
retries=0
retryBackOffMs=500
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Vendored
+3 -3
View File
@@ -20,7 +20,7 @@
##############################################################################
#
# Gradle start up script for POSIX generated by Gradle.
# gradlew start up script for POSIX generated by Gradle.
#
# Important for running:
#
@@ -29,7 +29,7 @@
# bash, then to run this script, type that shell name before the whole
# command line, like:
#
# ksh Gradle
# ksh gradlew
#
# Busybox and similar reduced shells will NOT work, because this script
# requires all of these POSIX shell features:
@@ -57,7 +57,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# https://github.com/gradle/gradle/blob/3d91ce3b8caaf77ad09f381f43615b715b53f72c/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
Vendored
+12 -23
View File
@@ -19,12 +19,12 @@
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem gradlew startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
@rem Set local scope for the variables, and ensure extensions are enabled
setlocal EnableExtensions
set DIRNAME=%~dp0
if "%DIRNAME%"=="" set DIRNAME=.
@@ -51,7 +51,7 @@ echo. 1>&2
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
echo location of your Java installation. 1>&2
goto fail
"%COMSPEC%" /c exit 1
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
@@ -65,29 +65,18 @@ echo. 1>&2
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
echo location of your Java installation. 1>&2
goto fail
"%COMSPEC%" /c exit 1
:execute
@rem Setup the command line
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
@rem Execute gradlew
@rem endlocal doesn't take effect until after the line is parsed and variables are expanded
@rem which allows us to clear the local environment before executing the java command
endlocal & "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* & call :exitWithErrorLevel
:end
@rem End local scope for the variables with windows NT shell
if %ERRORLEVEL% equ 0 goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
set EXIT_CODE=%ERRORLEVEL%
if %EXIT_CODE% equ 0 set EXIT_CODE=1
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
exit /b %EXIT_CODE%
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega
:exitWithErrorLevel
@rem Use "%COMSPEC%" /c exit to allow operators to work properly in scripts
"%COMSPEC%" /c exit %ERRORLEVEL%
-75
View File
@@ -1,75 +0,0 @@
plugins {
id("fabric-loom") version "1.15.4"
id("maven-publish")
}
val minecraftVersion = property("minecraft_version") as String
val loaderVersion = property("loader_version") as String
val fabricApiVersion = property("fabric_api_version") as String
version = rootProject.version
group = property("maven_group")!!
base {
archivesName.set("anarchymod-${project.name}")
}
repositories {
}
sourceSets {
main {
resources.srcDir(project(":common").sourceSets["main"].resources.srcDirs)
}
}
dependencies {
minecraft("com.mojang:minecraft:$minecraftVersion")
mappings(loom.officialMojangMappings())
modImplementation("net.fabricmc:fabric-loader:$loaderVersion")
modImplementation("net.fabricmc.fabric-api:fabric-api:$fabricApiVersion")
implementation(project(":common"))
}
tasks.processResources {
inputs.property("version", project.version)
inputs.property("minecraft_version", minecraftVersion)
inputs.property("loader_version", loaderVersion)
filteringCharset = "UTF-8"
filesMatching("fabric.mod.json") {
expand(
"version" to project.version,
"minecraft_version" to minecraftVersion,
"loader_version" to loaderVersion,
"fabric_api_version" to fabricApiVersion
)
}
}
tasks.withType<JavaCompile>().configureEach {
options.encoding = "UTF-8"
options.release.set(21)
}
java {
toolchain.languageVersion.set(JavaLanguageVersion.of(21))
withSourcesJar()
}
tasks.jar {
dependsOn(project(":common").tasks.named("classes"))
from(project(":common").sourceSets["main"].output.classesDirs)
from("LICENSE") {
rename { "${it}_${base.archivesName.get()}" }
}
}
publishing {
publications {
create<MavenPublication>("mavenJava") {
artifactId = base.archivesName.get()
from(components["java"])
}
}
}
-10
View File
@@ -1,10 +0,0 @@
# Done to increase the memory available to gradle.
# Fabric Properties
# check these on https://modmuss50.me/fabric.html
minecraft_version=1.21.10
loader_version=0.18.4
fabric_api_version=0.138.4+1.21.10
# Mod Properties
maven_group=net.blockhost
archives_base_name=mc-1.21.10
@@ -1,21 +0,0 @@
package net.blockhost.anarchymod;
import net.fabricmc.api.ClientModInitializer;
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents;
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking;
import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry;
import net.minecraft.core.registries.BuiltInRegistries;
public class AnarchyMod implements ClientModInitializer {
@Override
public void onInitializeClient() {
PayloadTypeRegistry.playC2S().register(JoinPayload.TYPE, JoinPayload.CODEC);
ClientPlayConnectionEvents.JOIN.register((listener, sender, client) -> {
if (client.getCurrentServer() != null && Domains.contains(client.getCurrentServer().ip))
sender.sendPacket(new JoinPayload());
});
}
}
@@ -1,25 +0,0 @@
package net.blockhost.anarchymod;
import net.minecraft.network.FriendlyByteBuf;
import net.minecraft.network.codec.StreamCodec;
import net.minecraft.network.protocol.common.custom.CustomPacketPayload;
import net.minecraft.resources.ResourceLocation;
public class JoinPayload implements CustomPacketPayload {
public static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath("anarchymod", "join");
public static final StreamCodec<FriendlyByteBuf, JoinPayload> CODEC =
StreamCodec.of(
(payload, buf) -> {},
buf -> new JoinPayload()
);
public static final Type<JoinPayload> TYPE =
new Type<>(ID);
@Override
public Type<? extends CustomPacketPayload> type() {
return TYPE;
}
}
@@ -1,21 +0,0 @@
package net.blockhost.anarchymod.mixin;
import com.mojang.patchy.BlockedServers;
import net.blockhost.anarchymod.Domains;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
@Mixin(BlockedServers.class)
public class BlockedServersMixin {
@Inject(method = "isBlockedServerHostName", at = @At("RETURN"), cancellable = true, remap = false)
public void isBlockedServerHostName(String server, CallbackInfoReturnable<Boolean> cir) {
boolean contains = Domains.contains(server);
if (contains) {
cir.setReturnValue(false);
}
}
}
@@ -1,16 +0,0 @@
{
"required": true,
"minVersion": "0.8",
"package": "net.blockhost.anarchymod.mixin",
"compatibilityLevel": "JAVA_21",
"client": [
"BlockedServersMixin",
"ServerListMixin"
],
"injectors": {
"defaultRequire": 1
},
"overwrites": {
"requireAnnotations": true
}
}
-10
View File
@@ -1,10 +0,0 @@
# Done to increase the memory available to gradle.
# Fabric Properties
# check these on https://modmuss50.me/fabric.html
minecraft_version=1.21.11
loader_version=0.18.4
fabric_api_version=0.141.3+1.21.11
# Mod Properties
maven_group=net.blockhost
archives_base_name=mc-1.21.11
@@ -1,21 +0,0 @@
package net.blockhost.anarchymod;
import net.fabricmc.api.ClientModInitializer;
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents;
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking;
import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry;
import net.minecraft.core.registries.BuiltInRegistries;
public class AnarchyMod implements ClientModInitializer {
@Override
public void onInitializeClient() {
PayloadTypeRegistry.playC2S().register(JoinPayload.TYPE, JoinPayload.CODEC);
ClientPlayConnectionEvents.JOIN.register((listener, sender, client) -> {
if (client.getCurrentServer() != null && Domains.contains(client.getCurrentServer().ip))
sender.sendPacket(new JoinPayload());
});
}
}
@@ -1,25 +0,0 @@
package net.blockhost.anarchymod;
import net.minecraft.network.FriendlyByteBuf;
import net.minecraft.network.codec.StreamCodec;
import net.minecraft.network.protocol.common.custom.CustomPacketPayload;
import net.minecraft.resources.Identifier;
public class JoinPayload implements CustomPacketPayload {
public static final Identifier ID = Identifier.fromNamespaceAndPath("anarchymod", "join");
public static final StreamCodec<FriendlyByteBuf, JoinPayload> CODEC =
StreamCodec.of(
(payload, buf) -> {},
buf -> new JoinPayload()
);
public static final Type<JoinPayload> TYPE =
new Type<>(ID);
@Override
public Type<? extends CustomPacketPayload> type() {
return TYPE;
}
}
@@ -1,29 +0,0 @@
package net.blockhost.anarchymod.mixin;
import net.blockhost.anarchymod.Domains;
import net.minecraft.client.multiplayer.ServerData;
import net.minecraft.client.multiplayer.ServerList;
import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import java.util.List;
@Mixin(ServerList.class)
public class ServerListMixin {
@Shadow
@Final
private List<ServerData> serverList;
@Inject(method = "load", at = @At("RETURN"))
public void afterLoad(CallbackInfo ci) {
if (serverList.stream().noneMatch(data -> Domains.contains(data.ip))) {
serverList.addFirst(new ServerData("6b6t", "6b6t.org", ServerData.Type.OTHER));
}
}
}
@@ -1,16 +0,0 @@
{
"required": true,
"minVersion": "0.8",
"package": "net.blockhost.anarchymod.mixin",
"compatibilityLevel": "JAVA_21",
"client": [
"BlockedServersMixin",
"ServerListMixin"
],
"injectors": {
"defaultRequire": 1
},
"overwrites": {
"requireAnnotations": true
}
}
@@ -1,37 +0,0 @@
{
"schemaVersion": 1,
"id": "anarchymod",
"version": "${version}",
"name": "AnarchyMod",
"description": "Bypass a potential Mojang blacklist of 6b6t - the biggest anarchy server in the world.",
"authors": ["6b6t"],
"contact": {
"homepage": "https://6b6t.org",
"issues": "https://github.com/6b6t/AnarchyMod/issues",
"sources": "https://github.com/6b6t/AnarchyMod"
},
"license": "MIT",
"icon": "assets/anarchymod/icon.png",
"environment": "client",
"entrypoints": {
"client": [
"net.blockhost.anarchymod.AnarchyMod"
]
},
"mixins": [
"anarchymod.mixins.json"
],
"custom": {
"modmenu": {
"links": {
"modmenu.discord": "https://6b6t.org/discord"
}
}
},
"depends": {
"fabric": "*",
"fabricloader": ">=${loader_version}",
"minecraft": "${minecraft_version}",
"java": ">=21"
}
}
-75
View File
@@ -1,75 +0,0 @@
plugins {
id("fabric-loom") version "1.15.4"
id("maven-publish")
}
val minecraftVersion = property("minecraft_version") as String
val loaderVersion = property("loader_version") as String
val fabricApiVersion = property("fabric_api_version") as String
version = rootProject.version
group = property("maven_group")!!
base {
archivesName.set("anarchymod-${project.name}")
}
repositories {
}
sourceSets {
main {
resources.srcDir(project(":common").sourceSets["main"].resources.srcDirs)
}
}
dependencies {
minecraft("com.mojang:minecraft:$minecraftVersion")
mappings(loom.officialMojangMappings())
modImplementation("net.fabricmc:fabric-loader:$loaderVersion")
modImplementation("net.fabricmc.fabric-api:fabric-api:$fabricApiVersion")
implementation(project(":common"))
}
tasks.processResources {
inputs.property("version", project.version)
inputs.property("minecraft_version", minecraftVersion)
inputs.property("loader_version", loaderVersion)
filteringCharset = "UTF-8"
filesMatching("fabric.mod.json") {
expand(
"version" to project.version,
"minecraft_version" to minecraftVersion,
"loader_version" to loaderVersion,
"fabric_api_version" to fabricApiVersion
)
}
}
tasks.withType<JavaCompile>().configureEach {
options.encoding = "UTF-8"
options.release.set(21)
}
java {
toolchain.languageVersion.set(JavaLanguageVersion.of(21))
withSourcesJar()
}
tasks.jar {
dependsOn(project(":common").tasks.named("classes"))
from(project(":common").sourceSets["main"].output.classesDirs)
from("LICENSE") {
rename { "${it}_${base.archivesName.get()}" }
}
}
publishing {
publications {
create<MavenPublication>("mavenJava") {
artifactId = base.archivesName.get()
from(components["java"])
}
}
}
-10
View File
@@ -1,10 +0,0 @@
# Done to increase the memory available to gradle.
# Fabric Properties
# check these on https://modmuss50.me/fabric.html
minecraft_version=1.21.8
loader_version=0.18.4
fabric_api_version=0.136.1+1.21.8
# Mod Properties
maven_group=net.blockhost
archives_base_name=mc-1.21.8
@@ -1,25 +0,0 @@
package net.blockhost.anarchymod;
import net.minecraft.network.FriendlyByteBuf;
import net.minecraft.network.codec.StreamCodec;
import net.minecraft.network.protocol.common.custom.CustomPacketPayload;
import net.minecraft.resources.ResourceLocation;
public class JoinPayload implements CustomPacketPayload {
public static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath("anarchymod", "join");
public static final StreamCodec<FriendlyByteBuf, JoinPayload> CODEC =
StreamCodec.of(
(payload, buf) -> {},
buf -> new JoinPayload()
);
public static final Type<JoinPayload> TYPE =
new Type<>(ID);
@Override
public Type<? extends CustomPacketPayload> type() {
return TYPE;
}
}
@@ -1,21 +0,0 @@
package net.blockhost.anarchymod.mixin;
import com.mojang.patchy.BlockedServers;
import net.blockhost.anarchymod.Domains;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
@Mixin(BlockedServers.class)
public class BlockedServersMixin {
@Inject(method = "isBlockedServerHostName", at = @At("RETURN"), cancellable = true, remap = false)
public void isBlockedServerHostName(String server, CallbackInfoReturnable<Boolean> cir) {
boolean contains = Domains.contains(server);
if (contains) {
cir.setReturnValue(false);
}
}
}
@@ -1,29 +0,0 @@
package net.blockhost.anarchymod.mixin;
import net.blockhost.anarchymod.Domains;
import net.minecraft.client.multiplayer.ServerData;
import net.minecraft.client.multiplayer.ServerList;
import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import java.util.List;
@Mixin(ServerList.class)
public class ServerListMixin {
@Shadow
@Final
private List<ServerData> serverList;
@Inject(method = "load", at = @At("RETURN"))
public void afterLoad(CallbackInfo ci) {
if (serverList.stream().noneMatch(data -> Domains.contains(data.ip))) {
serverList.addFirst(new ServerData("6b6t", "6b6t.org", ServerData.Type.OTHER));
}
}
}
@@ -1,16 +0,0 @@
{
"required": true,
"minVersion": "0.8",
"package": "net.blockhost.anarchymod.mixin",
"compatibilityLevel": "JAVA_21",
"client": [
"BlockedServersMixin",
"ServerListMixin"
],
"injectors": {
"defaultRequire": 1
},
"overwrites": {
"requireAnnotations": true
}
}
@@ -1,37 +0,0 @@
{
"schemaVersion": 1,
"id": "anarchymod",
"version": "${version}",
"name": "AnarchyMod",
"description": "Bypass a potential Mojang blacklist of 6b6t - the biggest anarchy server in the world.",
"authors": ["6b6t"],
"contact": {
"homepage": "https://6b6t.org",
"issues": "https://github.com/6b6t/AnarchyMod/issues",
"sources": "https://github.com/6b6t/AnarchyMod"
},
"license": "MIT",
"icon": "assets/anarchymod/icon.png",
"environment": "client",
"entrypoints": {
"client": [
"net.blockhost.anarchymod.AnarchyMod"
]
},
"mixins": [
"anarchymod.mixins.json"
],
"custom": {
"modmenu": {
"links": {
"modmenu.discord": "https://6b6t.org/discord"
}
}
},
"depends": {
"fabric": "*",
"fabricloader": ">=${loader_version}",
"minecraft": "${minecraft_version}",
"java": ">=21"
}
}
-75
View File
@@ -1,75 +0,0 @@
plugins {
id("fabric-loom") version "1.15.4"
id("maven-publish")
}
val minecraftVersion = property("minecraft_version") as String
val loaderVersion = property("loader_version") as String
val fabricApiVersion = property("fabric_api_version") as String
version = rootProject.version
group = property("maven_group")!!
base {
archivesName.set("anarchymod-${project.name}")
}
repositories {
}
sourceSets {
main {
resources.srcDir(project(":common").sourceSets["main"].resources.srcDirs)
}
}
dependencies {
minecraft("com.mojang:minecraft:$minecraftVersion")
mappings(loom.officialMojangMappings())
modImplementation("net.fabricmc:fabric-loader:$loaderVersion")
modImplementation("net.fabricmc.fabric-api:fabric-api:$fabricApiVersion")
implementation(project(":common"))
}
tasks.processResources {
inputs.property("version", project.version)
inputs.property("minecraft_version", minecraftVersion)
inputs.property("loader_version", loaderVersion)
filteringCharset = "UTF-8"
filesMatching("fabric.mod.json") {
expand(
"version" to project.version,
"minecraft_version" to minecraftVersion,
"loader_version" to loaderVersion,
"fabric_api_version" to fabricApiVersion
)
}
}
tasks.withType<JavaCompile>().configureEach {
options.encoding = "UTF-8"
options.release.set(21)
}
java {
toolchain.languageVersion.set(JavaLanguageVersion.of(21))
withSourcesJar()
}
tasks.jar {
dependsOn(project(":common").tasks.named("classes"))
from(project(":common").sourceSets["main"].output.classesDirs)
from("LICENSE") {
rename { "${it}_${base.archivesName.get()}" }
}
}
publishing {
publications {
create<MavenPublication>("mavenJava") {
artifactId = base.archivesName.get()
from(components["java"])
}
}
}
-10
View File
@@ -1,10 +0,0 @@
# Done to increase the memory available to gradle.
# Fabric Properties
# check these on https://modmuss50.me/fabric.html
minecraft_version=1.21.9
loader_version=0.18.4
fabric_api_version=0.134.1+1.21.9
# Mod Properties
maven_group=net.blockhost
archives_base_name=mc-1.21.9
@@ -1,21 +0,0 @@
package net.blockhost.anarchymod;
import net.fabricmc.api.ClientModInitializer;
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents;
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking;
import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry;
import net.minecraft.core.registries.BuiltInRegistries;
public class AnarchyMod implements ClientModInitializer {
@Override
public void onInitializeClient() {
PayloadTypeRegistry.playC2S().register(JoinPayload.TYPE, JoinPayload.CODEC);
ClientPlayConnectionEvents.JOIN.register((listener, sender, client) -> {
if (client.getCurrentServer() != null && Domains.contains(client.getCurrentServer().ip))
sender.sendPacket(new JoinPayload());
});
}
}
@@ -1,25 +0,0 @@
package net.blockhost.anarchymod;
import net.minecraft.network.FriendlyByteBuf;
import net.minecraft.network.codec.StreamCodec;
import net.minecraft.network.protocol.common.custom.CustomPacketPayload;
import net.minecraft.resources.ResourceLocation;
public class JoinPayload implements CustomPacketPayload {
public static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath("anarchymod", "join");
public static final StreamCodec<FriendlyByteBuf, JoinPayload> CODEC =
StreamCodec.of(
(payload, buf) -> {},
buf -> new JoinPayload()
);
public static final Type<JoinPayload> TYPE =
new Type<>(ID);
@Override
public Type<? extends CustomPacketPayload> type() {
return TYPE;
}
}
@@ -1,21 +0,0 @@
package net.blockhost.anarchymod.mixin;
import com.mojang.patchy.BlockedServers;
import net.blockhost.anarchymod.Domains;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
@Mixin(BlockedServers.class)
public class BlockedServersMixin {
@Inject(method = "isBlockedServerHostName", at = @At("RETURN"), cancellable = true, remap = false)
public void isBlockedServerHostName(String server, CallbackInfoReturnable<Boolean> cir) {
boolean contains = Domains.contains(server);
if (contains) {
cir.setReturnValue(false);
}
}
}
@@ -1,29 +0,0 @@
package net.blockhost.anarchymod.mixin;
import net.blockhost.anarchymod.Domains;
import net.minecraft.client.multiplayer.ServerData;
import net.minecraft.client.multiplayer.ServerList;
import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import java.util.List;
@Mixin(ServerList.class)
public class ServerListMixin {
@Shadow
@Final
private List<ServerData> serverList;
@Inject(method = "load", at = @At("RETURN"))
public void afterLoad(CallbackInfo ci) {
if (serverList.stream().noneMatch(data -> Domains.contains(data.ip))) {
serverList.addFirst(new ServerData("6b6t", "6b6t.org", ServerData.Type.OTHER));
}
}
}
@@ -1,37 +0,0 @@
{
"schemaVersion": 1,
"id": "anarchymod",
"version": "${version}",
"name": "AnarchyMod",
"description": "Bypass a potential Mojang blacklist of 6b6t - the biggest anarchy server in the world.",
"authors": ["6b6t"],
"contact": {
"homepage": "https://6b6t.org",
"issues": "https://github.com/6b6t/AnarchyMod/issues",
"sources": "https://github.com/6b6t/AnarchyMod"
},
"license": "MIT",
"icon": "assets/anarchymod/icon.png",
"environment": "client",
"entrypoints": {
"client": [
"net.blockhost.anarchymod.AnarchyMod"
]
},
"mixins": [
"anarchymod.mixins.json"
],
"custom": {
"modmenu": {
"links": {
"modmenu.discord": "https://6b6t.org/discord"
}
}
},
"depends": {
"fabric": "*",
"fabricloader": ">=${loader_version}",
"minecraft": "${minecraft_version}",
"java": ">=21"
}
}
@@ -1,40 +1,39 @@
plugins {
id("fabric-loom") version "1.15.4"
id("net.fabricmc.fabric-loom") version "1.17.14"
id("maven-publish")
}
val minecraftVersion = property("minecraft_version") as String
val minecraftVersion = stonecutter.current.project
val loaderVersion = property("loader_version") as String
val fabricApiVersion = property("fabric_api_version") as String
val javaVersion = (property("java_version") as String).toInt()
version = rootProject.version
version = property("mod_version")!!
group = property("maven_group")!!
base {
archivesName.set("anarchymod-${project.name}")
}
repositories {
}
sourceSets {
main {
resources.srcDir(project(":common").sourceSets["main"].resources.srcDirs)
}
archivesName.set("anarchymod-mc-${minecraftVersion}")
}
dependencies {
minecraft("com.mojang:minecraft:$minecraftVersion")
mappings(loom.officialMojangMappings())
modImplementation("net.fabricmc:fabric-loader:$loaderVersion")
modImplementation("net.fabricmc.fabric-api:fabric-api:$fabricApiVersion")
implementation(project(":common"))
implementation("net.fabricmc:fabric-loader:$loaderVersion")
implementation("net.fabricmc.fabric-api:fabric-api:$fabricApiVersion")
implementation("com.google.code.gson:gson:2.14.0")
}
loom {
runConfigs.all {
ideConfigGenerated(true)
runDir = "../../run"
}
}
tasks.processResources {
inputs.property("version", project.version)
inputs.property("minecraft_version", minecraftVersion)
inputs.property("loader_version", loaderVersion)
inputs.property("java_version", javaVersion)
filteringCharset = "UTF-8"
filesMatching("fabric.mod.json") {
@@ -42,24 +41,28 @@ tasks.processResources {
"version" to project.version,
"minecraft_version" to minecraftVersion,
"loader_version" to loaderVersion,
"fabric_api_version" to fabricApiVersion
"java_version" to javaVersion
)
}
filesMatching("anarchymod.mixins.json") {
expand(
"java_version" to javaVersion
)
}
}
tasks.withType<JavaCompile>().configureEach {
options.encoding = "UTF-8"
options.release.set(21)
options.release.set(javaVersion)
}
java {
toolchain.languageVersion.set(JavaLanguageVersion.of(21))
toolchain.languageVersion.set(JavaLanguageVersion.of(javaVersion))
withSourcesJar()
}
tasks.jar {
dependsOn(project(":common").tasks.named("classes"))
from(project(":common").sourceSets["main"].output.classesDirs)
from("LICENSE") {
rename { "${it}_${base.archivesName.get()}" }
}
+8 -2
View File
@@ -1,12 +1,18 @@
{
"extends": ["config:base", "group:allNonMajor", ":semanticCommits"],
"extends": [
"config:base",
"group:allNonMajor",
":semanticCommits"
],
"baseBranches": [
"main"
],
"labels": [
"enhancement"
],
"reviewers": ["xymb-endcrystalme"],
"reviewers": [
"xymb-endcrystalme"
],
"packageRules": [
{
"matchUpdateTypes": [
+20 -10
View File
@@ -1,17 +1,27 @@
rootProject.name = "AnarchyMod"
pluginManagement {
repositories {
maven {
url = uri("https://maven.fabricmc.net/")
}
maven("https://maven.fabricmc.net/")
maven("https://maven.kikugie.dev/releases")
gradlePluginPortal()
}
}
plugins {
id("dev.kikugie.stonecutter") version "0.9.6"
}
include("common")
include("mc-1.21.8")
include("mc-1.21.9")
include("mc-1.21.10")
include("mc-1.21.11")
stonecutter {
create(rootProject) {
val legacy = arrayOf(
"1.19.4", "1.20", "1.20.1", "1.20.2", "1.20.3", "1.20.4",
"1.20.5", "1.20.6",
"1.21", "1.21.1", "1.21.2", "1.21.3", "1.21.4",
"1.21.5", "1.21.6", "1.21.7",
"1.21.8", "1.21.9", "1.21.10", "1.21.11"
)
val modern = arrayOf("26.1", "26.1.1", "26.1.2", "26.2")
versions(*legacy).buildscript("build.gradle.kts")
versions(*modern).buildscript("modern-build.gradle.kts")
}
}
@@ -1,21 +1,31 @@
package net.blockhost.anarchymod;
//? if <1.20.5 {
/*import io.netty.buffer.Unpooled;
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking;
import net.minecraft.network.FriendlyByteBuf;
*///?} else {
import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry;
//?}
import net.fabricmc.api.ClientModInitializer;
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents;
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking;
import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry;
import net.minecraft.core.registries.BuiltInRegistries;
public class AnarchyMod implements ClientModInitializer {
@Override
public void onInitializeClient() {
PayloadTypeRegistry.playC2S().register(JoinPayload.TYPE, JoinPayload.CODEC);
//? if >=26.1 {
PayloadTypeRegistry.serverboundPlay().register(JoinPayload.TYPE, JoinPayload.CODEC);
//?} else if >=1.20.5 {
/*PayloadTypeRegistry.playC2S().register(JoinPayload.TYPE, JoinPayload.CODEC);
*///?}
ClientPlayConnectionEvents.JOIN.register((listener, sender, client) -> {
if (client.getCurrentServer() != null && Domains.contains(client.getCurrentServer().ip))
//? if <1.20.5 {
/*ClientPlayNetworking.send(JoinPayload.ID, new FriendlyByteBuf(Unpooled.buffer()));
*///?} else {
sender.sendPacket(new JoinPayload());
//?}
});
}
}
@@ -34,7 +34,8 @@ public class Domains {
}
private static void loadRemote() {
try (HttpClient client = HttpClient.newHttpClient()) {
try {
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(DOMAINS_URL))
.timeout(Duration.ofSeconds(15))
@@ -0,0 +1,44 @@
package net.blockhost.anarchymod;
//? if <1.20.5 {
/*import net.minecraft.resources.ResourceLocation;
public class JoinPayload {
public static final ResourceLocation ID = new ResourceLocation("anarchymod", "join");
}
*///?} else {
import net.minecraft.network.FriendlyByteBuf;
import net.minecraft.network.codec.StreamCodec;
import net.minecraft.network.protocol.common.custom.CustomPacketPayload;
//? if >=1.21.11 {
import net.minecraft.resources.Identifier;
//? } else {
/*import net.minecraft.resources.ResourceLocation;
*///?}
public class JoinPayload implements CustomPacketPayload {
//? if >=1.21.11 {
public static final Identifier ID = Identifier.fromNamespaceAndPath("anarchymod", "join");
//? } elif >=1.21.7 {
/*public static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath("anarchymod", "join");
*///?} else {
/*public static final ResourceLocation ID = ResourceLocation.tryBuild("anarchymod", "join");
*///?}
public static final StreamCodec<FriendlyByteBuf, JoinPayload> CODEC =
StreamCodec.of(
(buf, payload) -> {},
buf -> new JoinPayload()
);
public static final Type<JoinPayload> TYPE =
new Type<>(ID);
@Override
public Type<? extends CustomPacketPayload> type() {
return TYPE;
}
}
//?}
@@ -17,5 +17,4 @@ public class BlockedServersMixin {
cir.setReturnValue(false);
}
}
}
@@ -22,8 +22,13 @@ public class ServerListMixin {
@Inject(method = "load", at = @At("RETURN"))
public void afterLoad(CallbackInfo ci) {
if (serverList.stream().noneMatch(data -> Domains.contains(data.ip))) {
//? if <1.20.2 {
/*serverList.add(0, new ServerData("6b6t", "6b6t.org", false));
*///? } elif <1.20.5 {
/*serverList.add(0, new ServerData("6b6t", "6b6t.org", ServerData.Type.OTHER));
*///?} else {
serverList.addFirst(new ServerData("6b6t", "6b6t.org", ServerData.Type.OTHER));
//?}
}
}
}
@@ -2,7 +2,7 @@
"required": true,
"minVersion": "0.8",
"package": "net.blockhost.anarchymod.mixin",
"compatibilityLevel": "JAVA_21",
"compatibilityLevel": "JAVA_${java_version}",
"client": [
"BlockedServersMixin",
"ServerListMixin"

Before

Width:  |  Height:  |  Size: 292 B

After

Width:  |  Height:  |  Size: 292 B

@@ -3,10 +3,12 @@
"id": "anarchymod",
"version": "${version}",
"name": "AnarchyMod",
"description": "Bypass a potential Mojang blacklist of 6b6t - the biggest anarchy server in the world.",
"authors": ["6b6t"],
"description": "The Minecraft mod required to play on 6b6t — bypass Mojang's ban of the world's biggest anarchy server.",
"authors": [
"6b6t"
],
"contact": {
"homepage": "https://6b6t.org",
"homepage": "https://www.6b6t.org/?utm_source=anarchymod&utm_medium=mod_menu&utm_campaign=evergreen_website&utm_content=description_link",
"issues": "https://github.com/6b6t/AnarchyMod/issues",
"sources": "https://github.com/6b6t/AnarchyMod"
},
@@ -29,9 +31,9 @@
}
},
"depends": {
"fabric": "*",
"fabric-api": "*",
"fabricloader": ">=${loader_version}",
"minecraft": "${minecraft_version}",
"java": ">=21"
"java": ">=${java_version}"
}
}
+10
View File
@@ -0,0 +1,10 @@
plugins {
id("dev.kikugie.stonecutter")
}
stonecutter active "26.2"
tasks.register("chiseledBuild") {
group = "project"
dependsOn(stonecutter.tasks.named("build"))
}
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.19.4
loader_version=0.14.21
fabric_api_version=0.76.0+1.19.4
java_version=17
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.20.1
loader_version=0.18.4
fabric_api_version=0.92.7+1.20.1
java_version=17
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.20.2
loader_version=0.18.4
fabric_api_version=0.91.6+1.20.2
java_version=17
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.20.3
loader_version=0.18.4
fabric_api_version=0.91.1+1.20.3
java_version=17
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.20.4
loader_version=0.18.4
fabric_api_version=0.97.3+1.20.4
java_version=17
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.20.5
loader_version=0.18.4
fabric_api_version=0.97.8+1.20.5
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.20.6
loader_version=0.18.4
fabric_api_version=0.100.8+1.20.6
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.20
loader_version=0.18.4
fabric_api_version=0.83.0+1.20
java_version=17
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.21.1
loader_version=0.18.4
fabric_api_version=0.116.9+1.21.1
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.21.10
loader_version=0.18.4
fabric_api_version=0.138.4+1.21.10
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.21.11
loader_version=0.18.4
fabric_api_version=0.141.3+1.21.11
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.21.2
loader_version=0.18.4
fabric_api_version=0.106.1+1.21.2
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.21.3
loader_version=0.18.4
fabric_api_version=0.114.1+1.21.3
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.21.4
loader_version=0.18.4
fabric_api_version=0.119.4+1.21.4
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.21.5
loader_version=0.18.4
fabric_api_version=0.128.2+1.21.5
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.21.6
loader_version=0.18.4
fabric_api_version=0.128.2+1.21.6
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.21.7
loader_version=0.18.4
fabric_api_version=0.129.0+1.21.7
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.21.8
loader_version=0.18.4
fabric_api_version=0.136.1+1.21.8
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.21.9
loader_version=0.18.4
fabric_api_version=0.134.1+1.21.9
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=1.21
loader_version=0.18.4
fabric_api_version=0.102.0+1.21
java_version=21
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=26.1.1
loader_version=0.19.2
fabric_api_version=0.145.4+26.1.1
java_version=25
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=26.1.2
loader_version=0.19.2
fabric_api_version=0.148.2+26.1.2
java_version=25
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=26.1
loader_version=0.19.2
fabric_api_version=0.145.1+26.1
java_version=25
+4
View File
@@ -0,0 +1,4 @@
minecraft_version=26.2
loader_version=0.19.3
fabric_api_version=0.154.2+26.2
java_version=25