34 Commits

Author SHA1 Message Date
df68e51d87 Update .gitignore 2023-12-10 13:14:13 -06:00
0e240d3c00 Fix builds not working 2023-12-10 13:12:58 -06:00
031de7abb1 Update Paper 2023-12-03 22:14:47 -06:00
e57b14d8c7 Update Paper 2023-11-29 19:34:39 -06:00
8c424d257e Update Paper 2023-11-25 23:20:27 -06:00
86c36bd01d Update Paper 2023-11-22 20:14:41 -06:00
8a3fc4f053 Update Paper 2023-11-20 15:52:07 -06:00
b17300cb6b Update Paper 2023-11-12 19:35:20 -06:00
c454da9e1a Java 21 support 2023-11-05 14:08:29 -06:00
5e8dbab98c Update Paper 2023-11-04 21:36:47 -05:00
cbd4b8c045 Update Paper 2023-10-29 15:36:20 -05:00
27e30f29d6 Update Paper 2023-10-23 20:31:00 -05:00
ba578b3eec Update Paper 2023-10-22 21:14:50 -05:00
7d9b628fac Update Paper 2023-10-21 16:48:43 -05:00
66f40c0905 Update Paper 2023-10-17 23:24:46 -05:00
343f0b78b2 Patches from Luna (#144) 2023-10-15 17:45:13 -05:00
f7e1e35ffc Update README links 2023-10-15 16:09:50 -05:00
367d03e949 Update Paper 2023-10-15 08:01:09 -05:00
c5f38c235c Update Paper 2023-10-12 11:34:50 -05:00
f15dbbc6d3 Update Paper 2023-10-10 22:51:12 -05:00
8fc04a818b Update Paper and add javadocs back 2023-10-06 18:20:04 -05:00
1050894e5a Update Paper and fix compilation errors (again) 2023-10-06 02:32:03 -05:00
c268904a94 Add patch limiting map decorations back (untested) 2023-09-30 18:45:42 -05:00
d3cf82a23f Fix compilation issue and update Paper
This test fails even when there are no patches, so I just commented it out. I don't think it's a Scissors issue as it fails even with no patches. I think it might be an encoding issue?
2023-09-30 17:05:14 -05:00
3a1a4b68b9 Update Paper 2023-09-27 15:45:02 -05:00
f3bd200608 remove patch as it still doesnt build for some reason 2023-09-25 19:12:52 -05:00
227341fc66 Add back a patch 2023-09-25 19:06:18 -05:00
0e2564c3fa Rebuild patches 2023-09-24 17:01:28 -05:00
ccc2be8000 everything that went in cleanly 2023-09-24 16:58:36 -05:00
cc6f512333 More patches 2023-09-24 16:42:28 -05:00
37e93142a5 some more patches 2023-09-24 16:03:31 -05:00
5a93f07bd7 tests are broken for some reason 2023-09-24 15:47:17 -05:00
cd87d4fc61 ResourceLocation validation 2023-09-24 15:29:45 -05:00
5cbac48e6f Begin very basic work on 1.20.2 2023-09-24 15:13:43 -05:00
76 changed files with 17 additions and 2949 deletions

View File

@@ -13,8 +13,6 @@ jobs:
steps: steps:
- name: Checkout Git Repository - name: Checkout Git Repository
uses: actions/checkout@v3 uses: actions/checkout@v3
with:
submodules: 'true'
- name: Validate Gradle wrapper - name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1 uses: gradle/wrapper-validation-action@v1
- name: Setup Gradle - name: Setup Gradle

3
.gitignore vendored
View File

@@ -51,7 +51,4 @@ Scissors-API
!gradle/wrapper/gradle-wrapper.jar !gradle/wrapper/gradle-wrapper.jar
aswm-api/src
aswm-core/src
paper-api-generator paper-api-generator

4
.gitmodules vendored
View File

@@ -1,4 +0,0 @@
[submodule "submodules/AdvancedSlimePaper"]
path = submodules/AdvancedSlimePaper
url = https://github.com/InfernalSuite/AdvancedSlimePaper.git
branch = main

6
Jenkinsfile vendored
View File

@@ -1,15 +1,9 @@
pipeline { pipeline {
options { skipDefaultCheckout() }
agent any agent any
environment { environment {
GITHUB_BRANCH = "${BRANCH_NAME}" GITHUB_BRANCH = "${BRANCH_NAME}"
} }
stages { stages {
stage('checkout') {
steps {
checkout scmGit(branches: [[name: '*/slime/1.20.2']], extensions: [submodule(parentCredentials: true, recursiveSubmodules: true, reference: 'https://github.com/InfernalSuite/AdvancedSlimePaper')], userRemoteConfigs: [[url: 'https://github.com/AtlasMediaGroup/Scissors']])
}
}
stage('applyPatches') { stage('applyPatches') {
steps { steps {
withGradle { withGradle {

View File

@@ -1,18 +1,8 @@
# Scissors [![Build Status](https://ci.plex.us.org/job/Scissors/job/slime%252F1.20.2/badge/icon)](https://ci.plex.us.org/job/Scissors/job/slime%252F1.20.2/) # Scissors [![Build Status](https://ci.scissors.gg/job/Scissors/job/1.20.2/badge/icon)](https://ci.scissors.gg/job/Scissors/job/1.20.2/)
Scissors is a fork of Paper that aims to fix exploits possible in Creative Mode. Many of these exploits are ones that Scissors is a fork of Paper that aims to fix exploits possible in Creative Mode. Many of these exploits are ones that
Paper's own team has either refused to fix or would have. Paper's own team has either refused to fix or would have.
All SWM patches/SWM API belongs to [AdvancedSlimePaper and InfernalSuite](https://github.com/InfernalSuite/AdvancedSlimePaper)
Note: This will not compile on Windows by default. To make it compile, you need to delete the `aswm-core/src`
and `aswm-api/src` files. Then open up Command Prompt as an administrator and run the following for the api project:
```mklink /D C:\full\path\to\project\aswm-api\src C:\full\path\to\project\submodules\AdvancedSlimePaper\api\src```. Now,
run the same thing again for the core
project: ```mklink /D C:\full\path\to\project\aswm-core\src C:\full\path\to\project\submodules\AdvancedSlimePaper\core\src```
Make sure you replace the placeholder `C:\full\path\to\project` with the actual full path to the root project on your
local machine. You do not need to do this if you are compiling on macOS or Linux.
## Links ## Links
### [Scissors Download](https://ci.plex.us.org/job/Scissors) ### [Scissors Download](https://ci.plex.us.org/job/Scissors)
### [Scissors Javadoc](https://javadoc.scissors.gg/1.20.2) ### [Scissors Javadoc](https://javadoc.scissors.gg/1.20.2)

View File

@@ -1,17 +0,0 @@
plugins {
`java-library`
`maven-publish`
signing
}
dependencies {
api("com.flowpowered:flow-nbt:2.0.2")
api("org.jetbrains:annotations:23.0.0")
compileOnly("io.papermc.paper:paper-api:1.20.2-R0.1-SNAPSHOT")
}
java {
withSourcesJar()
withJavadocJar()
}

View File

@@ -1 +0,0 @@
../submodules/AdvancedSlimePaper/api/src

View File

@@ -1,7 +0,0 @@
plugins {
}
dependencies {
compileOnly(project(":aswm-api"))
implementation("com.github.luben:zstd-jni:1.5.2-2")
}

View File

@@ -1 +0,0 @@
../submodules/AdvancedSlimePaper/core/src

View File

@@ -8,9 +8,3 @@
# To import classes from the vanilla Minecraft jar use `minecraft` as the artifactId: # To import classes from the vanilla Minecraft jar use `minecraft` as the artifactId:
# minecraft net.minecraft.world.level.entity.LevelEntityGetterAdapter # minecraft net.minecraft.world.level.entity.LevelEntityGetterAdapter
# minecraft net/minecraft/world/level/entity/LevelEntityGetter.java # minecraft net/minecraft/world/level/entity/LevelEntityGetter.java
## Used in Scissors 1.19
#minecraft net/minecraft/world/ContainerHelper
#minecraft net/minecraft/network/chat/contents/NbtContents
#minecraft net/minecraft/network/chat/ComponentUtils
#minecraft net/minecraft/network/chat/contents/EntityDataSource

View File

@@ -49,7 +49,6 @@ subprojects {
repositories { repositories {
mavenCentral() mavenCentral()
maven(paperMavenPublicUrl) maven(paperMavenPublicUrl)
maven("https://repo.rapture.pw/repository/maven-releases/")
} }
} }

Binary file not shown.

View File

@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
networkTimeout=10000 networkTimeout=10000
validateDistributionUrl=true validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME

3
gradlew vendored
View File

@@ -83,7 +83,8 @@ done
# This is normally unused # This is normally unused
# shellcheck disable=SC2034 # shellcheck disable=SC2034
APP_BASE_NAME=${0##*/} APP_BASE_NAME=${0##*/}
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit # 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
# Use the maximum available, or set MAX_FD != -1 to use that value. # Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum MAX_FD=maximum

View File

@@ -1,33 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
Date: Mon, 26 Dec 2022 12:08:15 -0500
Subject: [PATCH] AdvancedSlimePaper API Changes
AdvancedSlimePaper
Copyright (C) 2023 InfernalSuite
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/build.gradle.kts b/build.gradle.kts
index e827ee211e3c65dc68ac5867fd8476639df63645..4bf0c234eacc8398333fe7704acadfecff21c505 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -28,6 +28,7 @@ configurations.api {
dependencies {
// api dependencies are listed transitively to API consumers
+ api(project(":aswm-api")) // ASWM
api("com.google.guava:guava:32.1.2-jre")
api("com.google.code.gson:gson:2.10.1")
api("net.md-5:bungeecord-chat:$bungeeCordChatVersion-deprecated+build.14") // Paper

File diff suppressed because it is too large Load Diff

View File

@@ -5,16 +5,15 @@ Subject: [PATCH] Build changes
diff --git a/build.gradle.kts b/build.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts
index 79beac737c17412913983614bd478d33e3c6ed58..27d5dd68175641152cb78e6aba69890c00ef9b51 100644 index 79beac737c17412913983614bd478d33e3c6ed58..6c396296c3ff8b5559b7bf69af76459117de4e85 100644
--- a/build.gradle.kts --- a/build.gradle.kts
+++ b/build.gradle.kts +++ b/build.gradle.kts
@@ -13,8 +13,13 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) { @@ -13,8 +13,12 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) {
val alsoShade: Configuration by configurations.creating val alsoShade: Configuration by configurations.creating
dependencies { dependencies {
- implementation(project(":paper-api")) - implementation(project(":paper-api"))
- implementation(project(":paper-mojangapi")) - implementation(project(":paper-mojangapi"))
+ implementation(project(":aswm-core"))
+ // Scissors start + // Scissors start
+ implementation(project(":Scissors-API")) + implementation(project(":Scissors-API"))
+ implementation("io.papermc.paper:paper-mojangapi:1.20.2-R0.1-SNAPSHOT") { + implementation("io.papermc.paper:paper-mojangapi:1.20.2-R0.1-SNAPSHOT") {
@@ -24,7 +23,7 @@ index 79beac737c17412913983614bd478d33e3c6ed58..27d5dd68175641152cb78e6aba69890c
// Paper start // Paper start
implementation("org.jline:jline-terminal-jansi:3.21.0") implementation("org.jline:jline-terminal-jansi:3.21.0")
implementation("net.minecrell:terminalconsoleappender:1.3.0") implementation("net.minecrell:terminalconsoleappender:1.3.0")
@@ -66,11 +71,19 @@ tasks.jar { @@ -66,11 +70,19 @@ tasks.jar {
val gitHash = git("rev-parse", "--short=7", "HEAD").getText().trim() val gitHash = git("rev-parse", "--short=7", "HEAD").getText().trim()
val implementationVersion = System.getenv("BUILD_NUMBER") ?: "\"$gitHash\"" val implementationVersion = System.getenv("BUILD_NUMBER") ?: "\"$gitHash\""
val date = git("show", "-s", "--format=%ci", gitHash).getText().trim() // Paper val date = git("show", "-s", "--format=%ci", gitHash).getText().trim() // Paper
@@ -46,7 +45,7 @@ index 79beac737c17412913983614bd478d33e3c6ed58..27d5dd68175641152cb78e6aba69890c
"Implementation-Vendor" to date, // Paper "Implementation-Vendor" to date, // Paper
"Specification-Title" to "Bukkit", "Specification-Title" to "Bukkit",
"Specification-Version" to project.version, "Specification-Version" to project.version,
@@ -154,7 +167,7 @@ fun TaskContainer.registerRunTask( @@ -154,7 +166,7 @@ fun TaskContainer.registerRunTask(
name: String, name: String,
block: JavaExec.() -> Unit block: JavaExec.() -> Unit
): TaskProvider<JavaExec> = register<JavaExec>(name) { ): TaskProvider<JavaExec> = register<JavaExec>(name) {
@@ -56,7 +55,7 @@ index 79beac737c17412913983614bd478d33e3c6ed58..27d5dd68175641152cb78e6aba69890c
standardInput = System.`in` standardInput = System.`in`
workingDir = rootProject.layout.projectDirectory workingDir = rootProject.layout.projectDirectory
diff --git a/src/main/java/com/destroystokyo/paper/Metrics.java b/src/main/java/com/destroystokyo/paper/Metrics.java diff --git a/src/main/java/com/destroystokyo/paper/Metrics.java b/src/main/java/com/destroystokyo/paper/Metrics.java
index 4b002e8b75d117b726b0de274a76d3596fce015b..87fd35ad9c7364124286fa5e9ef1d4b7efa73990 100644 index 4b002e8b75d117b726b0de274a76d3596fce015b..a46d3f40642bbf249c2d24e689f474d07175ca09 100644
--- a/src/main/java/com/destroystokyo/paper/Metrics.java --- a/src/main/java/com/destroystokyo/paper/Metrics.java
+++ b/src/main/java/com/destroystokyo/paper/Metrics.java +++ b/src/main/java/com/destroystokyo/paper/Metrics.java
@@ -593,7 +593,7 @@ public class Metrics { @@ -593,7 +593,7 @@ public class Metrics {
@@ -73,7 +72,7 @@ index 4b002e8b75d117b726b0de274a76d3596fce015b..87fd35ad9c7364124286fa5e9ef1d4b7
if (implVersion != null) { if (implVersion != null) {
final String buildOrHash = implVersion.substring(implVersion.lastIndexOf('-') + 1); final String buildOrHash = implVersion.substring(implVersion.lastIndexOf('-') + 1);
- paperVersion = "git-Paper-%s-%s".formatted(Bukkit.getServer().getMinecraftVersion(), buildOrHash); - paperVersion = "git-Paper-%s-%s".formatted(Bukkit.getServer().getMinecraftVersion(), buildOrHash);
+ paperVersion = "git-ScissorsASWM-%s-%s".formatted(Bukkit.getServer().getMinecraftVersion(), buildOrHash); // Scissors + paperVersion = "git-Scissors-%s-%s".formatted(Bukkit.getServer().getMinecraftVersion(), buildOrHash); // Scissors
} else { } else {
paperVersion = "unknown"; paperVersion = "unknown";
} }
@@ -96,10 +95,10 @@ index c5d5648f4ca603ef2b1df723b58f9caf4dd3c722..21ded7c14c56a40feaa7741131be5166
.completer(new ConsoleCommandCompleter(this.server)) .completer(new ConsoleCommandCompleter(this.server))
.option(LineReader.Option.COMPLETE_IN_WORD, true); .option(LineReader.Option.COMPLETE_IN_WORD, true);
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 3d5d79e428a7b0f1aa7d0d3911e6d61b9537e8a0..97231b3a80c248efca4a7ef644272801644386d5 100644 index 8f31413c939cc2b0454ad3d9a1b618dbae449d00..96c2044c66db2b2aef644e19ecd289cf870ab62a 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1712,7 +1712,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1697,7 +1697,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@DontObfuscate @DontObfuscate
public String getServerModName() { public String getServerModName() {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Prevent player banning using duplicate UUIDs
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 3f26fdcc5cbf0a684ad724ab8c042d0053cc187e..c6f36a6b967aeb6ffdf5b099b2692e038401dc79 100644 index 17610196db7a1c6feb2cf74a02479a8691aa323f..70c52e2293d64d32fdcebbcd0678e0c80d35fbb8 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java --- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1664,7 +1664,13 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -1644,7 +1644,13 @@ public class ServerLevel extends Level implements WorldGenLevel {
if (entity != null) { if (entity != null) {
ServerLevel.LOGGER.warn("Force-added player with duplicate UUID {}", player.getUUID()); ServerLevel.LOGGER.warn("Force-added player with duplicate UUID {}", player.getUUID());
entity.unRide(); entity.unRide();

View File

@@ -7,4 +7,4 @@ pluginManagement {
rootProject.name = "Scissors" rootProject.name = "Scissors"
include("aswm-api", "aswm-core", "Scissors-API", "Scissors-Server") include("Scissors-API", "Scissors-Server")