Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 83 additions & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -716,6 +716,41 @@ jobs:
path: fabric/1.21.2/build/libs/AdvancedBackups-fabric-1.21.2-${{ inputs.version }}.jar


fabric-26-1:
runs-on: ubuntu-latest
needs: core

steps:

- uses: actions/checkout@v3
with:
ref: main

- name: Download corelib
uses: actions/download-artifact@v4
with:
name: advancedbackups-corelib.jar
path: core/build/libs/

- name: Set up JDK 25
uses: actions/setup-java@v4
with:
java-version: 25
distribution: 'temurin'

- name: Build Mod
run: |
cd fabric/26.1
./gradlew -Pversion=${{ inputs.version }} build


- name: Upload Mod
uses: actions/upload-artifact@v4
with:
name: AdvancedBackups-fabric-26.1-${{ inputs.version }}.jar
path: fabric/26.1/build/libs/AdvancedBackups-fabric-26.1-${{ inputs.version }}.jar


fabric-26-2:
runs-on: ubuntu-latest
needs: core
Expand Down Expand Up @@ -935,6 +970,41 @@ jobs:



neoforge-26-1:
runs-on: ubuntu-latest
needs: core

steps:

- uses: actions/checkout@v3
with:
ref: main

- name: Download corelib
uses: actions/download-artifact@v4
with:
name: advancedbackups-corelib.jar
path: core/build/libs/

- name: Set up JDK 25
uses: actions/setup-java@v4
with:
java-version: 25
distribution: 'temurin'

- name: Build Mod
run: |
cd neoforge/26.1
./gradlew -Pversion=${{ inputs.version }} build


- name: Upload Mod
uses: actions/upload-artifact@v4
with:
name: AdvancedBackups-neoforge-26.1-${{ inputs.version }}.jar
path: neoforge/26.1/build/libs/AdvancedBackups-neoforge-26.1-${{ inputs.version }}.jar


neoforge-26-2:
runs-on: ubuntu-latest
needs: core
Expand Down Expand Up @@ -1015,7 +1085,7 @@ jobs:
runs-on: ubuntu-latest
needs: [core, forge-1-7-10, forge-1-12-2, forge-1-16, forge-1-18, fabric-1-18, forge-1-19-2,
forge-1-19-3, fabric-1-19-2, fabric-1-19-3, forge-1-20, forge-1-20-2, fabric-1-20, fabric-1-20-2, neoforge-1-20-2,
forge-1-20-4, forge-1-20-6, fabric-1-20-4, fabric-1-21, fabric-1-21-2, fabric-26-2, neoforge-1-20-4, fabric-1-20-6, neoforge-1-20-6, neoforge-1-21, neoforge-1-21-2, neoforge-26-2,
forge-1-20-4, forge-1-20-6, fabric-1-20-4, fabric-1-21, fabric-1-21-2, fabric-26-1, fabric-26-2, neoforge-1-20-4, fabric-1-20-6, neoforge-1-20-6, neoforge-1-21, neoforge-1-21-2, neoforge-26-1, neoforge-26-2,
spigot-1-21]

steps:
Expand Down Expand Up @@ -1135,6 +1205,12 @@ jobs:
name: AdvancedBackups-fabric-1.21.2-${{ inputs.version }}.jar
path: archives/

- name: Download Fabric-26-1
uses: actions/download-artifact@v4
with:
name: AdvancedBackups-fabric-26.1-${{ inputs.version }}.jar
path: archives/

- name: Download Fabric-26-2
uses: actions/download-artifact@v4
with:
Expand Down Expand Up @@ -1171,6 +1247,12 @@ jobs:
name: AdvancedBackups-neoforge-1.21.2-${{ inputs.version }}.jar
path: archives/

- name: Download Neoforge-26-1
uses: actions/download-artifact@v4
with:
name: AdvancedBackups-neoforge-26.1-${{ inputs.version }}.jar
path: archives/

- name: Download Neoforge-26-2
uses: actions/download-artifact@v4
with:
Expand Down
55 changes: 55 additions & 0 deletions .github/workflows/minecraft-harness.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Run Advanced Backups against a live dedicated Minecraft server.
name: Minecraft harness

on:
workflow_dispatch:
inputs:
loader:
description: Mod loader
type: choice
required: true
default: fabric
options:
- fabric
- neoforge
mc:
description: Minecraft line
type: choice
required: true
default: '26.1'
options:
- '26.1'
- '26.2'

jobs:
harness:
runs-on: ubuntu-latest
timeout-minutes: 40

steps:
- uses: actions/checkout@v4

- name: Set up JDK 21 (core)
uses: actions/setup-java@v4
with:
java-version: 21
distribution: temurin

- name: Set up JDK 25 (Minecraft 26.x)
uses: actions/setup-java@v4
with:
java-version: 25
distribution: temurin

- name: Run dedicated-server harness
run: python3 scripts/minecraft-harness/run_harness.py --loader ${{ inputs.loader }} --mc ${{ inputs.mc }}

- name: Upload harness logs
if: always()
uses: actions/upload-artifact@v4
with:
name: harness-${{ inputs.loader }}-${{ inputs.mc }}
path: |
${{ inputs.loader }}/${{ inputs.mc }}/harness-gradle.log
${{ inputs.loader }}/${{ inputs.mc }}/run-harness/logs/
if-no-files-found: ignore
55 changes: 55 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,12 +37,14 @@ on:
- Fabric 1.20.6
- Fabric 1.21
- Fabric 1.21.2
- Fabric 26.1
- Fabric 26.2
- Neoforge 1.20.2
- Neoforge 1.20.4
- Neoforge 1.20.6
- Neoforge 1.21
- Neoforge 1.21.2
- Neoforge 26.1
- Neoforge 26.2
- Spigot 1.21

