Jump to content

Recommended Posts

Posted

Hi, my modded Minecraft crashes everytime I run it in Eclipse, however my original doesn't. I suspected memory, but then I came across an array out of bounds error, I searched everywhere and couldn't find anything that's really out of bounds. This is a new mod since today so it only has one block in it yet. Classes used are : Base, DamagingBlock, ClientProxy and CommonProxy, here's the errorlog I get, this error only occurs when I enter a minecraft world, not when I'm in the menu, tho the minecraft menu is slow in Eclipse. I searched everywhere yet I cannot solve this.

 


      Minecraft has crashed!      
      ----------------------      

Minecraft has stopped running because it encountered a problem; Exception in server tick loop

A full error report has been saved to C:\Users\Robbe\Desktop\A\ORES\mcp\jars\.\crash-reports\crash-2013-06-29_00.20.49-server.txt - Please include a copy of that file (Not this screen!) if you report this crash to anyone; without it, they will not be able to help fix the crash 



--- BEGIN ERROR REPORT b2cf939d --------
Full report at:
C:\Users\Robbe\Desktop\A\ORES\mcp\jars\.\crash-reports\crash-2013-06-29_00.20.49-server.txt
Please show that file to Mojang, NOT just this screen!

Generated 29/06/13 0:21

-- System Details --
Details:
Minecraft Version: 1.5.2
Operating System: Windows 7 (amd64) version 6.1
Java Version: 1.7.0_17, Oracle Corporation
Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 108472 bytes (0 MB) / 1056309248 bytes (1007 MB) up to 1056309248 bytes (1007 MB)
JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
AABB Pool Size: 13308924 (745299744 bytes; 710 MB) allocated, 13308924 (745299744 bytes; 710 MB) used
Suspicious classes: FML and Forge are installed
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
FML: MCP v7.51 FML v5.2.2.684 Minecraft Forge 7.8.0.684 4 mods loaded, 4 mods active
mcp{7.44} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available
FML{5.2.2.684} [Forge Mod Loader] (coremods) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available
Forge{7.8.0.684} [Minecraft Forge] (coremods) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available
Tutorial{1.0.0} [Tutorial] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available
Profiler Position: N/A (disabled)
Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
Player Count: 0 / 8; []
Type: Integrated Server (map_client.txt)
Is Modded: Definitely; Client brand changed to 'fml,forge'

java.lang.OutOfMemoryError: Java heap space
at java.util.ArrayList.<init>(Unknown Source)
at java.util.ArrayList.<init>(Unknown Source)
at net.minecraft.world.World.getEntitiesWithinAABBExcludingEntity(World.java:3602)
at net.minecraft.world.World.getEntitiesWithinAABBExcludingEntity(World.java:3597)
at net.minecraft.world.World.getCollidingBoundingBoxes(World.java:1691)
at net.minecraft.entity.player.EntityPlayerMP.<init>(EntityPlayerMP.java:178)
at net.minecraft.server.management.ServerConfigurationManager.createPlayerForUser(ServerConfigurationManager.java:383)
at net.minecraft.server.integrated.IntegratedServerListenThread.networkTick(IntegratedServerListenThread.java:91)
at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:675)
at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:571)
at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:127)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:469)
at net.minecraft.server.ThreadMinecraftServer.run(ThreadMinecraftServer.java:16)
--- END ERROR REPORT cde23b54 ----------


Posted

Can we see that one block, then? And, if you say that there are AIOOBEs, can you show us the log for them?

 

package mod.Archedeon;

import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.world.World;

public class DamagingBlock extends Block {

        public DamagingBlock(int id, Material material) {
                super(id, material);
                this.setCreativeTab(CreativeTabs.tabBlock);
        }

        @Override
        public void registerIcons(IconRegister iconReg) {
                this.blockIcon = iconReg.registerIcon("tut/mod:"+this.getUnlocalizedName2());

        }
public boolean onBlockActivated(World world, int x, int y, int z,
		EntityPlayer player, int a, float b, float c, float d) {
	world.createExplosion(null, x, y, z, 1, true);
	return true;
}
}

 

I tried removing the onBlockActivated to see if thats where the problem lies, but that does not fix it, and for the AIOOBES, I forgot to save the log for it, but this error didn't appear after a while anymore.

Posted

It would be helpfull if you give us ALL the code so we can solve it faster.

 

Base

 

package mod.Archedeon;

import CommonProxy.CommonProxy;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.item.Item;
import net.minecraftforge.common.Configuration;
import net.minecraftforge.common.MinecraftForge;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.Init;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.Mod.PostInit;
import cpw.mods.fml.common.Mod.PreInit;
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;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.LanguageRegistry;

