Jump to content

[RESOLVED!][HELP] Custom TileEntity Render not working!


Alix_The_Alicorn

Recommended Posts

I have custom render code, and I know for a fact that my model, renderer, tile entity, and block are fine. But it's just rendering an invisible block (because we said not to render any sides in the block class) and I think the problem is that I'm not binding my renderer to my tile entity properly. In my client proxy I have a method called registerRenderers and in it I have my render binding. I have my client proxy set in my @NetworkMod but how to I make the game look at the registerRenderers method? Would I put it in my Init PreInit or PostInit or where?

Link to comment
Share on other sites

Call it from the @Init method. And as a side note, my magical-code-viewing-device ( MCVD ) is broken, so I can't pull up your code... Sorry.

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Link to comment
Share on other sites

Sorry, code

 

Main class

 

 

package com.jmanpenilla.carbonmod;

import net.minecraft.block.Block;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.world.biome.BiomeGenBase;

import com.jmanpenilla.carbonmod.config.Config;
import com.jmanpenilla.carbonmod.core.load.Load;
import com.jmanpenilla.carbonmod.core.proxy.CommonProxy;
import com.jmanpenilla.carbonmod.lib.Reference;
import com.jmanpenilla.carbonmod.worldgen.biome.BiomeHardClay;

import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.network.NetworkMod;

/**
* CarbonMod
* 
* @author jmanpenilla
* 
*/

@Mod(modid=Reference.MOD_ID, name=Reference.MOD_NAME, version=Reference.VERSION_NUMBER)
@NetworkMod
(
clientSideRequired=true,
serverSideRequired=false
)

public class CarbonMod {

    public static CreativeTabs tabCarbonMod = new CreativeTabs("tabCarbonMod") 
    {
    	public ItemStack getIconItemStack() 
    	{	
    		return new ItemStack(CarbonMod.compressedcarbonIngot.itemID, 1, 0);  		
    	}	
    };

    @Instance(Reference.MOD_ID)
    public static CarbonMod instance;
   
//Stuff we can't put in antoher class(Maybe we can, I'm still looking into it)
    
    //Where we make our variables to store the config values.
    
        public static int CompressedCarbonIngotItemID;
        public static int ChiselItemID;
        public static int RawCarbonOreBlockID;
        public static int ToolCircuitItemID;
        public static int CompressedCarbonBlockID;
        public static int CompressedCarbonBrickBlockID;
        public static int DiamondBrickBlockID;
        public static int EnergizedOreBlockID;
        public static int EnergizedDustItemID;
        public static int EnergizedBlockID;
        public static int EnergizedBrickBlockID;
        public static int CarbonCornSeedItemID;
        public static int CarbonCornCobItemID;
        public static int CarbonCornCobCookedItemID;
        public static int PopcornItemID;
        public static int CornStalkBlockID;
        public static int ButterIngotItemID;
        public static int ButterPopcornItemID;
        public static int CrackedClayBlockID;
        public static int GrillBlockID;
        
        @SidedProxy(
        		    clientSide=Reference.CLIENT_PROXY_CLASS,
                    serverSide=Reference.SERVER_PROXY_CLASS
                   )
        
        public static CommonProxy proxy;
        
        @EventHandler
        public void preInit(FMLPreInitializationEvent event) {
        	
        	//Make our config on first run, add to it when an update comes out, and read it when the mod loads.
        	
        	Config.config();
        }
        
        //Define our block and item variables
        
        public static Item compressedcarbonIngot;
        public static Block rawcarbonOre;
        public static Block compressedcarbonBlock;
        public static Block compressedcarbonBrick;
        public static Block diamondBrick;
        public static Item chisel;
        public static Item toolCircuit;
        public static Item energizedDust;
        public static Item cornCob;
        public static Item cornSeed;
        public static Item corncobCooked;
        public static Item popcorn;
        public static Block energizedOre;
        public static Block energizedBlock;
        public static Block energizedBrick;
        public static Block cornStalk;
        public static Item butterIngot;
        public static Item butterPopcorn;
        public static Block crackedClay;
        public static Block grill;
        
        @EventHandler
        public void load(FMLInitializationEvent event) {
        	
        	//Where we load the methods from our Load class. We have Load imported.
        	
        	    Load.chaining();
                Load.language();
                Load.brr();
                Load.crafting();
                Load.misc();
                
        }
        
        @EventHandler
        public void postInit(FMLPostInitializationEvent event) {
                //Put postInit stuff here later
        }
        
        //Biome
    public static final BiomeGenBase BiomeHardClay = new BiomeHardClay(25);
        
}

 

 

 

ClientProxy

 

 

package com.jmanpenilla.carbonmod.core.proxy;

import com.jmanpenilla.carbonmod.renderer.tileentity.RenderGrill;

import cpw.mods.fml.client.registry.ClientRegistry;



/**
* CarbonMod
* 
* @author jmanpenilla
* 
*/

public class ClientProxy extends CommonProxy {
        
        @Override
        public void registerRenderers() {
        	
        	ClientRegistry.bindTileEntitySpecialRenderer(com.jmanpenilla.carbonmod.tileentity.TileGrill.class, new RenderGrill());
        	
        }
        
}

 

 

Link to comment
Share on other sites

public class CommonProxy {

