Jump to content

[SOLVED] "Overworld is not loaded" crash with custom dimension


zero7717

Recommended Posts

I've been trying to get a custom dimension to work for a while. I finally got past the "go to the nether instead of your custom dimension" issue that quite a few people seem to run into, but now I'm getting some weird errors:

 

 

Firstly, when I travel to my custom dimension, it takes a while to load up the terrain and on one occasion I actually fell out of the world and died before the local area was loaded enough to stand on. This isn't the main issue I'm having, but as long as I'm here, is there anything I can do to fix that?

 

Secondly, the first time I travel to the custom dimension, there is no light. Every block is very dark, and even torches and things don't make any light. This is purely visual; trees can be grown, mushrooms can't be planted, etc. If I exit the game and reload it, everything's lit like normal.

 

Thirdly and most importantly, upon returning to the overworld, I can walk around for a second or two and then the game crashes.

 

 

Console log

 

 

== MCP 7.21 (data: 7.21, client: 1.4.4, server: 1.4.4) ==
[19:48:16] 2012-11-15 19:48:16 [iNFO] [ForgeModLoader] Forge Mod Loader version
4.4.4.442 for Minecraft 1.4.4 loading
[19:48:16] 2012-11-15 19:48:16 [iNFO] [ForgeModLoader] Downloading file http://f
iles.minecraftforge.net/fmllibs/argo-2.25.jar
[19:48:16] 2012-11-15 19:48:16 [iNFO] [ForgeModLoader] Download complete
[19:48:16] 2012-11-15 19:48:16 [iNFO] [ForgeModLoader] Downloading file http://f
iles.minecraftforge.net/fmllibs/guava-12.0.1.jar
[19:48:20] 2012-11-15 19:48:20 [iNFO] [ForgeModLoader] Download complete
[19:48:20] 2012-11-15 19:48:20 [iNFO] [ForgeModLoader] Downloading file http://f
iles.minecraftforge.net/fmllibs/asm-all-4.0.jar
[19:48:20] 2012-11-15 19:48:20 [iNFO] [ForgeModLoader] Download complete
[19:48:23] 2012-11-15 19:48:23 [iNFO] [sTDOUT] 27 achievements
[19:48:23] 2012-11-15 19:48:23 [iNFO] [sTDOUT] 208 recipes
[19:48:23] 2012-11-15 19:48:23 [iNFO] [sTDOUT] Setting user: Player789, -
[19:48:23] 2012-11-15 19:48:23 [iNFO] [sTDERR] Client asked for parameter: serve
r
[19:48:23] 2012-11-15 19:48:23 [iNFO] [sTDOUT] LWJGL Version: 2.4.2
[19:48:24] 2012-11-15 19:48:24 [iNFO] [ForgeModLoader] Attempting early Minecraf
tForge initialization
[19:48:24] 2012-11-15 19:48:24 [iNFO] [sTDOUT] MinecraftForge v6.3.0.372 Initial
ized
[19:48:24] 2012-11-15 19:48:24 [iNFO] [ForgeModLoader] MinecraftForge v6.3.0.372
Initialized
[19:48:24] 2012-11-15 19:48:24 [iNFO] [sTDOUT] Replaced 84 ore recipies
[19:48:24] 2012-11-15 19:48:24 [iNFO] [ForgeModLoader] Completed early Minecraft
Forge initialization
[19:48:24] 2012-11-15 19:48:24 [iNFO] [ForgeModLoader] No mod directory found, c
reating one: C:\Users\Joe\Desktop\minecraft mods\mcpInvfiniverse144\jars\mods
[19:48:24] 2012-11-15 19:48:24 [iNFO] [ForgeModLoader] Mod directory created suc
cessfully
[19:48:24] 2012-11-15 19:48:24 [iNFO] [ForgeModLoader] Config directory created
successfully
[19:48:25] 2012-11-15 19:48:25 [iNFO] [ForgeModLoader] Searching C:\Users\Joe\De
sktop\minecraft mods\mcpInvfiniverse144\jars\mods for mods
[19:48:26] 2012-11-15 19:48:26 [iNFO] [ForgeModLoader] Forge Mod Loader has iden
tified 4 mods to load
[19:48:26] 2012-11-15 19:48:26 [iNFO] [ForgeModLoader] Configured a dormant chun
k cache size of 0
[19:48:26] 2012-11-15 19:48:26 [iNFO] [sTDOUT] Starting up SoundSystem...
[19:48:27] 2012-11-15 19:48:27 [iNFO] [sTDOUT] Initializing LWJGL OpenAL
[19:48:27] 2012-11-15 19:48:27 [iNFO] [sTDOUT]     (The LWJGL binding of OpenAL.
  For more information, see http://www.lwjgl.org)
[19:48:27] 2012-11-15 19:48:27 [iNFO] [sTDOUT] OpenAL initialized.
[19:48:28] 2012-11-15 19:48:28 [iNFO] [ForgeModLoader] Forge Mod Loader has succ
essfully loaded 4 mods
[19:48:38] 2012-11-15 19:48:38 [iNFO] [sTDOUT] Scanning folders...
[19:48:38] 2012-11-15 19:48:38 [iNFO] [sTDOUT] Total conversion count is 0
[19:48:39] 2012-11-15 19:48:39 [iNFO] [ForgeModLoader] Loading dimension 0 (New
World) (net.minecraft.src.IntegratedServer@29dd8664)
[19:48:39] 2012-11-15 19:48:39 [iNFO] [ForgeModLoader] Loading dimension 2 (New
World) (net.minecraft.src.IntegratedServer@29dd8664)
[19:48:39] 2012-11-15 19:48:39 [iNFO] [ForgeModLoader] Loading dimension 1 (New
World) (net.minecraft.src.IntegratedServer@29dd8664)
[19:48:39] 2012-11-15 19:48:39 [iNFO] [ForgeModLoader] Loading dimension -1 (New
World) (net.minecraft.src.IntegratedServer@29dd8664)
[19:51:25] 2012-11-15 19:51:25 [iNFO] [ForgeModLoader] Unloading dimension 0
[19:51:25] 2012-11-15 19:51:25 [iNFO] [ForgeModLoader] Unloading dimension 1
[19:51:36] 2012-11-15 19:51:36 [iNFO] [ForgeModLoader] Loading dimension 0 (New
World) (net.minecraft.src.IntegratedServer@5987f36)
[19:51:36] 2012-11-15 19:51:36 [iNFO] [ForgeModLoader] Loading dimension 2 (New
World) (net.minecraft.src.IntegratedServer@5987f36)
[19:51:36] 2012-11-15 19:51:36 [iNFO] [ForgeModLoader] Loading dimension 1 (New
World) (net.minecraft.src.IntegratedServer@5987f36)
[19:51:36] 2012-11-15 19:51:36 [iNFO] [ForgeModLoader] Loading dimension -1 (New
World) (net.minecraft.src.IntegratedServer@5987f36)
[19:52:13] 2012-11-15 19:52:13 [iNFO] [ForgeModLoader] Unloading dimension 0
[19:52:13] 2012-11-15 19:52:13 [iNFO] [sTDERR] net.minecraft.src.ReportedExcepti
on: Ticking memory connection
[19:52:13] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraft.src.NetworkList
enThread.networkTick(NetworkListenThread.java:62)
[19:52:13] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraft.src.IntegratedS
erverListenThread.networkTick(IntegratedServerListenThread.java:111)
[19:52:13] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraft.server.Minecraf
tServer.updateTimeLightAndEntities(MinecraftServer.java:691)
[19:52:13] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraft.server.Minecraf
tServer.tick(MinecraftServer.java:587)
[19:52:13] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraft.src.IntegratedS
erver.tick(IntegratedServer.java:110)
[19:52:13] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraft.server.Minecraf
tServer.run(MinecraftServer.java:494)
[19:52:13] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraft.src.ThreadMinec
raftServer.run(ThreadMinecraftServer.java:17)
[19:52:13] 2012-11-15 19:52:13 [iNFO] [sTDERR] Caused by: java.lang.RuntimeExcep
tion: Cannot Hotload Dim: Overworld is not Loaded!
[19:52:13] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraftforge.common.Dim
ensionManager.initDimension(DimensionManager.java:142)
[19:52:13] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraft.server.Minecraf
tServer.worldServerForDimension(MinecraftServer.java:746)
[19:52:13] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraft.src.NetServerHa
ndler.handleFlying(NetServerHandler.java:122)
[19:52:14] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraft.src.Packet10Fly
ing.processPacket(Packet10Flying.java:51)
[19:52:14] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraft.src.MemoryConne
ction.processReadPackets(MemoryConnection.java:79)
[19:52:14] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraft.src.NetServerHa
ndler.networkTick(NetServerHandler.java:82)
[19:52:14] 2012-11-15 19:52:13 [iNFO] [sTDERR]  at net.minecraft.src.NetworkList
enThread.networkTick(NetworkListenThread.java:55)
[19:52:14] 2012-11-15 19:52:13 [iNFO] [sTDERR]  ... 6 more
[19:52:14] 2012-11-15 19:52:14 [iNFO] [ForgeModLoader] Unloading dimension -1
[19:52:14] 2012-11-15 19:52:14 [iNFO] [ForgeModLoader] Unloading dimension 0
[19:52:24] 2012-11-15 19:52:24 [iNFO] [sTDOUT] Stopping!
[19:52:24] 2012-11-15 19:52:24 [iNFO] [sTDOUT] SoundSystem shutting down...
[19:52:24] 2012-11-15 19:52:24 [iNFO] [sTDOUT]     Author: Paul Lamb, www.paulsc
ode.com

 

 

Crash report

 

 

---- Minecraft Crash Report ----

// Uh... Did I do that?

 

Time: 11/15/12 8:41 PM

Description: Ticking memory connection

 

java.lang.RuntimeException: Cannot Hotload Dim: Overworld is not Loaded!

at net.minecraftforge.common.DimensionManager.initDimension(DimensionManager.java:142)

at net.minecraft.server.MinecraftServer.worldServerForDimension(MinecraftServer.java:746)

at net.minecraft.src.NetServerHandler.handleFlying(NetServerHandler.java:122)

at net.minecraft.src.Packet10Flying.processPacket(Packet10Flying.java:51)

at net.minecraft.src.MemoryConnection.processReadPackets(MemoryConnection.java:79)

at net.minecraft.src.NetServerHandler.networkTick(NetServerHandler.java:82)

at net.minecraft.src.NetworkListenThread.networkTick(NetworkListenThread.java:55)

at net.minecraft.src.IntegratedServerListenThread.networkTick(IntegratedServerListenThread.java:111)

at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:691)

