Posted June 19, 201213 yr Hello everyone, I'm the creator of the Train and Zeppelin mod (http://trains-and-zeppelin.wikispaces.com/), and I'm currently having a rather odd problem with my mod in SMP. This problem has been there since the first FML version and I though perhaps this would be solved with time and updates, but it hasn't. (I'm using forge version 3.3.7 now) So here is the problem in pictures: This is the first start of the server: After restarting the server: Restarting again: IDs: package net.minecraft.src.TrainMod; public class EntityIds { public static final int CABOOSE = 1;// public static final int FREIGHTCART = 2;// public static final int FREIGHTGRAIN = 3;// public static final int FREIGHTTENDER = 4;// public static final int FREIGHTWATER = 5;// public static final int FREIGHTWOOD = 6;// public static final int EU07 = 7;// public static final int GP40 = 8;// public static final int GP40GREEN = 9;// public static final int GP7 = 10;// public static final int SHUNTER = 11;// public static final int SPEED = 12;// public static final int STEAM = 13;// public static final int STEAMBIG = 14;// public static final int STEAMBLUE = 15;// public static final int STEAMGREEN= 16;// public static final int STEAMGREY = 17;// public static final int STEAMYELLOW = 18;// public static final int STEAMSMALL = 19;// public static final int STEAMSMALLGREEN = 20;// public static final int STEAMSMALLRED = 21;// public static final int STEAMSMALLYELLOW = 22;// public static final int TRAM = 23;// public static final int TRAMWOOD = 24;// public static final int TRAMYELLOW = 25;// public static final int PASSENGER2 = 27;// public static final int TRACKSBUILDER = 28;// public static final int WORKCART = 29;// public static final int ROLLINGSTOCK = 30;// public static final int ZEPPELIN = 31;// public static final int CHME3 = 32; public static final int HEAVYSTEAM = 33; public static final int HEAVYTENDER = 34; public static final int FLATCART = 35; public static final int NEWHIGHSPEEDLOCO = 36; public static final int HIGHSPEEDCAR = 37; public static final int OPENWAGON = 38; public static final int TANKWAGON = 39; public static final int PASSENGER4 = 40; public static final int FREIGHTCART2 = 41; public static final int JUKEBOX = 42; public static final int CABOOSEWORK=43; public static final int STOCKCAR=44; public static final int PASSENGER5=45; public static final int VL10=46; public static final int TANKWAGON2=47; public static final int PASSENGERBLUE=48; public static final int PASSENGERCYAN=49; public static final int PASSENGERDARKBLUE=50; public static final int PASSENGERGREEN=51; public static final int PASSENGERLIGHTBLUE=52; public static final int PASSENGERLIGHTGREEN=53; public static final int PASSENGERPURPLE=54; public static final int PASSENGERYELLOW=55; public static final int GP7Yellow = 56; public static final int GP7Blue = 57; public static final int GP7Black = 58; public static final int GP7Red = 59; } This is how I register the entities (I'm just showing one here, but all are registered like that) /** * Registers a Entity class tracking information. Used for sendingEntity * information over the network. * * @param entityClass The class for the Entity * @param mod The BaseMod that provides this Entity. * @param ID The ID for the Entity. Needs to be unique combination of Mod and ID. * @param range How close a player has to be to be informed this Entity exists. * @param updateFrequency How many ticks between checking and sending information updates for this Entity. * @param sendVelocityInfo If velocity information should be included in the update information. * @return True, if successfully registered. False if the class is already registered. */ MinecraftForge.registerEntity(EntityFreightCart.class, this, EntityIds.FREIGHTCART, 200, 2, true); I have seen this post, so all my IDs are under 128, but that didn't helped http://minecraftforge.net/forum/index.php?topic=49.0 So, any ideas? https://raw.github.com/Traincraft/Traincraft/master/Logo_banner.png[/img]
June 19, 201213 yr on smp you have to implement IAnimal or IMob for Entities last i checked. http://i577.photobucket.com/albums/ss215/bobstrong/ModBannerMed.png[/img]
June 19, 201213 yr on smp you have to implement IAnimal or IMob for Entities last i checked. If this is true, what of boats/minecarts/arrows?
June 19, 201213 yr Things should work fine, Try debugging it and seeing if you are receiving the entity spawn packets like you should. I do Forge for free, however the servers to run it arn't free, so anything is appreciated. Consider supporting the team on Patreon
June 20, 201213 yr Author I have solved my problem Let me explain how The packet seems to work well, so that's not the problem: I have added a System.out.println in PacketEntitySpawn public PacketEntitySpawn(Entity ent, NetworkMod mod, int type) { entityID = ent.entityId; posX = MathHelper.floor_double(ent.posX * 32D); posY = MathHelper.floor_double(ent.posY * 32D); posZ = MathHelper.floor_double(ent.posZ * 32D); typeID = type; modID = MinecraftForge.getModID(mod); yaw = (byte)(ent.rotationYaw * 256.0F / 360.0F); pitch = (byte)(ent.rotationPitch * 256.0F / 360.0F); yawHead = (byte)(ent instanceof EntityLiving ? ((EntityLiving)ent).rotationYawHead * 256.0F / 360.0F : 0); metadata = ent.getDataWatcher(); System.out.println("spawn packet ent="+ent + " entitiyID="+entityID); And things work correctly spawn packet ent=net.minecraft.src.TrainMod.RollingStock.EntityLocoSteamBig@47b entitiyID=1147 spawn packet ent=net.minecraft.src.TrainMod.Zeppelin.EntityZepplin@47c entitiyID=1148 I have realised that the Zeppelin is never invisible In my code the Zeppelin just extends Entity My trains however are more complicated: [*]EntityMinecart extends Entity (notch code) [*]AbstractTrains extends EntityMinecart [*]EntityRollingStock extends AbstractTrains [*]DieselTrain extends EntityRollingStock [*]finally EntityLocoGP40 extends DieselTrain I realised that I had by mistake registered EntityRollingStock: MinecraftForge.registerEntity(EntityRollingStock.class,this, EntityIds.ROLLINGSTOCK, 200, 2, true); Removing that line solved my problem. So it seems that some entities were randomly registered as EntityRollingStock and some others were registered under their own name. Sorry for bothering you with my stupid mistake And thanks for your help https://raw.github.com/Traincraft/Traincraft/master/Logo_banner.png[/img]
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.