Code Monkey home page Code Monkey logo

coremodtutor's Introduction

coremodtutor's People

Contributors

forestbat avatar jihuayu avatar mouse0w0 avatar teddyxlandlee avatar xfl03 avatar zekerzhayard avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

coremodtutor's Issues

关于文章的一些细节错误

简介-CoreMod-使用FML等ModLoader的原因
有一行文字表述不清
CoreMod可以通过修改其他类的行为是直接修改文件还是在运行时动态修改分为两种类型


Java虚拟机-ByteCode字节码
文章无内容


原版CoreMod-LaunchWrapper-加载流程
代码有误

final URLClassLoader ucl = (URLClassLoader) getClass().getClassLoader();
classLoader = new LaunchClassLoader(ucl.getURLs());
...
Thread.currentThread().setContextClassLoader(classLoader);
  • 由于从Java9开始,不再默认使用URLClassLoader而是AppClassLoader,在Java9及以上的版本这一行代码会发生ClassCastException导致游戏崩溃,直到ModLauncher才修复了这一问题
final URLClassLoader ucl = (URLClassLoader) getClass().getClassLoader();

后半段代码没有修改(实际上我也不知道后面这个代码块到底是想要指出错误代码还是贴出修复后的代码,所以不确定这个到底是不是错误)


原版CoreMod-ModLauncher-使用Forge加载
表述有误

从Forge 1.13.2-25.0.216开始,可以使用Forge来加载无论是否包含普通Mod的ModLauncher CoreMod。

“无论是否”听起来有些别扭,可能无法清晰表述愿意。


ModLauncher下同一个mod包含coremod和fmlmod

LaunchWrapper时期,可通过设置manifest的FMLCorePluginContainsFMLMod为true来使一个mod同时被当做coremod与普通mod去加载,然而此配置似乎在ModLauncher下不再生效。
观察到本指导提到"从Forge 1.13.2-25.0.216开始,可以使用Forge来加载无论是否包含普通Mod的ModLauncher CoreMod",而且万用皮肤补丁在高版本下单一mod兼顾了coremod与普通mod,请问是如何做到的呢?

关于文章5.6节mixin部分扩展内容的一点问题

5.6节中向《目标类中添加类成员》部分
使用接口添加字段时,若接口与位于mixinconfig中指定的包或其子包中会使该接口类被标记为invalidClass导致无法加载
(推测位于mixinconfig指定包及其子包内的所有类均会被标记为invalidClass,未验证)
请求在文章相应部分(代码中的package部分)修改内容并注明此特性。

疑似错误

关于tweak-mod中引用的replay mod的代码段。getReparseableCoremods是不是应该改成getIgnoredMods

CoreMods supports more target types after forge 1.14.3-27.0.16

CoreMods 0.6.2 开始支持新的 target type.

function initializeCoreMod() {
    return {
        "MethodTransformer": {
            "target": {
                "type": "METHOD",
                "class": "net.minecraft.client.Minecraft",
                "methodName": "func_1234_a",
                "methodDesc": "(Ljava/lang/String;)Z"
            },
            "transformer": function (method) {
                return method
            }
        },
        "FieldTransformer": {
            "target": {
                "type": "FIELD",
                "class": "net.minecraft.client.Minecraft",
                "fieldName": "field_5678_b"
            },
            "transformer": function (field) {
                return field
            }
        }
    }
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.