at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:587)

at net.minecraft.src.IntegratedServer.tick(IntegratedServer.java:110)

at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:494)

at net.minecraft.src.ThreadMinecraftServer.run(ThreadMinecraftServer.java:17)

 

 

A detailed walkthrough of the error, its code path and all known details is as follows:

---------------------------------------------------------------------------------------

 

-- System Details --

Details:

Minecraft Version: 1.4.4

Operating System: Windows 7 (amd64) version 6.1

Java Version: 1.6.0_27, Sun Microsystems Inc.

Java VM Version: Java HotSpot 64-Bit Server VM (mixed mode), Sun Microsystems Inc.

Memory: 813221416 bytes (775 MB) / 1065025536 bytes (1015 MB) up to 1065025536 bytes (1015 MB)

JVM Flags: 3 total; -Xincgc -Xms1024M -Xmx1024M

AABB Pool Size: 9689 (542584 bytes; 0 MB) allocated, 4046 (226576 bytes; 0 MB) used

Suspicious classes: $Proxy3, $Proxy4, $Proxy5, ...[com.google.common.base.Preconditions, Charsets, Splitter, ...], [com.google.common.cache.CacheLoader, CacheBuilder, Cache, ...], [com.google.common.collect.Multimap, ListMultimap, AbstractMultimap, ...], [com.google.common.eventbus.EventBus, HandlerFindingStrategy, AnnotatedHandlerFinder, ...], [com.google.common.hash.Hashing, HashFunction, AbstractStreamingHashFunction, ...], [com.google.common.io.LineProcessor, Resources, InputSupplier, ...], [com.google.common.primitives.Ints, UnsignedBytes, Bytes], [com.google.common.reflect.TypeCapture, TypeToken, SimpleTypeToken, ...], [com.google.common.util.concurrent.UncheckedExecutionException, ExecutionError, MoreExecutors, ...], [cpw.mods.fml.client.ITextureFX, FMLTextureFX, TextureFXManager, ...], [cpw.mods.fml.client.modloader.ModLoaderClientHelper, ModLoaderKeyBindingHandler], [cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler, KeyHandler, RenderingRegistry, ...], [cpw.mods.fml.common.Loader, LoaderException, WrongMinecraftVersionException, ...], [cpw.mods.fml.common.asm.FMLSanityChecker, MLDetectorClassVisitor, SideOnly], [cpw.mods.fml.common.asm.transformers.AccessTransformer, Modifier, MarkerTransformer, ...], [cpw.mods.fml.common.discovery.ModDiscoverer, ASMDataTable, ModCandidate, ...], [cpw.mods.fml.common.discovery.asm.ASMModParser, ModClassVisitor, ModAnnotationVisitor, ...], [cpw.mods.fml.common.event.FMLLoadEvent, FMLEvent, FMLStateEvent, ...], [cpw.mods.fml.common.functions.ModIdFunction], [cpw.mods.fml.common.modloader.IModLoaderSidedHelper, ModLoaderHelper, ModLoaderVillageTradeHandler, ...], [cpw.mods.fml.common.network.Player, IPacketHandler, IConnectionHandler, ...], [cpw.mods.fml.common.registry.BlockProxy, ItemProxy, LanguageRegistry, ...], [cpw.mods.fml.common.toposort.ModSortingException, ModSorter, DirectedGraph, ...], [cpw.mods.fml.common.versioning.ArtifactVersion, VersionParser, InvalidVersionSpecificationException, ...], [infiniverse.client.ClientProxyInfiniverse], [infiniverse.common.Infiniverse, CommonProxyInfiniverse, IVWorldProviderBasic, ...], [net.minecraft.src.CallableMinecraftVersion, IPlayerUsage, MinecraftError, ...], [net.minecraftforge.client.ForgeHooksClient, ModCompatibilityClient, MinecraftForgeClient, ...], [net.minecraftforge.client.event.TextureLoadEvent, DrawBlockHighlightEvent, RenderWorldLastEvent, ...], [net.minecraftforge.client.event.sound.SoundEvent, SoundLoadEvent, SoundResultEvent, ...], [net.minecraftforge.common.IPlantable, IShearable, ISidedInventory, ...], [net.minecraftforge.event.Event, ListenerList, EventBus, ...], [net.minecraftforge.event.entity.EntityEvent, EntityJoinWorldEvent, PlaySoundAtEntityEvent, ...], [net.minecraftforge.event.entity.item.ItemEvent, ItemExpireEvent, ItemTossEvent], [net.minecraftforge.event.entity.living.LivingEvent, LivingSpecialSpawnEvent, LivingUpdateEvent, ...], [net.minecraftforge.event.entity.player.PlayerEvent, ArrowLooseEvent, ArrowNockEvent, ...], [net.minecraftforge.event.world.WorldEvent, Load, Save, ...], [net.minecraftforge.oredict.OreDictionary, OreRegisterEvent, ShapedOreRecipe, ...], [net.minecraftforge.transformers.ForgeAccessTransformer, EventTransformer], [org.objectweb.asm.ClassVisitor, ClassWriter, MethodVisitor, ...], [org.objectweb.asm.tree.ClassNode, MethodNode, FieldNode, ...]

