Home - LodestarMC/Lodestone GitHub Wiki
Overview
Lodestone is a utility library that bundles together all of the helpful code I've written or reused throughout my time in the modding scene. It contains features such as:
- A lightweight rendering system
- Static config initialization
- Simplified block entities & inventories
- A simple multiblock framework
- A networked and local screenshake implementation
- ...and various other utilities.
This library is effectively a collection of a bunch of random useful stuff that I needed in my other projects.
How this wiki works
I'm building this wiki based on priority and demand. If there's anything you'd like explained, feel free to ping me at any time. If I have time, I will update the wiki to accommodate. Over time, the wiki will contain documentation for everything in the library, with the most essential and frequently utilized features being prioritized.
Setup Guide
To use Lodestone in your mod, just add it like any other dependency. This can be done using the Blamejared Maven.
Forge
Note: On Forge, Lodestone requires Curios.
repositories {
mavenCentral()
maven {
name 'Curios maven'
url = "https://maven.theillusivec4.top/"
}
maven { url = 'https://maven.blamejared.com/' }
}
dependencies {
minecraft "net.minecraftforge:forge:${project.minecraftVersion}-${project.forgeVersion}"
implementation fg.deobf("team.lodestar.lodestone:lodestone:${minecraft_version}-${lodestone_version}")
//1.18.2 Example: implementation fg.deobf("team.lodestar.lodestone:lodestone:1.18.2-1.4.1.435")
//1.19.2 Example: implementation fg.deobf("team.lodestar.lodestone:lodestone:1.19.2-1.4.2.83")
//1.20.1 Example: implementation fg.deobf("team.lodestar.lodestone:lodestone:1.20.1-1.4.2.62")
compileOnly fg.deobf("top.theillusivec4.curios:curios-forge:${curios_version}+${minecraft_version}:api")
runtimeOnly fg.deobf("top.theillusivec4.curios:curios-forge:${curios_version}+${minecraft_version}")
}
Mixins
Lodestone utilizes mixins, so ensure your build.gradle
file includes the necessary plugin setup - or your game will refuse to launch.
buildscript {
repositories {
maven { url = 'https://files.minecraftforge.net/maven' }
maven { url = 'https://repo.spongepowered.org/repository/maven-public/' }
mavenCentral()
}
dependencies {
classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '5.1.+', changing: true
classpath 'org.spongepowered:mixingradle:0.7-SNAPSHOT'
}
}
apply plugin: 'net.minecraftforge.gradle'
apply plugin: 'eclipse'
apply plugin: 'maven-publish'
apply plugin: 'org.spongepowered.mixin'
This block should go at the very top of your build.gradle
. For more info, consult the Mixin wiki.
Fabric
On Fabric, Lodestone has a few more dependencies:
port_lib_version = 2.3.4+1.20.1
port_lib_modules = \
accessors,\
base,\
blocks,\
core,\
data,\
extensions,\
lazy_registration,\
model_generators,\
models,\
networking,\
tool_actions
repositories {
maven {url = 'https://maven.blamejared.com/' }
maven {url = "https://mvn.devos.one/releases/" }
maven {url = "https://api.modrinth.com/maven" }
maven {url = "https://maven.theillusivec4.top/"}
maven {url = "https://maven.jamieswhiteshirt.com/libs-release"}
maven {url = 'https://maven.ladysnake.org/releases'}
maven {url = "https://maven.terraformersmc.com/"}
}
dependencies {
modImplementation("team.lodestar.lodestone:lodestone:${project.minecraft_version}-${project.lodestone_version}-fabric")
//For this you also need the following
modImplementation("dev.onyxstudios.cardinal-components-api:cardinal-components-base:${project.cca_version}")
modImplementation("dev.onyxstudios.cardinal-components-api:cardinal-components-entity:${project.cca_version}")
modImplementation("dev.onyxstudios.cardinal-components-api:cardinal-components-world:${project.cca_version}")
modImplementation("dev.emi:trinkets:${project.trinkets_version}")
for (String module in port_lib_modules.split(",")) {
modImplementation("io.github.fabricators_of_create.Porting-Lib:$module:$port_lib_version")
}
modImplementation("com.jamieswhiteshirt:reach-entity-attributes:${project.rea_version}")
}
Documented Features
These are the features currently documented in this wiki: