Tags
Creators
Details
Licensed GPL-3.0-only
Published 3 months ago
Updated 2 days ago
All versions
1.0.0
Release
ClassySK 1.0.03 months ago 7
Compatibility
Minecraft: Java Edition
26.2
26.1.x
1.21.11
Platform
Paper
Required content
Any compatible version
Changes
1.0.0 Full Release
Changes since the last pre-release
New instancenow supports nested sections. For example:
set {_instance} to new instance of Example:
myField: new instance of Example:
otherField: 1
otherField: 2
- Methods now support keyed expressions for list arguments
- Runtime integrity check for field/method calls: prints runtime errors if the signature at runtime isn't assignable to the type reported at parse time
- Class de-registration now happens cleanly every time the structure is unloaded, no longer needing a separate clean-up listener and reducing the chance of stale classes being left in server memory. Static fields and tracked instances are now stored independently.
Class Wrapperhas been changed toClass Referencesince it no longer actually wraps an instance, this has been reflected in patterns. The class reference object is planned to be used in future updates as an entry point to reflection.- Minor method optimizations
Features included in this version
- Fields and Methods (can be static or non-static)
- Public/Private access modifiers
- Serialization for instances (can be saved after restarts)
- Parse time instance type guessing (with optional class hints)
- Ability to get the class of an instance and check what type it is
- A new instance section where you can specify initial values for fields
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:DL6BwgfK:5OPDaP9q"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:DL6BwgfK:5OPDaP9q"
}