IntCache: cache: 0, tcache: 0, allocated: 3, tallocated: 63

FML: MCP v7.21 FML v4.4.4.442 Minecraft Forge 6.3.0.372 4 mods loaded, 4 mods active

mcp [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available->Available->Available

FML [Forge Mod Loader] (coremods) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available->Available->Available

Forge [Minecraft Forge] (coremods) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available->Available->Available

zero_infiniverse [infiniverse] (minecraft) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->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: 1 / 8; [EntityPlayerMP['Player32'/14893, l='New World', x=-214.10, y=57.23, z=226.95]]

Type: Integrated Server (map_client.txt)

Is Modded: Definitely; Client brand changed to 'forge,fml'

 

 

 

Base mod class

 

 

package infiniverse.common;

import net.minecraft.src.Block;
import net.minecraft.src.BlockPortal;
import net.minecraft.src.Item;
import net.minecraft.src.ItemStack;
import net.minecraftforge.common.DimensionManager;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.Init;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.network.NetworkMod;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.LanguageRegistry;

@Mod(modid = "zero_infiniverse", name = "Infiniverse", version = "0.1")
@NetworkMod(clientSideRequired = true, serverSideRequired = false)

public class Infiniverse
{
public static Block ivstabilizer;
public static Block ivwormhole;
private int maxworlds;
//public int[] dimIDlist;
public static int dimID;

@SidedProxy(clientSide = "infiniverse.client.ClientProxyInfiniverse", serverSide = "infiniverse.common.CommonProxyInfiniverse")
public static CommonProxyInfiniverse proxy;

@Init
public void load(FMLInitializationEvent event)
{
	// find some some dimension IDs and register them
	/*dimIDlist = new int[maxworlds];
	DimensionManager.registerProviderType(7717, IVWorldProviderBasic.class, false)
	for (int i = 0; i < maxworlds; i++)
	{
		dimIDlist[i] = DimensionManager.getNextFreeDimId();
		DimensionManager.registerDimension(dimIDlist[i], 7717);
	}*/
	dimID = DimensionManager.getNextFreeDimId();
	DimensionManager.registerProviderType(dimID, IVWorldProviderBasic.class, false);
	DimensionManager.registerDimension(dimID, dimID);


	// register stabilizer block
	ivstabilizer = new IVBlockStabilizer(230, 0).setStepSound(Block.soundStoneFootstep).setHardness(3F).setResistance(1.0F).setBlockName("ivstabilizer");
	GameRegistry.registerBlock(ivstabilizer);
	LanguageRegistry.addName(ivstabilizer, "Happy Fun Block");

	// register portal block
	ivwormhole = new IVBlockWormhole(231, 14).setHardness(-1F).setStepSound(Block.soundGlassFootstep).setLightValue(0.75F).setBlockName("ivwormhole");
	GameRegistry.registerBlock(ivwormhole);
	LanguageRegistry.addName(ivwormhole, "Happy Fun Wormhole");

	// register stabilizer recipe
	GameRegistry.addRecipe(new ItemStack(ivstabilizer), new Object[]
			{
				"WpW",
				"rSr",
				"WSW",

				'W', Block.planks, 'S', Block.stone, 'p', Item.enderPearl, 'r', Item.redstone
			});

	// register texture files
	proxy.registerRenderThings();
}
}

 

 

 

Portal block class

 

 

package infiniverse.common;

import java.util.Random;

import net.minecraft.server.MinecraftServer;
import net.minecraft.src.AxisAlignedBB;
import net.minecraft.src.Block;
import net.minecraft.src.BlockBreakable;
import net.minecraft.src.BlockPortal;
import net.minecraft.src.Entity;
import net.minecraft.src.EntityList;
import net.minecraft.src.EntityPlayer;
import net.minecraft.src.EntityPlayerMP;
import net.minecraft.src.IBlockAccess;
import net.minecraft.src.ItemMonsterPlacer;
import net.minecraft.src.Material;
import net.minecraft.src.World;
import net.minecraft.src.WorldServer;
import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.asm.SideOnly;

public class IVBlockWormhole extends BlockPortal
{
    public IVBlockWormhole(int par1, int par2)
    {
        super(par1, par2);
        this.setTickRandomly(true);
    }

    /**
     * Ticks the block if it's been scheduled
     */
    //public void updateTick(World par1World, int par2, int par3, int par4, Random par5Random)
    

    /**
     * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been
     * cleared to be reused)
     */
    public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4)
    {
        return null;
    }

    /**
     * Updates the blocks bounds based on its current state. Args: world, x, y, z
     */
    public void setBlockBoundsBasedOnState(IBlockAccess par1IBlockAccess, int par2, int par3, int par4)
    {
        this.setBlockBounds(0, 0, 0, 1, 1, 1);	// wormhole portals are cubey for now
    }

    /**
     * Checks to see if this location is valid to create a portal and will return True if it does. Args: world, x, y, z
     */
    public boolean tryToCreatePortal(World world, int i, int j, int k)
{	// If blocks above block are air, air, iron, create portal
	if(world.getBlockId(i, j+1, k) == 0 && world.getBlockId(i, j+2, k) == 0 && world.getBlockId(i, j+3, k) == Block.blockSteel.blockID)
	{
		world.editingBlocks = true;
        for (int n=1; n <= 2; n++)
        	world.setBlockWithNotify(i, j+n, k, Infiniverse.ivwormhole.blockID);
        		
        world.editingBlocks = false;
        return true;
	}

	return false;
}

    /**
     * Lets the block know when one of its neighbor changes. Doesn't know which neighbor changed (coordinates passed are
     * their own) Args: x, y, z, neighbor blockID
     */
    @Override
public void onNeighborBlockChange(World world, int i, int j, int k, int l)
{	// kill self if any part of system breaks, or new portal placed nearby
	if ((world.getBlockId(i, j-1, k) == 0) || (world.getBlockId(i, j+1, k) == 0))
		world.setBlockWithNotify(i, j, k, 0);
	if (arePortalsNear(world, i, j, k, 0, 1, false))
		world.setBlockWithNotify(i, j, k, 0);
}
    
//check if portals exist in a vertical column at or above target
  	//warning! More recursion than necessary done if horiz > 1. Need to handle this if wider search needed.
  	public boolean arePortalsNear(World world, int i, int j, int k, int vert, int horiz, boolean self)
  	{	//if current block is portal
  		if (self == true && ((world.getBlockId(i, j, k) == 90) || (world.getBlockId(i, j, k) == 231)))
  		{
  			return true;
  		}
  		
  		//check horizontals
  		if (horiz > 0)
  		{
  			if (arePortalsNear(world, i+1, j, k, 0, horiz-1, true))
  				return true;
  			if (arePortalsNear(world, i-1, j, k, 0, horiz-1, true))
  				return true;
  			if (arePortalsNear(world, i, j, k+1, 0, horiz-1, true))
  				return true;
  			if (arePortalsNear(world, i, j, k-1, 0, horiz-1, true))
  				return true;
  		}
  		
  		//check level above
  		if (vert > 0)
  			return (arePortalsNear(world, i, j+1, k, vert-1, horiz, true));
  		return false;
  	}

    @SideOnly(Side.CLIENT)

    /**
     * Returns true if the given side of this block type should be rendered, if the adjacent block is at the given
     * coordinates.  Args: blockAccess, x, y, z, side
     */
    public boolean shouldSideBeRendered(IBlockAccess par1IBlockAccess, int x, int y, int z, int side)
    {
    	if (par1IBlockAccess.getBlockId(x, y, z) == this.blockID)
        {
            return false;
        }
        else
        {
            switch (side)
            {
            	case 0: return par1IBlockAccess.getBlockId(x, y-1, z) != this.blockID;
            	case 1: return par1IBlockAccess.getBlockId(x, y+1, z) != this.blockID;
            	case 2: return par1IBlockAccess.getBlockId(x, y, z-1) != this.blockID;
            	case 3: return par1IBlockAccess.getBlockId(x, y, z+1) != this.blockID;
            	case 4: return par1IBlockAccess.getBlockId(x-1, y, z) != this.blockID;
            	case 5: return par1IBlockAccess.getBlockId(x+1, y, z) != this.blockID;
            	default: return false;
            }
        }
    }

    /**
     * Triggered whenever an entity collides with this block (enters into the block). Args: world, x, y, z, entity
     */
    @Override
    public void onEntityCollidedWithBlock(World par1World, int par2, int par3, int par4, Entity entityPlayer)
    {
    	if (!(entityPlayer.ridingEntity == null && entityPlayer.riddenByEntity == null && (entityPlayer instanceof EntityPlayerMP) && (entityPlayer.worldObj instanceof WorldServer)))
        	return;
    	
    	EntityPlayerMP ent = (EntityPlayerMP)entityPlayer;
    	WorldServer wserv = (WorldServer) ent.worldObj;
    	
    	if (ent.timeUntilPortal < 50)
    	{
    		ent.timeUntilPortal = 200;
    	}
    	
    	else if (ent.timeUntilPortal >= 50  && ent.timeUntilPortal <= 100)
    	{
    		ent.timeUntilPortal = 250;
        
        int currentdim = ent.dimension;
        
        if (currentdim != Infiniverse.dimID) // if not in other place yet, send them there
        {
        	ent.mcServer.getConfigurationManager().transferPlayerToDimension(ent, Infiniverse.dimID, new IVTeleporterBasic(wserv));
        }
        else
        {
        	ent.mcServer.getConfigurationManager().transferPlayerToDimension(ent, 0, new IVTeleporterBasic(wserv));
        }
    	}
    	
}
    
}

 

 

 