@Mod(modid = "Archedeon", name = "Archedeon", version = "1.0.0")
@NetworkMod(clientSideRequired = true, serverSideRequired = false)
public class Base {
@Instance("Tutorial")
public static Base instance;
@SidedProxy(clientSide = "ClientProxy.ClientProxy", serverSide = "CommonProxy.CommonProxy")
public static CommonProxy proxy;

public static Block Test;

public static int TestID;

@PreInit
public void preInit(FMLPreInitializationEvent event) {
	Configuration config = new Configuration(
			event.getSuggestedConfigurationFile());
	config.load();

	config.get(Configuration.CATEGORY_BLOCK, "Test",400).getInt();

	config.save();
}

@Init
public void load(FMLInitializationEvent event) {
	loadItem();
	loadBlock();
	harvestLevel();
	registerLanguage();
	registerGame();

}

@PostInit
public void postInit(FMLPostInitializationEvent event) {

}

private void loadBlock() {
	Test = new DamagingBlock(TestID, Material.rock)
			.setUnlocalizedName("Test").setHardness(4.0F)
			.setResistance(50.0F).setStepSound(Block.soundStoneFootstep);
}

private void loadItem() {

}

private void harvestLevel() {

}

private void registerLanguage() {
	LanguageRegistry.addName(Test, "Test Block");

}

private void registerGame() {
	GameRegistry.registerBlock(Test,
			"Archedeon" + Test.getUnlocalizedName2());
}

}

 

 

DamagingBlock

 

package mod.Archedeon;

import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.world.World;

public class DamagingBlock extends Block {

        public DamagingBlock(int id, Material material) {
                super(id, material);
                this.setCreativeTab(CreativeTabs.tabBlock);
        }

        @Override
        public void registerIcons(IconRegister iconReg) {
                this.blockIcon = iconReg.registerIcon("tut/mod:"+this.getUnlocalizedName2());

        }
public boolean onBlockActivated(World world, int x, int y, int z,
		EntityPlayer player, int a, float b, float c, float d) {
	world.createExplosion(null, x, y, z, 1, true);
	return true;
}
}

 

 

CommonProxy

 

package CommonProxy;

public class CommonProxy {
public static String ITEMS_PNG = "/archedeon/mod/items.png";
public static String BLOCKS_PNG = "/archedeon/mod/blocks.png";

public void registerRenders(){

}

}

 

 

ClientProxy

 

package ClientProxy;

import net.minecraftforge.client.MinecraftForgeClient;
import CommonProxy.CommonProxy;

public class ClientProxy extends CommonProxy {

@Override
public void registerRenders() {
	MinecraftForgeClient.preloadTexture(ITEMS_PNG);
	MinecraftForgeClient.preloadTexture(BLOCKS_PNG);
}
}

 

Posted

recode textures for 1.5.2, blocks should be loaded in  preinit/init, setup your config correctly, you don't need harvest level, client and common proxies really aren't needed; btw the block doesn't need hardness, resistance, or step sound by default. read the tnt code for the block "damaging block".

I took over Hunting Traps Mod and work on helping the forge community as much as I can. View my work here: http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/wip-mods/1443756-1-7-2-1-6-4-1-5-2-1-4-7-hunting-traps-mod-v-0-4-0

Posted

recode textures for 1.5.2, blocks should be loaded in  preinit/init, setup your config correctly, you don't need harvest level, client and common proxies really aren't needed; btw the block doesn't need hardness, resistance, or step sound by default. read the tnt code for the block "damaging block".

 

This all worked before. Harvest level and proxies are for future use, I already coded them so I don't get a messed up baseclass. About the TNT, the TNT itself does not explode, the entity does. It has to explode instantly without entity.

Posted

		config.get(Configuration.CATEGORY_BLOCK, "Test",400).getInt();

You're never actually setting your ID variable. Which would seem to imply that your block is getting set to 0. Which means that all the air in the world explodes and crashes your game. That would be my guess.

BEWARE OF GOD

---

Co-author of Pentachoron Labs' SBFP Tech.

Posted

		config.get(Configuration.CATEGORY_BLOCK, "Test",400).getInt();

You're never actually setting your ID variable. Which would seem to imply that your block is getting set to 0. Which means that all the air in the world explodes and crashes your game. That would be my guess.

 

This is what I thought the problem was. I took a look at the config and I solved it, thank you !

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.

Announcements



×
×
  • Create New...

Important Information

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