Expand Down Expand Up @@ -631,6 +633,33 @@ jobs:
changelog: ${{ vars.CHANGELOG }}


- name: Upload Fabric 26.1

if: inputs.version == 'Fabric 26.1' || inputs.version == 'All'
uses: Kir-Antipov/mc-publish@v3.3
with:
curseforge-id: 876284
curseforge-token: ${{ secrets.CURSEFORGE_TOKEN }}
modrinth-id: Jrmoreqs
modrinth-token: ${{ secrets.MODRINTH_TOKEN }}
modrinth-featured: false
files: |
**/AdvancedBackups-fabric-26.1-${{ steps.version.outputs.VERSION }}.jar
name: Fabric 26.1 - ${{ steps.version.outputs.VERSION }}
version: ${{ steps.version.outputs.VERSION }}
version-type: release
loaders: |
fabric
quilt
game-versions: |
26.1
26.1.1
26.1.2
java: |
Java 25
changelog: ${{ vars.CHANGELOG }}


- name: Upload Fabric 26.2

if: inputs.version == 'Fabric 26.2' || inputs.version == 'All'
Expand Down Expand Up @@ -798,6 +827,32 @@ jobs:
changelog: ${{ vars.CHANGELOG }}


- name: Upload Neoforge 26.1

if: inputs.version == 'Neoforge 26.1' || inputs.version == 'All'
uses: Kir-Antipov/mc-publish@v3.3
with:
curseforge-id: 876284
curseforge-token: ${{ secrets.CURSEFORGE_TOKEN }}
modrinth-id: Jrmoreqs
modrinth-token: ${{ secrets.MODRINTH_TOKEN }}
modrinth-featured: false
files: |
**/AdvancedBackups-neoforge-26.1-${{ steps.version.outputs.VERSION }}.jar
name: Neoforge 26.1 - ${{ steps.version.outputs.VERSION }}
version: ${{ steps.version.outputs.VERSION }}
version-type: release
loaders: |
neoforge
game-versions: |
26.1
26.1.1
26.1.2
java: |
Java 25
changelog: ${{ vars.CHANGELOG }}


- name: Upload Neoforge 26.2

if: inputs.version == 'Neoforge 26.2' || inputs.version == 'All'
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,8 @@ build
# other
run
runs
run-harness
harness-gradle.log
__pycache__/
*.pyc
forge*changelog.txt
22 changes: 11 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@
A powerful backup mod for Minecraft, supporting Neoforge, Forge and Fabric.
Many Minecraft versions are supported - request more if the one you want isn't yet supported.

### Minecraft 26.2 Support
**Version 3.8-26.2** adds Fabric and NeoForge support for Minecraft 26.2 (Chaos Cubed).
### Minecraft 26.1 and 26.2 Support
**Version 3.8-26.1** and **3.8-26.2** add Fabric and NeoForge support for Minecraft 26.1 (including 26.1.2) and 26.2 (Chaos Cubed).

| Requirement | Version |
|-------------|---------|
| Fabric Loader | 0.19.3+ |
| Fabric API | 0.157.0+26.2 |
| NeoForge | 26.2.0.59+ |
| Java | 25+ |
| Requirement | 26.1 | 26.2 |
|-------------|------|------|
| Fabric Loader | 0.19.3+ | 0.19.3+ |
| Fabric API | 0.155.2+26.1.2 | 0.157.0+26.2 |
| NeoForge | 26.1.2.97+ | 26.2.0.59+ |
| Java | 25+ | 25+ |

Toast notifications render with the advancement toast background, text, item icon, and progress bar.

Expand Down Expand Up @@ -40,12 +40,12 @@ The latest Minecraft release supported here is **26.2**.

| Loader | Minecraft versions |
|--------|--------------------|
| Fabric | 1.18, 1.19.2, 1.19.3, 1.20, 1.20.2, 1.20.6, 1.21, 1.21.2, 1.21.10, **26.2** |
| NeoForge | 1.20.2, 1.20.4, 1.20.6, 1.21, 1.21.2, **26.2** |
| Fabric | 1.18, 1.19.2, 1.19.3, 1.20, 1.20.2, 1.20.6, 1.21, 1.21.2, 1.21.10, **26.1**, **26.2** |
| NeoForge | 1.20.2, 1.20.4, 1.20.6, 1.21, 1.21.2, **26.1**, **26.2** |
| Forge | 1.7.10, 1.12, 1.16, 1.18, 1.19.2, 1.19.3, 1.20, 1.20.2, 1.20.6 |
| Spigot | 1.21 |

Minecraft 26.2 requires **Java 25**. Older ports keep their original Java requirements.
Minecraft 26.1 and 26.2 require **Java 25**. Older ports keep their original Java requirements.

## Features:
- Command-line restoration tool built into the jar, with helper scripts to run it
Expand Down
14 changes: 14 additions & 0 deletions fabric/26.1/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Fabric - 26.1

This is the port for Fabric Minecraft 26.1, compiled against 26.1.2.

## Build Information
- **Version**: 3.8-26.1
- **Minecraft**: 26.1 / 26.1.1 / 26.1.2
- **Fabric Loader**: 0.19.3+
- **Fabric API**: 0.155.2+26.1.2
- **Java**: 25+

Toast background rendering uses `GuiGraphicsExtractor.blitSprite` and `RenderPipelines.GUI_TEXTURED`.

For full documentation, see the main repository README.
Loading