World provider class

 

 

package infiniverse.common;

import net.minecraft.src.BiomeGenBase;
import net.minecraft.src.Block;
import net.minecraft.src.Chunk;
import net.minecraft.src.ChunkCoordinates;
import net.minecraft.src.Entity;
import net.minecraft.src.EntityPlayer;
import net.minecraft.src.EnumGameType;
import net.minecraft.src.IChunkProvider;
import net.minecraft.src.MathHelper;
import net.minecraft.src.Vec3;
import net.minecraft.src.World;
import net.minecraft.src.WorldChunkManager;
import net.minecraft.src.WorldChunkManagerHell;
import net.minecraft.src.WorldInfo;
import net.minecraft.src.WorldProvider;
import net.minecraft.src.WorldProviderEnd;
import net.minecraft.src.WorldProviderHell;
import net.minecraft.src.WorldType;
import net.minecraftforge.client.SkyProvider;
import net.minecraftforge.common.DimensionManager;
import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.asm.SideOnly;

public class IVWorldProviderBasic extends WorldProvider
{
    public final String saveFolder;

    /**
     * States whether the Hell world provider is used(true) or if the normal world provider is used(false)
     */
    public boolean isHellWorld = false;

    /**
     * A boolean that tells if a world does not have a sky. Used in calculating weather and skylight
     */
    public boolean hasNoSky = false;

