Hey could you explain how to make a mod that(or just make the mod that does this) makes it so that if you have elytra equipt, it thinks that you are flying, ignoring the onGround tag? Thanks!
Is there any reason you have each piece of meddle separated? I understand that mods may not need MeddleAPI or even DynamicMappings, but can't these mods still run when they're included? Right now they're incredibly light, seems like it wouldn't have much negative impact if you had them install with the Meddle installer.
Have you thought about making DynamicMappings and MeddleAPI update automatically? It could be an option like 'use the newest version of Minecraft' in a way that only counts versions that have been updated for (like a versions.json for meddle... like you could say something like "15w47a requires build 020 and MeddleAPI v1.0.6" so when you upload that 15w47a (or any future versions) could be downloaded for meddle (or if new mappings aren't needed or you disabled checks, specifically if someone else did mappings).
Combo loading mods would be a nice thing to have Like if you put all of your jars in either a folder inside the meddle folder or inside a zip? That'd be great for users because not only would it allow modpacks to be a single download (including ones by mod creators for a mod with multiple independent features users might want to disable), users could group mods in a folder and (especially if from a modpack). I'm not sure how much jars would benefit, but I'd really love 7z as an option since it's better at compression than normal zip is (as a .7z file my resource pack, the .zip is 1.6x larger... although if sounds aren't included in either, the .zip is 2.2x larger). Could you do that in a way where the 7z library could be used for loading both meddle modpacks and resource packs?
If I understood many of your posts, the way you're developing Meddle&friends is making mods you feel comfortable making (read: won't break worlds in absence)... is that correct? So is it right in assuming you aren't putting much into making mappings/API more useful for making new blocks/items until 1.9 is released? I don't really understand why IDs are an issue, I thought that was the entire point of string IDs and mod namespaces... does that mean that vanilla didn't fully transfer to this system, or is there something I'm missing?
If my previous assumption is correct and you're focusing on making mods to test your mettle meddle, I have some suggestions for stuff I'd like (but don't want to make) although not sure how much they'd help as a sort of 'what's needed to solve this problem' to improve mappings/API:
fov_fix: makes FOV correctly scale W/H (rather than just width, which causes improper distortion)
optional: panini projection FOV mode to reduce distortion at high FOV (maybe even remove it at 90?) like a Quake mod called Blinky
glitch_blocks: change the behavior of mods not being loaded, instead of deleting blocks/items use purple&black squares
store the data if possible, string ID+mod namespace+blockstate
blocks/items would not be in original forms... but more like as an error block/item with original data as NBT
option to purge missing blocks/items, possibly only from a certain mod or inventories/chunks
option to convert specific blocks into vanilla blocks
possibly simple auto-detection (detect if wood/stone, if slab/stair, ect.)?
if this becomes a part of MeddleAPI, mods could specify the best replacement for their blocks/items
this would allow items to be converted through crafting associations... like how some mods add items that act like vanilla ones, or are crafted from them (or can be crafted INTO them)... the conversion would be lossy but mostly useful
this would be stored within the block information or as a separate file that would persist even if the mod isn't loaded or is deleted
unconverted blocks/items will be recovered once the world is loaded with the proper mods again
autojump: if you walk/sprint into a block that you can jump onto, this will be done for you
trapdoor_ladder: not needed as much as when trapdoors needed 'parent' blocks, but make trapdoors function like ladders so if you have a trapdoor flush with the floor, you aren't stuck (if trapdoor opens to ladder side) and don't have to jump out (if opens to non-ladder side)
better_flatworld_gui: a GUI that actually allows adding and moving layers in the flatworld generator rather than needing to edit the preset directly
activated_obsidian: gives obsidian a blockstate that allows portal frames to have a different texture/animation/model (since it isn't a new block, shouldn't be removed without the mod)
allows portals to be toggled on/off using redstone?
megapistons: chain pistons, right-click the back-most piston with stick when they're retracted in the same direction. The bodies merge together and become a giant piston
dynamic. Can be as large as a piston can push 13 blocks (so 26 blocks is maximum expand), doesn't use set models, instead uses model pieces (like CTM, models for back body, middle body, end body, end arm, start arm, head)
simple operation. The location powered on the body is how far the arm extends. Power the front, it pushes 1 block. Power the end it pushes as far as it goes.
cinematic. Since it covers a larger distance, it has more time for a smooth animation, as well as it being possible for a 'notch-ian' style model setup that looks good:
superjump? Pushing a player/entities a large distance using a large piston w/ slimeblock will launch the player at a significantly higher amount than a normal piston (if slightly higher speed doesn't already do it)
slimeblock chaining? Slime blocks would 'stick' to blocks more (example, normal blocks and slimeblocks alternating), causing them to be pulled when any block they are attached to is pulled, rather than the current default separating the two.
big doors. If you alternate rows of a single material and slimeblocks, right click with a stick and they turn into a large entity(-ish thing?) that can be easily moved by megapistons to create giant doors that aren't easy to create in vanilla. These doors can be 1 block deep, their slimeblocks will not interact with the non-door anymore. This also removes the move limit of slime blocks (adding its own, more sane one?). Has its own CTM-like generic material textures... although some way to do regular block textures and specific ones so both hidden doors and 'city' doors could be made would be good.
mod offshoot: rotating doors. Same door creation method, but no pistons involved.
compatibility: megapistons and giant doors save vanilla data when they stop moving (though they never display it like that). So if the mod wasn't loaded, they would be in whatever state they would be in vanilla. Obviously they wouldn't function properly, but when the mod was loaded again you would just need to reactivate them with a stick.
painting_selector: placing a painting gives you a GUI to choose the size (within what can be placed) and specific painting to place
sign_copier:ctrl+middle clicking a placed sign with 1 sign in your inventory copies the contents over in survival. When you place it again, you can edit the text (including with a text cursor so you don't need to delete and re-type a line)
headwear_galore: allows you to place blocks and items on your head without using a command.
crop_replace: If you right click a mature crop, it will automatically replant itself so long as you have the plantable in your inventory, or it drops one.
Feel free (anyone!) to take any of these and run with them to make meddle mods. Or don't.
Rollback Post to RevisionRollBack
"I'm an outsider by choice, but not truly.
It’s the unpleasantness of the system that keeps me out.
I’d rather be in, in a good system. That’s where my discontent comes from:
being forced to choose to stay outside.
My advice: Just keep movin’ straight ahead.
Every now and then you find yourself in a different place."
-George Carlin
Okay folks, 15w47a broke one mapping that wasn't being used, then 15w47b broke two more mappings, one of which used by FullyLoded. So we need an update this week after all, and DynamicMappings 021 is up.
This also means you need to update FullyLoded. But you might want to anyway, because I merged mellamokb's changes to add limits and specify metadata values, which means you can now mine andesite, granite, etc by the vein if you want.
That's not what I meant by "inventory displays on blocks". I meant how to make blocks render in the inventory properly, not Tile Entity GUIs.
I don't believe I added the mappings yet for the parts of the model system to do everything one might need to do, but I've been working towards porting LatticeMod since it's pretty simple, and they're required for that. I was just trying to finish off everything I needed in the Block class first. I'll get there eventually.
Can you make a mod that re-adds the Structure Block GUI, similar to this?
I noticed that someone made a mod like that early on, but I never played with it. Given their functionality, I've wanted to look into it sometime, cause it might be pretty useful.
Hey could you explain how to make a mod that(or just make the mod that does this) makes it so that if you have elytra equipt, it thinks that you are flying, ignoring the onGround tag? Thanks!
I'll need more mappings in the entity classes to really get into that.
Is there any reason you have each piece of meddle separated? I understand that mods may not need MeddleAPI or even DynamicMappings, but can't these mods still run when they're included? Right now they're incredibly light, seems like it wouldn't have much negative impact if you had them install with the Meddle installer.
I didn't want people to have to fool with doing the install process every time I released an update to MeddleAPI (which used to include DynamicMappings), which was happening somewhat frequently at first, and there was no automatic installer method for Meddle back then which made it a pain. MeddleAPI is also likely to become more and more tied to specific versions, and I wanted to keep Meddle itself version-independent. I'd still like to use it to add coremod support to old versions like alpha, beta, and 1.2.5, all of which I still mod for on occasion.
I won't say that I might not eventually combine the three, just to ease distribution. But with 1.9 still in active development, it seems better to just keep things modular for now.
Have you thought about making DynamicMappings and MeddleAPI update automatically? It could be an option like 'use the newest version of Minecraft' in a way that only counts versions that have been updated for (like a versions.json for meddle... like you could say something like "15w47a requires build 020 and MeddleAPI v1.0.6" so when you upload that 15w47a (or any future versions) could be downloaded for meddle (or if new mappings aren't needed or you disabled checks, specifically if someone else did mappings).
Well if you run a server you can write scripts to fetch newest versions of Meddle/MeddleAPI/DynamicMappings from this. I know at least one person running their server like that. They've also been recommending I make some kind of loader for automatic client updates as well, which would obviously be advantageous. The only reason I haven't is basically finding time to do it. I'm already pretty behind on goals I'd like to have met.
Combo loading mods would be a nice thing to have Like if you put all of your jars in either a folder inside the meddle folder or inside a zip? That'd be great for users because not only would it allow modpacks to be a single download (including ones by mod creators for a mod with multiple independent features users might want to disable), users could group mods in a folder and (especially if from a modpack).
Modpacks should still be a single download that you just extract into wherever your instance will be. I haven't tried it, but I bet MultiMC's modpack functionality would also work with Meddle.
The only reason I haven't put out a proper Meddle modpack is because literally none of the launchers support things I need. Technic wouldn't let me pick 1.9, for example. Curse won't let me specify libraries or launch options in their manifest file format, and only they can add new APIs to the list. Stuff like that.
I even talked to one of the Curse developers at length in their chat, who seemed very knowledgeable and willing to help, and indicated he might could have manifest improvements added as soon as a week from then. But that very abruptly changed to "well we'll think about if Meddle becomes more popular", which felt to me like someone else put the brakes on him. That was months ago and I never heard a peep since, unfortunately.
If I understood many of your posts, the way you're developing Meddle&friends is making mods you feel comfortable making (read: won't break worlds in absence)... is that correct? So is it right in assuming you aren't putting much into making mappings/API more useful for making new blocks/items until 1.9 is released? I don't really understand why IDs are an issue, I thought that was the entire point of string IDs and mod namespaces... does that mean that vanilla didn't fully transfer to this system, or is there something I'm missing?
I'm not outright opposed to adding new blocks and items; I mean obviously I already have with a couple mods or so. I've even put a lot of work into fleshing out the Block class lately specifically to port some of my block-based mods. Dealing with IDs is still the nuisance, and last I checked (which has been a while), I hadn't mapped enough to bring over dynamic ID mapping from a 1.8 API I worked on before.
Minecraft 1.7 wasn't quite the miraculous improvement that a lot of people think. String IDs were added, sure, but the numeric IDs are still underneath, are still assigned manually, and there's no dynamic system or mechanism for adapting to ID changes (like when loading saves or connecting to servers). The elimination of manually specifying block IDs was entirely a Forge addition, taking advantage of some of the changes 1.7 made to do so. 1.8 made this somewhat worse because of the model system and block states, and how that data is stored in relation to the IDs. 1.9 hasn't done anything to change or improve that.
However, things like enchantments and potions have had the same sort of ID changes made that 1.7 did to blocks and items, so you can probably expect Forge/MeddleAPI/etc to make those work better in the future at least.
If my previous assumption is correct and you're focusing on making mods to test your mettle meddle, I have some suggestions for stuff I'd like (but don't want to make) although not sure how much they'd help as a sort of 'what's needed to solve this problem' to improve mappings/API:
Feel free (anyone!) to take any of these and run with them to make meddle mods. Or don't.
Some of those sound neat, and some certainly go into areas I haven't been for mappings and API functions yet, so you just might see a few in the future. Assuming someone else doesn't beat me to it (which they're certainly welcome to).
Fyber, can you add a mod called "Petal to the Meddle" that adds lots of flowers into the game? Also your refining mod should be ported to Meddle, it looks easy to port since you have the sources for it anyway.
Rollback Post to RevisionRollBack
MCreator is just for whiny people who can't get ForgeGradle set up properly.
Modpacks should still be a single download that you just extract into wherever your instance will be. I haven't tried it, but I bet MultiMC's modpack functionality would also work with Meddle.
The only reason I haven't put out a proper Meddle modpack is because literally none of the launchers support things I need. Technic wouldn't let me pick 1.9, for example. Curse won't let me specify libraries or launch options in their manifest file format, and only they can add new APIs to the list. Stuff like that.
I even talked to one of the Curse developers at length in their chat, who seemed very knowledgeable and willing to help, and indicated he might could have manifest improvements added as soon as a week from then. But that very abruptly changed to "well we'll think about if Meddle becomes more popular", which felt to me like someone else put the brakes on him. That was months ago and I never heard a peep since, unfortunately.
I didn't mean modpacks from launchers, or Meddle distributed through them.
When I say 'modpack' I only mean 'a pack of mods distributed together' including a group of mods made by 1 author downloadable through Google Drive/Dropbox. Sorry if that wasn't clear. A basic example of the sort of 'modpack' would be RFtools. There's tons of general stuff useful on its own (like the crafter and builder) but it's all integrated with the dimensions stuff which is a much less general tool, something people might not want. Or even your mods, imagine if you were to make a modpack with them... simply because those were all the mods YOU wanted but you've got over a dozen already. But using 1 jar where users might not be able to disable (or repackage/use alone if you so choose) FireSpread or BabyBuster isn't good, either. So part of it is modularity.
I'm fully aware that you can just unzip it but frankly... people are idiots, and using archives/folders directly is just so simple it leaves no room for error (like on what method users use to unzip) and makes the process feel really fast. The mods you offer already feel super slick because it's a SMALL direct jar download and Minecraft doesn't take very long to start (sometimes it even seemed faster, but that could be because it wasn't bothering to check for downloads every single time).
Not only that, it would reduce clutter inside the meddle folder. Especially if you're doing every tiny-tweak mod (that people might want to disable or even share on its own) if there's more than ten mods for that ONE group of mods it's gonna be a mess and might make people mad. I would really like to offer a 7z download and then say "If you don't want X, delete feature_x.jar from the archive". Then when users update, they only need to update a single file like a resource pack, rather than trying to hunt down ones that were removed or renamed/replaced to make sure there isn't a conflict. Although TBH much of it is me wanting files to be neat and tidy as well as light. Categorization is nice.
Also forgot another mod suggestion, and that's one that modifies reach.
With bare hands you'd have the least reach, worse than current. Increases based on tool. Maximum reach slightly more than now.
Speed could also be increased, so a block you mine an >2 meters away would take longer to mine than one you're right next to.
All tunable by a config file. Like the max distance for what tools, and how much each tool had a distance speed gain/penalty percentage for close/far.
Rollback Post to RevisionRollBack
"I'm an outsider by choice, but not truly.
It’s the unpleasantness of the system that keeps me out.
I’d rather be in, in a good system. That’s where my discontent comes from:
being forced to choose to stay outside.
My advice: Just keep movin’ straight ahead.
Every now and then you find yourself in a different place."
-George Carlin
[15:15:37] [main/INFO]: Loading tweak class name net.fybertech.meddle.Meddle
[15:15:37] [main/INFO]: Using primary tweak class name net.fybertech.meddle.Meddle
[15:15:37] [main/INFO]: Calling tweak class net.fybertech.meddle.Meddle
[15:15:37] [main/INFO]: [Meddle] Found Tweakclass in firespread-dynamic-1.1.jar (net.fybertech.firespread.FireTweaker)
[15:15:37] [main/INFO]: [Meddle] Found Tweakclass in leafdecay-dynamic-1.1.jar (net.fybertech.leafdecay.LeafDecay)
[15:15:37] [main/INFO]: [Meddle] Found Tweakclass in physicsfix-dynamic-1.1.jar (net.fybertech.physicsfix.PhysicsTweaker)
Exception in thread "main" java.lang.NoClassDefFoundError: net/fybertech/meddle/mappings/DynamicMappings
at net.fybertech.firespread.FireTweaker.<init>(FireTweaker.java:23)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
at java.lang.Class.newInstance(Class.java:438)
at net.minecraft.launchwrapper.LaunchClassLoader.registerTransformer(LaunchClassLoader.java:88)
at net.fybertech.meddle.Meddle.injectIntoClassLoader(Meddle.java:95)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:115)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
Caused by: java.lang.ClassNotFoundException: net.fybertech.meddle.mappings.DynamicMappings
at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:106)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 10 more
Java HotSpot(TM) 64-Bit Server VM warning: Using incremental CMS is deprecated and will likely be removed in a future release
I'm getting a crash...
Seems to be a problem with FireSpread. Try disabling it until FyberOptic fixes it.
EDIT: I saw that Fyber liked my Meddle Mods thread. Thanks!
Rollback Post to RevisionRollBack
MCreator is just for whiny people who can't get ForgeGradle set up properly.
I'll need more mappings in the entity classes to really get into that.
Is there any way that I could possible help? I would love to help out, and it might help me familiarize myself more with how Meddle mods are made. Thanks!
Hey, I haven't heard from Meddle in a while, so I'd just put something here:
I figured out a method to get blocks to display in the inventory. I got it from a 1.8 modding tutorial.
Use this method in your ClientProxy to define block inventory displays:
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(Item.getItemFromBlock(block), DV, new ModelResourceLocation("blockname", "inventory"));
For example, a mod would use this:
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(Item.getItemFromBlock(blockCustom), 0, new ModelResourceLocation("custom_block", "inventory"));
Rollback Post to RevisionRollBack
MCreator is just for whiny people who can't get ForgeGradle set up properly.
It turns out 15w49a is not a stable snapshot, but I've updated for it anyway, and hopefully tomorrow's snapshot won't break it. Go grab DynamicMappings 22 if you want, but you'll also want to go get JourneyStone 1.0.2 if you use that mod since method signatures changed that it uses.
Items breaking crashes the game, just so you know. Hopefully they'll fix it tomorrow.
Fyber, can you add a mod called "Petal to the Meddle" that adds lots of flowers into the game? Also your refining mod should be ported to Meddle, it looks easy to port since you have the sources for it anyway.
lol nice name. As for Simple Refinement, I thought about merging aspects of that into Heavy Meddle, but we'll see.
A basic example of the sort of 'modpack' would be RFtools. There's tons of general stuff useful on its own (like the crafter and builder) but it's all integrated with the dimensions stuff which is a much less general tool, something people might not want. Or even your mods, imagine if you were to make a modpack with them... simply because those were all the mods YOU wanted but you've got over a dozen already. But using 1 jar where users might not be able to disable (or repackage/use alone if you so choose) FireSpread or BabyBuster isn't good, either. So part of it is modularity.
I get what you're saying, and it would be useful. There's no particular reason not to other than simply focusing on other things at the moment.
What are the requirements for running the server side version? I keep getting errors with java 1.8.0_65.
"
Exception in thread "main" java.lang.NoClassDefFoundError: net/minecraft/launchwrapper/Launch
at net.fybertech.meddle.server.Main.main(Main.java:25)
Caused by: java.lang.ClassNotFoundException: net.minecraft.launchwrapper.Launch
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 1 more
Can you make a mod that re-adds the Structure Block GUI, similar to this?
MCreator is just for whiny people who can't get ForgeGradle set up properly.
Hey could you explain how to make a mod that(or just make the mod that does this) makes it so that if you have elytra equipt, it thinks that you are flying, ignoring the onGround tag? Thanks!
Is there any reason you have each piece of meddle separated? I understand that mods may not need MeddleAPI or even DynamicMappings, but can't these mods still run when they're included? Right now they're incredibly light, seems like it wouldn't have much negative impact if you had them install with the Meddle installer.
Have you thought about making DynamicMappings and MeddleAPI update automatically? It could be an option like 'use the newest version of Minecraft' in a way that only counts versions that have been updated for (like a versions.json for meddle... like you could say something like "15w47a requires build 020 and MeddleAPI v1.0.6" so when you upload that 15w47a (or any future versions) could be downloaded for meddle (or if new mappings aren't needed or you disabled checks, specifically if someone else did mappings).
Combo loading mods would be a nice thing to have Like if you put all of your jars in either a folder inside the meddle folder or inside a zip? That'd be great for users because not only would it allow modpacks to be a single download (including ones by mod creators for a mod with multiple independent features users might want to disable), users could group mods in a folder and (especially if from a modpack). I'm not sure how much jars would benefit, but I'd really love 7z as an option since it's better at compression than normal zip is (as a .7z file my resource pack, the .zip is 1.6x larger... although if sounds aren't included in either, the .zip is 2.2x larger). Could you do that in a way where the 7z library could be used for loading both meddle modpacks and resource packs?
If I understood many of your posts, the way you're developing Meddle&friends is making mods you feel comfortable making (read: won't break worlds in absence)... is that correct? So is it right in assuming you aren't putting much into making mappings/API more useful for making new blocks/items until 1.9 is released? I don't really understand why IDs are an issue, I thought that was the entire point of string IDs and mod namespaces... does that mean that vanilla didn't fully transfer to this system, or is there something I'm missing?
If my previous assumption is correct and you're focusing on making mods to test your
mettlemeddle, I have some suggestions for stuff I'd like (but don't want to make) although not sure how much they'd help as a sort of 'what's needed to solve this problem' to improve mappings/API:Feel free (anyone!) to take any of these and run with them to make meddle mods. Or don't.
"I'm an outsider by choice, but not truly.
It’s the unpleasantness of the system that keeps me out.
I’d rather be in, in a good system. That’s where my discontent comes from:
being forced to choose to stay outside.
My advice: Just keep movin’ straight ahead.
Every now and then you find yourself in a different place."
-George Carlin
Okay folks, 15w47a broke one mapping that wasn't being used, then 15w47b broke two more mappings, one of which used by FullyLoded. So we need an update this week after all, and DynamicMappings 021 is up.
This also means you need to update FullyLoded. But you might want to anyway, because I merged mellamokb's changes to add limits and specify metadata values, which means you can now mine andesite, granite, etc by the vein if you want.
I don't believe I added the mappings yet for the parts of the model system to do everything one might need to do, but I've been working towards porting LatticeMod since it's pretty simple, and they're required for that. I was just trying to finish off everything I needed in the Block class first. I'll get there eventually.
I noticed that someone made a mod like that early on, but I never played with it. Given their functionality, I've wanted to look into it sometime, cause it might be pretty useful.
I'll need more mappings in the entity classes to really get into that.
I didn't want people to have to fool with doing the install process every time I released an update to MeddleAPI (which used to include DynamicMappings), which was happening somewhat frequently at first, and there was no automatic installer method for Meddle back then which made it a pain. MeddleAPI is also likely to become more and more tied to specific versions, and I wanted to keep Meddle itself version-independent. I'd still like to use it to add coremod support to old versions like alpha, beta, and 1.2.5, all of which I still mod for on occasion.
I won't say that I might not eventually combine the three, just to ease distribution. But with 1.9 still in active development, it seems better to just keep things modular for now.
Well if you run a server you can write scripts to fetch newest versions of Meddle/MeddleAPI/DynamicMappings from this. I know at least one person running their server like that. They've also been recommending I make some kind of loader for automatic client updates as well, which would obviously be advantageous. The only reason I haven't is basically finding time to do it. I'm already pretty behind on goals I'd like to have met.
Modpacks should still be a single download that you just extract into wherever your instance will be. I haven't tried it, but I bet MultiMC's modpack functionality would also work with Meddle.
The only reason I haven't put out a proper Meddle modpack is because literally none of the launchers support things I need. Technic wouldn't let me pick 1.9, for example. Curse won't let me specify libraries or launch options in their manifest file format, and only they can add new APIs to the list. Stuff like that.
I even talked to one of the Curse developers at length in their chat, who seemed very knowledgeable and willing to help, and indicated he might could have manifest improvements added as soon as a week from then. But that very abruptly changed to "well we'll think about if Meddle becomes more popular", which felt to me like someone else put the brakes on him. That was months ago and I never heard a peep since, unfortunately.
I'm not outright opposed to adding new blocks and items; I mean obviously I already have with a couple mods or so. I've even put a lot of work into fleshing out the Block class lately specifically to port some of my block-based mods. Dealing with IDs is still the nuisance, and last I checked (which has been a while), I hadn't mapped enough to bring over dynamic ID mapping from a 1.8 API I worked on before.
Minecraft 1.7 wasn't quite the miraculous improvement that a lot of people think. String IDs were added, sure, but the numeric IDs are still underneath, are still assigned manually, and there's no dynamic system or mechanism for adapting to ID changes (like when loading saves or connecting to servers). The elimination of manually specifying block IDs was entirely a Forge addition, taking advantage of some of the changes 1.7 made to do so. 1.8 made this somewhat worse because of the model system and block states, and how that data is stored in relation to the IDs. 1.9 hasn't done anything to change or improve that.
However, things like enchantments and potions have had the same sort of ID changes made that 1.7 did to blocks and items, so you can probably expect Forge/MeddleAPI/etc to make those work better in the future at least.
Some of those sound neat, and some certainly go into areas I haven't been for mappings and API functions yet, so you just might see a few in the future. Assuming someone else doesn't beat me to it (which they're certainly welcome to).
WIP site for my mods / Intermediary / FMC / Redstone Paste / Hopper Ducts / Model Citizens / Simple Refinement / Endermanage / Fycraft / etc
Fyber, can you add a mod called "Petal to the Meddle" that adds lots of flowers into the game? Also your refining mod should be ported to Meddle, it looks easy to port since you have the sources for it anyway.
MCreator is just for whiny people who can't get ForgeGradle set up properly.
I didn't mean modpacks from launchers, or Meddle distributed through them.
When I say 'modpack' I only mean 'a pack of mods distributed together' including a group of mods made by 1 author downloadable through Google Drive/Dropbox. Sorry if that wasn't clear. A basic example of the sort of 'modpack' would be RFtools. There's tons of general stuff useful on its own (like the crafter and builder) but it's all integrated with the dimensions stuff which is a much less general tool, something people might not want. Or even your mods, imagine if you were to make a modpack with them... simply because those were all the mods YOU wanted but you've got over a dozen already. But using 1 jar where users might not be able to disable (or repackage/use alone if you so choose) FireSpread or BabyBuster isn't good, either. So part of it is modularity.
I'm fully aware that you can just unzip it but frankly... people are idiots, and using archives/folders directly is just so simple it leaves no room for error (like on what method users use to unzip) and makes the process feel really fast. The mods you offer already feel super slick because it's a SMALL direct jar download and Minecraft doesn't take very long to start (sometimes it even seemed faster, but that could be because it wasn't bothering to check for downloads every single time).
Not only that, it would reduce clutter inside the meddle folder. Especially if you're doing every tiny-tweak mod (that people might want to disable or even share on its own) if there's more than ten mods for that ONE group of mods it's gonna be a mess and might make people mad. I would really like to offer a 7z download and then say "If you don't want X, delete feature_x.jar from the archive". Then when users update, they only need to update a single file like a resource pack, rather than trying to hunt down ones that were removed or renamed/replaced to make sure there isn't a conflict. Although TBH much of it is me wanting files to be neat and tidy as well as light. Categorization is nice.
Also forgot another mod suggestion, and that's one that modifies reach.
With bare hands you'd have the least reach, worse than current. Increases based on tool. Maximum reach slightly more than now.
Speed could also be increased, so a block you mine an >2 meters away would take longer to mine than one you're right next to.
All tunable by a config file. Like the max distance for what tools, and how much each tool had a distance speed gain/penalty percentage for close/far.
"I'm an outsider by choice, but not truly.
It’s the unpleasantness of the system that keeps me out.
I’d rather be in, in a good system. That’s where my discontent comes from:
being forced to choose to stay outside.
My advice: Just keep movin’ straight ahead.
Every now and then you find yourself in a different place."
-George Carlin
Would a mob-spawner moving item be possible? Works great so far, thanks for the hard work Fyber!
Seems to be a problem with FireSpread. Try disabling it until FyberOptic fixes it.
EDIT: I saw that Fyber liked my Meddle Mods thread. Thanks!
MCreator is just for whiny people who can't get ForgeGradle set up properly.
I need to get Meddle back up and running, but I just made a new world in my custom modpack so I'm grinding up power. It's a struggle haha
Wait, why isn't ItemFood mapped?
MCreator is just for whiny people who can't get ForgeGradle set up properly.
Your meddle mods thread?!?!?! WHERE? WHERE? WHERE?
Is there any way that I could possible help? I would love to help out, and it might help me familiarize myself more with how Meddle mods are made. Thanks!
--StanleyMines
Click the image in my signature.
MCreator is just for whiny people who can't get ForgeGradle set up properly.
Hey, I haven't heard from Meddle in a while, so I'd just put something here:
I figured out a method to get blocks to display in the inventory. I got it from a 1.8 modding tutorial.
Use this method in your ClientProxy to define block inventory displays:
For example, a mod would use this:
MCreator is just for whiny people who can't get ForgeGradle set up properly.
Hold on, back up. You can install Meddle for the first public version of Minecraft? Can someone link me to some mods for it?
hi
It turns out 15w49a is not a stable snapshot, but I've updated for it anyway, and hopefully tomorrow's snapshot won't break it. Go grab DynamicMappings 22 if you want, but you'll also want to go get JourneyStone 1.0.2 if you use that mod since method signatures changed that it uses.
Items breaking crashes the game, just so you know. Hopefully they'll fix it tomorrow.
lol nice name. As for Simple Refinement, I thought about merging aspects of that into Heavy Meddle, but we'll see.
I get what you're saying, and it would be useful. There's no particular reason not to other than simply focusing on other things at the moment.
I've wanted to do a mod that does this too, actually. So we'll see. And thanks!
WIP site for my mods / Intermediary / FMC / Redstone Paste / Hopper Ducts / Model Citizens / Simple Refinement / Endermanage / Fycraft / etc
How do I register smelting recipes?
MCreator is just for whiny people who can't get ForgeGradle set up properly.
I think Meddle is very good!!!It will to be a better API!!!It's gooddest for Forge!!!
Is there anything that I can do to generate my own mappings / help you make the mappings? Thanks!
It would also be useful if there were a way to add brewing stand recipes.
--StanleyMines
What are the requirements for running the server side version? I keep getting errors with java 1.8.0_65.
"
Exception in thread "main" java.lang.NoClassDefFoundError: net/minecraft/launchwrapper/Launch
at net.fybertech.meddle.server.Main.main(Main.java:25)
Caused by: java.lang.ClassNotFoundException: net.minecraft.launchwrapper.Launch
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 1 more
"