Jump to content

The_SlayerMC

Members
  • Posts

    209
  • Joined

  • Last visited

Posts posted by The_SlayerMC

  1. On 6/17/2018 at 11:55 PM, Draco18s said:

    Why do you have this:

    https://github.com/TheSlayerMC/Journey-1.12/blob/master/main/java/net/journey/RegistrationHandler.java#L22

    AND this?

    https://github.com/TheSlayerMC/Journey-1.12/blob/master/main/java/net/journey/JourneyItems.java#L844

     

    In any case, I suspect that your DimensionHelper.init() is being called before your Blocks are created. But as fucking everything is using static initializers, I can't prove it.

    See also: 

     

    as nooby as it sounds, i looked up the new registration tutorials and thats what they had, probably looking at that it doubles up on code.

     

    Which would be the better one to run with?

  2. The biome code is crashing at trying to set the top block which makes no sense due to prior versions it was working, and basing it off vanilla code it should work too

     

    The block code is getting called before the biome which is the way it should be

     

    	public class BiomeGenEuca extends Biome {
    	    public BiomeGenEuca(String par1) {
            super(new BiomeProperties(par1));
            this.setRegistryName(par1);
            this.topBlock = JourneyBlocks.eucaGrass.getDefaultState();
            this.fillerBlock = JourneyBlocks.eucaStone.getDefaultState();
            this.spawnableCreatureList.clear();
            this.spawnableMonsterList.clear();
            this.spawnableWaterCreatureList.clear();
            this.spawnableCaveCreatureList.clear();
            getSkyColorByTemp(0xffd800);
        }
    }
    	

     

    and also reading a problem at the portal block trying to register the property for the axis of the block in the constructor

     

    	public class BlockEucaPortal extends BlockBreakable {
    	    public static final PropertyEnum AXIS = PropertyEnum.create("axis", EnumFacing.Axis.class, new EnumFacing.Axis[] {EnumFacing.Axis.X, EnumFacing.Axis.Z});
        protected static final AxisAlignedBB X_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.375D, 1.0D, 1.0D, 0.625D);
        protected static final AxisAlignedBB Z_AABB = new AxisAlignedBB(0.375D, 0.0D, 0.0D, 0.625D, 1.0D, 1.0D);
        protected static final AxisAlignedBB Y_AABB = new AxisAlignedBB(0.375D, 0.0D, 0.375D, 0.625D, 1.0D, 0.625D);
    	 
    	    public BlockEucaPortal(String name) {
            super(Material.PORTAL, false);
            LangRegistry.addBlock(name, "Euca Portal");
            this.setTickRandomly(true);
            setCreativeTab(JourneyTabs.portalBlocks);
            this.setDefaultState(this.blockState.getBaseState().withProperty(AXIS, EnumFacing.Axis.X)); //THIS LINE HERE
            setUnlocalizedName(name);
            JourneyBlocks.blockName.add(name);
            JourneyBlocks.blocks.add(this);
            setRegistryName(name);
        }
    	    @Override
        public Item getItemDropped(IBlockState state, Random rand, int fortune) {
            return null;
        }
    	    @Override
        public AxisAlignedBB getCollisionBoundingBox(IBlockState blockState, IBlockAccess worldIn, BlockPos pos) { 
            return null;
        }
    	    @Override
        public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) {
            switch ((EnumFacing.Axis)state.getValue(AXIS)) {
            case X:
                return X_AABB;
            case Y:
            default:
                return Y_AABB;
            case Z:
                return Z_AABB;
            }
        }
    	    @Override
        public boolean isFullCube(IBlockState state) {
            return false;
        }
    	    @Override
        public int quantityDropped(Random p_149745_1_) {
            return 0;
        }
    	    @Override
        public void onEntityCollidedWithBlock(World worldIn, BlockPos pos, IBlockState state, Entity entity) {
            if ((entity.getRidingEntity() == null) && ((entity instanceof EntityPlayerMP))) {
                EntityPlayerMP thePlayer = (EntityPlayerMP)entity;
                WorldServer worldserver = thePlayer.mcServer.getWorld(thePlayer.dimension);
                //thePlayer.triggerAchievement(JourneyAchievements.achievementEuca);
                int dimensionID = Config.euca;
                Block blockFrame = JourneyBlocks.eucaPortalFrame;
                if(thePlayer.timeUntilPortal > 0) 
                    thePlayer.timeUntilPortal = 10;
                else if(thePlayer.dimension != dimensionID) {
                    thePlayer.timeUntilPortal = 10;
                    thePlayer.mcServer.getPlayerList().transferPlayerToDimension(thePlayer, dimensionID, new ModTeleporter(thePlayer.mcServer.getWorld(dimensionID), dimensionID, this, blockFrame));
                } else {
                    thePlayer.timeUntilPortal = 10;
                    thePlayer.mcServer.getPlayerList().transferPlayerToDimension(thePlayer, 0, new ModTeleporter(thePlayer.mcServer.getWorld(0), 0, this, blockFrame));
                }
            }
        }
    	    @Override
        public IBlockState getStateFromMeta(int meta) {
            return this.getDefaultState().withProperty(AXIS, (meta & 3) == 2 ? EnumFacing.Axis.Z : EnumFacing.Axis.X);
        }
    	    @Override
        @SideOnly(Side.CLIENT)
        public BlockRenderLayer getBlockLayer() {
            return BlockRenderLayer.TRANSLUCENT;
        }
    	    @Override
        @SideOnly(Side.CLIENT)
        public void randomDisplayTick(IBlockState state, World worldIn, BlockPos pos, Random rand) {
            if(rand.nextInt(100) == 0)
                worldIn.playSound((double)pos.getX() + 0.5D, (double)pos.getY() + 0.5D, (double)pos.getZ() + 0.5D, SoundEvents.BLOCK_PORTAL_AMBIENT, SoundCategory.BLOCKS, 0.5F, rand.nextFloat() * 0.4F + 0.8F, false);
    	        for(int i = 0; i < 4; ++i) {
                double d0 = (float)pos.getX() + rand.nextFloat();
                double d1 = (float)pos.getY() + rand.nextFloat();
                double d2 = (float)pos.getZ() + rand.nextFloat();
                double d3 = (rand.nextFloat() - 0.5D) * 0.5D;
                double d4 = (rand.nextFloat() - 0.5D) * 0.5D;
                double d5 = (rand.nextFloat() - 0.5D) * 0.5D;
                int j = rand.nextInt(2) * 2 - 1;
                if(worldIn.getBlockState(pos.west()).getBlock() != this && worldIn.getBlockState(pos.east()).getBlock() != this) {
                    d0 = (double)pos.getX() + 0.5D + 0.25D * j;
                    d3 = rand.nextFloat() * 2.0F * j;
                } else {
                    d2 = (double)pos.getZ() + 0.5D + 0.25D * j;
                    d5 = rand.nextFloat() * 2.0F * j;
                }
                EntityEucaPotalFX var20 = new EntityEucaPotalFX(worldIn, d0, d1, d2, d3, d4, d5);
                FMLClientHandler.instance().getClient().effectRenderer.addEffect(var20);
            }
        }
    	    @Override
        @SideOnly(Side.CLIENT)
        public boolean shouldSideBeRendered(IBlockState blockState, IBlockAccess blockAccess, BlockPos pos, EnumFacing side) {
            pos = pos.offset(side);
            EnumFacing.Axis enumfacing$axis = null;
    	        if(blockState.getBlock() == this) {
                enumfacing$axis = (EnumFacing.Axis)blockState.getValue(AXIS);
                if(enumfacing$axis == null) 
                    return false;
                if(enumfacing$axis == EnumFacing.Axis.Z && side != EnumFacing.EAST && side != EnumFacing.WEST) 
                    return false;
                if(enumfacing$axis == EnumFacing.Axis.X && side != EnumFacing.SOUTH && side != EnumFacing.NORTH) 
                    return false;
            }
    	        boolean flag = blockAccess.getBlockState(pos.west()).getBlock() == this && blockAccess.getBlockState(pos.west(2)).getBlock() != this;
            boolean flag1 = blockAccess.getBlockState(pos.east()).getBlock() == this && blockAccess.getBlockState(pos.east(2)).getBlock() != this;
            boolean flag2 = blockAccess.getBlockState(pos.north()).getBlock() == this && blockAccess.getBlockState(pos.north(2)).getBlock() != this;
            boolean flag3 = blockAccess.getBlockState(pos.south()).getBlock() == this && blockAccess.getBlockState(pos.south(2)).getBlock() != this;
            boolean flag4 = flag || flag1 || enumfacing$axis == EnumFacing.Axis.X;
            boolean flag5 = flag2 || flag3 || enumfacing$axis == EnumFacing.Axis.Z;
    	        if(flag4 && side == EnumFacing.WEST) return true;
            else if(flag4 && side == EnumFacing.EAST)return true;
            else if(flag5 && side == EnumFacing.NORTH) return true;      
            else return flag5 && side == EnumFacing.SOUTH;
        }
    	    public boolean makePortal(World worldIn, BlockPos p) {
            BlockEucaPortal.Size size = new BlockEucaPortal.Size(worldIn, p, EnumFacing.Axis.X);
            if(size.isValid() && size.portalBlockCount == 0) {
                size.placePortalBlocks();
                return true;
            } else {
                BlockEucaPortal.Size size1 = new BlockEucaPortal.Size(worldIn, p, EnumFacing.Axis.Z);
                if(size1.isValid() && size1.portalBlockCount == 0) {
                    size1.placePortalBlocks();
                    return true;
                } else {
                    return false;
                }
            }
        }
    	    @Override
        public ItemStack getItem(World worldIn, BlockPos pos, IBlockState state) {
            return new ItemStack(this);
        }
    	    @Override
        public int getMetaFromState(IBlockState state) {
            return meta((EnumFacing.Axis)state.getValue(AXIS));
        }
    	    public static int meta(Axis a) {
            return a == EnumFacing.Axis.X ? 1 : (a == EnumFacing.Axis.Z ? 2 : 0);
        }
    	    @Override
        public IBlockState withRotation(IBlockState state, Rotation rot) {
            switch (rot) {
            case COUNTERCLOCKWISE_90:
            case CLOCKWISE_90:
    	            switch ((EnumFacing.Axis)state.getValue(AXIS)) {
                case X:
                    return state.withProperty(AXIS, EnumFacing.Axis.Z);
                case Z:
                    return state.withProperty(AXIS, EnumFacing.Axis.X);
                default:
                    return state;
                }
            default:
                return state;
            }
        }
    	    @Override
        public BlockFaceShape getBlockFaceShape(IBlockAccess i, IBlockState i2, BlockPos p, EnumFacing f) {
            return BlockFaceShape.UNDEFINED;
        }
    	    public static class Size {
            private final World world;
            private final EnumFacing.Axis axis;
            private final EnumFacing rightDir;
            private final EnumFacing leftDir;
            private int portalBlockCount;
            private BlockPos bottomLeft;
            private int height;
            private int width;
    	        public Size(World worldIn, BlockPos pos, EnumFacing.Axis axis) {
                this.world = worldIn;
                this.axis = axis;
    	            if(axis == EnumFacing.Axis.X) {
                    this.leftDir = EnumFacing.EAST;
                    this.rightDir = EnumFacing.WEST;
                } else {
                    this.leftDir = EnumFacing.NORTH;
                    this.rightDir = EnumFacing.SOUTH;
                }
    	            for(BlockPos blockpos = pos; pos.getY() > blockpos.getY() - 21 && pos.getY() > 0 && this.isEmptyBlock(worldIn.getBlockState(pos.down()).getBlock()); pos = pos.down()) {
                    ;
                }
    	            int i = this.getDistanceUntilEdge(pos, this.leftDir) - 1;
    	            if(i >= 0) {
                    this.bottomLeft = pos.offset(this.leftDir, i);
                    this.width = this.getDistanceUntilEdge(this.bottomLeft, this.rightDir);
    	                if(this.width < 2 || this.width > 21) {
                        this.bottomLeft = null;
                        this.width = 0;
                    }
                }
    	            if(this.bottomLeft != null) {
                    this.height = this.calculatePortalHeight();
                }
            }
    	        protected int getDistanceUntilEdge(BlockPos pos, EnumFacing facing) {
                int i;
    	            for(i = 0; i < 22; ++i) {
                    BlockPos blockpos = pos.offset(facing, i);
    	                if(!this.isEmptyBlock(this.world.getBlockState(blockpos).getBlock()) || this.world.getBlockState(blockpos.down()).getBlock() != JourneyBlocks.eucaPortalFrame) {
                        break;
                    }
                }
    	            Block block = this.world.getBlockState(pos.offset(facing, i)).getBlock();
                return block == JourneyBlocks.eucaPortalFrame ? i : 0;
            }
    	        public int getHeight() {
                return this.height;
            }
    	        public int getWidth() {
                return this.width;
            }
    	        protected int calculatePortalHeight() {
                label56:
    	                for(this.height = 0; this.height < 21; ++this.height) {
                        for(int i = 0; i < this.width; ++i) {
                            BlockPos blockpos = this.bottomLeft.offset(this.rightDir, i).up(this.height);
                            Block block = this.world.getBlockState(blockpos).getBlock();
    	                        if(!this.isEmptyBlock(block)) {
                                break label56;
                            }
    	                        if(block == JourneyBlocks.eucaPortal) {
                                ++this.portalBlockCount;
                            }
    	                        if(i == 0) {
                                block = this.world.getBlockState(blockpos.offset(this.leftDir)).getBlock();
    	                            if(block != JourneyBlocks.eucaPortalFrame) {
                                    break label56;
                                }
                            }
                            else if(i == this.width - 1) {
                                block = this.world.getBlockState(blockpos.offset(this.rightDir)).getBlock();
    	                            if(block != JourneyBlocks.eucaPortalFrame) {
                                    break label56;
                                }
                            }
                        }
                    }
    	        for(int j = 0; j < this.width; ++j) {
                if (this.world.getBlockState(this.bottomLeft.offset(this.rightDir, j).up(this.height)).getBlock() != JourneyBlocks.eucaPortalFrame) {
                    this.height = 0;
                    break;
                }
            }
    	        if (this.height <= 21 && this.height >= 3) {
                return this.height;
            } else {
                this.bottomLeft = null;
                this.width = 0;
                this.height = 0;
                return 0;
            }
            }
    	        protected boolean isEmptyBlock(Block blockIn) {
                return blockIn.getMaterial(blockIn.getDefaultState()) == Material.AIR || blockIn == JourneyBlocks.fire || blockIn == JourneyBlocks.eucaPortal;
            }
    	        public boolean isValid() {
                return this.bottomLeft != null && this.width >= 2 && this.width <= 21 && this.height >= 3 && this.height <= 21;
            }
    	        public void placePortalBlocks() {
                for(int i = 0; i < this.width; ++i) {
                    BlockPos blockpos = this.bottomLeft.offset(this.rightDir, i);
    	                for(int j = 0; j < this.height; ++j) {
                        this.world.setBlockState(blockpos.up(j), JourneyBlocks.eucaPortal.getDefaultState().withProperty(BlockEucaPortal.AXIS, this.axis), 2);
                    }
                }
            }
        }
    }
    	

     

    	net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from Journey Into the Light (essence)
    Caused by: java.lang.ExceptionInInitializerError
        at net.journey.dimension.euca.BiomeGenEuca.<init>(BiomeGenEuca.java:12)
        at net.journey.dimension.DimensionHelper.<clinit>(DimensionHelper.java:105)
        at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:72)
        at net.journey.JITL.preInit(JITL.java:52)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:629)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
        at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
        at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
        at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
        at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
        at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
        at com.google.common.eventbus.EventBus.post(EventBus.java:217)
        at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:218)
        at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:196)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
        at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
        at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
        at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
        at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
        at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
        at com.google.common.eventbus.EventBus.post(EventBus.java:217)
        at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:135)
        at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:627)
        at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:245)
        at net.minecraft.client.Minecraft.init(Minecraft.java:513)
        at net.minecraft.client.Minecraft.run(Minecraft.java:421)
        at net.minecraft.client.main.Main.main(Main.java:118)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
        at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97)
        at GradleStart.main(GradleStart.java:25)
    Caused by: java.lang.IllegalArgumentException: Cannot set property PropertyEnum{name=axis, clazz=class net.minecraft.util.EnumFacing$Axis, values=[x, z]} as it does not exist in BlockStateContainer{block=null, properties=[]}
        at net.minecraft.block.state.BlockStateContainer$StateImplementation.withProperty(BlockStateContainer.java:221)
        at net.journey.blocks.portal.BlockEucaPortal.<init>(BlockEucaPortal.java:48)
        at net.journey.JourneyBlocks.<clinit>(JourneyBlocks.java:285)
        ... 51 more
    	
    A detailed walkthrough of the error, its code path and all known details is as follows:
    ---------------------------------------------------------------------------------------
    	-- System Details --
    Details:
        Minecraft Version: 1.12.2
        Operating System: Windows 10 (amd64) version 10.0
        Java Version: 1.8.0_171, Oracle Corporation
        Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
        Memory: 634148792 bytes (604 MB) / 1037959168 bytes (989 MB) up to 1037959168 bytes (989 MB)
        JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
        IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
        FML: MCP 9.42 Powered by Forge 14.23.4.2705 5 mods loaded, 5 mods active
        States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
    	    | State | ID        | Version      | Source                           | Signature |
        |:----- |:--------- |:------------ |:-------------------------------- |:--------- |
        | UCH   | minecraft | 1.12.2       | minecraft.jar                    | None      |
        | UCH   | mcp       | 9.42         | minecraft.jar                    | None      |
        | UCH   | FML       | 8.0.99.99    | forgeSrc-1.12.2-14.23.4.2705.jar | None      |
        | UCH   | forge     | 14.23.4.2705 | forgeSrc-1.12.2-14.23.4.2705.jar | None      |
        | UCEE  | essence   | 1.2          | bin                              | None      |
    	    Loaded coremods (and transformers): 
        GL info: ' Vendor: 'Intel' Version: '4.4.0 - Build 22.20.16.4708' Renderer: 'Intel(R) HD Graphics 630'
    [12:34:15] [main/INFO] [STDOUT]: [net.minecraft.init.Bootstrap:printToSYSOUT:629]: #@!@# Game crashed! Crash report saved to: #@!@# D:\Development\Minecraft\Forge\1.12\run\.\crash-reports\crash-2018-06-17_12.34.15-client.txt
    	

     

  3. 19 hours ago, diesieben07 said:

    It still doesn't have any place in your mod. It makes no sense to do there.

    As each item/block is constructed, it adds to the array list that it uses, why would i do it separate and have to double up on code?

  4. 9 hours ago, diesieben07 said:

    You have to write the name at some point.

    Why is:

    someConvolutedMethod(myItem, "mymod.myitem.name", "My Cool Item")

    better than

    mymod.myitem.name=My Cool Item

    ?

    automating some and manually doing the rest makes no sense, automate all or none at all

  5. 5 hours ago, diesieben07 said:

    The amount of effort people go through, it boggles my mind. Why in gods name do you not simply put these into a real .lang file? How is this giant, messy class in any way better?

    because it automatically adds new items/blocks by itself so i dont have to do it, why would i do it manually if i scripted it to do it automatically 

  6. 10 minutes ago, jredfox said:

    I recommend only generating lang files during dev unoptimized to do so otherwise I do the same thing. If your mod doesn't contian pack.mcmeta then you need en_US.lang instead of en_us.lang

    I only generate it during dev as it generates to the users desktop meaning mine or whoever downloads the source, ive got a booelan running for dev mode 

  7. Ive just come back from a 3 year break and forge is different now, im back to the basics and struggling to register items/blocks. this is basically my setup for items and blocks

     

    https://github.com/TheSlayerMC/Journey-1.12

     

    Items:

    	@EventBusSubscriber(modid=SlayerAPI.MOD_ID)
    public class JourneyItems 
    	 
    	public static ArrayList<Item> items = new ArrayList<Item>();
    	 
    	public static final Item hellstoneIngot = new ItemMod("hellstoneIngot", "Bloodcrust Ingot");
    	 
    	@SubscribeEvent
        public static void registerItems(RegistryEvent.Register<Item> event) {
            for(Item i : items)
                event.getRegistry().registerAll(i);
        }
    	

     

    ItemMod:

    	public ItemMod(String name, String finalName, CreativeTabs tab){
            LangRegistry.addItem(name, finalName);
            setUnlocalizedName(name);
            setCreativeTab(tab);
            setRegistryName(name);
            JourneyItems.itemNames.add(name);
            JourneyItems.items.add(this);
        }
    	

     

    CrashReport

     
    
    	2018-06-10 14:56:37,260 main WARN Disabling terminal, you're running in an unsupported environment.
    [14:56:37] [main/INFO] [GradleStart]: Extra: []
    [14:56:37] [main/INFO] [GradleStart]: Running with arguments: [--userProperties, {}, --assetsDir, C:/Users/Brock Kerley/.gradle/caches/minecraft/assets, --assetIndex, 1.12, --accessToken{REDACTED}, --version, 1.12.2, --tweakClass, net.minecraftforge.fml.common.launcher.FMLTweaker, --tweakClass, net.minecraftforge.gradle.tweakers.CoremodTweaker]
    [14:56:37] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLTweaker
    [14:56:37] [main/INFO] [LaunchWrapper]: Using primary tweak class name net.minecraftforge.fml.common.launcher.FMLTweaker
    [14:56:37] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.gradle.tweakers.CoremodTweaker
    [14:56:37] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLTweaker
    [14:56:37] [main/INFO] [FML]: Forge Mod Loader version 14.23.3.2655 for Minecraft 1.12.2 loading
    [14:56:37] [main/INFO] [FML]: Java is Java HotSpot(TM) 64-Bit Server VM, version 1.8.0_171, running on Windows 10:amd64:10.0, installed at C:\Program Files\Java\jre1.8.0_171
    [14:56:37] [main/INFO] [FML]: Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation
    [14:56:37] [main/INFO] [FML]: Ignoring missing certificate for coremod FMLCorePlugin (net.minecraftforge.fml.relauncher.FMLCorePlugin), we are in deobf and it's a forge core plugin
    [14:56:37] [main/INFO] [FML]: Ignoring missing certificate for coremod FMLForgePlugin (net.minecraftforge.classloading.FMLForgePlugin), we are in deobf and it's a forge core plugin
    [14:56:37] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.gradle.tweakers.CoremodTweaker
    [14:56:37] [main/INFO] [GradleStart]: Injecting location in coremod net.minecraftforge.fml.relauncher.FMLCorePlugin
    [14:56:37] [main/INFO] [GradleStart]: Injecting location in coremod net.minecraftforge.classloading.FMLForgePlugin
    [14:56:37] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker
    [14:56:37] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLDeobfTweaker
    [14:56:37] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.gradle.tweakers.AccessTransformerTweaker
    [14:56:37] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker
    [14:56:37] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker
    [14:56:37] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.relauncher.CoreModManager$FMLPluginWrapper
    [14:56:39] [main/ERROR] [FML]: FML appears to be missing any signature data. This is not a good thing
    [14:56:39] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.relauncher.CoreModManager$FMLPluginWrapper
    [14:56:39] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLDeobfTweaker
    [14:56:39] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.gradle.tweakers.AccessTransformerTweaker
    [14:56:39] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.TerminalTweaker
    [14:56:39] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.TerminalTweaker
    [14:56:39] [main/INFO] [LaunchWrapper]: Launching wrapped minecraft {net.minecraft.client.main.Main}
    [14:56:40] [main/INFO] [net.minecraft.client.Minecraft]: Setting user: Player894
    [14:56:44] [main/INFO] [net.minecraft.client.Minecraft]: LWJGL Version: 2.9.4
    [14:56:45] [main/INFO] [FML]: -- System Details --
    Details:
        Minecraft Version: 1.12.2
        Operating System: Windows 10 (amd64) version 10.0
        Java Version: 1.8.0_171, Oracle Corporation
        Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
        Memory: 721345312 bytes (687 MB) / 1037959168 bytes (989 MB) up to 1037959168 bytes (989 MB)
        JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
        IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
        FML: 
        Loaded coremods (and transformers): 
        GL info: ' Vendor: 'Intel' Version: '4.4.0 - Build 22.20.16.4708' Renderer: 'Intel(R) HD Graphics 630'
    [14:56:45] [main/INFO] [FML]: MinecraftForge v14.23.3.2655 Initialized
    [14:56:45] [main/INFO] [FML]: Starts to replace vanilla recipe ingredients with ore ingredients.
    [14:56:45] [main/INFO] [FML]: Replaced 1036 ore ingredients
    [14:56:45] [main/INFO] [FML]: Found 0 mods from the command line. Injecting into mod discoverer
    [14:56:45] [main/INFO] [FML]: Searching D:\Development\Minecraft\Forge\1.12\mods for mods
    [14:56:47] [Thread-3/INFO] [FML]: Using sync timing. 200 frames of Display.update took 64346061 nanos
    [14:56:48] [main/INFO] [FML]: Forge Mod Loader has identified 5 mods to load
    [14:56:48] [main/INFO] [FML]: Attempting connection with missing mods [minecraft, mcp, FML, forge, essence] at CLIENT
    [14:56:48] [main/INFO] [FML]: Attempting connection with missing mods [minecraft, mcp, FML, forge, essence] at SERVER
    [14:56:49] [main/INFO] [net.minecraft.client.resources.SimpleReloadableResourceManager]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:Journey Into the Light
    [14:56:49] [main/INFO] [FML]: Processing ObjectHolder annotations
    [14:56:49] [main/INFO] [FML]: Found 1168 ObjectHolder annotations
    [14:56:49] [main/INFO] [FML]: Identifying ItemStackHolder annotations
    [14:56:49] [main/INFO] [FML]: Found 0 ItemStackHolder annotations
    [14:56:49] [main/INFO] [FML]: Configured a dormant chunk cache size of 0
    [14:56:49] [Forge Version Check/INFO] [forge.VersionCheck]: [forge] Starting version check at http://files.minecraftforge.net/maven/net/minecraftforge/forge/promotions_slim.json
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `basic`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `bouncing`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `chaos`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `doom`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `conjuring`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `enlightment`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `greenpace`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `wizardsstar`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `magmaball`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `flamearrow`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `iceball`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `templeball`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `lightningball`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `poisonarrow`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `darknessarrow`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `frozenarrow`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `rockchunk`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `netherplasma`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `oceanplasma`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `forestplasma`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `boilingpiercer`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `nethicpiercer`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `frozenpiercer`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `eucapiercer`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `depthspiercer`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `corbapiercer`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `frostbittenpiercer`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `frostypiercer`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `bubbleprojectile`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `detractor`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `power`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `shimmererprojectile`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `demonicbomb`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `firebomb`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `starlightvillager`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `starlightblacksmith`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `mage`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `blacksmith`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `frozenmerchant`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `escapedconvict`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `staringguardian`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `tordo`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `redtordo`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `boiltrader`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `alloymender`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `terraniantrader`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `overgrownmurchant`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `terranianenchanter`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `rockitegolem`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `soulwatcher`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `beastofthenether`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `witheringbeast`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `calcia`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `templeguardian`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `fourfa`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `blazier`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `sentryking`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `thunderbird`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `logger`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `corallator`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `skystalker`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `eudor`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `scale`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:49] [main/INFO] [FML]: Potentially Dangerous alternative prefix `minecraft` for name `terranianprotector`, expected `essence`. This could be a intended override, but in most cases indicates a broken mod.
    [14:56:50] [Forge Version Check/INFO] [forge.VersionCheck]: [forge] Found status: OUTDATED Target: 14.23.4.2705
    [14:56:50] [main/INFO] [FML]: Ignored smelting recipe with conflicting input: 1xitem.spawnerClump@32767 = 1xitem.spawnerBar@0
    [14:56:50] [main/INFO] [FML]: Ignored smelting recipe with conflicting input: 1xitem.flamingBeef@32767 = 1xitem.flamingBeefCooked@0
    [14:56:50] [main/INFO] [FML]: Ignored smelting recipe with conflicting input: 1xitem.ironDust@32767 = 1xitem.ingotIron@0
    [14:56:50] [main/INFO] [FML]: Ignored smelting recipe with conflicting input: 1xitem.goldDust@32767 = 1xitem.ingotGold@0
    [14:56:50] [main/INFO] [FML]: Ignored smelting recipe with conflicting input: 1xitem.diamondDust@32767 = 1xitem.diamond@0
    [14:56:50] [main/INFO] [FML]: Ignored smelting recipe with conflicting input: 1xitem.enderilliumDust@32767 = 1xitem.enderilliumShard@0
    [14:56:50] [main/INFO] [FML]: Ignored smelting recipe with conflicting input: 1xitem.leather@0 = 1xitem.rottenFlesh@0
    [14:56:50] [main/INFO] [Journey Into the Light]: [Journey Into the Light] Registering Dimensions...
    [14:56:50] [main/INFO] [Journey Into the Light]: [Journey Into the Light] Registering dimension ID: 20
    [14:56:50] [main/INFO] [Journey Into the Light]: [Journey Into the Light] Registering dimension ID: 21
    [14:56:50] [main/INFO] [Journey Into the Light]: [Journey Into the Light] Registering dimension ID: 22
    [14:56:50] [main/INFO] [Journey Into the Light]: [Journey Into the Light] Registering dimension ID: 23
    [14:56:50] [main/INFO] [Journey Into the Light]: [Journey Into the Light] Registering dimension ID: 24
    [14:56:50] [main/INFO] [Journey Into the Light]: [Journey Into the Light] Registering dimension ID: 26
    [14:56:50] [main/INFO] [Journey Into the Light]: [Journey Into the Light] Registering dimension ID: 27
    [14:56:50] [main/INFO] [Journey Into the Light]: [Journey Into the Light] Registering dimension ID: 28
    [14:56:50] [main/INFO] [Journey Into the Light]: [Journey Into the Light] Registering dimension ID: 29
    [14:56:50] [main/INFO] [Journey Into the Light]: [Journey Into the Light] Registering dimension ID: 30
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name oreAshual has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:654)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:640)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:639)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.addOreDictionary(CommonProxy.java:110)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:78)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.JITL.preInit(JITL.java:52)...
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name oreCelestium has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:654)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:640)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:639)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.addOreDictionary(CommonProxy.java:111)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:78)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.JITL.preInit(JITL.java:52)...
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name oreLunium has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:654)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:640)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:639)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.addOreDictionary(CommonProxy.java:112)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:78)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.JITL.preInit(JITL.java:52)...
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name oreShadium has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:654)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:640)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:639)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.addOreDictionary(CommonProxy.java:113)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:78)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.JITL.preInit(JITL.java:52)...
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name oreFlairium has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:654)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:640)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:639)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.addOreDictionary(CommonProxy.java:114)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:78)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.JITL.preInit(JITL.java:52)...
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name oreSapphire has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:654)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:640)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:639)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.addOreDictionary(CommonProxy.java:115)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:78)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.JITL.preInit(JITL.java:52)...
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: * A broken ore dictionary registration with name ash has occurred. It adds an item (type: class net.slayer.api.item.ItemMod) which is currently unknown to the game registry. This dictionary item can only support a single value when registered with ores like this, and NO I am not going to turn this spam off. Just register your ore dictionary entries after the GameRegistry.
    TO USERS: YES this is a BUG in the mod Journey Into the Light report it to them!
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:668)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:640)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:638)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.addOreDictionary(CommonProxy.java:116)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:78)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.JITL.preInit(JITL.java:52)...
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: * A broken ore dictionary registration with name ingotCelestium has occurred. It adds an item (type: class net.slayer.api.item.ItemMod) which is currently unknown to the game registry. This dictionary item can only support a single value when registered with ores like this, and NO I am not going to turn this spam off. Just register your ore dictionary entries after the GameRegistry.
    TO USERS: YES this is a BUG in the mod Journey Into the Light report it to them!
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:668)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:640)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:638)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.addOreDictionary(CommonProxy.java:117)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:78)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.JITL.preInit(JITL.java:52)...
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: * A broken ore dictionary registration with name ingotLunium has occurred. It adds an item (type: class net.slayer.api.item.ItemMod) which is currently unknown to the game registry. This dictionary item can only support a single value when registered with ores like this, and NO I am not going to turn this spam off. Just register your ore dictionary entries after the GameRegistry.
    TO USERS: YES this is a BUG in the mod Journey Into the Light report it to them!
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:668)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:640)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:638)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.addOreDictionary(CommonProxy.java:118)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:78)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.JITL.preInit(JITL.java:52)...
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: * A broken ore dictionary registration with name ingotShadium has occurred. It adds an item (type: class net.slayer.api.item.ItemMod) which is currently unknown to the game registry. This dictionary item can only support a single value when registered with ores like this, and NO I am not going to turn this spam off. Just register your ore dictionary entries after the GameRegistry.
    TO USERS: YES this is a BUG in the mod Journey Into the Light report it to them!
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:668)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:640)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:638)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.addOreDictionary(CommonProxy.java:119)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:78)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.JITL.preInit(JITL.java:52)...
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: * A broken ore dictionary registration with name ingotFlairium has occurred. It adds an item (type: class net.slayer.api.item.ItemMod) which is currently unknown to the game registry. This dictionary item can only support a single value when registered with ores like this, and NO I am not going to turn this spam off. Just register your ore dictionary entries after the GameRegistry.
    TO USERS: YES this is a BUG in the mod Journey Into the Light report it to them!
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:668)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:640)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:638)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.addOreDictionary(CommonProxy.java:120)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:78)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.JITL.preInit(JITL.java:52)...
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: * A broken ore dictionary registration with name gemSapphire has occurred. It adds an item (type: class net.slayer.api.item.ItemMod) which is currently unknown to the game registry. This dictionary item can only support a single value when registered with ores like this, and NO I am not going to turn this spam off. Just register your ore dictionary entries after the GameRegistry.
    TO USERS: YES this is a BUG in the mod Journey Into the Light report it to them!
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:668)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:640)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:638)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.addOreDictionary(CommonProxy.java:121)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:78)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.JITL.preInit(JITL.java:52)...
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/WARN] [FML]: * A broken ore dictionary registration with name gemBlazium has occurred. It adds an item (type: class net.slayer.api.item.ItemMod) which is currently unknown to the game registry. This dictionary item can only support a single value when registered with ores like this, and NO I am not going to turn this spam off. Just register your ore dictionary entries after the GameRegistry.
    TO USERS: YES this is a BUG in the mod Journey Into the Light report it to them!
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:668)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:640)
    [14:56:50] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:638)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.addOreDictionary(CommonProxy.java:122)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.proxy.CommonProxy.preInit(CommonProxy.java:78)
    [14:56:50] [main/WARN] [FML]: *  at net.journey.JITL.preInit(JITL.java:52)...
    [14:56:50] [main/WARN] [FML]: ****************************************
    [14:56:50] [main/ERROR] [FML]: Exception caught during firing event net.minecraftforge.event.RegistryEvent$Register@47b8e2:
    java.lang.NullPointerException: Can't use a null-name for the registry, object Block{null}.
        at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:864) ~[guava-21.0.jar:?]
        at net.minecraftforge.registries.ForgeRegistry.add(ForgeRegistry.java:287) ~[ForgeRegistry.class:?]
        at net.minecraftforge.registries.ForgeRegistry.add(ForgeRegistry.java:281) ~[ForgeRegistry.class:?]
        at net.minecraftforge.registries.ForgeRegistry.register(ForgeRegistry.java:114) ~[ForgeRegistry.class:?]
        at net.journey.RegistrationHandler.registerBlocks(RegistrationHandler.java:39) ~[RegistrationHandler.class:?]
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_4_RegistrationHandler_registerBlocks_Register.invoke(.dynamic) ~[?:?]
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) ~[ASMEventHandler.class:?]
        at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:143) ~[EventBus$1.class:?]
        at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:179) [EventBus.class:?]
        at net.minecraftforge.registries.GameData.fireRegistryEvents(GameData.java:736) [GameData.class:?]
        at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:604) [Loader.class:?]
        at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:270) [FMLClientHandler.class:?]
        at net.minecraft.client.Minecraft.init(Minecraft.java:513) [Minecraft.class:?]
        at net.minecraft.client.Minecraft.run(Minecraft.java:421) [Minecraft.class:?]
        at net.minecraft.client.main.Main.main(Main.java:118) [Main.class:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_171]
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_171]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_171]
        at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_171]
        at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
        at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_171]
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_171]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_171]
        at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_171]
        at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]
        at GradleStart.main(GradleStart.java:25) [start/:?]
    [14:56:50] [main/ERROR] [FML]: Index: 2 Listeners:
    [14:56:50] [main/ERROR] [FML]: 0: NORMAL
    [14:56:50] [main/ERROR] [FML]: 1: net.minecraftforge.fml.common.eventhandler.EventBus$1@6ec05499
    [14:56:50] [main/ERROR] [FML]: 2: net.minecraftforge.fml.common.eventhandler.EventBus$1@308617d3
    [14:56:50] [main/ERROR] [FML]: 3: net.minecraftforge.fml.common.eventhandler.EventBus$1@4659d776
    [14:56:50] [main/ERROR] [FML]: 4: net.minecraftforge.fml.common.eventhandler.EventBus$1@276038e7
    [14:56:50] [main/ERROR] [FML]: 5: net.minecraftforge.fml.common.eventhandler.EventBus$1@4be8d40e
    [14:56:50] [main/INFO] [STDOUT]: [net.minecraft.init.Bootstrap:printToSYSOUT:629]: ---- Minecraft Crash Report ----
    // This is a token for 1 free hug. Redeem at your nearest Mojangsta: [~~HUG~~]
    	Time: 6/10/18 2:56 PM
    Description: Initializing game
    	java.lang.NullPointerException: Can't use a null-name for the registry, object Block{null}.
        at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:864)
        at net.minecraftforge.registries.ForgeRegistry.add(ForgeRegistry.java:287)
        at net.minecraftforge.registries.ForgeRegistry.add(ForgeRegistry.java:281)
        at net.minecraftforge.registries.ForgeRegistry.register(ForgeRegistry.java:114)
        at net.journey.RegistrationHandler.registerBlocks(RegistrationHandler.java:39)
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_4_RegistrationHandler_registerBlocks_Register.invoke(.dynamic)
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
        at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:143)
        at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:179)
        at net.minecraftforge.registries.GameData.fireRegistryEvents(GameData.java:736)
        at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:604)
        at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:270)
        at net.minecraft.client.Minecraft.init(Minecraft.java:513)
        at net.minecraft.client.Minecraft.run(Minecraft.java:421)
        at net.minecraft.client.main.Main.main(Main.java:118)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
        at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97)
        at GradleStart.main(GradleStart.java:25)
    	
    A detailed walkthrough of the error, its code path and all known details is as follows:
    ---------------------------------------------------------------------------------------
    	-- Head --
    Thread: Client thread
    Stacktrace:
        at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:864)
        at net.minecraftforge.registries.ForgeRegistry.add(ForgeRegistry.java:287)
        at net.minecraftforge.registries.ForgeRegistry.add(ForgeRegistry.java:281)
        at net.minecraftforge.registries.ForgeRegistry.register(ForgeRegistry.java:114)
        at net.journey.RegistrationHandler.registerBlocks(RegistrationHandler.java:39)
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_4_RegistrationHandler_registerBlocks_Register.invoke(.dynamic)
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
        at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:143)
        at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:179)
        at net.minecraftforge.registries.GameData.fireRegistryEvents(GameData.java:736)
        at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:604)
        at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:270)
        at net.minecraft.client.Minecraft.init(Minecraft.java:513)
    	-- Initialization --
    Details:
    Stacktrace:
        at net.minecraft.client.Minecraft.run(Minecraft.java:421)
        at net.minecraft.client.main.Main.main(Main.java:118)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
        at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97)
        at GradleStart.main(GradleStart.java:25)
    	-- System Details --
    Details:
        Minecraft Version: 1.12.2
        Operating System: Windows 10 (amd64) version 10.0
        Java Version: 1.8.0_171, Oracle Corporation
        Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
        Memory: 626648600 bytes (597 MB) / 1037959168 bytes (989 MB) up to 1037959168 bytes (989 MB)
        JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
        IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
        FML: MCP 9.42 Powered by Forge 14.23.3.2655 5 mods loaded, 5 mods active
        States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
    	    | State | ID        | Version      | Source                           | Signature |
        |:----- |:--------- |:------------ |:-------------------------------- |:--------- |
        | UCH   | minecraft | 1.12.2       | minecraft.jar                    | None      |
        | UCH   | mcp       | 9.42         | minecraft.jar                    | None      |
        | UCH   | FML       | 8.0.99.99    | forgeSrc-1.12.2-14.23.3.2655.jar | None      |
        | UCH   | forge     | 14.23.3.2655 | forgeSrc-1.12.2-14.23.3.2655.jar | None      |
        | UCH   | essence   | 1.2          | bin                              | None      |
    	    Loaded coremods (and transformers): 
        GL info: ' Vendor: 'Intel' Version: '4.4.0 - Build 22.20.16.4708' Renderer: 'Intel(R) HD Graphics 630'
        Launched Version: 1.12.2
        LWJGL: 2.9.4
        OpenGL: Intel(R) HD Graphics 630 GL version 4.4.0 - Build 22.20.16.4708, Intel
        GL Caps: Using GL 1.3 multitexturing.
    Using GL 1.3 texture combiners.
    Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.
    Shaders are available because OpenGL 2.1 is supported.
    VBOs are available because OpenGL 1.5 is supported.
    	    Using VBOs: Yes
        Is Modded: Definitely; Client brand changed to 'fml,forge'
        Type: Client (map_client.txt)
        Resource Packs: 
        Current Language: English (US)
        Profiler Position: N/A (disabled)
        CPU: 8x Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
    [14:56:50] [main/INFO] [STDOUT]: [net.minecraft.init.Bootstrap:printToSYSOUT:629]: #@!@# Game crashed! Crash report saved to: #@!@# D:\Development\Minecraft\Forge\1.12\.\crash-reports\crash-2018-06-10_14.56.50-client.txt
     
    	
  8. I think its fixed now, i added a player parameter to the methods and seemed to fix it all

     

    	if(player instanceof EntityPlayerMP) Journey.wrapper.sendTo(new MessageEssenceBar(essence, regenDelay == 0), (EntityPlayerMP)player);
    

     

    also did that, thanks!

  9. The thing is i dont have a instance to EntityPlayer in the Essence class, i could make a constructor in the class getting one, but i dont create an instance for the  Essence class either, its constructed from the default instance method, and even if i wanted to change that, where i register my class in the BarTickHandler i dont have a player instance either so thats another problem, i could use Minecraft.getMinecraft().thePlayer but thats a SP instance and i want MP

  10. [spoiler=Journey]

    public static SimpleNetworkWrapper wrapper;
    
    @EventHandler
    public static void preInit(FMLPreInitializationEvent event) {
    	wrapper = NetworkRegistry.INSTANCE.newSimpleChannel("EssenceNetwork");
    	wrapper.registerMessage(MessageEssenceBar.EssenceHandler.class, MessageEssenceBar.class, 0, Side.CLIENT);
             }
    

     

     

     

    [spoiler=common/client proxy]

    public void updateEssence(int amount) { }
    -------------------------------------------------------------------
    @Override
    public void updateEssence(int amount) {
    	final IEssenceBar essence = Minecraft.getMinecraft().thePlayer.getCapability(BarTickHandler.ESSENCE_CAP, null);
    	essence.setBarValue(amount);
    }
    
    

     

     

     

    [spoiler=MessageEssenceBar]

    public class MessageEssenceBar implements IMessage {
    
    public int amount;
    public boolean shouldRegen;
    
    public MessageEssenceBar() { }
    
    public MessageEssenceBar(int amount, boolean shouldRegen) {
    	this.amount = amount;
    	this.shouldRegen = shouldRegen;
    }
    
    @Override
    public void fromBytes(ByteBuf buf) {
    	amount = buf.readInt();
    	shouldRegen = buf.readBoolean();
    }
    
    @Override
    public void toBytes(ByteBuf buf) {
    	buf.writeInt(amount);
    	buf.writeBoolean(shouldRegen);
    }
    
    public static class EssenceHandler implements IMessageHandler<MessageEssenceBar, IMessage> {
    
    	@Override
    	public IMessage onMessage(MessageEssenceBar message, MessageContext ctx) {
    		BarTickHandler.essenceAmount = message.amount;
    		BarTickHandler.regenEssence = message.shouldRegen;
    		Journey.proxy.updateEssence(message.amount);
    		return null;
    	}
    }
    }
    

     

     

  11. Hey, i was updating from 1.8 with IEEP to 1.10 with Capabilities, but everything I've done seem to add a copy of my mana, an un usable version of it. I ran a debug system print of the mana value, it rejuvenates as you would expect it too over time, but a ghost value renders over my mana bar and not the value that keeps changing when i right click the item

     

    The ghost value rejuvenates as well but it gets to 10, like the bar is supposed too but wont go down when i use the item, the main value does go down when i use it though, its like when i right click the item, the value gets used, then the ghost value is dominate as the bar rending code uses that value instead.

     

    [spoiler=Item code]

    @Override
    public ActionResult<ItemStack> onItemRightClick(ItemStack stack, World world, EntityPlayer player, EnumHand hand) {  
            final IEssenceBar bar1 = player.getCapability(BarTickHandler.ESSENCE_CAP, null);
    	if(!world.isRemote && bar1.useBar(usage)) {
    		//ENTITY SPAWN CODE
    	}
    }
    

     

     

     

    [spoiler=Bar tick code]

    public class BarTickHandler {
    
    private EntityPlayer player;
    private int ticks = 10;
    
    public static int darkAmount, powerAmount;
    @CapabilityInject(IEssenceBar.class)
    public static Capability<IEssenceBar> ESSENCE_CAP = null;
    
    @SubscribeEvent
    public void onEntityConstructing(AttachCapabilitiesEvent evt) {
    	evt.addCapability(new ResourceLocation(SlayerAPI.MOD_ID, "IEssenceBar"), new ICapabilitySerializable<NBTPrimitive>() {
    		IEssenceBar inst = ESSENCE_CAP.getDefaultInstance();
    		@Override
    		public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
    			return capability == ESSENCE_CAP;
    		}
    
    		@Override
    		public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
    			return capability == ESSENCE_CAP ? ESSENCE_CAP.<T>cast(inst) : null;
    		}
    
    		@Override
    		public NBTPrimitive serializeNBT() {
    			return (NBTPrimitive)ESSENCE_CAP.getStorage().writeNBT(ESSENCE_CAP, inst, null);
    		}
    
    		@Override
    		public void deserializeNBT(NBTPrimitive nbt) {
    			ESSENCE_CAP.getStorage().readNBT(ESSENCE_CAP, inst, null, nbt);
    		}
    	});
    }
    
    @SubscribeEvent
    public void onTick(PlayerTickEvent event) {
    	if(event.phase == Phase.END) tickEnd(event.player);
    }
    
    @SubscribeEvent
    @SideOnly(Side.CLIENT)
    public void renderEvent(RenderTickEvent event) {
    	onTickRender(Minecraft.getMinecraft().thePlayer);
    }
    
    @SideOnly(Side.CLIENT)
    private void onTickRender(EntityPlayer player) {
    	Minecraft mc = Minecraft.getMinecraft();
    	if(mc.currentScreen == null) {
    		if(!player.capabilities.isCreativeMode) {
    			GL11.glPushMatrix();
    			GlStateManager.enableBlend();
    			GlStateManager.enableAlpha();
    			GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
    			GuiIngame gig = mc.ingameGUI;
    			ScaledResolution scaledresolution = new ScaledResolution(mc);
    			mc.getTextureManager().bindTexture(new ResourceLocation(SlayerAPI.MOD_ID, "textures/gui/misc.png"));
    			int y = scaledresolution.getScaledHeight() - 30, x = 10, x1 = 10, x2 = 10;
    			gig.drawTexturedModalRect(x - 10, y + 10, 0, 177, 117, 19);
    			gig.drawTexturedModalRect(x - 10, y - 5, 0, 177, 117, 19);
    			gig.drawTexturedModalRect(x - 10, y - 20, 0, 177, 117, 19);
    
    			gig.drawTexturedModalRect(x - 6, y - 13, 0, 23, 109, 5);
    
    			for(int i = 0; i < player.getCapability(ESSENCE_CAP, null).getBarValue(); i++) {
    				x += 11;
    				gig.drawTexturedModalRect(x - 17, y - 13, 0, 0, 10, 5);
    			}
    			y += 15;
    			gig.drawTexturedModalRect(x1 - 6, y - 13, 0, 36, 109, 5);
    			for(int i = 0; i < darkAmount; i++) {
    				x1 += 11;
    				gig.drawTexturedModalRect(x1 - 17, y - 13, 0, 5, 10, 5);
    			}
    			gig.drawTexturedModalRect(x2 - 6, y + 2, 0, 49, 109, 5);
    			for(int i = 0; i < powerAmount; i++) {
    				x2 += 11;
    				gig.drawTexturedModalRect(x2 - 17, y + 2, 0, 10, 10, 5);
    			}
    			GlStateManager.disableAlpha();
    			GlStateManager.disableBlend();
    			GL11.glPopMatrix();
    		}
    	}
    }
    
    private void tickEnd(EntityPlayer player) {
    	final IEssenceBar essence = player.getCapability(ESSENCE_CAP, null);
    	if(ticks-- <= 0) ticks = 20;
    	if(ticks >= 20) {
    		essence.updateAllBars();
    	}
    	essence.mainUpdate();
    }
    }
    

     

     

     

    [spoiler=Capability registry in common proxy]

    CapabilityManager.INSTANCE.register(IEssenceBar.class, new EssenceStorage(), EssenceBar.class);
    

     

     

     

    [spoiler=IEssenceBar]

    public interface IEssenceBar {
    
    boolean useBar(int mana);
    int getBarValue();
    void mainUpdate();
    void setBarValue(int mana);
    void removeBarPoints(int mana);
    void updateAllBars();
    }
    

     

     

     

    [spoiler=EssenceBar]

    @Override
    public boolean useBar(int amount) {
    	if(essence < amount) {
    		regenDelay = 10;
    		return false;
    	}
    	essence -= amount;
    	regenDelay = 10;
    	return true;
    }
    
    @Override
    public int getBarValue() {
    	return essence;
    }
    
    @Override
    public void mainUpdate() {
    	if(getBarValue() >= 10) essence = 10;
    	System.out.println(essence);
    }
    
    @Override
    public void setBarValue(int mana) {
    	essence = mana;
    }
    
    @Override
    public void removeBarPoints(int mana) {
    	regenDelay = 10;
    	essence -= mana;
    }
    
    @Override
    public void updateAllBars() {
    	essence += 1;
    }
    }
    

     

     

     

    [spoiler=EssenceStorage]

    public class EssenceStorage implements Capability.IStorage<IEssenceBar>{
    
    @Override
    public NBTBase writeNBT(Capability<IEssenceBar> capability, IEssenceBar instance, EnumFacing side) {
    	return new NBTTagByte((byte)0);
    }
    
    @Override
    public void readNBT(Capability<IEssenceBar> capability, IEssenceBar instance, EnumFacing side, NBTBase nbt) {
    
    }
    }
    

     

     

  12. It literally says in the top line...

     

    [08:38:56] [Netty Local Client IO #0/ERROR] [FML]: There was a critical exception handling a packet on channel TriamChannel
    io.netty.handler.codec.DecoderException: java.lang.IllegalArgumentException: Varint length is between 1 and 5, not 16
    

  13. While trying to make some kind of "crafting table" by checking the items in the slots I seem to get a crash when i try to remove an item from any slot in the Tile Entity (Inventory slots work fine)

     

    Here is what the GUI looks like:

    http://prntscr.com/6rh5df

     

    I get a NPE at the line

    for(int i = 0; i < inventory.length; i++)
    

    In the Tile entity -> public void writeToNBT(NBTTagCompound nbt)

     

    [spoiler=Container]

    public class ContainerSummoningTable extends Container {
    
    public IInventory tableInventory;
    private World world;
    
    public ContainerSummoningTable(InventoryPlayer inventory, TileEntitySummoningTable entity, World w) {
    	world = w;
    	tableInventory = entity;
    	this.addSlotToContainer(new Slot(entity, 0, 44, 17));
    	this.addSlotToContainer(new Slot(entity, 1, 44, 35));
    	this.addSlotToContainer(new Slot(entity, 2, 44, 53));
    	this.addSlotToContainer(new Slot(entity, 3, 80, 35));
    	this.addSlotToContainer(new Slot(entity, 4, 117, 17));
    	this.addSlotToContainer(new Slot(entity, 5, 117, 35));
    	this.addSlotToContainer(new Slot(entity, 6, 117, 53));
    
    	for(int i = 0; i < 3; ++i) for(int j = 0; j < 9; ++j) this.addSlotToContainer(new Slot(inventory, j + i * 9 + 9, 8 + j * 18, 84 + i * 18));
    	for(int i = 0; i < 9; ++i) this.addSlotToContainer(new Slot(inventory, i, 8 + i * 18, 142));
    }
    
    @Override
    public void onContainerClosed(EntityPlayer playerIn) {
    	super.onContainerClosed(playerIn);
    	/*if(!world.isRemote) {
    		ItemStack itemstack = this.tableInventory.getStackInSlotOnClosing(0);
    		if (itemstack != null) {
    			playerIn.dropPlayerItemWithRandomChoice(itemstack, false);
    		}
    	}*/
    }
    
    @Override
    public boolean canInteractWith(EntityPlayer playerIn) {
    	return true;
    }
    }
    

     

     

     

    [spoiler=Tile Entity]

    public class TileEntitySummoningTable extends TileEntity implements IUpdatePlayerListBox, IInventory {
    
    private ItemStack[] inventory;
    
    public TileEntitySummoningTable() {
    	this.inventory = new ItemStack[7];
    }
    
    @Override
    public void writeToNBT(NBTTagCompound nbt) {
    	super.writeToNBT(nbt);
    	NBTTagList nbttaglist = new NBTTagList();
    	for(int i = 0; i < inventory.length; i++) {
    		if(this.inventory[i] != null) {
    			NBTTagCompound nbttagcompound1 = new NBTTagCompound();
    			nbttagcompound1.setByte("Slot", (byte)i);
    			this.inventory[i].writeToNBT(nbttagcompound1);
    			nbttaglist.appendTag(nbttagcompound1);
    		}
    	}
    	nbt.setTag("Items", nbttaglist);
    }
    
    @Override
    public void readFromNBT(NBTTagCompound nbt) {
    	super.readFromNBT(nbt);
    	NBTTagList nbttaglist = nbt.getTagList("Items", 10);
    	for(int i = 0; i < nbttaglist.tagCount(); i++) {
    		NBTTagCompound nbttagcompound1 = nbttaglist.getCompoundTagAt(i);
    		byte b0 = nbttagcompound1.getByte("Slot");
    		if(b0 >= 0 && b0 < this.inventory.length)
    			this.inventory[b0] = ItemStack.loadItemStackFromNBT(nbttagcompound1);
    	} 
    }
    
    @Override
    public void update() {
    	/*if(inventory[0] != null && inventory[1] != null && inventory[2] != null && inventory[3] != null && inventory[4] != null && inventory[5] != null && inventory[6] != null) {
    		Item item1 = inventory[0].getItem(), item2 = inventory[1].getItem(), item3 = inventory[2].getItem(), item4 = inventory[3].getItem(), item5 = inventory[4].getItem(), item6 = inventory[5].getItem(), item7 = inventory[6].getItem();
    		if(item1 == EssenceItems.boilPowder && item2 == EssenceItems.boilPowder && item3 == EssenceItems.boilPowder && item4 == EssenceItems.blazingFireball && item5 == EssenceItems.boilPowder && item6 == EssenceItems.boilPowder && item7 == EssenceItems.boilPowder) {
    			inventory[3].setItem(EssenceItems.blazierOrb);
    		}
    	}*/
    }
    
    @Override
    public int getSizeInventory() {
    	return inventory.length;
    }
    
    @Override
    public ItemStack getStackInSlot(int i) {
    	return inventory[i];
    }
    
    @Override
    public String getName() {
    	return "Summoning Table";
    }
    
    @Override
    public boolean hasCustomName() {
    	return true;
    }
    
    @Override
    public IChatComponent getDisplayName() {
    	return null;
    }
    
    @Override
    public ItemStack decrStackSize(int i, int j) {
    	if(inventory[i] != null) {
    		if(inventory[i].stackSize <= j) {
    			ItemStack itemstack = inventory[i];
    			inventory = null;
    			return itemstack;
    		} else {
    			inventory[i].stackSize -= j;
    			return new ItemStack(inventory[i].getItem(), j, inventory[i].getMetadata());
    		}
    	} else {
    		return null;
    	}
    }
    
    @Override
    public ItemStack getStackInSlotOnClosing(int index) {
    	if(this.inventory[index] != null)  {
    		ItemStack itemstack = inventory[index];
    		this.inventory = null;
    		return itemstack;
    	} else {
    		return null;
    	}
    }
    
    @Override
    public void setInventorySlotContents(int index, ItemStack stack) {
    	boolean flag = stack != null && stack.isItemEqual(this.inventory[index]) && ItemStack.areItemStackTagsEqual(stack, this.inventory[index]);
    	this.inventory[index] = stack;
    	if(stack != null && stack.stackSize > this.getInventoryStackLimit())
    		stack.stackSize = this.getInventoryStackLimit();
    	if(index == 0 && !flag) this.markDirty();
    }
    
    @Override
    public int getInventoryStackLimit() {
    	return 64;
    }
    
    @Override
    public boolean isUseableByPlayer(EntityPlayer player) {
    	return true;
    }
    
    @Override
    public void openInventory(EntityPlayer player) { }
    
    @Override
    public void closeInventory(EntityPlayer player) { }
    
    @Override
    public boolean isItemValidForSlot(int index, ItemStack stack) {
    	return stack.getItem() != null;
    }
    
    @Override
    public int getField(int id) {
    	return 0;
    }
    
    @Override
    public void setField(int id, int value) { }
    
    @Override
    public int getFieldCount() {
    	return 0;
    }
    
    @Override
    public void clear() {
    	for(int i = 0; i < getSizeInventory(); i++) inventory[i] = null;
    }
    }
    

     

     

     

    [spoiler=Crash]

    [15:24:40] [server thread/ERROR] [FML]: A TileEntity type net.essence.blocks.tileentity.TileEntitySummoningTable has throw an exception trying to write state. It will not persist. Report this to the mod author
    java.lang.NullPointerException
    at net.essence.blocks.tileentity.TileEntitySummoningTable.writeToNBT(TileEntitySummoningTable.java:26) ~[TileEntitySummoningTable.class:?]
    at net.minecraft.world.chunk.storage.AnvilChunkLoader.writeChunkToNBT(AnvilChunkLoader.java:382) [AnvilChunkLoader.class:?]
    at net.minecraft.world.chunk.storage.AnvilChunkLoader.saveChunk(AnvilChunkLoader.java:183) [AnvilChunkLoader.class:?]
    at net.minecraft.world.gen.ChunkProviderServer.saveChunkData(ChunkProviderServer.java:246) [ChunkProviderServer.class:?]
    at net.minecraft.world.gen.ChunkProviderServer.saveChunks(ChunkProviderServer.java:305) [ChunkProviderServer.class:?]
    at net.minecraft.world.WorldServer.saveAllChunks(WorldServer.java:938) [WorldServer.class:?]
    at net.minecraft.server.MinecraftServer.saveAllWorlds(MinecraftServer.java:363) [MinecraftServer.class:?]
    at net.minecraft.server.MinecraftServer.stopServer(MinecraftServer.java:395) [MinecraftServer.class:?]
    at net.minecraft.server.integrated.IntegratedServer.stopServer(IntegratedServer.java:328) [integratedServer.class:?]
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:531) [MinecraftServer.class:?]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_20]
    

     

     

×
×
  • Create New...

Important Information

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