• Posts

    • I'm using the ClientDisconnectionFromServerEvent event to listen for any disconnection. I am only interested in getting disconnections that happened due to errors (time out, etc.). This listens for every disconnection including the ones triggered by the player. How can I either only catch the errors that are thrown, or check for the reason?   Thank you.
    • How can i make my music play at the background, like the vanilla soundtrack? I want to not just replace the vanilla soundtrack with my own, as in a resourcepack, but add new tracks to it
    • package com.twmicro.practical.world.gen.structures; import com.mojang.serialization.Codec; import com.twmicro.practical.PracticalMod; import com.twmicro.practical.Reference; import com.twmicro.practical.world.gen.structures.pieces.ModernRubyFactoryPiece; import net.minecraft.util.Rotation; import net.minecraft.util.SharedSeedRandom; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.ChunkPos; import net.minecraft.util.math.MutableBoundingBox; import net.minecraft.world.IWorldReader; import net.minecraft.world.biome.Biome; import net.minecraft.world.biome.provider.BiomeProvider; import net.minecraft.world.gen.ChunkGenerator; import net.minecraft.world.gen.GenerationStage; import net.minecraft.world.gen.feature.IFeatureConfig; import net.minecraft.world.gen.feature.NoFeatureConfig; import net.minecraft.world.gen.feature.structure.*; import net.minecraft.world.gen.feature.template.TemplateManager; import net.minecraft.world.gen.settings.StructureSeparationSettings; import javax.annotation.Nullable; public class ModernRubyFactory extends Structure<NoFeatureConfig> { public ModernRubyFactory(Codec<NoFeatureConfig> codec) { super(codec); } @Override public String getStructureName() { return Reference.MODERN_RUBY_FACTORY_LOCATION.toString(); } @Override public GenerationStage.Decoration func_236396_f_() { return GenerationStage.Decoration.SURFACE_STRUCTURES; } @Nullable @Override public BlockPos func_236388_a_(IWorldReader p_236388_1_, StructureManager p_236388_2_, BlockPos p_236388_3_, int p_236388_4_, boolean p_236388_5_, long p_236388_6_, StructureSeparationSettings p_236388_8_) { return super.func_236388_a_(p_236388_1_, p_236388_2_, p_236388_3_, p_236388_4_, p_236388_5_, p_236388_6_, p_236388_8_); } @Override public Structure.IStartFactory<NoFeatureConfig> getStartFactory() { return ModernRubyFactory.Start::new; } public static class Start extends StructureStart<NoFeatureConfig> { public Start(Structure<NoFeatureConfig> p_i225806_1_, int p_i225806_2_, int p_i225806_3_, MutableBoundingBox p_i225806_4_, int p_i225806_5_, long p_i225806_6_) { super(p_i225806_1_, p_i225806_2_, p_i225806_3_, p_i225806_4_, p_i225806_5_, p_i225806_6_); } @Override public void func_230364_a_(ChunkGenerator p_230364_1_, TemplateManager p_230364_2_, int p_230364_3_, int p_230364_4_, Biome p_230364_5_, NoFeatureConfig p_230364_6_) { int i = p_230364_3_ * 16; int j = p_230364_4_ * 16; BlockPos blockpos = new BlockPos(i, 90, j); Rotation rotation = Rotation.randomRotation(this.rand); ModernRubyFactoryPiece.func_236991_a_(p_230364_2_, blockpos, rotation, this.components, this.rand); this.recalculateStructureSize(); } } } First attempt xD. Please, don't care of name of structure!   Also Minecraft writes to log two types of messages: [11:47:36] [Server thread/ERROR] [minecraft/ChunkManager]: Failed to save chunk -2,-1 java.lang.NullPointerException: null at net.minecraft.world.chunk.storage.ChunkSerializer.writeStructures(ChunkSerializer.java:421) ~[?:?] {re:classloading} at net.minecraft.world.chunk.storage.ChunkSerializer.write(ChunkSerializer.java:363) ~[?:?] {re:classloading} at net.minecraft.world.server.ChunkManager.func_219229_a(ChunkManager.java:705) ~[?:?] {re:classloading} at net.minecraft.world.server.ChunkManager.lambda$save$9(ChunkManager.java:374) ~[?:?] {re:classloading} at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184) ~[?:1.8.0_251] {} at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175) ~[?:1.8.0_251] {} at java.util.Iterator.forEachRemaining(Iterator.java:116) ~[?:1.8.0_251] {} at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801) ~[?:1.8.0_251] {} at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482) ~[?:1.8.0_251] {} at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472) ~[?:1.8.0_251] {} at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) ~[?:1.8.0_251] {} at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) ~[?:1.8.0_251] {} at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:1.8.0_251] {} at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418) ~[?:1.8.0_251] {} at net.minecraft.world.server.ChunkManager.save(ChunkManager.java:371) ~[?:?] {re:classloading} at net.minecraft.world.server.ServerChunkProvider.save(ServerChunkProvider.java:313) ~[?:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.world.server.ServerWorld.save(ServerWorld.java:703) ~[?:?] {re:classloading} at net.minecraft.server.MinecraftServer.save(MinecraftServer.java:546) ~[?:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:82) ~[?:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.server.MinecraftServer.func_240802_v_(MinecraftServer.java:665) ~[?:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.server.MinecraftServer.lambda$func_240784_a_$0(MinecraftServer.java:231) ~[?:?] {re:classloading,pl:accesstransformer:B} at java.lang.Thread.run(Thread.java:748) [?:1.8.0_251] {} Unknown structure start: practical:modern_ruby_factory  
    • 1.8 is no longer supported on this forum. Please update to a modern version of Minecraft to receive support.
  • Topics

  • Who's Online (See full list)