Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Leaderboard

Popular Content

Showing content with the highest reputation since 06/16/20 in all areas

  1. Forge for 1.16.1 The first Forge build for 1.16.1 is now live thanks to the hard work of: covers, illy, jd, garrett, giga, and the rest of the forge crew. With their help we were also able to release the updates to MCPConfig for 1.16 and 1.16.1 the same day that vanilla did. The Nether Update has brought a lot of changes to many systems, and as with any update there are likely to be bugs. We are still evaluating and working on some of the systems like dimensions and trees to come up with the best system to allow for modders to integrate with vanilla’s new dimension system. We are also expect
    9 points
  2. I got into minecraft modding recently and was surprised by how hard it is to find useful up-to-date information. Because of that, I decided to document my learning journey and write a book about Minecraft modding for beginners. It applies to Minecraft 1.16.1 and the latest version of forge. Keep in mind it is still a work in progress. More chapters will be added in the coming days. Suggestions and questions also are welcomed. Link: https://thebookofmodding.ml/
    5 points
  3. Thanks for the amazing work, it was such a fast release!
    4 points
  4. Update Regarding LTS System: Please read The Big Forge Update Earlier this year, 1.13 was announced and the snapshots started coming out, the update was relatively small, but enough to be a hurdle for mod developers. This combined with 1.12 stabilizing, and a few fundamental Java changes that broke modding in general, made the Forge team decide to use this opportunity and work on cleaning the years of technical debt that Forge had accrued. During this time, it was discovered that a lot of things needed updating. In fact, well, everything did. And so, it was done, a
    4 points
  5. Don't tell ppl "do your research before posting here" as the README.txt file that comes with the MDK of Forge 1.13.2 25.0.9 and 25.0.10 says to use setupDecomWorkspace its obvious that the README.txt file was not updated but you don't have to be a dick.
    4 points
  6. Problematic Code Please use the registry events to register your blocks, items and other registry entries. Use ModelLoader.setCustomModelResourceLocation in ModelRegistryEvent to register your item models. Do not use the ItemModelMesher. Do not use methods that are deprecated in Forge or vanilla Minecraft. Usually there will be an explanatory method next to the method explaining what to use instead. There is an exception for methods in the Block class, these may be overridden. Instead of calling them, use the one in IBlockState resp. it's supertypes.
    4 points
  7. There may be a primer for 1.15 -> 1.16.1; however, in the current state of 1.16.2 onwards and with the release of 1.16.4 coming soon, I doubt you will be able to find one. Not many people understand the new system of world generation through data driven systems, so a primer will probably not be out for a while. However, since I'm not a fan of leaving any post unanswered, I'll try and take a basic stab at it. - Blocks have been abstracted even more (AbstractBlock). You'll find that the properties have been turned into functions of some kind to allow for even fewer blocks. For ex
    3 points
  8. Currently Supported Versions: Latest: 1.16.X LTS: 1.15.X User Support FAQ Modder Support FAQ and Common Issues We do not currently provide support or updates for any other versions except in cases of severe security issues. On LTS's: Forge's support for Minecraft versions will try to follow a predictable cycle, assuming Mojang also follows a predictable cycle. We will always actively target the latest Minecraft version as ever, however we will also support the most recent non-latest version as an "LTS" version. An LTS version differs slig
    3 points
  9. Forge Version: 34.1.0 Minecraft Version: 1.16.3 Downloads: Changelog: (Direct) Installer: (AdFocus) (Direct) MDK: (AdFocus) (Direct) Intro: Hello everyone, it's finally that time. A recommended 1.16 build is here. We had to wait longer then I wanted to because there were a lot of problems with the initial 1.16 release from Mojang, enough that it was obvious that a .1/.2 was needed. So we waited for Mojang to stabilize the 1.16 branch, out came .1, .2, and .3. Each one same with its own surprises, the main one we have to mention is 1.16.2's major re-write to b
    3 points
  10. and because you use MCreator you got this far and are now bitching because you can't get something to work and you feel we should just do the work for you when you haven't even put in the effort to learn Java. There is a reason we dislike MCreator and you are only reinforcing that opinion. Learn Java.
    3 points
  11. No. Stop. writeToNbt and readFromNbt are for saving to disk. Server-side. If you want to sync stuff to the client (assuming you want to use the vanilla mechanic, which uses NBT), you need to override a couple of methods (warning, this is a giant mess): getUpdateTag - Returns the data that should be sent to the client on initial chunk load (i.e. when it gets into render distance, etc.). Call super here and put whatever data you need to have available on the client in the NBTTagCompound returned from super. Then return it. handleUpdateTag - Called on the client with whatever tag was
    3 points
  12. What is this? This is a collection of common issues and recommendations for the Modder Support subforum. Instead of repeating these things over and over again, a link to this thread can be used instead. This post will be updated as needed. Suggestions either via PM to me or in a separate thread to keep this topic clean.
    3 points
  13. General issues Do not use the "export" or "create jar file" functionalities of your IDE or other means to create your final mod file. You must use the Gradle build task. See the documentation for more info. When creating a Git repository for your mod, the repository root should be where your build.gradle file is. The MDK ships with a default .gitignore file so that only the necessary files will be added to version control.
    3 points
  14. From what I can tell there is over 2 megabytes of advancement data being sent to the client. So far Forge only splits overly large recipe and tag packets, it seems the advancement packet needs to be added to this list as well. I will make a pull request to add it.
    2 points
  15. Post the updated debug.log from the server as well as the client that cannot join.
    2 points
  16. It looks like this may be an issue with Waila, since it is the last thing in the log mentioning networking ("syncing config"). Check with the Waila authors.
    2 points
  17. 1.8 is no longer supported on this forum. Please update to a modern version of Minecraft to receive support.
    2 points
  18. Well, unfortunately, because of <thing you already know>, it isn't possible because <thing you already know.> As such what you want to do would require <doing things you don't want to do>.
    2 points
  19. You know how when you buy a pair of headphones, they come in a box? You have a box labeled "headphones" right now and you're trying to plug it into your computer, but it doesn't have an audio jack.
    2 points
  20. Vouch! I have worked on a lot of Minecraft and Discord servers over the past few years, but unfortunately I eventually started getting quite bored of Minecraft, I then discovered Verade's server which caught my eye, his ideas are interesting and have been helping him out with it since - working with him has been amazing, Verade is a good guy who is extremely dedicated to his server and always welcomes suggestions. He has also helped me gain a lot of crucial experience with moderation and planning.
    2 points
  21. Expanding on this: If you intend for your capability to ever be used by other mods (i.e. you're making it part of your mod's API) then using an interface is very strongly advised, simply as good programming practice (expose the interface, not the implementation). If you only ever intend for your capability to be used for storing data for your own purposes, an interface is very much optional. You might decide it's useful to have one, just for tidiness in your own code, but then again you're free just to use a class.
    2 points
  22. Call the WandererTradesEvent event and add your own custom ITrades to the list in the event.
    2 points
  23. A jar file in your gradle cache is corrupted. The easiest, but brute-force, method is to just delete .gradle in your user home folder. But that will mean you need to re-import any Gradle project.
    2 points
  24. TIL DataParameter's are DataManagers.... Seriously, this is just a giant thread of you messing up basic java systems, not listening to people who are trying to help you, and having no idea what you're doing...
    2 points
  25. Capabilities store "arbitrary data." If your magic system isn't "arbitrary data" then something is very wrong indeed.
    2 points
  26. Take a look at the EntityRenderer#renderName method...to draw an image instead of text you could just use a textured quad
    2 points
  27. Yes, you need to subscribe to `GuiScreenEvent.InitGuiEvent.Pr e event)` in order to add widgets, the event itself has a method `addWidget`. Here's an example of how it could be used: @SubscribeEvent public void addCustomButtonToInventory(GuiScreenEvent.InitGuiEvent.Pre event) { if (event.getGui() instanceof InventoryScreen) { event.addWidget(new Button(x, y, width, height, text, button -> { Minecraft.getInstance().displayGuiScreen(new CustomGUI()); })); } } If you aren't familiar with the `button -> {...}` syntax, this Button constructor takes an Button.
    2 points
  28. (And I assume that "commonnamespace" is not literally "commonnamespace" but something identifiable to your mod.)
    2 points
  29. They used to just completely strip the local variable table (it's not needed by the JVM at all, the JVM uses indices for local vars). But now that they retain it, it allows for some improvements in Forge's internal process, I don't quite remember which. And it doesn't matter what they are called, so someone chose the snowman.
    2 points
  30. First of all, the name you quoted is not something that comes from Mojang. It is Forge's intermediary mapping, called SRG names. It is used to (hopefully) stay the same between versions so that the already found mappings can be ported forward. In Mojang's release classes, fields and methods are just named after single letters, they have a tool that obfuscates the code. Parameter names (like the one you quoted) are like local variables and as such they are all called ☃. Yes, snowman.
    2 points
  31. Try deleting your build folder and %USERPROFILE%/.gradle/caches/forge_gradle/minecraft_user_repo/net/minecraftforge/forge/forge-1.15.2-31.2.0_mapped_snapshot_20200514-1.15.1
    2 points
  32. The correct way is to check if the Block implements IPlantable. If it does, and IPlantable#getPlantType returns CROP then it can be planted on farmland.
    2 points
  33. If you haven't already I would recommend giving these a read. They're just Forge Docs. but they explain most of it pretty well. Blender Addon: https://github.com/phonon/blender-minecraft-json Docs: https://mcforge.readthedocs.io/en/latest/models/files/#model-files https://mcforge.readthedocs.io/en/latest/animation/intro/
    2 points
  34. About Suppliers: https://thejavacult.com/supplier-interface-java-util-function/
    2 points
  35. This has been suggested time and time again. The answer is no. Forge will never download and then execute code due to the inherent extremely high security problems.
    2 points
  36. Here, this may help you if you're familiar with 1.12, as a LOT of stuff has changed since then. https://gist.github.com/williewillus/353c872bcf1a6ace9921189f6100d09a
    2 points
  37. You need to use the share tag (getShareTag, readShareTag).
    2 points
  38. My block class look like this: package ... import net.minecraft.block.Block; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; import net.minecraftforge.common.ToolType; public class MetalBlock extends Block { public MetalBlock() { super(Block.Properties .create(Material.IRON) .sound(SoundType.METAL) .hardnessAndResistance(5.0f, 6.0f) .harvestLevel(1) .harvestTool(ToolType.PICKAXE) .setRequiresTool() //or func_235861_h_() ); } } an
    2 points
  39. writeSpawnData only sometimes writes an int. readSpawnData always reads an int. The methods must be exactly symmetrical.
    2 points
  40. You can check ForgeInGameGui/InGameGui, there are a lot of similar rendering going on there.
    2 points
  41. Positive, any perceived order after Blocks -> Items could change at any time. I've seen people that know what they're talking about (including Lex) say it a million times.
    2 points
  42. Watch this: https://www.youtube.com/watch?v=FyCYva9DhsI
    2 points
  43. If it is your item, override getContainerItem(ItemStack) in your item class and return whatever you want returned to the player. If it's not, you need a custom IRecipe class (you need to register an IRecipeSerializer for it) and override getRemainingItems.
    2 points
  44. Decompiling and changing a mod without the author's permission is against our "code of conduct", and is not encouraged. There is a public git repo of MorePlayerModels here, but it is for 1.10.2 and you're on your own to update it.
    2 points
  45. Forge Version: 31.2.0 Minecraft Version: 1.15.2 Downloads: Changelog: (Direct) Installer: (AdFocus) (Direct) MDK: (AdFocus) (Direct) Intro: Here we go again for 1.15.2, this has a ton of bug fixes, developer improvements, as well as preliminary support for Java 13+ so we'll see how that goes. Changelog: New: Added hook to allow customized overlays when swimming in custom fluids. Added support for suppliers in FoodItem, allow easier modder extension. Added model data to BlockModelRenderer Added system for global loot functions, allowing m
    2 points
  46. You're rather rude... You could just help people...
    2 points
  47. Finally. Give me a couple hours and I’ll have pushed my changes to ExampleMod and my tutorials that make all registration use DeferredRegisty.
    2 points
  48. I know this topic is a bit old, but I just had the same issue and a Google search points here. If your packet is working correctly, and its just the warning in the log, you've likely made the same mistake as me. Inside the "messageConsumer" you provided when registering your packet, you need to set the packet handled flag to true. "context.get().setPacketHandled(true);" If it isn't set to true, NetworkHooks.onCustomPayload will return false, and ClientPlayNetHandler.handleCustomPayload will post the warning
    2 points


  • Newsletter

    Want to keep up to date with all our latest news and information?
    Sign Up
×
×
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.