• Recently Browsing

    No registered users viewing this page.

  • Posts

    • If you are looking for the best minecraft servers you should really checkout this website. It is a new upcoming minecraft server list that is owned by a server owner, so it contains the best features that is needed to help your server grow! You can gain new players to your Minecraft server just by registering.  So what are you waiting for? Checkout the best minecraft servers today :) 
    • In my mod I'm generating a variety of resources. Most of these aren't too fancy, and can be handled using vanilla generation methods. Currently using code similar to the below: //Generate significant clay near the world surface at the shores of plains biomes Biomes.PLAINS.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Feature.DISK.withConfiguration( new SphereReplaceConfig(Blocks.CLAY.getDefaultState(), 7, 5, Lists.newArrayList(new BlockState[]{DIRT, GRASS_BLOCK}))) .withPlacement(Placement.COUNT_TOP_SOLID.configure(new FrequencyConfig(100))) ); //Non-biome specific for (Biome biome : ForgeRegistries.BIOMES) { //Natural Stone is any of stone, andesite, granite, diorite //OreFeatureConfig Target, state, size //CountRangeConfig is count, bottom offset, top offset, maximum (altitude?) //DepthAverageConfig is count, baseline, spread biome.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Feature.ORE.withConfiguration( new OreFeatureConfig(OreFeatureConfig.FillerBlockType.NATURAL_STONE, ModBlocks.LIMESTONE.get().getDefaultState(), 120)) .withPlacement(Placement.COUNT_DEPTH_AVERAGE.configure(new DepthAverageConfig(2, 55, 16)))); //COUNT_RANGE.configure(new CountRangeConfig(10, 0, 0, 256)))); }   The code above has the following effects: In plains biomes only, many parts of the coast next to rivers generate clumps of clay in large quantities. Intended effect. In all biomes, most of the stone (but not all) around sea level is replaced with limestone using placement generation similar to that of Lapis. However, the vanilla ore has already generated by this point, and the vanilla coal on stone backdrop doesn't blend well on limestone.   My goal is to have portions of vanilla stone replaced with limestone, portions of that replaced with carbonate minerals and dolomite (dolomitic limestone), and portions of the dolomite replaced with zinc/lead sulfides. Vanilla ores will remain embedded in vanilla stone only in lower and higher depths, but not in limestone. How would I go about setting a ore generation order (stone->carving?->limestone->vanilla ores)? Would I need to create my own Feature, FeatureConfig, and/or Placement classes to achieve desired functionality?   In addition, how would I modify existing generated structures, either through removing/replacing? For example, for fossils to generate with pyrite blocks instead of coal blocks.
    • I've been wanting to see what it was like to mod minecraft in the beta days. Since i was just a little boy when minecraft was released but still managed to get ahold of minecraft in the beta days. I've looked EVERYWHERE for forge mods for the betas and one mod in particular is IndustrialCraft for b1.4 and it says i need forge. Which i cannot find. Can someone PLEASE show me where to get it?
    • Here: "Config variable that will not update" is the variable that I'm trying to access. It simply reverts to the default value.   // Do something when certain thing is said in chat public static final Minecraft mc = Minecraft.getInstance(); boolean serverFound = false; @SubscribeEvent public void onChat (ClientChatReceivedEvent event) { // Logger LOGGER.info("serverFound is now " + serverFound); String message = event.getMessage().getString(); if (message.contains("CONFIG VARIABLE THAT WILL NOT UPDATE")) { serverFound = true; // Logger LOGGER.info("serverFound has been set to true"); } if ((message.contains("entered the world.") && serverFound) == true) { // Logger LOGGER.info("serverFound is now true"); Minecraft.getInstance().player.sendChatMessage("/teleport 0 150 0"); serverFound = false; // Logger LOGGER.info("serverFound has been set to false"); } } }  
    • I have registered blocks for both a Standing Sign, and Wall Sign and I have registered an item for the sign. I did reflection for registering a wood type, and am using this wood type in the signs I have the texture for the wood type under textures/entity/signs and I have created the blockstate and model files, copying the vanilla ones (where the blockstates point to a model file that only has a texture for particles)   However, the Sign still won't render, and the edit sign screen won't show up. Sometimes the game crashes when I place a sign, with a NPE, but it isn't consistent.   Sign block registration: EFFETE_SIGN = registerNoItem("effete_sign", () -> new StandingSignBlock( AbstractBlock.Properties.create(Material.NETHER_WOOD, MaterialColor.LIME) .doesNotBlockMovement().hardnessAndResistance(1.0F).sound(SoundType.WOOD), Main.EFFETE_WOOD_TYPE)); EFFETE_WALL_SIGN = registerNoItem("effete_wall_sign", () -> new WallSignBlock( AbstractBlock.Properties.create(Material.NETHER_WOOD, MaterialColor.LIME) .doesNotBlockMovement().hardnessAndResistance(1.0F).sound(SoundType.WOOD).lootFrom(EFFETE_SIGN.get()), Main.EFFETE_WOOD_TYPE));   Blockstate and model files: { "textures": { "particle": "effetewood:block/effete_planks" } } { "variants": { "": { "model": "effetewood:block/effete_sign" } } }   Wood Type registration and Reflection code: private void setup(final FMLCommonSetupEvent event) { reflectionSetup(); try { EFFETE_WOOD_TYPE = (WoodType) registerWoodTypeMethod.invoke(null, woodTypeConstructor.newInstance("effete")); } catch (Exception e) { LOGGER.error("Error registering wood type"); e.printStackTrace(); } } private void reflectionSetup() { if (woodTypeConstructor != null) woodTypeConstructor.setAccessible(true); if (registerWoodTypeMethod != null) registerWoodTypeMethod.setAccessible(true); } private static final Constructor<WoodType> woodTypeConstructor; private static final Method registerWoodTypeMethod; private static Constructor<WoodType> getWoodTypeConstructor() { try { return WoodType.class.getDeclaredConstructor(String.class); } catch (Exception e) { LOGGER.error("Exception in getWoodTypeConstructor: " + e.getMessage()); e.printStackTrace(); return null; } } private static Method getRegisterWoodTypeMethod(){ try { return WoodType.class.getDeclaredMethod("register", WoodType.class); } catch (Exception e) { LOGGER.error("Exception in getRegisterWoodTypeMethod: " + e.getMessage()); e.printStackTrace(); return null; } } static { woodTypeConstructor = getWoodTypeConstructor(); registerWoodTypeMethod = getRegisterWoodTypeMethod(); }  
  • Topics

  • Who's Online (See full list)