Intro
McMod is a project that a friend and I have been working on for the past week or so. It's a 'mod', but not in the mold of already existing mods. Rather, it's a modified Minecraft loader that uses the ObjectWeb ASM bytecode manipulation framework to modify its classes at runtime (injecting 'get' and 'set' methods for identified fields), allowing custom modifications to be built using an easy-to-use API for end users.
Soo... in English please?
All this is powered by an auto-updater, which runs in seconds. So, mods that use our API will be instantly compatible with new Minecraft client versions. That is, if stuff doesn't break. Which it shouldn't. At least, I hope not.
What's implemented?
As of today, January 8 2011, we have the following mods implemented as base/test mods:
[*:2lavgfuv]Item spawning and inventory clearing
[*:2lavgfuv]Constant daytime (never turns night)
[*:2lavgfuv]Flying and speed increase cheats
[*:2lavgfuv]'Super farmer' option which teleports mobs to you and kills them so you can get resources
[*:2lavgfuv]Invincibility (can't get hurt, die from falling, or drown)
[*:2lavgfuv]OpenGL render callback (string drawing, UI components, etc)
Those are all cheats! What about creative mods?
Our API will also include functions for creating and modifying new block types and changing game mechanics. And, in the event we don't have something, you can always directly get it from Minecraft using our interface.
Well, how can I help?
To quote the other developer, Alkaline,
"Anything that the mod doesn't have, please request for it to be added and we will add it in there as soon as we possibly can. To aid in the hooks being added faster, you could tell us how you manually find them, or just give us the current field(s)/method(s). Then we will find a bytecode pattern to match it."
We want to hear your ideas/questions/comments/concerns/confessions!
We think this is already a pretty decent project, but we want it to be even better. And who better to give us ideas than our future users? If you want to talk to us, you are welcome to join IRC. Or simply post on this thread. That's what it's for.
Screenshots nao pl0x!!
Truth is, there isn't much to screenshot yet. But, I took some anyway.
Title screen special touch
Rendering hackery
Item spawning
Chaos after using super farmer
Fried, or sunny side up? Heck, have 2, we have lots...
That's it. Have fun with McMod and remember to suggest stuff to us, so we can better suit you, the users.
This is the co-writer of McMod, the main beauty of this is that the user will not need to modify the minecraft.jar any at all! It hides all the down and dirty work from the end user, and allows the end user to just use an elegant API for adding their mods/custom stuff.
For you guys that got on IRC over the night last night -- from Tekkn0logik and I both, we deeply apologize for our absence. It was 3am (2am where Tekkn0logik is) when this thread was made, and we kind of fell asleep. To clear up some of the questions that were asked:
Is it a WIP?
Yep, at the current moment it's a WIP.
Is there a download for it right now?
As of this very moment there isn't one yet, but we plan on putting out a beta as soon as we feel like it has enough hooks to do most of what you want.
Feel free to join IRC and discuss the development, we could really use your ideas for stuff that we'd need to find/add.
Channel ban list is empty, only thing I can think of is that you were auto-banned from the network for being on an infected computer or behind a proxy.
Quote from flying sheep »
really cool!
could it infuse stuff like depth-of-field (which replaces big parts of the renderer) and better light, too?
Yea, but we haven't done that yet. We plan to leave that up to the more creative people who will create mods for it :biggrin.gif:
Would it be possible to use this on a modded .jar?
Will pre-existing mods need to be updated to use this?
And most importantly, will this be multiplatform?
Thanks!
and what about setting up a open source project (as soon as you feel it is useable)?
i mean on github, sourceforge or google code or sth.
I am working on that right now.
Quote from Telgar »
This sounds fantastic. Bookmarked for future goodness.
Thanks.
Quote from msmit71 »
Would it be possible to use this on a modded .jar?
Will pre-existing mods need to be updated to use this?
And most importantly, will this be multiplatform?
Thanks!
It might, but it probably won't be as stable. Pre existing mods will need to be updated to use our API instead of modified obfuscated code. And yes, it's Java so yes it will be multiplatform.
Quote from Club559 »
[07] -cafe.strictfp.com- *** Banned Temporary K-line 10080 min. - [Someone67] Ban evasion (2011/1/5 13.12)
First off, who's Someone67? Second, what is 'ban evasion' and why am I banned for it?
We had someone evading bans on IRC and banned their IP range. Turns out it got you too. Sorry, I've fixed it now.
Is there also a way to overwrite methods at runtime? Rather than just getting and setting fields? If there is, or you plan to add that in, that would be very awesome.
Even newer: source code up at Google Code
Intro
McMod is a project that a friend and I have been working on for the past week or so. It's a 'mod', but not in the mold of already existing mods. Rather, it's a modified Minecraft loader that uses the ObjectWeb ASM bytecode manipulation framework to modify its classes at runtime (injecting 'get' and 'set' methods for identified fields), allowing custom modifications to be built using an easy-to-use API for end users.
Soo... in English please?
All this is powered by an auto-updater, which runs in seconds. So, mods that use our API will be instantly compatible with new Minecraft client versions. That is, if stuff doesn't break. Which it shouldn't. At least, I hope not.
What's implemented?
As of today, January 8 2011, we have the following mods implemented as base/test mods:
[*:2lavgfuv]Item spawning and inventory clearing
[*:2lavgfuv]Constant daytime (never turns night)
[*:2lavgfuv]Flying and speed increase cheats
[*:2lavgfuv]'Super farmer' option which teleports mobs to you and kills them so you can get resources
[*:2lavgfuv]Invincibility (can't get hurt, die from falling, or drown)
[*:2lavgfuv]OpenGL render callback (string drawing, UI components, etc)
Those are all cheats! What about creative mods?
Our API will also include functions for creating and modifying new block types and changing game mechanics. And, in the event we don't have something, you can always directly get it from Minecraft using our interface.
Well, how can I help?
To quote the other developer, Alkaline,
"Anything that the mod doesn't have, please request for it to be added and we will add it in there as soon as we possibly can. To aid in the hooks being added faster, you could tell us how you manually find them, or just give us the current field(s)/method(s). Then we will find a bytecode pattern to match it."
We want to hear your ideas/questions/comments/concerns/confessions!
We think this is already a pretty decent project, but we want it to be even better. And who better to give us ideas than our future users? If you want to talk to us, you are welcome to join IRC. Or simply post on this thread. That's what it's for.
Screenshots nao pl0x!!
Truth is, there isn't much to screenshot yet. But, I took some anyway.
Title screen special touch
Rendering hackery
Item spawning
Chaos after using super farmer
Fried, or sunny side up? Heck, have 2, we have lots...
That's it. Have fun with McMod and remember to suggest stuff to us, so we can better suit you, the users.
Yours in mining and crafting,
Tekkn0logik
I'm not a coder, I'm a programmer.
McMod! http://www.minecraftforum.net/viewtopic.php?f=25&t=128984
(10/5/15) If you want to have a laugh, go look at some of my posts from back in ~2010 ( i was 10/11 what can i say)
(02/12/21) cannot believe i still play this game
what he said
[simg]http://i.min.us/ievcu8.png[/simg]
Is it a WIP?
Yep, at the current moment it's a WIP.
Is there a download for it right now?
As of this very moment there isn't one yet, but we plan on putting out a beta as soon as we feel like it has enough hooks to do most of what you want.
Feel free to join IRC and discuss the development, we could really use your ideas for stuff that we'd need to find/add.
could it infuse stuff like depth-of-field (which replaces big parts of the renderer) and better light, too?
Channel ban list is empty, only thing I can think of is that you were auto-banned from the network for being on an infected computer or behind a proxy.
Yea, but we haven't done that yet. We plan to leave that up to the more creative people who will create mods for it :biggrin.gif:
I'm not a coder, I'm a programmer.
McMod! http://www.minecraftforum.net/viewtopic.php?f=25&t=128984
i mean on github, sourceforge or google code or sth.
Will pre-existing mods need to be updated to use this?
And most importantly, will this be multiplatform?
Thanks!
First off, who's Someone67? Second, what is 'ban evasion' and why am I banned for it?
I am working on that right now.
Thanks.
It might, but it probably won't be as stable. Pre existing mods will need to be updated to use our API instead of modified obfuscated code. And yes, it's Java so yes it will be multiplatform.
We had someone evading bans on IRC and banned their IP range. Turns out it got you too. Sorry, I've fixed it now.
I'm not a coder, I'm a programmer.
McMod! http://www.minecraftforum.net/viewtopic.php?f=25&t=128984