Back to mods
SmithsCore project artwork

CurseForge · Minecraft mod

SmithsCore

Core dependency for all SmithsModding projects

Choose a version Pick your version below, then grab the matching file.

Quick answer

Which SmithsCore release should I use?

Updated 7 years ago
Latest stable file SmithsCore: 1.12.2-0.20.14-RELEASE
Game version 1.12.2
Loader Not required

SmithsCore: 1.12.2-0.20.14-RELEASE targets 1.12.2. The project page does not say whether this file belongs on the client, dedicated server, or both. No extra mods listed for this file.

Where it goes

Is SmithsCore required on the client, server, or both?

The project page does not say whether this file belongs on the client, dedicated server, or both.

Client Source doesn’t say
Dedicated server Source doesn’t say
Loader for this release No loader listed
Required install it here Optional supported, not mandatory Not supported do not install here Source doesn’t say do not assume

The source does not explicitly classify this release as client-only or server-only.

What else does SmithsCore: 1.12.2-0.20.14-RELEASE need?

SmithsCore: 1.12.2-0.20.14-RELEASE. Change the file and its required mods may change too.

No extra mods listed for this file

This file does not list any required mods. Do not add a library just because a different file uses it.

This file does not list any required or optional mods.

Before you install it

Add SmithsCore without breaking your instance.

Built for SmithsCore: 1.12.2-0.20.14-RELEASE. Pick another file and the loader, install side or required mods may change.

  1. 01

    Stick to this file

    Use SmithsCore: 1.12.2-0.20.14-RELEASE. It targets 1.12.2; another release may have different loader, side or dependency requirements.

  2. 02

    Bring the mods it needs

    This file does not list any required mods. Do not add a library just because a different file uses it.

  3. 03

    Put it on the correct side

    The project page does not say whether this file belongs on the client, dedicated server, or both.

  4. 04

    Pick the file you checked

    Use the “Get this file” button beside SmithsCore: 1.12.2-0.20.14-RELEASE. It opens that exact file at the source.

About this project

What does SmithsCore add?

Welcome to the CurseForge project page of SmithsCore , SmithsModding library of Choice!

What is SmithsCore:

SmithsCore is a mod you call a Library. It does not add anything you can see to the game directly, but it takes a lot of work away from us Modders. It was created when the members of the SmithsModding-Modding Team noticed that a lot of their mods had features under the hood of their respective mods that were very similar, like a modular GUI-System, saving ItemStacks in TileEntities to disk, synchronizing, and messaging between parts of their mods, and the mods themselves.

What it contains at this point:

  • A GUI-System that is based on components instead of Images.
    • It is capable of using scissoring to only render parts of components if they are obscured by their parents, or if an animation requires it.
    • It contains a complete animation system that makes sure that each component can manipulate itself.
    • It is capable of constructing both server and client side Tabbed GUIs, meaning that the server knows which tab of the GUI a player has open.
    • It keeps track of the Players watching a GUI.
    • It has the capability to show 'Ledgers', expanding tabs on the side of a GUI, that can contain additional information.
    • It has a JEI compatibility system build in that moves Items that would be in the way aside.
  • A common way of writing to disk and synchronising TileEntities.
  • An event driven messaging system that is not only capable of sending messages from one part of a mod to another, or between two mods but it also allows communication between the Client and the Server:
    • A Common event bus for messages that need to be shared no matter of the side they are relevant for.
    • A Client event bus for messages that are only relevant for the client side.
    • A Network event bus on which messages from the 'other side' arrive on.
  • A Structure system that allows storing data of Blocks and TileEntities that are part of a structure on a Dimension based level outside of its components, comparable to the Vanilla structure mechanics used for Monuments, Villages, Mineshafts etc. automatically synced between client and server.
  • A player manager that keeps track of all players that ever logged in to the Server.
    • It synchronizes the PlayerID and Name to the client to allow GUIs to display a UserName of a different Player if need be.
  • It has a custom model loader that allows multiple Items to use the same model file.
  • It has custom texture creation which not only generates a holographic texture for all registered textures, but it can also generate other custom textures if need be.
  • It has a system of displaying debug Information on the F3 screen when need be, or always if the game is started in Debug Mode.
  • It has a block model update notification system, allowing the server to notify the client that a vanilla model of a block needs to be updated, even when the block state did not change.
  • A path finding system that can be used for entities, structures and many other things.
  • A whole bunch of utility classes that sometimes just provide convenience methods or wrap other existing classes to provide them with more functionality, or works as a bridge between existing Java classes and Minecraft’s custom implementations.

What is still coming to SmithsCore:

Right now most of the required features are implemented, yet there are some systems that are missing and which we hope to implement in the future:

  • A customisable multi block system that extends the current structure system.
  • A friends system allowing a player to restrict the interaction with all supporting blocks and tile entities.

What to do if I want to use SmithsCore for my own mod as a modder:

We have a MavenRepo which you can use to download it as a dependency using you build.gradle file:

SmithsCore - MavenRepo

What to do if I find a bug that I think is caused by SmithsCore:

  1. Attempt to reproduce it. Are you not able to reproduce it? Sorry we cannot help you!
  2. If you are able reproduce the Bug, start the client in Debug mode, reproduce the Bug and copy the Log.
  3. Create a GitHub Issue under Issues!

Under NO circumstance post a log or stack trace in CurseForge, we will not process any bugs reported here! But if you have any questions, you can ALWAYS ask here or in IRC esper.net in #SmithsModding.

So how can I activate this aforementioned Debug mode?

Simple: Start your Minecraft instance with an additional Java parameter: -DSmithsModding.Dev=true.

Can I use this Mod in a ModPack:

Yes you can, as long as you give credit back to this page.

What is the license for this Mod:

GLGPL V3

Project description from CurseForge.

Pick your setup

SmithsCore by Minecraft version and loader

Choose the version and loader you play, then open the matching release.

2 available setups

Check the dependencies, then try the file in a copied instance before changing a world you care about.

Recent files

SmithsCore versions and loaders

50 of 50 releases match

Looking for an older file? The official CurseForge project page is in Resources.