Complete private authentication, server integrations and activity reporting
Add Fabric/Forge version builds and Paper integration, preserve permanent player identities across renames, harden session authorization, and surface privacy-conscious launcher/server activity in the panel.
This commit is contained in:
commit
a1f19e86c6
74 files changed
+2108
-95
No files matched your search
@@ -0,0 +1,44 @@
|
||||
buildscript {
|
||||
repositories {
|
||||
maven { url = 'https://maven.minecraftforge.net/' }
|
||||
mavenCentral()
|
||||
gradlePluginPortal()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'net.minecraftforge.gradle:ForgeGradle:6.0.42'
|
||||
classpath 'org.spongepowered:mixingradle:0.7.38'
|
||||
}
|
||||
}
|
||||
apply plugin: 'net.minecraftforge.gradle'
|
||||
apply plugin: 'org.spongepowered.mixin'
|
||||
repositories {
|
||||
exclusiveContent {
|
||||
forRepository { maven { url = 'https://libraries.minecraft.net/' } }
|
||||
filter { includeGroup 'org.lwjgl' }
|
||||
}
|
||||
}
|
||||
def mc = providers.gradleProperty('mcVersion').getOrElse('1.21.1')
|
||||
def forgeVersions = ['1.20.1': '47.4.10', '1.21.1': '52.1.0']
|
||||
if (!forgeVersions.containsKey(mc)) throw new GradleException('Unsupported Minecraft version')
|
||||
java.sourceCompatibility = JavaVersion.toVersion(mc == '1.20.1' ? 17 : 21)
|
||||
java.targetCompatibility = java.sourceCompatibility
|
||||
minecraft { mappings channel: 'official', version: mc }
|
||||
dependencies {
|
||||
minecraft "net.minecraftforge:forge:${mc}-${forgeVersions[mc]}"
|
||||
implementation project(':common')
|
||||
annotationProcessor 'org.spongepowered:mixin:0.8.5:processor'
|
||||
}
|
||||
sourceSets.main.java.srcDirs += ['../minecraft/src/main/java', "../minecraft/src/${mc}/java"]
|
||||
sourceSets.main.resources.srcDirs += ['../minecraft/src/main/resources']
|
||||
apply from: '../minecraft/build-info.gradle'
|
||||
mixin { add sourceSets.main, 'scopenet.refmap.json'; config 'scopenet.mixins.json' }
|
||||
processResources {
|
||||
inputs.properties(version: project.version, mc: mc)
|
||||
filesMatching('META-INF/mods.toml') { expand(version: project.version, mc: mc, forge: forgeVersions[mc].split('\\.')[0]) }
|
||||
}
|
||||
base.archivesName = "scopenet-forge-${mc}"
|
||||
jar {
|
||||
from project(':common').sourceSets.main.output
|
||||
manifest { attributes('MixinConfigs': 'scopenet.mixins.json') }
|
||||
finalizedBy 'reobfJar'
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
plugins { id 'net.minecraftforge.gradle' version '7.0.17' }
|
||||
def mc = providers.gradleProperty('mcVersion').get()
|
||||
def forgeVersions = ['26.1.2': '64.1.0', '26.2': '65.1.0', '26.3': '66.0.6']
|
||||
java.sourceCompatibility = JavaVersion.VERSION_25
|
||||
java.targetCompatibility = JavaVersion.VERSION_25
|
||||
repositories {
|
||||
minecraft.mavenizer(it)
|
||||
maven fg.forgeMaven
|
||||
maven fg.minecraftLibsMaven
|
||||
}
|
||||
dependencies {
|
||||
implementation minecraft.dependency("net.minecraftforge:forge:${mc}-${forgeVersions[mc]}")
|
||||
implementation project(':common')
|
||||
}
|
||||
sourceSets.main.java.srcDirs += ['../minecraft/src/main/java', '../minecraft/src/26/java']
|
||||
sourceSets.main.resources.srcDirs += ['../minecraft/src/main/resources']
|
||||
apply from: '../minecraft/build-info.gradle'
|
||||
processResources {
|
||||
inputs.properties(version: project.version, mc: mc)
|
||||
filesMatching('META-INF/mods.toml') { expand(version: project.version, mc: mc, forge: forgeVersions[mc].split('\\.')[0]) }
|
||||
filesMatching('scopenet.mixins.json') { filter { line -> line.contains('"refmap"') ? null : line } }
|
||||
}
|
||||
base.archivesName = "scopenet-forge-${mc}"
|
||||
jar {
|
||||
from project(':common').sourceSets.main.output
|
||||
manifest { attributes('MixinConfigs': 'scopenet.mixins.json') }
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package net.scopenet.forge;
|
||||
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
|
||||
@Mod("scopenet")
|
||||
public final class ScopenetForge {
|
||||
public ScopenetForge() {
|
||||
if (Boolean.getBoolean("scopenet.verifyMixins"))
|
||||
org.spongepowered.asm.mixin.MixinEnvironment.getCurrentEnvironment().audit();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
modLoader="javafml"
|
||||
loaderVersion="[${forge},)"
|
||||
license="All Rights Reserved"
|
||||
[[mods]]
|
||||
modId="scopenet"
|
||||
version="${version}"
|
||||
displayName="SCOPENET"
|
||||
displayTest="IGNORE_ALL_VERSION"
|
||||
description="Private authentication, access control and activity reporting for SCOPENET servers."
|
||||
[[dependencies.scopenet]]
|
||||
modId="forge"
|
||||
mandatory=true
|
||||
versionRange="[${forge},)"
|
||||
ordering="NONE"
|
||||
side="SERVER"
|
||||
[[dependencies.scopenet]]
|
||||
modId="minecraft"
|
||||
mandatory=true
|
||||
versionRange="[${mc}]"
|
||||
ordering="NONE"
|
||||
side="SERVER"
|
||||
Reference in new issue
Block a user