MCPcopy Index your code
hub / github.com/MoreMcmeta/core

github.com/MoreMcmeta/core @v1.21-4.5.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.21-4.5.0 ↗ · + Follow
2,491 symbols 11,588 edges 169 files 635 documented · 25%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

MoreMcmeta

MoreMcmeta logo

Animate almost any texture with more options. Texture configuration API.

This means: * more possibilities for resource packs * a familiar animation format * not invasive—better compatibility with other mods

Mob, GUI, shadow, moon, and enchantment glint examples

Are You in the Right Place?

If you're here to make a suggestion or bug report, find out how MoreMcmeta works, or contribute to its development, you're in the right place!

If you're looking to download MoreMcmeta or find out more about it, check out the CurseForge page.

For All Contributors

The Contributing Guide explains how to submit a suggestion, file a bug report, or create a pull request. That page includes all types of contributors, not just developers, and may be a helpful starting point.

The Code of Conduct describes acceptable vs. inappropriate behavior in this repository. In short, use common sense.

For Developers

Build

MoreMcmeta uses Gradle and the Architectury Plugin for cross-mod loader builds. However, it does not use the Architectury API. There simply isn't enough boilerplate code that MoreMcmeta needs to justify another dependency. JUnit is the unit testing framework.

If you've set up a modded Minecraft environment before, MoreMcmeta is not much different. The main difference is that you'll need to provide credentials to download MoreMcmeta Maven packages from GitHub Packages. Gradle will do most of the work after you import the project.

There's a lot of build tasks, but the important ones are the build and test tasks under common (cross-loader), forge, and fabric. These correspond to MoreMcmeta's three source directories/Gradle subprojects.

  • The build task generates a finished mod in fabric/build/libs or forge/build/libs.
  • The test task runs unit tests for the given directory. The best way to view code coverage is to run the task for all subprojects and add the results together.

Run

After you import the Gradle project, the Architectury plugin should automatically generate run configurations for the client and server on Forge and Fabric. MoreMcmeta is a client-sided mod, but the server tasks are important to verify that it does not crash a dedicated server.

You can also use the runClient Gradle tasks if the run configurations do not appear.

Release

View built releases at the Releases page. Generally, this page has exactly the same versions as CurseForge. Stable development builds may be there in the future.

Extension points exported contracts — how you extend this code

CustomTickable (Interface)
A custom copy of Minecraft's net.minecraft.client.renderer.texture.Tickable interface to prevent textures from b [10 implementers]
common/src/main/java/io/github/moremcmeta/moremcmeta/impl/client/texture/CustomTickable.java
LoadingOverlayAccessor (Interface)
Allows retrieval of the ReloadInstance from the LoadingOverlay. @author soir20
fabric/src/main/java/io/github/moremcmeta/moremcmeta/fabric/impl/client/mixin/LoadingOverlayAccessor.java
TextureManagerAccessor (Interface)
Allows the TextureManager's texture list to be accessed. @author soir20
forge/src/main/java/io/github/moremcmeta/moremcmeta/forge/impl/client/mixin/TextureManagerAccessor.java
ImageReader (Interface)
Reads an image from an InputStream. @param type of image read @author soir20 [6 implementers]
common/src/main/java/io/github/moremcmeta/moremcmeta/impl/client/io/ImageReader.java
SpriteAccessor (Interface)
Allows the TextureAtlasSprite's mipmaps to be accessed. @author soir20
fabric/src/main/java/io/github/moremcmeta/moremcmeta/fabric/impl/client/mixin/SpriteAccessor.java
TextureReader (Interface)
Reads a texture. @param @author soir20 [6 implementers]
common/src/main/java/io/github/moremcmeta/moremcmeta/impl/client/io/TextureReader.java
PackRepositoryAccessor (Interface)
Allows retrieval of the RepositorySources in the PackRepository. @author soir20
fabric/src/main/java/io/github/moremcmeta/moremcmeta/fabric/impl/client/mixin/PackRepositoryAccessor.java
ResourceCollection (Interface)
A container for resources. @author soir20 [6 implementers]
common/src/main/java/io/github/moremcmeta/moremcmeta/impl/client/resource/ResourceCollection.java

Core symbols most depended-on inside this repo

of
called by 1009
common/src/main/java/io/github/moremcmeta/moremcmeta/api/math/Area.java
add
called by 576
common/src/main/java/io/github/moremcmeta/moremcmeta/impl/client/texture/EventDrivenTexture.java
get
called by 502
common/src/main/java/io/github/moremcmeta/moremcmeta/impl/client/resource/StreamSource.java
parse
called by 494
common/src/main/java/io/github/moremcmeta/moremcmeta/api/client/metadata/MetadataParser.java
pack
called by 479
common/src/main/java/io/github/moremcmeta/moremcmeta/api/math/Point.java
put
called by 212
common/src/main/java/io/github/moremcmeta/moremcmeta/impl/client/resource/TextureLoader.java
size
called by 212
common/src/main/java/io/github/moremcmeta/moremcmeta/api/client/metadata/MetadataView.java
color
called by 146
common/src/main/java/io/github/moremcmeta/moremcmeta/api/client/texture/ColorTransform.java

Shape

Method 2,283
Class 162
Interface 46

Languages

Java100%

Modules by API surface

common/src/test/java/io/github/moremcmeta/moremcmeta/api/client/metadata/JsonMetadataViewTest.java649 symbols
common/src/test/java/io/github/moremcmeta/moremcmeta/impl/client/texture/CloseableImageFrameTest.java97 symbols
common/src/test/java/io/github/moremcmeta/moremcmeta/impl/client/texture/EventDrivenTextureTest.java71 symbols
common/src/test/java/io/github/moremcmeta/moremcmeta/impl/client/resource/CombinedMetadataViewTest.java71 symbols
common/src/test/java/io/github/moremcmeta/moremcmeta/impl/client/io/TextureDataReaderTest.java63 symbols
common/src/test/java/io/github/moremcmeta/moremcmeta/impl/client/resource/TextureLoaderTest.java60 symbols
common/src/test/java/io/github/moremcmeta/moremcmeta/impl/client/adapter/PackResourcesAdapterTest.java59 symbols
common/src/test/java/io/github/moremcmeta/moremcmeta/impl/client/resource/SpriteFrameSizeFixPackTest.java52 symbols
common/src/test/java/io/github/moremcmeta/moremcmeta/impl/client/texture/ColorBlenderTest.java50 symbols
forge/src/test/java/io/github/moremcmeta/moremcmeta/forge/impl/client/reflection/AnnotatedClassLoaderTest.java41 symbols
common/src/test/java/io/github/moremcmeta/moremcmeta/impl/client/io/TextureDataTest.java39 symbols
common/src/main/java/io/github/moremcmeta/moremcmeta/impl/client/texture/EventDrivenTexture.java39 symbols

For agents

$ claude mcp add core \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact