There couldn't be a better time for us to step in and make some better mod loaders! We all know how well Forge has been run so far and now Lex has control of the full stack.
:OOOO Cool lets get programming(Or in my case learning how to program)
:OOOO Cool lets get programming(Or in my case learning how to program)
Yeah! Just as a heads up, I'm planning on releasing a developer preview of my mod loader later tonight. Hopefully anyway. I still have some more documentation to write.
could I get an early access, I'm interested in what I will do and how it will work
Definitely! That's what the developer preview is for. I want to put out a release WAAAY early to get feedback from the modding community. Everything will be open source so you can take a look, compile things, and play with the system if you want.
Definitely! That's what the developer preview is for. I want to put out a release WAAAY early to get feedback from the modding community. Everything will be open source so you can take a look, compile things, and play with the system if you want.
Definitely! That's what the developer preview is for. I want to put out a release WAAAY early to get feedback from the modding community. Everything will be open source so you can take a look, compile things, and play with the system if you want.
Yeah! Just as a heads up, I'm planning on releasing a developer preview of my mod loader later tonight. Hopefully anyway. I still have some more documentation to write.
Please send me a link as well, I am curious what you've come up with!
One thing I've been thinking about, why are you promoting your modloader on another modloader's thread, I think that is kinda inappropriate so stop hijacking this thread and make your own WIP page.
Sorry, I'm not trying to hijack your thread. But this seems to be a place where people who care about mod loaders hang out. I'll eventually start a new thread, but I wanted to let you guys see it first, given your interest in your own mod loading projects.
Interesting, although I don't really see at first glance how this is different/provides any advantage over FML Coremods or liteloader CallbackInjectionTransformers. Needs some additional investigation to see what special sauce you have going on here.
Interesting, although I don't really see at first glance how this is different/provides any advantage over FML Coremods or liteloader CallbackInjectionTransformers. Needs some additional investigation to see what special sauce you have going on here.
Sorry, I'm not trying to hijack your thread. But this seems to be a place where people who care about mod loaders hang out. I'll eventually start a new thread, but I wanted to let you guys see it first, given your interest in your own mod loading projects. Also, some of you asked me to. EDIT: interested parties can move the discussion over to the M3L thread here: http://www.minecraftforum.net/topic/2454252-magic-mojo-mod-loader/ I'll stop hijacking your thread. =)
Interesting, am I correct that you do the opposite of runtime deobfuscation with your hooks, and obfuscate them instead of the game? That is actually a pretty good idea, a lot simpler than what forge does by deobfuscating the client.
Sorry, I'm not trying to hijack your thread. But this seems to be a place where people who care about mod loaders hang out. I'll eventually start a new thread, but I wanted to let you guys see it first, given your interest in your own mod loading projects.
Interesting, although I don't really see at first glance how this is different/provides any advantage over FML Coremods or liteloader CallbackInjectionTransformers. Needs some additional investigation to see what special sauce you have going on here.
I might not have been clear in the announcement. The point is that mods no longer write hooks. All the hooks are owned by the modding API. But since the hooks are really simple to write, that makes the hook system easy to change, and therefore it should be feasible for modders to get their PRs for hooks accepted. Then there's no longer any need for a coremod system.
Interesting, am I correct that you do the opposite of runtime deobfuscation with your hooks, and obfuscate them instead of the game? That is actually a pretty good idea, a lot simpler than what forge does by deobfuscating the client.
That's right, although the details are s bit more complicated. Minecraft classes are deobfuscated, hooked, and reobfuscated at runtime. Mod classes are also obfuscated at runtime. Minecraft runs in its native obfuscated state and everything else is modified on the fly to fit in. That has the possibility to give insane speedups a start time since the vast majority of minecraft classes need not be modified at all. Although, the way I've implemented the system right now doesn't take full advantage of this yet. It's on the todo list. Even so, startup times are already super fast.
I might not have been clear in the announcement. The point is that mods no longer write hooks. All the hooks are owned by the modding API. But since the hooks are really simple to write, that makes the hook system easy to change, and therefore it should be feasible for modders to get their PRs for hooks accepted. Then there's no longer any need for a coremod system.
That's right, although the details are s bit more complicated. Minecraft classes are deobfuscated, hooked, and reobfuscated at runtime. Mod classes are also obfuscated at runtime. Minecraft runs in its native obfuscated state and everything else is modified on the fly to fit in. That has the possibility to give insane speedups a start time since the vast majority of minecraft classes need not be modified at all. Although, the way I've implemented the system right now doesn't take full advantage of this yet. It's on the todo list. Even so, startup times are already super fast.
I linked my thread. Feel free to move the discussion over there so I can stop hijacking your thread. =)
That's really interesting, and much faster than deobfuscating the whole game.
Sorry for the lack of information, I have been working on some code to allow the removal of the modified mojang classes. We will be able to use a configuration file similar to the AccessTransformer to define hooks, and they will be applied automatically.
Sorry for the lack of information, I have been working on some code to allow the removal of the modified mojang classes. We will be able to use a configuration file similar to the AccessTransformer to define hooks, and they will be applied automatically.
That sounds interesting. Will mods be able to include their own configuration files?
Also in updating my mod I've noticed something strange.
Doing so:
ApiBlock.registerBlock(2000, "text_block", new BlockTest());
Adds the block to the game but it doesn't have an associated item so I can't get it in the inventory. Whereas in previous versions it would have the item added.
Now in order to get it to work correctly I have to do this:
TestBlock block = new BlockTest();
ApiBlock.registerBlock(2000, "text_block", block);
ApiItem.registerItem(2000, "text_block", new ItemBlock(block));
I don't know if this is intended, I didn't do anything about this figuring that some modders may want this behaviour to be able to add technical blocks. I figured I would mention it anyway.
Rollback Post to RevisionRollBack
I'm not active on these forums, so forgive me if I don't respond!
If you want to contact me, try going through Discord or you can find me on GitHub where I am still updating the below mods (and more):
That sounds interesting. Will mods be able to include their own configuration files? Also in updating my mod I've noticed something strange. Doing so:
ApiBlock.registerBlock(2000, "text_block", new BlockTest());
Adds the block to the game but it doesn't have an associated item so I can't get it in the inventory. Whereas in previous versions it would have the item added. Now in order to get it to work correctly I have to do this:
TestBlock block = new BlockTest(); ApiBlock.registerBlock(2000, "text_block", block); ApiItem.registerItem(2000, "text_block", new ItemBlock(block));
I don't know if this is intended, I didn't do anything about this figuring that some modders may want this behaviour to be able to add technical blocks. I figured I would mention it anyway.
Not at the moment, because mods are loaded after the minecraft classes are, but I was thinking of adapting the Tweaker to scan the classpath and mods folder and look for configuration files.
but you can always make an interface that will allow mods to register those configs and allow the mods to do other stuff before launch (like downloading another library etc)
Yeah but the mod classes cannot be loaded until after the Minecraft classes, because if they have references to any unloaded class it will cause that class to load before the mod class, which defeats the whole point because the mods will not have been able to register their hooks in time. That is why forge coremods are different than normal mods.
:OOOO Cool lets get programming(Or in my case learning how to program)
Yeah! Just as a heads up, I'm planning on releasing a developer preview of my mod loader later tonight. Hopefully anyway. I still have some more documentation to write.
Definitely! That's what the developer preview is for. I want to put out a release WAAAY early to get feedback from the modding community. Everything will be open source so you can take a look, compile things, and play with the system if you want.
I'd definitely be interested as well.
Please send me a link as well, I am curious what you've come up with!
http://www.cuchazinteractive.com/wiki/wikka.php?wakka=MagicMojoModLoader
Sorry, I'm not trying to hijack your thread. But this seems to be a place where people who care about mod loaders hang out. I'll eventually start a new thread, but I wanted to let you guys see it first, given your interest in your own mod loading projects.
Also, some of you asked me to.
EDIT: interested parties can move the discussion over to the M3L thread here:
http://www.minecraftforum.net/topic/2454252-magic-mojo-mod-loader/
I'll stop hijacking your thread. =)
Interesting, although I don't really see at first glance how this is different/provides any advantage over FML Coremods or liteloader CallbackInjectionTransformers. Needs some additional investigation to see what special sauce you have going on here.
Interesting, am I correct that you do the opposite of runtime deobfuscation with your hooks, and obfuscate them instead of the game? That is actually a pretty good idea, a lot simpler than what forge does by deobfuscating the client.
Maybe we should just make a discussion thread? That way we won't be hijacking anyone's thread.
I might not have been clear in the announcement. The point is that mods no longer write hooks. All the hooks are owned by the modding API. But since the hooks are really simple to write, that makes the hook system easy to change, and therefore it should be feasible for modders to get their PRs for hooks accepted. Then there's no longer any need for a coremod system.
That's right, although the details are s bit more complicated. Minecraft classes are deobfuscated, hooked, and reobfuscated at runtime. Mod classes are also obfuscated at runtime. Minecraft runs in its native obfuscated state and everything else is modified on the fly to fit in. That has the possibility to give insane speedups a start time since the vast majority of minecraft classes need not be modified at all. Although, the way I've implemented the system right now doesn't take full advantage of this yet. It's on the todo list. Even so, startup times are already super fast.
I linked my thread. Feel free to move the discussion over there so I can stop hijacking your thread. =)
That's really interesting, and much faster than deobfuscating the whole game.
Sorry for the lack of information, I have been working on some code to allow the removal of the modified mojang classes. We will be able to use a configuration file similar to the AccessTransformer to define hooks, and they will be applied automatically.
That sounds interesting. Will mods be able to include their own configuration files?
Also in updating my mod I've noticed something strange.
Doing so:
Adds the block to the game but it doesn't have an associated item so I can't get it in the inventory. Whereas in previous versions it would have the item added.
Now in order to get it to work correctly I have to do this:
I don't know if this is intended, I didn't do anything about this figuring that some modders may want this behaviour to be able to add technical blocks. I figured I would mention it anyway.
If you want to contact me, try going through Discord or you can find me on GitHub where I am still updating the below mods (and more):
PRESENCE FOOTSTEPS - (github)
VOID FOG - (github)
Not at the moment, because mods are loaded after the minecraft classes are, but I was thinking of adapting the Tweaker to scan the classpath and mods folder and look for configuration files.
Yeah, although all the code (that I have) is still on my hard disk
Yeah but the mod classes cannot be loaded until after the Minecraft classes, because if they have references to any unloaded class it will cause that class to load before the mod class, which defeats the whole point because the mods will not have been able to register their hooks in time. That is why forge coremods are different than normal mods.
Thanks!
My thoughts exactly