    public int dimensionId = Infiniverse.dimID;

    public IVWorldProviderBasic()
    {
      setDimension(Infiniverse.dimID);
      this.saveFolder = ("IV-A-" + Infiniverse.dimID);
    }

    /**
     * creates a new world chunk manager for WorldProvider
     */
    protected void registerWorldChunkManager()
    {	// TODO change later?
        //this.worldChunkMgr = new IVWorldChunkManagerBasic(worldObj);
    	this.worldChunkMgr = new WorldChunkManagerHell(BiomeGenBase.plains, 1.0F, 0.0F);
        this.isHellWorld = false;
        this.hasNoSky = false;
        this.dimensionId = Infiniverse.dimID;
    }

    /**
     * Will check if the x, z position specified is alright to be set as the map spawn point
     */
    public boolean canCoordinateBeSpawn(int par1, int par2)
    {
        return false;
    }

    /**
     * True if the player can respawn in this dimension (true = overworld, false = nether).
     */
    public boolean canRespawnHere()
    {
        return false;
    }

   public String getDimensionName()
    {
        return "Another World";
    }

    /**
     * A message to display to the user when they transfer to this dimension.
     *
     * @return The message to be displayed
     */
    public String getWelcomeMessage()
    {
        return "Entering Another World";
    }

    /**
     * A Message to display to the user when they transfer out of this dismension.
     *
     * @return The message to be displayed
     */
    public String getDepartMessage()
    {
    	return "Leaving Another World";
    }
}

 

 

 

 

Is there any chance anyone else can figure out what I'm doing wrong? I've been trying to figure this out for a while.

 

 

EDIT: Updated to MC 1.4.4 and appropriate MCP and Forge releases. Same problems still happening.

 

EDIT 2: Added a crash report, forgot about that one.

Link to comment
Share on other sites

1) Please dont post mojang code -.- your provider class can be like, 5 lines of code go learn object inheratance.

2) Interesting nothing should unless the overworld unless you screw with the registration in the dimension manager. Anything marked as 'keepLoaded' should never be unloaded.

I do Forge for free, however the servers to run it arn't free, so anything is appreciated.
Consider supporting the team on Patreon

Link to comment
Share on other sites

Sorry about that, I know about object inheritance but I kept most of the functions around in case I wanted to change them later. In any case, I'll try again with a trimmed-down file and post that one (I doubt it'll fix my problem but at least it'll be easier to read).

 

 

EDIT: Holy batmobiles, it did fix it (the lighting works too now). That'll teach me to override as many things as possible ahead of time, I guess. Thanks!

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.

Announcements



×
×
  • Create New...

Important Information

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