Jump to content

How can I make my mod multiplayer?


TheCallunxz

Recommended Posts

My mod works fine in single player but when I try and run the server I get this: Caused by: java.lang.RuntimeException: Attempted to load class net/minecraft/client/multiplayer/WorldClient for invalid side SERVER

at cpw.mods.fml.common.asm.transformers.SideTransformer.transform(SideTransformer.java:38)

at cpw.mods.fml.relauncher.RelaunchClassLoader.runTransformers(RelaunchClassLoader.java:228)

at cpw.mods.fml.relauncher.RelaunchClassLoader.findClass(RelaunchClassLoader.java:173)

 

What's going on? I have all the proxies and everything working... I think.

 

Any Help???

Link to comment
Share on other sites

// This is my package declaration, do not mess with the standard (package net.minecraft.src;) like I did,

// Because I know what Im doing in this part, If you don't know what your doing keep it the normal (package net.minecraft.src;)

package areriacraft.common;

 

// These are all the imports you need

import net.minecraft.block.Block;

import net.minecraft.block.material.Material;

import net.minecraft.client.entity.EntityClientPlayerMP;

import net.minecraft.client.gui.inventory.GuiContainer;

import net.minecraft.creativetab.CreativeTabs;

import net.minecraft.entity.Entity;

import net.minecraft.entity.EntityEggInfo;

import net.minecraft.entity.EntityList;

import net.minecraft.entity.EnumCreatureType;

import net.minecraft.item.EnumToolMaterial;

import net.minecraft.item.Item;

import net.minecraft.item.ItemStack;

import net.minecraft.src.BaseMod;

import net.minecraft.src.ModLoader;

import net.minecraft.world.biome.BiomeGenBase;

import net.minecraftforge.client.MinecraftForgeClient;

import net.minecraftforge.common.DimensionManager;

import net.minecraftforge.common.EnumHelper;

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.SidedProxy;

import cpw.mods.fml.common.event.FMLInitializationEvent;

import cpw.mods.fml.common.network.NetworkMod;

import cpw.mods.fml.common.network.NetworkMod.SidedPacketHandler;

import cpw.mods.fml.common.network.NetworkRegistry;

import cpw.mods.fml.common.registry.EntityRegistry;

import cpw.mods.fml.common.registry.GameRegistry;

import cpw.mods.fml.common.registry.LanguageRegistry;

 

 

@Mod(modid = "THECALLUNXZ", name = "AreriaCraft", version = "0.1")

 

 

@NetworkMod(clientSideRequired=true, serverSideRequired=false,

clientPacketHandlerSpec =

@SidedPacketHandler(channels = {"TheCallunxz" }, packetHandler = ClientPacketHandler.class),

serverPacketHandlerSpec =

@SidedPacketHandler(channels = {"TheCallunxz" }, packetHandler = ServerPacketHandler.class))

 

 

public class mod_areriacraft

{

@Instance

public static mod_areriacraft instance = new mod_areriacraft();

public static Block AreriaCollectorIdle;

public static Block AreriaCollectorActive;

private GuiHandlerAreriaCollector guiHandlerAreriaCollector = new GuiHandlerAreriaCollector();

public mod_areriacraft()

{

        super();

}

 

//Custom Tab

public static CreativeTabs tabLegend = new CustomTabareriacraft(12, "customTab");

 

//Ormel Ore

public static Block OrmelOre;

 

//Flint Block

public static Block FlintBlock;

 

//Flint Block

public static Block ArciriaPortalBlock;

 

//Flint Shard

public static Item FlintShard;

 

//Sharp Flint

public static Item FlintSharp;

 

//Flint Blade

public static Item FlintBlade;

 

//Flint Sword

public static Item FlintSword;

 

//Ormelite Gem

public static Item OrmeliteGem;

 

//Water Shard

public static Item AquareousShard;

public static Block AquareousShardBlock;

 

//Fire Shard

public static Item IncidnisShard;

public static Block IncidnisShardBlock;

 

 

//Air Shard

public static Item AirosisShard;

public static Block AirosisShardBlock;

 

 

//Electronic Shard

public static Item VigosisShard;

public static Block VigosisShardBlock;

 

 

//Metal Shard

public static Item MetasisShard;

public static Block MetasisShardBlock;

 

 

//Earth Shard

public static Item TerramisShard;

public static Block TerramisShardBlock;

 

 

//Ice Shard

public static Item IcysisShard;

public static Block IcysisShardBlock;

 

 

//Light Shard

public static Item LuxmotusShard;

public static Block LuxmotusShardBlock;

 

 

//Nature Shard

public static Item NatrasisShard;

public static Block NatrasisShardBlock;

 

 

//Nature Shard

public static Item InfusedShard;

 

 

 

 

//Proxy

@SidedProxy(clientSide = "areriacraft.common.ClientProxyareriacraft", serverSide = "areriacraft.common.CommonProxyareriacraft")

public static CommonProxyareriacraft proxy;

 

static int startEntityId = 300;

public static int dimension = 20;

 

//Swords and Tools

 

static EnumToolMaterial EnumToolMaterialFlint = EnumHelper.addToolMaterial("Flint", 2, 50, 6.0F, 6, 15);

 

//Init Section

@Init

public void load(FMLInitializationEvent event)

{

//Blocks

OrmelOre = new BlockOrmelOre(1797, 0).setBlockName("OrmelOre");

FlintBlock = new BlockFlintBlock(1798, 1).setBlockName("FlintBlock");

ArciriaPortalBlock = new ArciriaPortalBlock(1810, 1).setBlockName("ArciriaPortalBlock");

 

//AreriaCollector

AreriaCollectorIdle = new BlockAreriaCollector(1799, false).setHardness(3.5F).setStepSound(Block.soundStoneFootstep).setBlockName("AreriaCollector").setRequiresSelfNotify().setCreativeTab(mod_areriacraft.tabLegend);

AreriaCollectorActive = new BlockAreriaCollector(1800, true).setHardness(3.5F).setStepSound(Block.soundStoneFootstep).setBlockName("AreriaCollector").setRequiresSelfNotify();

 

//Shards

AquareousShardBlock = new BlockAquareousShardBlock(1801, 2).setBlockName("AquareousShardBlock");

IncidnisShardBlock = new BlockIncidnisShardBlock(1802, 3).setBlockName("IncidnisShardBlock");

AirosisShardBlock = new BlockAirosisShardBlock(1803, 4).setBlockName("AirosisShardBlock");

VigosisShardBlock = new BlockVigosisShardBlock(1804, 5).setBlockName("VigosisShardBlock");

MetasisShardBlock = new BlockMetasisShardBlock(1805, 6).setBlockName("MetasisShardBlock");

TerramisShardBlock = new BlockTerramisShardBlock(1806, 7).setBlockName("TerramisShardBlock");

IcysisShardBlock = new BlockIcysisShardBlock(1807, 8).setBlockName("IcysisShardBlock");

LuxmotusShardBlock = new BlockLuxmotusShardBlock(1808, 9).setBlockName("LuxmotusShardBlock");

NatrasisShardBlock = new BlockNatrasisShardBlock(1809, 10).setBlockName("NatrasisShardBlock");

 

 

//Items

FlintShard = new ItemFlintshard(600).setItemName("FlintShard");

FlintSharp = new ItemFlintSharp(601).setItemName("FlintSharp");

FlintBlade = new ItemFlintBlade(602).setItemName("FlintBlade");

FlintSword = new ItemFlintSword(603, EnumToolMaterialFlint).setItemName("FlintSword");

OrmeliteGem = new ItemOrmeliteGem(604).setItemName("OrmeliteGem");

 

//Shards

AquareousShard = new ItemAquareousShard(605).setItemName("AquareousShard");

IncidnisShard = new ItemIncidnisShard(606).setItemName("IncidnisShard");

AirosisShard = new ItemAirosisShard(607).setItemName("AirosisShard");

VigosisShard = new ItemVigosisShard(608).setItemName("VigosisShard");

MetasisShard = new ItemMetasisShard(609).setItemName("MetasisShard");

TerramisShard = new ItemTerramisShard(610).setItemName("TerramisShard");

IcysisShard = new ItemIcysisShard(611).setItemName("IcysisShard");

LuxmotusShard = new ItemLuxmotusShard(612).setItemName("LuxmotusShard");

NatrasisShard = new ItemNatrasisShard(613).setItemName("NatrasisShard");

InfusedShard = new ItemInfusedShard(614).setItemName("InfusedShard");

 

 

//Registrys

GameRegistry.registerBlock(OrmelOre, "TheCallunxz_OrmelOre");

LanguageRegistry.addName(OrmelOre, "\2472Ormelite Ore");

 

GameRegistry.registerBlock(FlintBlock, "TheCallunxz_Flintblock");

LanguageRegistry.addName(FlintBlock, "Flint Block");

 

GameRegistry.registerBlock(ArciriaPortalBlock, "TheCallunxz_ArciriaPortalBlock");

LanguageRegistry.addName(ArciriaPortalBlock, "\2470ArciriaPortalBlock");

 

GameRegistry.registerItem(FlintShard, "TheCallunxz_FlintShard");

LanguageRegistry.addName(FlintShard, "Flint Shard");

 

GameRegistry.registerItem(FlintSharp, "TheCallunxz_SharpFlint");

LanguageRegistry.addName(FlintSharp, "Sharp Flint");

 

GameRegistry.registerItem(FlintBlade, "TheCallunxz_FlintBlade");

LanguageRegistry.addName(FlintBlade, "Flint Blade");

 

GameRegistry.registerItem(FlintSword, "TheCallunxz_FlintSword");

LanguageRegistry.addName(FlintSword, "Flint Sword");

 

GameRegistry.registerItem(OrmeliteGem, "TheCallunxz_OrmeliteGem");

LanguageRegistry.addName(OrmeliteGem, "Ormelite Gem");

 

//Shards

GameRegistry.registerItem(AquareousShard, "TheCallunxz_Aquareous Shard");

LanguageRegistry.addName(AquareousShard, "\2471Aquareous Shard");

 

GameRegistry.registerItem(IncidnisShard, "TheCallunxz_IncidnisShard");

LanguageRegistry.addName(IncidnisShard, "\2474Incidnis Shard");

 

GameRegistry.registerItem(AirosisShard, "TheCallunxz_AirosisShard");

LanguageRegistry.addName(AirosisShard, "\2476Airosis Shard");

 

GameRegistry.registerItem(VigosisShard, "TheCallunxz_VigosisShard");

LanguageRegistry.addName(VigosisShard, "\247lVigosis Shard");

 

GameRegistry.registerItem(MetasisShard, "TheCallunxz_MetasisShard");

LanguageRegistry.addName(MetasisShard, "\2477Metasis Shard");

 

GameRegistry.registerItem(TerramisShard, "TheCallunxz_TerramisShard");

LanguageRegistry.addName(TerramisShard, "\2476Terramis Shard");

 

GameRegistry.registerItem(IcysisShard, "TheCallunxz_IcysisShard");

LanguageRegistry.addName(IcysisShard, "\2473Icysis Shard");

 

GameRegistry.registerItem(LuxmotusShard, "TheCallunxz_LuxmotusShard");

LanguageRegistry.addName(LuxmotusShard, "\247eLuxmotus Shard");

 

GameRegistry.registerItem(NatrasisShard, "TheCallunxz_NatrasisShard");

LanguageRegistry.addName(NatrasisShard, "\2472Natrasis Shard");

 

GameRegistry.registerItem(InfusedShard, "TheCallunxz_InfusedShard");

LanguageRegistry.addName(InfusedShard, "\2470Infused Shard");

 

GameRegistry.registerBlock(AquareousShardBlock, "TheCallunxz_AquareousShardBlock");

LanguageRegistry.addName(AquareousShardBlock, "\2470AquareousShardBlock");

 

GameRegistry.registerBlock(IncidnisShardBlock, "TheCallunxz_IncidnisShardBlock");

LanguageRegistry.addName(IncidnisShardBlock, "\2470IncidnisShardBlock");

 

GameRegistry.registerBlock(AirosisShardBlock, "TheCallunxz_AirosisShardBlock");

LanguageRegistry.addName(AirosisShardBlock, "\2470AirosisShardBlock");

 

GameRegistry.registerBlock(VigosisShardBlock, "TheCallunxz_VigosisShardBlock");

LanguageRegistry.addName(VigosisShardBlock, "\2470VigosisShardBlock");

 

GameRegistry.registerBlock(MetasisShardBlock, "TheCallunxz_MetasisShardBlock");

LanguageRegistry.addName(MetasisShardBlock, "\2470MetasisShardBlock");

 

GameRegistry.registerBlock(TerramisShardBlock, "TheCallunxz_TerramisShardBlock");

LanguageRegistry.addName(TerramisShardBlock, "\2470TerramisShardBlock");

 

GameRegistry.registerBlock(IcysisShardBlock, "TheCallunxz_IcysisShardBlock");

LanguageRegistry.addName(IcysisShardBlock, "\2470IcysisShardBlock");

 

GameRegistry.registerBlock(LuxmotusShardBlock, "TheCallunxz_LuxmotusShardBlock");

LanguageRegistry.addName(LuxmotusShardBlock, "\2470LuxmotusShardBlock");

 

GameRegistry.registerBlock(NatrasisShardBlock, "TheCallunxz_NatrasisShardBlock");

LanguageRegistry.addName(NatrasisShardBlock, "\2470NatrasisShardBlock");

 

GameRegistry.registerWorldGenerator(new LegendWorldGenerator());

LanguageRegistry.instance().addStringLocalization("itemGroup.customTab", "en_US", "AreriaCraft");

 

 

//CobbleGolem

 

LanguageRegistry.instance().addStringLocalization("entity.THECALLUNXZ.CobbleGolem.name", "Cobble Golem");

 

 

//RegFurnace

GameRegistry.registerBlock(AreriaCollectorIdle, "Extruder Idle");

GameRegistry.registerBlock(AreriaCollectorActive, "Extruder Active");

LanguageRegistry.addName(AreriaCollectorIdle, "\2475Infusion Stone");

NetworkRegistry.instance().registerGuiHandler(this, guiHandlerAreriaCollector); GameRegistry.registerTileEntity(TileAreriaCollector.class,"tileAreriaCollector");

 

 

//Recipes

  GameRegistry.addRecipe(new ItemStack(mod_areriacraft.FlintSharp), new Object[]

                {

                " X ", " X ", " X ", 'X', mod_areriacraft.FlintShard

                });

 

  GameRegistry.addRecipe(new ItemStack(mod_areriacraft.FlintBlade), new Object[]

                {

                " X ", " X ", " X ", 'X', mod_areriacraft.FlintSharp

                });

  GameRegistry.addRecipe(new ItemStack(mod_areriacraft.FlintSword), new Object[]

                {

                " X ", "S  ", 'X', mod_areriacraft.FlintBlade, 'S', Item.stick

                });

  GameRegistry.addRecipe(new ItemStack(mod_areriacraft.AreriaCollectorIdle), new Object[]

                {

                "QWE", "ASD", "ZXC", 'X', mod_areriacraft.FlintBlade, 'S', Item.stick

                });

 

 

 

 

 

//MinecraftForge

MinecraftForge.setBlockHarvestLevel(OrmelOre, "pickaxe", 3);

MinecraftForge.setBlockHarvestLevel(FlintBlock, "pickaxe", 0);

MinecraftForgeClient.preloadTexture(CommonProxyareriacraft.ITEMS_PNG);

        MinecraftForgeClient.preloadTexture(CommonProxyareriacraft.BLOCK_PNG);

        MinecraftForgeClient.preloadTexture("/areriacraft/common/png/zombie.png");

       

    //Mobs

       

      //Cobble

        proxy.registerRenderThings();

        EntityRegistry.registerModEntity(EntityCobble.class, "Cobble", 1, this, 80, 3, true);

        EntityRegistry.addSpawn(EntityCobble.class, 10, 2, 4, EnumCreatureType.monster, BiomeGenBase.beach, BiomeGenBase.extremeHills, BiomeGenBase.extremeHillsEdge, BiomeGenBase.forest, BiomeGenBase.forestHills, BiomeGenBase.jungle, BiomeGenBase.jungleHills, BiomeGenBase.mushroomIsland, BiomeGenBase.mushroomIslandShore, BiomeGenBase.ocean, BiomeGenBase.plains, BiomeGenBase.river, BiomeGenBase.swampland);

        LanguageRegistry.instance().addStringLocalization("entity.THECALLUNXZ.Cobble.name", "Cobble Golem");

        registerEntityEgg(EntityCobble.class, 0x7A65CF, 0x4DF200);

       

       

    //Dimension

        DimensionManager.registerProviderType(dimension, WorldProviderTutorial.class, false);

 

        DimensionManager.registerDimension(dimension, dimension);

     

 

}

 

 

public static int getUniqueEntityId()

{

do

{

startEntityId++;

}

while(EntityList.getStringFromID(startEntityId) != null);

 

return startEntityId;

}

 

 

public static void registerEntityEgg(Class <? extends Entity> entity, int primaryColor, int secondaryColor){

int id = getUniqueEntityId();

EntityList.IDtoClassMapping.put(id, entity);

EntityList.entityEggs.put(id, new EntityEggInfo(id, primaryColor, secondaryColor));

}

}

 

I assume this is all you need?

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

Announcements



×
×
  • Create New...

Important Information

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