MCPcopy Index your code
hub / github.com/APDevTeam/Movecraft

github.com/APDevTeam/Movecraft @8.0.0-a.9

Chat with this repo
repository ↗ · DeepWiki ↗ · release 8.0.0-a.9 ↗ · + Follow
1,447 symbols 4,935 edges 200 files 160 documented · 11%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Movecraft

Java CI

This is a maintained fork of Movecraft, which aims to add legacy version support as well as performance fixes.

Movecraft requires at least Java 13

Download

Public builds, as well as builds as old as v5.0 (for 1.9), are located on the Spigot forums.

Preliminary builds (including 1.14+ support), can be found on the releases tab.

Development builds can be found under the actions tab. Use at your own risk!

Legacy builds as old as v0.7.1 (for 1.0.0) can be found on the original Bukkit page.

Support

Please check the Wiki and FAQ pages before asking for help!

Github Issues

Discord

Development Environment

Movecraft uses multiple versions of the Spigot server software for legacy support. As such, you need to run BuildTools for several versions before building the plugin. It doesn't matter where you do this, but inside the Movecraft directory is probably a bad place. We recommend building Spigot 1.14.4 & 1.16.5 with Java 13 and Java 17 to build 1.17.1, 1.18.2 & 1.19.9. Alternatively, you can use GitHub codespaces and run the setup.sh script to build all the needed versions automatically.

java -jar BuildTools.jar --rev 1.14.4 --compile craftbukkit
java -jar BuildTools.jar --rev 1.16.5 --compile craftbukkit
java -jar BuildTools.jar --rev 1.17.1 --remapped
java -jar BuildTools.jar --rev 1.18.2 --remapped
java -jar BuildTools.jar --rev 1.19.1 --remapped

Once you have compiled CraftBukkit, it should continue to exist in your local maven repository, and thus you should need to compile each version at most one time. Once complete, run the following to build Movecraft through maven.

mvn -T 1C clean install

Compiled jars can be found in the /target directory.

Movecraft is released under the GNU General Public License V3.

Extension points exported contracts — how you extend this code

ObjectProperty (Interface)
(no doc) [10 implementers]
modules/api/src/main/java/net/countercraft/movecraft/craft/type/property/ObjectProperty.java
DetectionPredicate (Interface)
Represents a data carrying predicate, which can return a message depending on the success state of its evaluation @param
modules/Movecraft/src/main/java/net/countercraft/movecraft/processing/functions/DetectionPredicate.java
Property (Interface)
(no doc) [9 implementers]
modules/api/src/main/java/net/countercraft/movecraft/craft/type/property/Property.java
CraftSupplier (Interface)
Represents a function that accepts the outputs of detection and produces a Craft. @see QuadFunction
modules/Movecraft/src/main/java/net/countercraft/movecraft/processing/functions/CraftSupplier.java
PilotedCraft (Interface)
(no doc) [5 implementers]
modules/api/src/main/java/net/countercraft/movecraft/craft/PilotedCraft.java
TriadicPredicate (Interface)
(no doc)
modules/Movecraft/src/main/java/net/countercraft/movecraft/processing/functions/TriadicPredicate.java
MutableHitBox (Interface)
(no doc) [5 implementers]
modules/api/src/main/java/net/countercraft/movecraft/util/hitboxes/MutableHitBox.java
DyadicPredicate (Interface)
(no doc)
modules/Movecraft/src/main/java/net/countercraft/movecraft/processing/functions/DyadicPredicate.java

Core symbols most depended-on inside this repo

getType
called by 248
modules/api/src/main/java/net/countercraft/movecraft/craft/Craft.java
add
called by 194
modules/api/src/main/java/net/countercraft/movecraft/util/hitboxes/MutableHitBox.java
getWorld
called by 167
modules/api/src/main/java/net/countercraft/movecraft/craft/Craft.java
getInternationalisedString
called by 164
modules/Movecraft/src/main/java/net/countercraft/movecraft/localisation/I18nSupport.java
getHitBox
called by 160
modules/api/src/main/java/net/countercraft/movecraft/craft/Craft.java
get
called by 128
modules/api/src/main/java/net/countercraft/movecraft/util/Counter.java
getInstance
called by 128
modules/Movecraft/src/main/java/net/countercraft/movecraft/craft/CraftManager.java
contains
called by 117
modules/api/src/main/java/net/countercraft/movecraft/util/hitboxes/HitBox.java

Shape

Method 1,224
Class 187
Interface 29
Enum 7

Languages

Java100%

Modules by API surface

modules/api/src/main/java/net/countercraft/movecraft/craft/Craft.java61 symbols
modules/Movecraft/src/main/java/net/countercraft/movecraft/craft/BaseCraft.java54 symbols
modules/api/src/main/java/net/countercraft/movecraft/util/collections/LocationTrieSet.java37 symbols
modules/api/src/main/java/net/countercraft/movecraft/craft/type/TypeData.java35 symbols
modules/api/src/main/java/net/countercraft/movecraft/util/hitboxes/HitBox.java30 symbols
modules/api/src/main/java/net/countercraft/movecraft/util/hitboxes/BitmapHitBox.java28 symbols
modules/api/src/main/java/net/countercraft/movecraft/util/hitboxes/SetHitBox.java26 symbols
modules/Movecraft/src/main/java/net/countercraft/movecraft/craft/CraftManager.java26 symbols
modules/api/src/main/java/net/countercraft/movecraft/util/hitboxes/SolidHitBox.java25 symbols
modules/api/src/main/java/net/countercraft/movecraft/support/MovecraftState.java24 symbols
modules/api/src/main/java/net/countercraft/movecraft/processing/CachedMovecraftWorld.java22 symbols
modules/api/src/main/java/net/countercraft/movecraft/util/collections/LocationSet.java21 symbols

For agents

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

⬇ download graph artifact