Merge pull request #1 from thetrouper/experimental

Update the Production branch with the new update
This commit is contained in:
TheTrouper
2024-05-31 22:44:50 -05:00
committed by GitHub
310 changed files with 7403 additions and 3120 deletions

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
/.idea/

6
.idea/compiler.xml generated Normal file
View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<bytecodeTargetLevel target="17" />
</component>
</project>

7
.idea/discord.xml generated Normal file
View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DiscordProjectSettings">
<option name="show" value="PROJECT_FILES" />
<option name="description" value="" />
</component>
</project>

7
.idea/encodings.xml generated Normal file
View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="file://$PROJECT_DIR$/server/plugins/Sentinel/advanced-config.json" charset="windows-1252" />
<file url="file://$PROJECT_DIR$/server/plugins/Sentinel/main-config.json" charset="windows-1252" />
</component>
</project>

17
.idea/gradle.xml generated Normal file
View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleMigrationSettings" migrationVersion="1" />
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleJvm" value="19" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
</set>
</option>
</GradleProjectSettings>
</option>
</component>
</project>

40
.idea/jarRepositories.xml generated Normal file
View File

@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="MavenRepo" />
<option name="name" value="MavenRepo" />
<option name="url" value="https://repo.maven.apache.org/maven2/" />
</remote-repository>
<remote-repository>
<option name="id" value="spigotmc-repo" />
<option name="name" value="spigotmc-repo" />
<option name="url" value="https://hub.spigotmc.org/nexus/content/repositories/snapshots/" />
</remote-repository>
<remote-repository>
<option name="id" value="sonatype" />
<option name="name" value="sonatype" />
<option name="url" value="https://oss.sonatype.org/content/groups/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="maven" />
<option name="name" value="maven" />
<option name="url" value="https://repo.papermc.io/repository/maven-public/" />
</remote-repository>
<remote-repository>
<option name="id" value="maven" />
<option name="name" value="maven" />
<option name="url" value="https://repo.dmulloy2.net/repository/public/" />
</remote-repository>
</component>
</project>

13
.idea/misc.xml generated Normal file
View File

@@ -0,0 +1,13 @@
<project version="4">
<component name="ASMSmaliIdeaPluginConfiguration">
<asm skipDebug="true" skipFrames="true" skipCode="false" expandFrames="false" />
<groovy codeStyle="LEGACY" />
</component>
<component name="EntryPointsManager">
<list size="1">
<item index="0" class="java.lang.String" itemvalue="org.bukkit.event.EventHandler" />
</list>
</component>
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="temurin-17" project-jdk-type="JavaSDK" />
</project>

9
.idea/modules.xml generated Normal file
View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/modules/'io.github.thetrouper'.Sentinel.main.iml" filepath="$PROJECT_DIR$/.idea/modules/'io.github.thetrouper'.Sentinel.main.iml" />
<module fileurl="file://$PROJECT_DIR$/.idea/modules/Sentinel.main.iml" filepath="$PROJECT_DIR$/.idea/modules/Sentinel.main.iml" />
</modules>
</component>
</project>

18
.idea/modules/Sentinel.main.iml generated Normal file
View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<module version="4">
<component name="FacetManager">
<facet type="minecraft" name="Minecraft">
<configuration>
<autoDetectTypes>
<platformType>PAPER</platformType>
<platformType>ADVENTURE</platformType>
</autoDetectTypes>
<projectReimportVersion>1</projectReimportVersion>
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

6
.idea/vcs.xml generated Normal file
View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

View File

@@ -5,12 +5,27 @@ plugins {
group = project.group
version = project.version
jar {
from {
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
configurations.runtimeClasspath.collect {
it.isDirectory() ? it : zipTree(it)
}
}
}
repositories {
mavenCentral()
maven {
url "https://repo.dmulloy2.net/repository/public/"
}
maven {
name = 'spigotmc-repo'
url = 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/'
}
maven {
url = uri("https://repo.papermc.io/repository/maven-public/")
}
maven {
name = 'sonatype'
url = 'https://oss.sonatype.org/content/groups/public/'
@@ -18,15 +33,18 @@ repositories {
}
dependencies {
compileOnly "org.spigotmc:spigot-api:1.20.2-R0.1-SNAPSHOT"
compileOnly 'io.papermc.paper:paper-api:1.20.4-R0.1-SNAPSHOT'
compileOnly 'com.comphenix.protocol:ProtocolLib:5.1.0'
implementation 'com.google.code.gson:gson:2.10.1'
implementation files("libs/PDK-1.3.4.jar")
}
def targetJavaVersion = 16
def targetJavaVersion = 17
java {
def javaVersion = JavaVersion.toVersion(targetJavaVersion)
sourceCompatibility = javaVersion
targetCompatibility = javaVersion
toolchain.languageVersion.set(JavaLanguageVersion.of(17))
if (JavaVersion.current() < javaVersion) {
toolchain.languageVersion = JavaLanguageVersion.of(targetJavaVersion)
}
@@ -38,6 +56,13 @@ tasks.withType(JavaCompile).configureEach {
}
}
tasks.register('copyDeps', Copy) {
from configurations.runtimeClasspath
into 'build/deps'
include '*.jar'
}
processResources {
def props = [version: version]
inputs.properties props
@@ -52,4 +77,3 @@ compileJava.options.encoding("UTF-8")
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
}

43
build.sh Executable file
View File

@@ -0,0 +1,43 @@
#!/bin/bash
# Navigate to the directory containing the Gradle project
cd "/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/" || exit
# Run the Gradle build command
./gradlew build
# Check if the build was successful
if [ $? -ne 0 ]; then
echo "Gradle build failed"
exit 1
fi
# Specify the output file path (modify this according to your build configuration)
OUTPUT_FILE_PATH="/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libs/Sentinel-0.2.6.jar"
# Check if the output file exists
if [ ! -f "$OUTPUT_FILE_PATH" ]; then
echo "Output file not found: $OUTPUT_FILE_PATH"
exit 1
fi
# Upload the file to the SFTP server
HOST="yessir.network"
PORT="2022"
USER="obvwolf.1f8509dc"
PASSWORD='^8u%eQ2u6^TyuDU&$NNmW52s' # Enclose the password in single quotes if it has special characters
REMOTE_DIR="/plugins/"
# Use 'lftp' to handle the SFTP upload
lftp -u "$USER","$PASSWORD" sftp://"$HOST":"$PORT" <<EOF
cd "$REMOTE_DIR"
put "$OUTPUT_FILE_PATH"
bye
EOF
if [ $? -ne 0 ]; then
echo "File upload failed"
exit 1
fi
echo "Build and upload completed successfully"

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,8 +1,8 @@
# Plugin
group = 'io.github.thetrouper'
version = 0.2.2
version = 0.2.6
# Minecraft
mc_version = 1.19.4
mc_version = 1.20.4

BIN
libs/PDK-1.3.4.jar Normal file

Binary file not shown.

59
obf.sh Executable file
View File

@@ -0,0 +1,59 @@
#!/bin/bash
# Run Gradle build
./gradlew build
# Check if the build was successful
if [ $? -eq 0 ]; then
echo "Gradle build successful."
# Obfuscate with Grunt
cd ./obf/
java -jar grunt-1.5.7.jar
cd ..
echo "Obfuscation complete."
# SFTP upload
SFTP_HOST="192.168.1.199"
SFTP_USER="trouper"
SFTP_PASSWORD="Trouper12()1"
SFTP_REMOTE_DIR="/home/trouper/docker/data/plugins/"
# Specify the local file to upload
LOCAL_FILE="./build/libs/Sentinel-0.2.5.jar"
# Create a temporary file with a unique name
TEMP_FILE=$(mktemp)
# Write the SFTP commands to the temporary file
echo "put $LOCAL_FILE $SFTP_REMOTE_DIR" > "$TEMP_FILE"
echo "bye" >> "$TEMP_FILE"
# Use sftp non-interactively with the specified commands
sftp -oStrictHostKeyChecking=no -oBatchMode=no -b "$TEMP_FILE" "$SFTP_USER@$SFTP_HOST" <<EOF
$SFTP_PASSWORD
EOF
# Remove the temporary file
rm -f "$TEMP_FILE"
echo "File uploaded via SFTP."
# SSH commands to reload the plugin on the host
SSH_HOST="trouper@$SFTP_HOST"
SSH_PASSWORD="Trouper12()1"
SSH_COMMANDS=(
"docker exec docker_mc_1 mc-send-to-console pm reload Sentinel"
"docker exec docker_mc_1 mc-send-to-console tellraw @a '\"'[Server] Reload Complete, Upload Successful.'\"'"
)
for cmd in "${SSH_COMMANDS[@]}"; do
sshpass -p "$SSH_PASSWORD" ssh -oStrictHostKeyChecking=no -oBatchMode=no "$SSH_HOST" "$cmd"
done
echo "Plugin reloaded."
else
echo "Gradle build failed."
fi

183
obf/config-windows.json Normal file
View File

@@ -0,0 +1,183 @@
{
"Settings": {
"Input": "C:/Users/chase/Documents/Sentinel/build/libs/Sentinel-0.2.5.jar",
"Output": "C:\\Users\\chase\\Documents\\Sentinel\\build\\libs\\Sentinel-0.2.5-beta-reobf.jar",
"Libraries": [
"C:/Users/chase/Documents/Sentinel/build/libraries/gson-2.10.1.jar",
"C:\\Users\\chase\\Documents\\Sentinel\\build\\libraries\\ProtocolLib-5.1.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/adventure-api-4.15.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/adventu re-key-4.15.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/adventure-text-logger-slf4j-4.15.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/adventure-text-minimessage-4.15.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/adventure-text-serializer-gson-4.15.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/adventure-text-serializer-json-4.15.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/adventure-text-serializer-legacy-4.15.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/adventure-text-serializer-plain-4.15.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/annotations-24.1.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/bungeecord-chat-1.20-R0.1.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/checker-qual-3.33.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/error_prone_annotations-2.18.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/examination-api-1.3.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/examination-string-1.3.0.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/failureaccess-1.0.1.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/fastutil-8.5.6.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/gson-2.10.1.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/guava-32.1.2-jre.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/j2objc-annotations-2.8.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/javax.inject-1.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/joml-1.10.5.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/json-simple-1.1.1.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/jsr305-3.0.2.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/org.eclipse.sisu.inject-0.9.0.M2.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/PDK-1.3.4.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/plexus-interpolation-1.26.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/plexus-utils-3.5.1.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/snakeyaml-2.2.jar",
"C:/Users/chase/Documents/Sentinel/build/libraries/spigot-api-1.20.2-R0.1-SNAPSHOT.jar"
],
"Exclusions": [
"com/google/gson/",
"io/github/itzispyder/"
],
"GenerateRemap": true,
"RemapOutput": "mappings.json",
"ParallelProcessing": true,
"CustomDictionary": [],
"DictionaryStartIndex": 0,
"CorruptOutput": false,
"FileRemovePrefix": [],
"FileRemoveSuffix": []
},
"AntiDebug": {
"Enabled": true,
"SourceDebug": true,
"LineDebug": true,
"RenameSourceDebug": true,
"SourceNames": [
"protected-by-redactor.java",
"COPYRIGHT_SENTINEL_ANTINUKE_2024"
]
},
"Shrinking": {
"Enabled": true,
"RemoveInnerClass": true,
"RemoveUnusedLabel": true,
"RemoveNOP": false,
"Exclusions": []
},
"KotlinOptimizer": {
"Enabled": false,
"RemoveMetadata": true,
"RemoveIntrinsics": true,
"IntrinsicsRemoval": [
"checkExpressionValueIsNotNull",
"checkNotNullExpressionValue",
"checkReturnedValueIsNotNull",
"checkFieldIsNotNull",
"checkParameterIsNotNull",
"checkNotNullParameter"
],
"IntrinsicsExclusions": [],
"MetadataExclusions": []
},
"StringEncrypt": {
"Enabled": true,
"Intensity": 4,
"Exclusions": [
"io/github/thetrouper/sentinel/data/config/",
"io/github/thetrouper/sentinel/data/cmdblocks/"
]
},
"NumberEncrypt": {
"Enabled": true,
"FloatingPoint": true,
"Intensity": 2,
"Exclusions": [
"io/github/thetrouper/sentinel/data/config/",
"io/github/thetrouper/sentinel/data/cmdblocks/"
]
},
"ScrambleTransformer": {
"Enabled": true,
"Intensity": 1,
"RandomName": true,
"RedirectGetStatic": true,
"RedirectSetStatic": true,
"RedirectGetValue": true,
"RedirectSetField": true,
"GenerateOuterClass": false,
"ExcludedClasses": [],
"ExcludedFieldName": [],
"NativeDownCalls": true,
"NativeUpCalls": false
},
"NativeCandidate": {
"Enabled": false,
"NativeAnnotation": "Lnet/spartanb312/example/Native;",
"UpCallLimit": 0,
"Exclusions": []
},
"LocalVariableRename": {
"Enabled": true,
"Dictionary": "Alphabet",
"ThisReference": false
},
"MethodRename": {
"Enabled": true,
"Dictionary": "Alphabet",
"HeavyOverloads": true,
"RandomKeywordPrefix": true,
"Prefix": "INEL_",
"Exclusion": [
"io/github/thetrouper/sentinel/data/config/",
"io/github/thetrouper/sentinel/data/cmdblocks/"
],
"ExcludedName": []
},
"FieldRename": {
"Enabled": true,
"Dictionary": "Alphabet",
"RandomKeywordPrefix": true,
"Prefix": "SENT_",
"Exclusion": [
"io/github/thetrouper/sentinel/data/config/",
"io/github/thetrouper/sentinel/data/cmdblocks/"
],
"ExcludedName": []
},
"ClassRename": {
"Enabled": true,
"Dictionary": "Alphabet",
"Parent": "sentinel/",
"Prefix": "SENTINEL_",
"CorruptedName": false,
"CorruptedNameExclusions": [],
"ManifestReplace": [
"Main-Class"
],
"PluginMainReplace": false,
"BungeeMainReplace": false,
"Exclusion": [
"io/github/thetrouper/sentinel/Sentinel",
"io/github/thetrouper/sentinel/data/config/",
"io/github/thetrouper/sentinel/data/cmdblocks/"
],
"MixinSupport": false,
"MixinDictionary": "Alphabet",
"MixinPackage": "net/spartanb312/client/mixins/",
"TargetMixinPackage": "net/spartanb312/obf/mixins/",
"MixinFile": "mixins.example.json",
"RefmapFile": "mixins.example.refmap.json"
},
"ShuffleMembers": {
"Enabled": true,
"Methods": true,
"Fields": true,
"Annotations": false
},
"Watermark": {
"Enabled": false,
"Watermark Message": "COPYRIGHT_C_SENTINEL_2024"
}
}

190
obf/config.json Normal file
View File

@@ -0,0 +1,190 @@
{
"Settings": {
"Input": "/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libs/Sentinel-0.2.6.jar",
"Output": "/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libs/Sentinel-0.2.6-beta-reobf.jar",
"Libraries": [
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/gson-2.10.1.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/ProtocolLib-5.1.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/adventure-api-4.15.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/adventure-key-4.15.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/adventure-text-logger-slf4j-4.15.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/adventure-text-minimessage-4.15.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/adventure-text-serializer-gson-4.15.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/adventure-text-serializer-json-4.15.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/adventure-text-serializer-legacy-4.15.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/adventure-text-serializer-plain-4.15.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/annotations-24.1.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/bungeecord-chat-1.20-R0.1.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/checker-qual-3.33.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/error_prone_annotations-2.18.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/examination-api-1.3.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/examination-string-1.3.0.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/failureaccess-1.0.1.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/fastutil-8.5.6.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/gson-2.10.1.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/guava-32.1.2-jre.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/j2objc-annotations-2.8.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/javax.inject-1.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/joml-1.10.5.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/json-simple-1.1.1.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/jsr305-3.0.2.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/org.eclipse.sisu.inject-0.9.0.M2.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/PDK-1.3.4.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/plexus-interpolation-1.26.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/plexus-utils-3.5.1.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/snakeyaml-2.2.jar",
"/run/media/trouper/1TB drive/IJ/IdeaProjects/Sentinel/build/libraries/spigot-api-1.20.2-R0.1-SNAPSHOT.jar"
],
"Exclusions": [
"com/google/gson/",
"io/github/itzispyder/"
],
"GenerateRemap": true,
"RemapOutput": "mappings.json",
"ParallelProcessing": true,
"CustomDictionary": [],
"DictionaryStartIndex": 0,
"CorruptOutput": false,
"FileRemovePrefix": [],
"FileRemoveSuffix": []
},
"AntiDebug": {
"Enabled": true,
"SourceDebug": true,
"LineDebug": true,
"RenameSourceDebug": true,
"SourceNames": [
"protected-by-redactor.java",
"COPYRIGHT_SENTINEL_ANTINUKE_2024"
]
},
"Shrinking": {
"Enabled": true,
"RemoveInnerClass": true,
"RemoveUnusedLabel": true,
"RemoveNOP": false,
"Exclusions": []
},
"KotlinOptimizer": {
"Enabled": false,
"RemoveMetadata": true,
"RemoveIntrinsics": true,
"IntrinsicsRemoval": [
"checkExpressionValueIsNotNull",
"checkNotNullExpressionValue",
"checkReturnedValueIsNotNull",
"checkFieldIsNotNull",
"checkParameterIsNotNull",
"checkNotNullParameter"
],
"IntrinsicsExclusions": [],
"MetadataExclusions": []
},
"StringEncrypt": {
"Enabled": true,
"Intensity": 6,
"Exclusions": [
"io/github/thetrouper/sentinel/data/config/",
"io/github/thetrouper/sentinel/data/cmdblocks/"
]
},
"NumberEncrypt": {
"Enabled": true,
"FloatingPoint": true,
"Intensity": 2,
"Exclusions": [
"io/github/thetrouper/sentinel/data/config/",
"io/github/thetrouper/sentinel/data/cmdblocks/"
]
},
"ScrambleTransformer": {
"Enabled": true,
"Intensity": 1,
"RandomName": true,
"RedirectGetStatic": true,
"RedirectSetStatic": true,
"RedirectGetValue": true,
"RedirectSetField": true,
"GenerateOuterClass": false,
"ExcludedClasses": [
"io/github/thetrouper/sentinel/data/config/",
"io/github/thetrouper/sentinel/data/cmdblocks/"
],
"ExcludedFieldName": [],
"NativeDownCalls": true,
"NativeUpCalls": false
},
"NativeCandidate": {
"Enabled": false,
"NativeAnnotation": "Lnet/spartanb312/example/Native;",
"UpCallLimit": 0,
"Exclusions": []
},
"LocalVariableRename": {
"Enabled": true,
"Dictionary": "Alphabet",
"ThisReference": false
},
"MethodRename": {
"Enabled": true,
"Dictionary": "Alphabet",
"HeavyOverloads": true,
"RandomKeywordPrefix": true,
"Prefix": "INEL_",
"Exclusion": [
"io/github/thetrouper/sentinel/data/config/",
"io/github/thetrouper/sentinel/data/cmdblocks/"
],
"ExcludedName": []
},
"FieldRename": {
"Enabled": true,
"Dictionary": "Alphabet",
"RandomKeywordPrefix": true,
"Prefix": "SENT_",
"Exclusion": [
"io/github/thetrouper/sentinel/data/config/",
"io/github/thetrouper/sentinel/data/cmdblocks/"
],
"ExcludedName": []
},
"ClassRename": {
"Enabled": true,
"Dictionary": "Alphabet",
"Parent": "sentinel/",
"Prefix": "SENTINEL_",
"CorruptedName": false,
"CorruptedNameExclusions": [
"io/github/thetrouper/sentinel/data/config/",
"io/github/thetrouper/sentinel/data/cmdblocks/",
"io/github/thetrouper/sentinel/Sentinel"
],
"ManifestReplace": [
"Main-Class"
],
"PluginMainReplace": false,
"BungeeMainReplace": false,
"Exclusion": [
"io/github/thetrouper/sentinel/Sentinel",
"io/github/thetrouper/sentinel/data/config/",
"io/github/thetrouper/sentinel/data/cmdblocks/"
],
"MixinSupport": false,
"MixinDictionary": "Alphabet",
"MixinPackage": "net/spartanb312/client/mixins/",
"TargetMixinPackage": "net/spartanb312/obf/mixins/",
"MixinFile": "mixins.example.json",
"RefmapFile": "mixins.example.refmap.json"
},
"ShuffleMembers": {
"Enabled": true,
"Methods": true,
"Fields": true,
"Annotations": false
},
"Watermark": {
"Enabled": false,
"Watermark Message": "COPYRIGHT_C_SENTINEL_2024"
}
}

BIN
obf/grunt-1.5.7.jar Normal file

Binary file not shown.

1952
obf/mappings.json Normal file

File diff suppressed because it is too large Load Diff

45
server/.console_history Normal file
View File

@@ -0,0 +1,45 @@
1708373976810:pl
1708373978004:ver
1708374489646:pl
1708374572344:pm reload Sentinel
1708374580860:pm enable Sentinel
1708374591684:pl
1708374596888:pluginmanager help
1708374599486:pm help
1708374632136:pluginmanager enable sentinel
1708374972427:restart
1708374991352:pl
1708375083255:pm reload Sentinel
1708375105137:pluginmanager reload sentinel
1708375334858:op obvWolf
1708375412994:pluginmanager reload sentinel
1708375622547:stop
1708450962635:pm unload Sentinel
1708450972259:pluginmanager unload Sentinel
1708450992719:pluginmanager load Sentinel
1708451072350:pluginmanager unload Sentinel
1708451092498:pluginmanager load Sentinel
1708453624766:pluginmanager unload Sentinel
1708453645115:pluginmanager load Sentinel
1708453709199:pluginmanager unload Sentinel
1708453730437:pluginmanager load Sentinel
1708453816045:pluginmanager reload Sentinel
1708453975527:pluginmanager load Sentinel
1708453979810:pluginmanager unload Sentinel
1708453996298:pluginmanager load Sentinel
1708454059604:pluginmanager reload Sentinel
1708454261102:pluginmanager unload Sentinel
1708454278800:pluginmanager reload Sentinel
1708454282588:pluginmanager load Sentinel
1708454421234:pluginmanager unload Sentinel
1708540859004:pm unload Sentinel
1708540865992:pluginmanager unload Sentinel
1708540875152:pluginmanager load Sentinel
1708540928653:pluginmanager reload Sentinel
1708540944527:stop
1708547331634:pm unload Sentinel
1708547340631:pluginmanager unload Sentinel
1708547378077:pluginmanager load Sentinel
1708547427133:pluginmanager unload Sentinel
1708547447159:pluginmanager load Sentinel
1708549617223:stop

1
server/banned-ips.json Normal file
View File

@@ -0,0 +1 @@
[]

View File

@@ -0,0 +1 @@
[]

32
server/bukkit.yml Normal file
View File

@@ -0,0 +1,32 @@
settings:
allow-end: true
warn-on-overload: true
permissions-file: permissions.yml
update-folder: update
plugin-profiling: false
connection-throttle: 4000
query-plugins: true
deprecated-verbose: default
shutdown-message: Server closed
minimum-api: none
use-map-color-cache: true
spawn-limits:
monsters: 70
animals: 10
water-animals: 5
water-ambient: 20
water-underground-creature: 5
axolotls: 5
ambient: 15
chunk-gc:
period-in-ticks: 600
ticks-per:
animal-spawns: 400
monster-spawns: 1
water-spawns: 1
water-ambient-spawns: 1
water-underground-creature-spawns: 1
axolotl-spawns: 1
ambient-spawns: 1
autosave: 6000
aliases: now-in-commands.yml

BIN
server/cache/mojang_1.20.4.jar vendored Normal file

Binary file not shown.

5
server/commands.yml Normal file
View File

@@ -0,0 +1,5 @@
command-block-overrides: []
ignore-vanilla-permissions: false
aliases:
icanhasbukkit:
- version $1-

View File

@@ -0,0 +1,129 @@
# This is the global configuration file for Paper.
# As you can see, there's a lot to configure. Some options may impact gameplay, so use
# with caution, and make sure you know what each option does before configuring.
#
# If you need help with the configuration or have any questions related to Paper,
# join us in our Discord or check the docs page.
#
# The world configuration options have been moved inside
# their respective world folder. The files are named paper-world.yml
#
# Docs: https://docs.papermc.io/
# Discord: https://discord.gg/papermc
# Website: https://papermc.io/
_version: 29
block-updates:
disable-chorus-plant-updates: false
disable-mushroom-block-updates: false
disable-noteblock-updates: false
disable-tripwire-updates: false
chunk-loading-advanced:
auto-config-send-distance: true
player-max-concurrent-chunk-generates: 0
player-max-concurrent-chunk-loads: 0
chunk-loading-basic:
player-max-chunk-generate-rate: -1.0
player-max-chunk-load-rate: 100.0
player-max-chunk-send-rate: 75.0
chunk-system:
gen-parallelism: default
io-threads: -1
worker-threads: -1
collisions:
enable-player-collisions: true
send-full-pos-for-hard-colliding-entities: true
commands:
fix-target-selector-tag-completion: true
suggest-player-names-when-null-tab-completions: true
time-command-affects-all-worlds: false
console:
enable-brigadier-completions: true
enable-brigadier-highlighting: true
has-all-permissions: false
item-validation:
book:
author: 8192
page: 16384
title: 8192
book-size:
page-max: 2560
total-multiplier: 0.98
display-name: 8192
lore-line: 8192
resolve-selectors-in-books: false
logging:
deobfuscate-stacktraces: true
messages:
kick:
authentication-servers-down: <lang:multiplayer.disconnect.authservers_down>
connection-throttle: Connection throttled! Please wait before reconnecting.
flying-player: <lang:multiplayer.disconnect.flying>
flying-vehicle: <lang:multiplayer.disconnect.flying>
no-permission: <red>I'm sorry, but you do not have permission to perform this command.
Please contact the server administrators if you believe that this is in error.
use-display-name-in-quit-message: false
misc:
chat-threads:
chat-executor-core-size: -1
chat-executor-max-size: -1
compression-level: default
fix-entity-position-desync: true
load-permissions-yml-before-plugins: true
max-joins-per-tick: 5
region-file-cache-size: 256
strict-advancement-dimension-check: false
use-alternative-luck-formula: false
use-dimension-type-for-custom-spawners: false
packet-limiter:
all-packets:
action: KICK
interval: 7.0
max-packet-rate: 500.0
kick-message: <red><lang:disconnect.exceeded_packet_rate>
overrides:
ServerboundPlaceRecipePacket:
action: DROP
interval: 4.0
max-packet-rate: 5.0
player-auto-save:
max-per-tick: -1
rate: -1
proxies:
bungee-cord:
online-mode: true
proxy-protocol: false
velocity:
enabled: false
online-mode: false
secret: ''
scoreboards:
save-empty-scoreboard-teams: false
track-plugin-scoreboards: false
spam-limiter:
incoming-packet-threshold: 300
recipe-spam-increment: 1
recipe-spam-limit: 20
tab-spam-increment: 1
tab-spam-limit: 500
timings:
enabled: true
hidden-config-entries:
- database
- proxies.velocity.secret
history-interval: 300
history-length: 3600
server-name: Unknown Server
server-name-privacy: false
url: https://timings.aikar.co/
verbose: true
unsupported-settings:
allow-grindstone-overstacking: false
allow-headless-pistons: false
allow-permanent-block-break-exploits: false
allow-piston-duplication: false
compression-format: ZLIB
perform-username-validation: true
watchdog:
early-warning-delay: 10000
early-warning-every: 5000

View File

@@ -0,0 +1,307 @@
# This is the world defaults configuration file for Paper.
# As you can see, there's a lot to configure. Some options may impact gameplay, so use
# with caution, and make sure you know what each option does before configuring.
#
# If you need help with the configuration or have any questions related to Paper,
# join us in our Discord or check the docs page.
#
# Configuration options here apply to all worlds, unless you specify overrides inside
# the world-specific config file inside each world folder.
#
# Docs: https://docs.papermc.io/
# Discord: https://discord.gg/papermc
# Website: https://papermc.io/
_version: 30
anticheat:
anti-xray:
enabled: false
engine-mode: 1
hidden-blocks:
- copper_ore
- deepslate_copper_ore
- raw_copper_block
- gold_ore
- deepslate_gold_ore
- iron_ore
- deepslate_iron_ore
- raw_iron_block
- coal_ore
- deepslate_coal_ore
- lapis_ore
- deepslate_lapis_ore
- mossy_cobblestone
- obsidian
- chest
- diamond_ore
- deepslate_diamond_ore
- redstone_ore
- deepslate_redstone_ore
- clay
- emerald_ore
- deepslate_emerald_ore
- ender_chest
lava-obscures: false
max-block-height: 64
replacement-blocks:
- stone
- oak_planks
- deepslate
update-radius: 2
use-permission: false
obfuscation:
items:
hide-durability: false
hide-itemmeta: false
hide-itemmeta-with-visual-effects: false
chunks:
auto-save-interval: default
delay-chunk-unloads-by: 10s
entity-per-chunk-save-limit:
arrow: -1
ender_pearl: -1
experience_orb: -1
fireball: -1
small_fireball: -1
snowball: -1
fixed-chunk-inhabited-time: -1
flush-regions-on-save: false
max-auto-save-chunks-per-tick: 24
prevent-moving-into-unloaded-chunks: false
collisions:
allow-player-cramming-damage: false
allow-vehicle-collisions: true
fix-climbing-bypassing-cramming-rule: false
max-entity-collisions: 8
only-players-collide: false
command-blocks:
force-follow-perm-level: true
permissions-level: 2
entities:
armor-stands:
do-collision-entity-lookups: true
tick: true
behavior:
allow-spider-world-border-climbing: true
baby-zombie-movement-modifier: 0.5
disable-chest-cat-detection: false
disable-creeper-lingering-effect: false
disable-player-crits: false
door-breaking-difficulty:
husk:
- HARD
vindicator:
- NORMAL
- HARD
zombie:
- HARD
zombie_villager:
- HARD
zombified_piglin:
- HARD
ender-dragons-death-always-places-dragon-egg: false
experience-merge-max-value: -1
mobs-can-always-pick-up-loot:
skeletons: false
zombies: false
nerf-pigmen-from-nether-portals: false
parrots-are-unaffected-by-player-movement: false
phantoms-do-not-spawn-on-creative-players: true
phantoms-only-attack-insomniacs: true
phantoms-spawn-attempt-max-seconds: 119
phantoms-spawn-attempt-min-seconds: 60
piglins-guard-chests: true
pillager-patrols:
disable: false
spawn-chance: 0.2
spawn-delay:
per-player: false
ticks: 12000
start:
day: 5
per-player: false
player-insomnia-start-ticks: 72000
should-remove-dragon: false
spawner-nerfed-mobs-should-jump: false
zombie-villager-infection-chance: default
zombies-target-turtle-eggs: true
entities-target-with-follow-range: false
markers:
tick: true
mob-effects:
immune-to-wither-effect:
wither: true
wither-skeleton: true
spiders-immune-to-poison-effect: true
undead-immune-to-certain-effects: true
sniffer:
boosted-hatch-time: default
hatch-time: default
spawning:
all-chunks-are-slime-chunks: false
alt-item-despawn-rate:
enabled: false
items:
cobblestone: 300
count-all-mobs-for-spawning: false
creative-arrow-despawn-rate: default
despawn-ranges:
ambient:
hard: 128
soft: 32
axolotls:
hard: 128
soft: 32
creature:
hard: 128
soft: 32
misc:
hard: 128
soft: 32
monster:
hard: 128
soft: 32
underground_water_creature:
hard: 128
soft: 32
water_ambient:
hard: 64
soft: 32
water_creature:
hard: 128
soft: 32
disable-mob-spawner-spawn-egg-transformation: false
duplicate-uuid:
mode: SAFE_REGEN
safe-regen-delete-range: 32
filter-bad-tile-entity-nbt-from-falling-blocks: true
filtered-entity-tag-nbt-paths:
- Pos
- Motion
- SleepingX
- SleepingY
- SleepingZ
iron-golems-can-spawn-in-air: false
monster-spawn-max-light-level: default
non-player-arrow-despawn-rate: default
per-player-mob-spawns: true
scan-for-legacy-ender-dragon: true
skeleton-horse-thunder-spawn-chance: default
slime-spawn-height:
slime-chunk:
maximum: 40.0
surface-biome:
maximum: 70.0
minimum: 50.0
spawn-limits:
ambient: -1
axolotls: -1
creature: -1
monster: -1
underground_water_creature: -1
water_ambient: -1
water_creature: -1
wandering-trader:
spawn-chance-failure-increment: 25
spawn-chance-max: 75
spawn-chance-min: 25
spawn-day-length: 24000
spawn-minute-length: 1200
wateranimal-spawn-height:
maximum: default
minimum: default
tracking-range-y:
animal: default
display: default
enabled: false
misc: default
monster: default
other: default
player: default
environment:
disable-explosion-knockback: false
disable-ice-and-snow: false
disable-teleportation-suffocation-check: false
disable-thunder: false
fire-tick-delay: 30
frosted-ice:
delay:
max: 40
min: 20
enabled: true
generate-flat-bedrock: false
nether-ceiling-void-damage-height: disabled
optimize-explosions: false
portal-create-radius: 16
portal-search-radius: 128
portal-search-vanilla-dimension-scaling: true
treasure-maps:
enabled: true
find-already-discovered:
loot-tables: default
villager-trade: false
water-over-lava-flow-speed: 5
feature-seeds:
generate-random-seeds-for-all: false
fishing-time-range:
maximum: 600
minimum: 100
fixes:
disable-unloaded-chunk-enderpearl-exploit: true
falling-block-height-nerf: disabled
fix-items-merging-through-walls: false
prevent-tnt-from-moving-in-water: false
split-overstacked-loot: true
tnt-entity-height-nerf: disabled
hopper:
cooldown-when-full: true
disable-move-event: false
ignore-occluding-blocks: false
lootables:
auto-replenish: false
max-refills: -1
refresh-max: 2d
refresh-min: 12h
reset-seed-on-fill: true
restrict-player-reloot: true
restrict-player-reloot-time: disabled
maps:
item-frame-cursor-limit: 128
item-frame-cursor-update-interval: 10
max-growth-height:
bamboo:
max: 16
min: 11
cactus: 3
reeds: 3
misc:
disable-end-credits: false
disable-relative-projectile-velocity: false
disable-sprint-interruption-on-attack: false
light-queue-size: 20
max-leash-distance: 10.0
redstone-implementation: VANILLA
shield-blocking-delay: 5
show-sign-click-command-failure-msgs-to-player: false
update-pathfinding-on-block-update: true
scoreboards:
allow-non-player-entities-on-scoreboards: true
use-vanilla-world-scoreboard-name-coloring: false
spawn:
allow-using-signs-inside-spawn-protection: false
keep-spawn-loaded: true
keep-spawn-loaded-range: 10
tick-rates:
behavior:
villager:
validatenearbypoi: -1
container-update: 1
dry-farmland: 1
grass-spread: 1
mob-spawner: 1
sensor:
villager:
secondarypoisensor: 40
wet-farmland: 1
unsupported-settings:
fix-invulnerable-end-crystal-exploit: true

1
server/eula.txt Normal file
View File

@@ -0,0 +1 @@
eula=true

0
server/help.yml Normal file
View File

Some files were not shown because too many files have changed in this diff Show More