Jump to content

Beethoven92

Members
  • Posts

    687
  • Joined

  • Last visited

  • Days Won

    10

Everything posted by Beethoven92

  1. Now you would go with something like biome#addFeature, specify the decoration stage (Decoration#UNDERGROUND_ORES) and other generation parameters.
  2. How to create a mod in general or How to create a mod that places down a custom water bucket block model?
  3. Are you trying to achieve something like this? https://www.curseforge.com/minecraft/mc-mods/placeable-items
  4. Still, don't leave it on 1, or chance will be very high you will find very difficult to spot your bush, even if you make the generation working. Please, post the rest of your code then (main class, your bush class etc)
  5. You may want to look at the same exact issue another user was having, see how it was solved and try if doing the same works for you too: https://forums.minecraftforge.net/topic/89204-minecraft-mod-errors-eclipse/?tab=comments#comment-415709
  6. Thats why i said its right 😉
  7. Sorry i was already typing when you answered this. My "Absolutely not" was in response to this code snippet: public class RubyBlock extends Block { public RubyBlock() { super(Block.Properties.create(Material.IRON) .catchFire(true) // The rest of the methods in TNTBlock.java ); } } Extending vanilla classes is right, then you override the methods you need
  8. Absolutely not! Which version you made your last mod for? I guess it was 1.12.2 or prior. Loooot of things changed in the latests versions. If you are not sure how things works now i suggest you follow a tutorial, you can try with mjcity tutorials or turtywurty, which will point you in the right direction with the newest versions of minecraft/forge. Anyway, if you want to mimic a vanilla block extending it with your custom properties the best way is to basically copy their code adjusting it by your needs. For example to create a custom TNT block with custom explosion radius or effects you replicate the vanilla TNT block changing the entity it spawns on explosion (TNTEntity)
  9. All right, then look under Project and External Dependencies, then look inside forge-your version and mappings-recomp.jar , then net/minecraft. Inside you have minecraft vanilla source code
  10. Which IDE are you using? When you setup your mod project you should also find minecraft source code inside the external dependencies. There you can find also the two classes vemerion suggested
  11. Have you tried setting this to something like 50 or 60? Higher numbers mean your feature will have a much higher chance of being generated. Look at other vegetal features in DefaultBiomeFeatures, so you can have an idea of the numbers they use. Also you shouldn't be using Feature#FLOWER i guess, try with Feature#RANDOM_PATCH. See if it works like that
  12. A far as i know there is no more customized world type generation in minecraft 1.16, where you can adjust and remove specifical features. There are multiple ways to disable village generation: 1) Set generate structures to off in world creation menu, but i do not think this is what you want 2) Use an existing datapack or create one 3) Make a mod that disables village generation in the world. Its very likely that one already exists Does this answer your question?
  13. If by sheep spawning parameters you mean the spawning weight and min-max group count you can find those numbers inside vanilla biome classes. For example look inside PlainBiome.class and you will see this line this.addSpawn(EntityClassification.CREATURE, new Biome.SpawnListEntry(EntityType.SHEEP, 12, 4, 4)); For anything else you should look at the SheepEntity.class and its superclasses (AnimalEntity, AgeableEntity etc...)
  14. That gave me a laugh Are you trying to achieve something like this? https://www.curseforge.com/minecraft/mc-mods/hats
  15. Check ModList#get()#isLoaded(modid)
  16. About Suppliers: https://thejavacult.com/supplier-interface-java-util-function/
  17. Don't you just need a System.lineSeparator() here? Or a "%n" inside the string where you want to go to a new line. Example: ("FirstString" + System.lineSeparator() + "NewLineString") or ("FirstString%nNewLineString)
  18. Could be both of them actually. Best solution could be to add them one at a time and launch the game for every mod you add, so you can (hopefully) see what mod is causing the issue.
  19. This is my guess...your RayTraceContext specifies the BlockMode.COLLIDER. If you look at the implementation, this calls getCollisionShape. If you look at getCollisionShape you see it returns a VoxelShapes.Empty if it find the variable canCollide to be false. canCollide takes the value of Material.blocksMovement, which the Material.PORTAL(which end gateway is build of) sets to be false. Basically the End gateway block is not even taken into account in the raytracing process which is what is happening to you. I do not know if there is a way around this by using ray trace, but maybe you can make it work like that: when you throw your ore, check the position the ItemEntity lands on, and get the Block that contains that position. Then you can just check if the Block is an END_GATEWAY block. If it is do the stuff you want to do
  20. Not sure how to go about this...replacing vanilla stone block with your custom block feels a bit too hacky for me..but it may be the solution for this to work.
  21. Believe it or not, since we are talking about minecraft, its far simpler (in my opinion) to register Blocks and Items and have them showing up in your inventory than to do an apparently trivial task as sending an "Hello world" message when a player breaks a block. I suggest you follow Cadiboo tutorials, or TurtyWurty modding series on youtube, they will point you in the right direction
  22. Yeah, thats an issue with tags like you said, since those mods have their stone blocks tagged as 'stone'...but does your world generates vanilla stone at all? I mean, i am seeing all kind of stone blocks but vanilla one
  23. Yeah, the format i posted above is the format you have to use anyway. No such thing as "forge_marker" in 1.15 as far as i know! Just see how vanilla does things, its your best source. I do not know if that answer your question though
  24. For crops you really need to make a block model for every single stage of the of crop...the block model for crop stages is very simple to do, and requires very few lines of code
  25. Loooot of things changed from minecraft 1.12 to 1.15, this is how vanilla wheat blockstate looks like now: { "variants": { "age=0": { "model": "minecraft:block/wheat_stage0" }, "age=1": { "model": "minecraft:block/wheat_stage1" }, "age=2": { "model": "minecraft:block/wheat_stage2" }, "age=3": { "model": "minecraft:block/wheat_stage3" }, "age=4": { "model": "minecraft:block/wheat_stage4" }, "age=5": { "model": "minecraft:block/wheat_stage5" }, "age=6": { "model": "minecraft:block/wheat_stage6" }, "age=7": { "model": "minecraft:block/wheat_stage7" } } } Try looking at how vanilla implements crops in 1.15 and adjust your JSONs accordingly
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.