        // Client stuff
        public void registerRenderers() {
                
         ClientRegistry.bindTileEntitySpecialRenderer(com.jmanpenilla.carbonmod.tileentity.TileGrill.class, new RenderGrill());
        
        }
}

Doesn't make sense.

Link to comment
Share on other sites

Hi

 

Just a thought -have you overridden Block.createNewTileEntity() properly?  are you sure you are creating the tile entity at the proper location?

 

It might help to diagnose your problem if you set a breakpoint in RenderGlobal.renderEntities below.  (Suggest spawning in flatland with just your block in sight)

 

If your TileEntity has been correctly created, it should be in tileEntities.

 

            for (i = 0; i < this.tileEntities.size(); ++i)
            {
                TileEntity tile = (TileEntity)tileEntities.get(i);
                if (tile.shouldRenderInPass(pass) && par2ICamera.isBoundingBoxInFrustum(tile.getRenderBoundingBox()))
                {
                    TileEntityRenderer.instance.renderTileEntity(tile, par3);
                }
            }

 

If it gets through to TileEntitySpecialRenderer.getSpecialRendererForClass then it should find your renderer in specialRendererMap.  If it doesn't (recurses up to TileEntity) then you haven't registered your renderer properly (ClientRegistry.bindTileEntitySpecialRenderer)

 

        TileEntitySpecialRenderer tileentityspecialrenderer = (TileEntitySpecialRenderer)this.specialRendererMap.get(par1Class);

        if (tileentityspecialrenderer == null && par1Class != TileEntity.class)

 

If it retrieves your renderer properly and calls renderTileEntityAt, but it still doesn't render properly, then the problem is in your rendering code.

 

-TGG

 

 

 

Link to comment
Share on other sites

public class CommonProxy {

        // Client stuff
        public void registerRenderers() {
                
         ClientRegistry.bindTileEntitySpecialRenderer(com.jmanpenilla.carbonmod.tileentity.TileGrill.class, new RenderGrill());
        
        }
}

Doesn't make sense.

 

Was not used. Just for a test to see if I could call it from there.

Link to comment
Share on other sites

YAY! Solved. Also, while a pro is here would you happen to know why my worlds in eclipse never save?

log:

 

 

Sep 18, 2013 3:58:39 PM net.minecraft.launchwrapper.LogWrapper log
INFO: Using tweak class name cpw.mods.fml.common.launcher.FMLTweaker
2013-09-18 15:58:39 [iNFO] [ForgeModLoader] Forge Mod Loader version 6.2.60.859 for Minecraft 1.6.2 loading
2013-09-18 15:58:39 [iNFO] [ForgeModLoader] Java is Java HotSpot(TM) 64-Bit Server VM, version 1.7.0_13, running on Mac OS X:x86_64:10.9, installed at /Library/Java/JavaVirtualMachines/jdk1.7.0_13.jdk/Contents/Home/jre
2013-09-18 15:58:39 [iNFO] [ForgeModLoader] Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation
2013-09-18 15:58:39 [WARNING] [ForgeModLoader] The coremod codechicken.core.launch.CodeChickenCorePlugin does not have a MCVersion annotation, it may cause issues with this version of Minecraft
2013-09-18 15:58:40 [WARNING] [ForgeModLoader] The coremod codechicken.nei.asm.NEICorePlugin does not have a MCVersion annotation, it may cause issues with this version of Minecraft
2013-09-18 15:58:40 [iNFO] [sTDOUT] Loaded 39 rules from AccessTransformer config file fml_at.cfg
2013-09-18 15:58:40 [iNFO] [sTDOUT] Loaded 107 rules from AccessTransformer config file forge_at.cfg
2013-09-18 15:58:41 [iNFO] [sTDOUT] Loaded 39 rules from AccessTransformer config file fml_at.cfg
2013-09-18 15:58:43 [sEVERE] [ForgeModLoader] The binary patch set is missing. Either you are in a development environment, or things are not going to work!
2013-09-18 15:58:43 [iNFO] [sTDOUT] Adding AccessTransformer: nei_at.cfg
2013-09-18 15:58:43 [iNFO] [sTDOUT] Adding Accesstransformer map: temp.dat
2013-09-18 15:58:43 [iNFO] [sTDOUT] Loaded 53 rules from AccessTransformer config file temp.dat
2013-09-18 15:58:43 [iNFO] [ForgeModLoader] Launching wrapped minecraft
2013-09-18 15:58:44 [iNFO] [sTDOUT] Inserted super call into net.minecraft.client.gui.inventory.GuiInventory.updateScreen
2013-09-18 15:58:44 [iNFO] [sTDOUT] awv was overriden from NotEnoughItems 1.6.1.3.jar
2013-09-18 15:58:46 [iNFO] [Minecraft-Client] Setting user: Direwolf20
2013-09-18 15:58:46 [iNFO] [Minecraft-Client] (Session ID is null)
2013-09-18 15:58:46 [iNFO] [sTDOUT] Generated BlockMobSpawner helper method.
2013-09-18 15:58:48 [iNFO] [sTDOUT] Completely ignored arguments: [--versions, 1.6]
2013-09-18 15:58:48 [iNFO] [Minecraft-Client] LWJGL Version: 2.9.0
2013-09-18 15:58:49 [iNFO] [Minecraft-Client] Reloading ResourceManager: Default
2013-09-18 15:58:49 [iNFO] [sTDOUT] 
2013-09-18 15:58:49 [iNFO] [sTDOUT] Starting up SoundSystem...
2013-09-18 15:58:49 [iNFO] [sTDOUT] Initializing LWJGL OpenAL
2013-09-18 15:58:49 [iNFO] [sTDOUT]     (The LWJGL binding of OpenAL.  For more information, see http://www.lwjgl.org)
2013-09-18 15:58:50 [iNFO] [sTDOUT] OpenAL initialized.
2013-09-18 15:58:50 [iNFO] [sTDOUT] 
2013-09-18 15:58:50 [iNFO] [MinecraftForge] Attempting early MinecraftForge initialization
2013-09-18 15:58:50 [iNFO] [sTDOUT] MinecraftForge v9.10.1.859 Initialized
2013-09-18 15:58:50 [iNFO] [ForgeModLoader] MinecraftForge v9.10.1.859 Initialized
2013-09-18 15:58:50 [iNFO] [sTDOUT] Replaced 101 ore recipies
2013-09-18 15:58:50 [iNFO] [MinecraftForge] Completed early MinecraftForge initialization
2013-09-18 15:58:50 [iNFO] [ForgeModLoader] Reading custom logging properties from /Users/jason/Desktop/mcdev/forge/mcp/jars/config/logging.properties
2013-09-18 15:58:50 [OFF] [ForgeModLoader] Logging level for ForgeModLoader logging is set to ALL
2013-09-18 15:58:51 [iNFO] [ForgeModLoader] Searching /Users/jason/Desktop/mcdev/forge/mcp/jars/mods for mods
2013-09-18 15:58:51 [iNFO] [ForgeModLoader] Also searching /Users/jason/Desktop/mcdev/forge/mcp/jars/mods/1.6.2 for mods
2013-09-18 15:58:54 [WARNING] [ForgeMicroblock] Mod ForgeMicroblock is missing the required element 'version' and a version.properties file could not be found. Falling back to metadata version 1.0.0.144
2013-09-18 15:58:54 [WARNING] [ForgeMultipart] Mod ForgeMultipart is missing the required element 'version' and a version.properties file could not be found. Falling back to metadata version 1.0.0.144
2013-09-18 15:58:54 [WARNING] [McMultipart] Mod McMultipart is missing the required element 'version' and a version.properties file could not be found. Falling back to metadata version 1.0.0.144
2013-09-18 15:58:54 [WARNING] [ironChest] Mod IronChest is missing the required element 'version' and no fallback can be found. Substituting '1.0'.
2013-09-18 15:58:54 [iNFO] [ForgeModLoader] Forge Mod Loader has identified 17 mods to load
2013-09-18 15:58:54 [iNFO] [mcp] Activating mod mcp
2013-09-18 15:58:54 [iNFO] [FML] Activating mod FML
2013-09-18 15:58:54 [iNFO] [Forge] Activating mod Forge
2013-09-18 15:58:54 [iNFO] [CodeChickenCore] Activating mod CodeChickenCore
2013-09-18 15:58:54 [iNFO] [NotEnoughItems] Activating mod NotEnoughItems
2013-09-18 15:58:55 [iNFO] [ForgeMicroblock] Activating mod ForgeMicroblock
2013-09-18 15:58:55 [iNFO] [ForgeMultipart] Activating mod ForgeMultipart
2013-09-18 15:58:55 [iNFO] [McMultipart] Activating mod McMultipart
2013-09-18 15:58:55 [iNFO] [buildCraft|Builders] Activating mod BuildCraft|Builders
2013-09-18 15:58:55 [iNFO] [buildCraft|Core] Activating mod BuildCraft|Core
2013-09-18 15:58:55 [iNFO] [buildCraft|Energy] Activating mod BuildCraft|Energy
2013-09-18 15:58:55 [iNFO] [buildCraft|Factory] Activating mod BuildCraft|Factory
2013-09-18 15:58:55 [iNFO] [buildCraft|Silicon] Activating mod BuildCraft|Silicon
2013-09-18 15:58:55 [iNFO] [buildCraft|Transport] Activating mod BuildCraft|Transport
2013-09-18 15:58:55 [iNFO] [EE3] Activating mod EE3
2013-09-18 15:58:55 [iNFO] [ironChest] Activating mod IronChest
2013-09-18 15:58:55 [iNFO] [CarbonMod] Activating mod CarbonMod
2013-09-18 15:58:55 [WARNING] [Forge Mod Loader] Mod Forge Mod Loader is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [WARNING] [Minecraft Forge] Mod Minecraft Forge is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [WARNING] [Not Enough Items] Mod Not Enough Items is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [WARNING] [Forge Microblocks] Mod Forge Microblocks is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [WARNING] [Forge Multipart] Mod Forge Multipart is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [WARNING] [Minecraft Multipart Plugin] Mod Minecraft Multipart Plugin is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [WARNING] [bC Builders] Mod BC Builders is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [WARNING] [buildCraft] Mod BuildCraft is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [WARNING] [bC Energy] Mod BC Energy is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [WARNING] [bC Factory] Mod BC Factory is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [WARNING] [bC Silicon] Mod BC Silicon is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [WARNING] [bC Transport] Mod BC Transport is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [WARNING] [iron Chests] Mod Iron Chests is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [WARNING] [Carbon Mod] Mod Carbon Mod is missing a pack.mcmeta file, things may not work well
2013-09-18 15:58:55 [iNFO] [Minecraft-Client] Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:Not Enough Items, FMLFileResourcePack:Forge Microblocks, FMLFileResourcePack:Forge Multipart, FMLFileResourcePack:Minecraft Multipart Plugin, FMLFileResourcePack:BC Builders, FMLFileResourcePack:BuildCraft, FMLFileResourcePack:BC Energy, FMLFileResourcePack:BC Factory, FMLFileResourcePack:BC Silicon, FMLFileResourcePack:BC Transport, FMLFileResourcePack:Equivalent Exchange 3, FMLFileResourcePack:Iron Chests, FMLFileResourcePack:Carbon Mod
2013-09-18 15:58:55 [iNFO] [sTDOUT] 
2013-09-18 15:58:55 [iNFO] [sTDOUT] SoundSystem shutting down...
2013-09-18 15:58:55 [iNFO] [sTDOUT]     Author: Paul Lamb, www.paulscode.com
2013-09-18 15:58:55 [iNFO] [sTDOUT] 
2013-09-18 15:58:55 [iNFO] [sTDOUT] 
2013-09-18 15:58:55 [iNFO] [sTDOUT] Starting up SoundSystem...
2013-09-18 15:58:55 [iNFO] [ForgeModLoader] Registering Forge Packet Handler
2013-09-18 15:58:55 [iNFO] [ForgeModLoader] Succeeded registering Forge Packet Handler
2013-09-18 15:58:55 [iNFO] [sTDOUT] Initializing LWJGL OpenAL
2013-09-18 15:58:55 [iNFO] [sTDOUT]     (The LWJGL binding of OpenAL.  For more information, see http://www.lwjgl.org)
2013-09-18 15:58:55 [iNFO] [sTDOUT] OpenAL initialized.
2013-09-18 15:58:55 [iNFO] [sTDOUT] 
2013-09-18 15:58:56 [WARNING] [EE3] The copy of Equivalent Exchange 3 that you are running is a development version of the mod, and as such may be unstable and/or incomplete.
2013-09-18 15:58:56 [sEVERE] [ForgeModLoader] The mod IronChest appears to reject its own version number (1.0) in its version handling. This is likely a severe bug in the mod!
2013-09-18 15:58:56 [iNFO] [ForgeModLoader] Configured a dormant chunk cache size of 0
2013-09-18 15:58:59 [iNFO] [buildcraft] Starting BuildCraft @VERSION@ (:@BUILD_NUMBER@)
2013-09-18 15:58:59 [iNFO] [buildcraft] Beginning version check
2013-09-18 15:58:59 [iNFO] [buildcraft] Copyright (c) SpaceToad, 2011
2013-09-18 15:58:59 [iNFO] [buildcraft] http://www.mod-buildcraft.com
2013-09-18 15:58:59 [iNFO] [EE3] Initializing remote version check against remote version authority, located at: https://raw.github.com/pahimar/Equivalent-Exchange-3/master/version.xml
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.stone
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.dirt
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.stonebrick
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.wood
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.wood_1
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.wood_2
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.wood_3
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.log
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.log_1
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.log_2
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.log_3
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.leaves
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.leaves_1
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.leaves_2
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.leaves_3
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.sponge
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.glass
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.blockLapis
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.sandStone
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.sandStone_1
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.sandStone_2
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_1
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_2
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_3
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_4
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_5
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_6
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_7
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_8
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_9
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_10
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_11
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_12
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_13
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_14
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.cloth_15
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.blockGold
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.blockIron
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.brick
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.bookshelf
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.stoneMoss
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.obsidian
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.blockDiamond
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.ice
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.snow
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clay
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.hellrock
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.hellsand
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.lightgem
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.stonebricksmooth
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.stonebricksmooth_1
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.stonebricksmooth_2
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.stonebricksmooth_3
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.netherBrick
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.whiteStone
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.blockEmerald
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.blockRedstone
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.quartzBlock
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_1
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_2
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_3
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_4
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_5
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_6
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_7
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_8
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_9
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_10
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_11
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_12
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_13
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_14
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardenedStained_15
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.clayHardened
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.blockCoal
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.grass
2013-09-18 15:59:00 [iNFO] [sTDOUT] Registered micro material: tile.mycel
2013-09-18 15:59:01 [WARNING] [EE3] Unable to find a version of Equivalent Exchange 3 for Minecraft 1.6.2 in the remote version authority
2013-09-18 15:59:01 [sEVERE] [Minecraft-Client] Using missing texture, unable to load: ee3:textures/blocks/renderingTank.png
2013-09-18 15:59:02 [iNFO] [sTDOUT] Removing TMI Uninstaller
2013-09-18 15:59:02 [iNFO] [sTDOUT] Deleting Dir: /Users/jason/Desktop/mcdev/eclipse/Minecraft/bin/net/minecraft/client/TMIUninstaller
2013-09-18 15:59:02 [WARNING] [buildcraft] Using outdated version [@VERSION@ (build:@BUILD_NUMBER@)] for Minecraft 1.6.2. Consider updating.
2013-09-18 15:59:02 [sEVERE] [CarbonMod] The language resource /assets/carbon/lang/en_US.xml cannot be located on the classpath. This is a programming error.
2013-09-18 15:59:02 [iNFO] [sTDOUT] If you see this carbonmod is working and everything 
2013-09-18 15:59:03 [iNFO] [EE3] [iMC] Mod 'EE3' added recipe with output '1xitemStack[326:0:item.bucketWater:net.minecraft.item.ItemBucket]' and inputs '[1xitemStack[325:0:item.bucket:net.minecraft.item.ItemBucket], 1xitemStack[9:0:tile.water:net.minecraft.item.ItemBlock]]'
2013-09-18 15:59:03 [iNFO] [EE3] [iMC] Mod 'EE3' added recipe with output '1xitemStack[327:0:item.bucketLava:net.minecraft.item.ItemBucket]' and inputs '[1xitemStack[325:0:item.bucket:net.minecraft.item.ItemBucket], 1xitemStack[11:0:tile.lava:net.minecraft.item.ItemBlock]]'
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] 1013
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] Node: 1xenergyStack.vanillaFuelValueUnits
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To :[Target: 1xitemStack[172:0:tile.clayHardened:net.minecraft.item.ItemBlock], Weight: 200.0, Target: 1xitemStack[331:0:item.redstone:net.minecraft.item.ItemRedstone], Weight: 200.0, Target: 1xitemStack[350:0:item.fishCooked:net.minecraft.item.ItemFood], Weight: 200.0, Target: 1xitemStack[364:0:item.beefCooked:net.minecraft.item.ItemFood], Weight: 200.0, Target: 1xoreDictionary.dyeBlue, Weight: 200.0, Target: 1xoreDictionary.stone, Weight: 200.0, Target: 1xitemStack[406:0:item.netherquartz:net.minecraft.item.Item], Weight: 200.0, Target: 1xitemStack[266:0:item.ingotGold:net.minecraft.item.Item], Weight: 200.0, Target: 1xoreDictionary.dyeGreen, Weight: 200.0, Target: 1xitemStack[393:0:item.potatoBaked:net.minecraft.item.ItemFood], Weight: 200.0, Target: 1xitemStack[405:0:item.netherbrick:net.minecraft.item.Item], Weight: 200.0, Target: 1xitemStack[20:0:tile.glass:net.minecraft.item.ItemBlock], Weight: 200.0, Target: 1xitemStack[5260:0:item.energizedDust:com.jmanpenilla.carbonmod.item.EnergizedDust], Weight: 200.0, Target: 1xitemStack[366:0:item.chickenCooked:net.minecraft.item.ItemFood], Weight: 200.0, Target: 1xitemStack[263:0:item.coal:net.minecraft.item.ItemCoal], Weight: 200.0, Target: 1xitemStack[5263:0:item.corncobCooked:com.jmanpenilla.carbonmod.item.CarbonCornCobCooked], Weight: 200.0, Target: 1xitemStack[388:0:item.emerald:net.minecraft.item.Item], Weight: 200.0, Target: 1xitemStack[320:0:item.porkchopCooked:net.minecraft.item.ItemFood], Weight: 200.0, Target: 1xitemStack[264:0:item.diamond:net.minecraft.item.Item], Weight: 200.0, Target: 1xitemStack[336:0:item.brick:net.minecraft.item.Item], Weight: 200.0, Target: 1xitemStack[265:0:item.ingotIron:net.minecraft.item.Item], Weight: 200.0, Target: 1xitemStack[263:1:item.charcoal:net.minecraft.item.ItemCoal], Weight: 200.0, Target: 1xitemStack[5257:0:item.compressedIngot:com.jmanpenilla.carbonmod.item.CompressedCarbonIngot], Weight: 200.0]
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] From: []
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[172:0:tile.clayHardened:net.minecraft.item.ItemBlock], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[331:0:item.redstone:net.minecraft.item.ItemRedstone], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[350:0:item.fishCooked:net.minecraft.item.ItemFood], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[364:0:item.beefCooked:net.minecraft.item.ItemFood], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xoreDictionary.dyeBlue, Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xoreDictionary.stone, Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[406:0:item.netherquartz:net.minecraft.item.Item], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[266:0:item.ingotGold:net.minecraft.item.Item], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xoreDictionary.dyeGreen, Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[393:0:item.potatoBaked:net.minecraft.item.ItemFood], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[405:0:item.netherbrick:net.minecraft.item.Item], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[20:0:tile.glass:net.minecraft.item.ItemBlock], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[5260:0:item.energizedDust:com.jmanpenilla.carbonmod.item.EnergizedDust], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[366:0:item.chickenCooked:net.minecraft.item.ItemFood], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[263:0:item.coal:net.minecraft.item.ItemCoal], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[5263:0:item.corncobCooked:com.jmanpenilla.carbonmod.item.CarbonCornCobCooked], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[388:0:item.emerald:net.minecraft.item.Item], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[320:0:item.porkchopCooked:net.minecraft.item.ItemFood], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[264:0:item.diamond:net.minecraft.item.Item], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[336:0:item.brick:net.minecraft.item.Item], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[265:0:item.ingotIron:net.minecraft.item.Item], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[263:1:item.charcoal:net.minecraft.item.ItemCoal], Weight: 200.0
2013-09-18 15:59:03 [WARNING] [EE3] [DEBUG] To iteration: Target: 1xitemStack[5257:0:item.compressedIngot:com.jmanpenilla.carbonmod.item.CompressedCarbonIngot], Weight: 200.0
2013-09-18 15:59:03 [iNFO] [ForgeModLoader] Forge Mod Loader has successfully loaded 17 mods
2013-09-18 15:59:03 [WARNING] [Forge Mod Loader] Mod Forge Mod Loader is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [WARNING] [Minecraft Forge] Mod Minecraft Forge is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [WARNING] [Not Enough Items] Mod Not Enough Items is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [WARNING] [Forge Microblocks] Mod Forge Microblocks is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [WARNING] [Forge Multipart] Mod Forge Multipart is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [WARNING] [Minecraft Multipart Plugin] Mod Minecraft Multipart Plugin is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [WARNING] [bC Builders] Mod BC Builders is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [WARNING] [buildCraft] Mod BuildCraft is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [WARNING] [bC Energy] Mod BC Energy is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [WARNING] [bC Factory] Mod BC Factory is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [WARNING] [bC Silicon] Mod BC Silicon is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [WARNING] [bC Transport] Mod BC Transport is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [WARNING] [iron Chests] Mod Iron Chests is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [WARNING] [Carbon Mod] Mod Carbon Mod is missing a pack.mcmeta file, things may not work well
2013-09-18 15:59:03 [iNFO] [Minecraft-Client] Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:Not Enough Items, FMLFileResourcePack:Forge Microblocks, FMLFileResourcePack:Forge Multipart, FMLFileResourcePack:Minecraft Multipart Plugin, FMLFileResourcePack:BC Builders, FMLFileResourcePack:BuildCraft, FMLFileResourcePack:BC Energy, FMLFileResourcePack:BC Factory, FMLFileResourcePack:BC Silicon, FMLFileResourcePack:BC Transport, FMLFileResourcePack:Equivalent Exchange 3, FMLFileResourcePack:Iron Chests, FMLFileResourcePack:Carbon Mod
2013-09-18 15:59:03 [sEVERE] [Minecraft-Client] Using missing texture, unable to load: minecraft:textures/blocks/MISSING_ICON_TILE_510_grill.png
2013-09-18 15:59:04 [sEVERE] [Minecraft-Client] Using missing texture, unable to load: ee3:textures/blocks/renderingTank.png
2013-09-18 15:59:04 [iNFO] [sTDOUT] 
2013-09-18 15:59:04 [iNFO] [sTDOUT] SoundSystem shutting down...
2013-09-18 15:59:04 [iNFO] [sTDOUT]     Author: Paul Lamb, www.paulscode.com
2013-09-18 15:59:04 [iNFO] [sTDOUT] 
2013-09-18 15:59:04 [iNFO] [sTDOUT] 
2013-09-18 15:59:04 [iNFO] [sTDOUT] Starting up SoundSystem...
2013-09-18 15:59:04 [sEVERE] [Minecraft-Client] ########## GL ERROR ##########
2013-09-18 15:59:04 [sEVERE] [Minecraft-Client] @ Post startup
2013-09-18 15:59:04 [sEVERE] [Minecraft-Client] 1281: Invalid value
2013-09-18 15:59:04 [iNFO] [sTDOUT] Initializing LWJGL OpenAL
2013-09-18 15:59:04 [iNFO] [sTDOUT]     (The LWJGL binding of OpenAL.  For more information, see http://www.lwjgl.org)
2013-09-18 15:59:04 [iNFO] [sTDOUT] OpenAL initialized.
2013-09-18 15:59:04 [iNFO] [sTDOUT] 
2013-09-18 15:59:04 [sEVERE] [Minecraft-Client] Realms: Invalid session id
2013-09-18 15:59:19 [iNFO] [Minecraft-Server] Starting integrated minecraft server version 1.6.2
2013-09-18 15:59:19 [iNFO] [Minecraft-Server] Generating keypair
2013-09-18 15:59:20 [iNFO] [ForgeModLoader] Loading dimension 0 (New World) (net.minecraft.server.integrated.IntegratedServer@11602a1d)
2013-09-18 15:59:20 [iNFO] [ForgeModLoader] Loading dimension 1 (New World) (net.minecraft.server.integrated.IntegratedServer@11602a1d)
2013-09-18 15:59:20 [iNFO] [ForgeModLoader] Loading dimension -1 (New World) (net.minecraft.server.integrated.IntegratedServer@11602a1d)
2013-09-18 15:59:20 [iNFO] [Minecraft-Server] Preparing start region for level 0
2013-09-18 15:59:21 [iNFO] [Minecraft-Server] Preparing spawn area: 4%
2013-09-18 15:59:22 [iNFO] [Minecraft-Server] Preparing spawn area: 12%
2013-09-18 15:59:23 [iNFO] [Minecraft-Server] Preparing spawn area: 24%
2013-09-18 15:59:24 [iNFO] [Minecraft-Server] Preparing spawn area: 36%
2013-09-18 15:59:25 [iNFO] [Minecraft-Server] Preparing spawn area: 51%
2013-09-18 15:59:26 [iNFO] [Minecraft-Server] Preparing spawn area: 65%
2013-09-18 15:59:27 [iNFO] [Minecraft-Server] Preparing spawn area: 85%
2013-09-18 15:59:28 [iNFO] [sTDOUT] Loading NEI
2013-09-18 15:59:28 [iNFO] [Minecraft-Server] Direwolf20[/127.0.0.1:0] logged in with entity id 209 at (-209.08198136322628, 65.0, 222.21808972582437)
2013-09-18 15:59:28 [iNFO] [Minecraft-Server] Direwolf20 joined the game
2013-09-18 15:59:28 [iNFO] [sTDOUT] Loading Player: Direwolf20
2013-09-18 15:59:28 [iNFO] [sTDOUT] Sending serverside check to: Direwolf20
2013-09-18 15:59:29 [iNFO] [sTDOUT] Setting up custom skins
2013-09-18 15:59:29 [iNFO] [sTDOUT] Loading World: local/New World
2013-09-18 15:59:32 [iNFO] [sTDOUT] Loaded codechicken.multipart.nei.NEI_MicroblockConfig
2013-09-18 15:59:32 [WARNING] [Minecraft-Client] Memory connection overburdened; after processing 2500 packets, we still have 292 to go!
2013-09-18 15:59:33 [iNFO] [Minecraft-Server] Saving and pausing game...
2013-09-18 15:59:33 [iNFO] [Minecraft-Server] Saving chunks for level 'New World'/Overworld
2013-09-18 15:59:33 [WARNING] [Minecraft-Server] The save is being accessed from another location, aborting
2013-09-18 15:59:33 [iNFO] [Minecraft-Server] Saving chunks for level 'New World'/Nether
2013-09-18 15:59:33 [iNFO] [Minecraft-Server] Saving chunks for level 'New World'/The End
2013-09-18 15:59:38 [iNFO] [sTDOUT] Inserted super call into net.minecraft.client.gui.inventory.GuiContainerCreative.updateScreen
2013-09-18 16:00:17 [WARNING] [Minecraft-Server] The save is being accessed from another location, aborting
2013-09-18 16:00:23 [iNFO] [Minecraft-Server] Saving and pausing game...
2013-09-18 16:00:23 [iNFO] [Minecraft-Server] Saving chunks for level 'New World'/Overworld
2013-09-18 16:00:23 [WARNING] [Minecraft-Server] The save is being accessed from another location, aborting
2013-09-18 16:00:23 [iNFO] [Minecraft-Server] Saving chunks for level 'New World'/Nether
2013-09-18 16:00:23 [iNFO] [Minecraft-Server] Saving chunks for level 'New World'/The End
2013-09-18 16:01:03 [iNFO] [Minecraft-Server] Stopping server
2013-09-18 16:01:03 [iNFO] [Minecraft-Server] Saving players
2013-09-18 16:01:03 [iNFO] [Minecraft-Server] Direwolf20 left the game
2013-09-18 16:01:03 [iNFO] [sTDOUT] Unloading Player: Direwolf20
2013-09-18 16:01:03 [iNFO] [Minecraft-Server] Saving worlds
2013-09-18 16:01:03 [iNFO] [Minecraft-Server] Saving chunks for level 'New World'/Overworld
2013-09-18 16:01:03 [WARNING] [Minecraft-Server] The save is being accessed from another location, aborting
2013-09-18 16:01:03 [iNFO] [Minecraft-Server] Saving chunks for level 'New World'/Nether
2013-09-18 16:01:03 [iNFO] [Minecraft-Server] Saving chunks for level 'New World'/The End
2013-09-18 16:01:03 [iNFO] [ForgeModLoader] Unloading dimension 0
2013-09-18 16:01:03 [iNFO] [ForgeModLoader] Unloading dimension -1
2013-09-18 16:01:03 [iNFO] [ForgeModLoader] Unloading dimension 1
2013-09-18 16:01:05 [iNFO] [Minecraft-Client] Stopping!
2013-09-18 16:01:05 [iNFO] [sTDOUT] 
2013-09-18 16:01:05 [iNFO] [sTDOUT] SoundSystem shutting down...
2013-09-18 16:01:05 [iNFO] [sTDOUT]     Author: Paul Lamb, www.paulscode.com
2013-09-18 16:01:05 [iNFO] [sTDOUT] 

 

 

Link to comment
Share on other sites

from what i see is that something is accessing the world and therefore it cannot be saved.

2013-09-18 16:01:03 [WARNING] [Minecraft-Server] The save is being accessed from another location, aborting

maybe its a bug in a mod you got in your development enviroment.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • rp.crazyheal.xyz mods  
    • I'm developing a dimension, but it's kinda resource intensive so some times during player teleporting it lags behind making the player phase down into the void, so im trying to implement some kind of pregeneration to force the game loading a small set of chunks in the are the player will teleport to. Some of the things i've tried like using ServerLevel and ServerChunkCache methods like getChunk() dont actually trigger chunk generation if the chunk isn't already on persistent storage (already generated) or placing tickets, but that doesn't work either. Ideally i should be able to check when the task has ended too. I've peeked around some pregen engines, but they're too complex for my current understanding of the system of which I have just a basic understanding (how ServerLevel ,ServerChunkCache  and ChunkMap work) of. Any tips or other classes I should be looking into to understand how to do this correctly?
    • https://mclo.gs/4UC49Ao
    • Way back in the Forge 1.17 days, work started for adding JPMS (Java Platform Module Support) to ModLauncher and ForgeModLoader. This has been used internally by Forge and some libraries for a while now, but mods (those with mods.toml specifically) have not been able to take advantage of it. As of Forge 1.21.1 and 1.21.3, this is now possible!   What is JPMS and what does it mean for modders? JPMS is the Java Platform Module System, introduced in Java 9. It allows you to define modules, which are collections of packages and resources that can be exported or hidden from other modules. This allows for much more fine-tuned control over visibility, cleaner syntax for service declarations and support for sealed types across packages. For example, you might have a mod with a module called `com.example.mod` that exports `com.example.mod.api` and `com.example.mod.impl` to other mods, but hides `com.example.mod.internal` from them. This would allow you to have a clean API for other mods to use, while keeping your internal implementation details hidden from IDE hints, helping prevent accidental usage of internals that might break without prior notice. This is particularly useful if you'd like to use public records with module-private constructors or partially module-private record components, as you can create a sealed interface that only your record implements, having the interface be exported and the record hidden. It's also nice for declaring and using services, as you'll get compile-time errors from the Java compiler for typos and the like, rather than deferring to runtime errors. In more advanced cases, you can also have public methods that are only accessible to specific other modules -- handy if you want internal interactions between multiple of your own mods.   How do I bypass it? We understand there may be drama in implementing a system that prevents mods from accessing each other's internals when necessary (like when a mod is abandoned or you need to fix a compat issue) -- after all, we are already modding a game that doesn't have explicit support for Java mods yet. We have already thought of this and are offering APIs from day one to selectively bypass module restrictions. Let me be clear: Forge mods are not required to use JPMS. If you don't want to use it, you don't have to. The default behaviour is to have fully open, fully exported automatic modules. In Java, you can use the `Add-Opens` and `Add-Exports` manifest attributes to selectively bypass module restrictions of other mods at launch time, and we've added explicit support for these when loading your Forge mods. At compile-time, you can use existing solutions such as the extra-java-module-info Gradle plugin to deal with non-modular dependencies and add extra opens and exports to other modules. Here's an example on how to make the internal package `com.example.examplemod.internal` open to your mod in your build.gradle: tasks.named('jar', Jar) { manifest { attributes([ 'Add-Opens' : 'com.example.examplemod/com.example.examplemod.internal' 'Specification-Title' : mod_id, 'Specification-Vendor' : mod_authors // (...) ]) } } With the above in your mod's jar manifest, you can now reflectively access the classes inside that internal package. Multiple entries are separated with a space, as per Java's official spec. You can also use Add-Exports to directly call without reflection, however you'd need to use the Gradle plugin mentioned earlier to be able to compile. The syntax for Add-Exports is the same as Add-Opens, and instructions for the compile-time step with the Gradle plugin are detailed later in this post. Remember to prefer the opens and exports keywords inside module-info.java for sources you control. The Add-Opens/Add-Exports attributes are only intended for forcing open other mods.   What else is new with module support? Previously, the runtime module name was always forced to the first mod ID in your `mods.toml` file and all packages were forced fully open and exported. Module names are now distinguished from mod IDs, meaning the module name in your module-info.java can be different from the mod ID in your `mods.toml`. This allows you to have a more descriptive module name that doesn't have to be the same as your mod ID, however we strongly recommend including your mod ID as part of your module name to aid troubleshooting. The `Automatic-Module-Name` manifest attribute is now also honoured, allowing you to specify a module name for your mod without needing to create a `module-info.java` file. This is particularly useful for mods that don't care about JPMS features but want to have a more descriptive module name and easier integration with other mods that do use JPMS.   How do I use it? The first step is to create a `module-info.java` file in your mod's source directory. This file should be in the same package as your main mod class, and should look something like this: open module com.example.examplemod { requires net.minecraftforge.eventbus; requires net.minecraftforge.fmlcore; requires net.minecraftforge.forge; requires net.minecraftforge.javafmlmod; requires net.minecraftforge.mergetool.api; requires org.slf4j; requires logging; } For now, we're leaving the whole module open to reflection, which is a good starting point. When we know we want to close something off, we can remove the open modifier from the module and open or export individual packages instead. Remember that you need to be open to Forge (module name net.minecraftforge.forge), otherwise it can't call your mod's constructor. Next is fixing modules in Gradle. While Forge and Java support modules properly, Gradle does not put automatic modules on the module path by default, meaning that the logging module (from com.mojang:logging) is not found. To fix this, add the Gradle plugin and add a compile-time module definition for that Mojang library: plugins { // (...) id 'org.gradlex.extra-java-module-info' version "1.9" } // (...) extraJavaModuleInfo { failOnMissingModuleInfo = false automaticModule("com.mojang:logging", "logging") } The automatic module override specified in your build.gradle should match the runtime one to avoid errors. You can do the same for any library or mod dependency that is missing either a module-info or explicit Automatic-Module-Name, however be aware that you may need to update your mod once said library adds one. That's all you need to get started with module support in your mods. You can learn more about modules and how to use them at dev.java.
    • Faire la mise à jour grâce à ce lien m'a aider personnellement, merci à @Paint_Ninja. https://www.amd.com/en/support 
  • Topics

×
×
  • Create New...

Important Information

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