Skip to content
/ mci Public

Minecraft Interface - Interact with minecraft through rust

License

Notifications You must be signed in to change notification settings

char-ptr/mci

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mci

Minecraft Interface - Interact with minecraft through rust

why

basically i got bored of having to do shit with clients and then manually writing classes to interact with jvm in c++, so with this project i decided to just have it automatically generate all the required mappings to every minecraft class

how to use

i don't recommend using right now.

macos

before running poly mc or what ever launcher, make sure to set the DYLD_INSERT_LIBRARIES env, example below:

DYLD_INSERT_LIBRARIES=/Users/****/dev/mci/target/debug/libmci.dylib ./polymc

progress

jni wrapper

  • jclass / jobject

    • get fields
    • set fields
    • get static fields
    • set static fields
    • call methods
    • call static methods
  • general QOL

    • jclass not operable with jobject (prevents you from shooting yourself)
    • easier setting & getting via traits/macros (?)
  • types

    • jclass
    • jobject
    • jvalue
    • env (i)
    • jarray (ii)
    • jstring (ii)
    • others...

    information

    1. pretty much bare essentials like find class have wrapped values
    2. working on, should be done soon

    bindings / mapping generator

    • map types
      • tiny
      • yarn
    • generated output
      • classes / modules
      • get fields
      • get static fields
      • call methods
      • call static methods
      • set fields
      • set static fields
      • compilable
      • auto static detection (i)

information

i. i'll eventually work on a tool to get static fields and method names from a jar file.

MCI (root)

im not even working on it until mappings work lol

useful resources

LICENSE

this project / library is licensed under GNU General Public License v2.0

About

Minecraft Interface - Interact with minecraft through rust

Topics

Resources

License

Stars

Watchers

Forks