-
Posts
80 -
Joined
-
Last visited
Everything posted by Furgl
-
All documentation and downloads for my mods have been moved to my new website: www.sites.google.com/site/furglsmods/. This should make it easier to update information for them in the future
-
All documentation and downloads for my mods have been moved to my new website: www.sites.google.com/site/furglsmods/. This should make it easier to update information for them in the future
-
Auto Pickup has been updated to v1.1! Changelog:
-
Baby Mobs has been updated to v1.1! Changelog:
-
[glow=blue,2,300]Downloads and documentation: www.sites.google.com/site/furglsmods/baby-mobs[/glow] This mod requires Forge and is SSP and SMP compatible! Baby Mobs adds baby versions of many vanilla monsters, each with its own special abilities. These baby mobs replace their adult mob versions when they spawn, at a certain rate (specified in the config file). [glow=blue,2,300]Types of Baby Mobs[/glow] Baby Blaze Baby Cave Spider Baby Creeper Baby Dragon Baby Enderman Baby Ghast Baby Guardian Baby Iron Golem Baby Ocelot Baby Skeleton Baby Snow Golem Baby Spider Baby Squid Baby Witch Baby Wither Baby Wither Skeleton Baby Zombie Baby Zombie Pigman [glow=blue,2,300]Screenshots[/glow] [glow=blue,2,300]Videos[/glow][spoiler=Videos][glow=blue,2,300]English[/glow] [glow=blue,2,300]Deutsch[/glow] [glow=blue,2,300]Español[/glow]
-
[glow=red,2,300]Downloads and documentation: www.sites.google.com/site/furglsmods/auto-pickup[/glow] This mod requires Forge and is SSP and SMP compatible! Auto Pickup allows items to be picked up automatically or blacklisted and never picked up. Whenever you do something that creates an item, that item will be automatically placed in your inventory (if it is not in your blacklist). Experience will also be given to you automatically. This works with all modded items! [glow=red,2,300]This applies to:[/glow] shooting a bow killing mobs killing mobs with inventories (applies to all items in the inventory) mining ores (fortune, silk touch, etc. still apply) breaking blocks breaking blocks with inventories (applies to all items in the inventory) destroying entities that drop items (paintings, minecarts, armor stands, etc.) and more! [glow=red,2,300]Screenshots[/glow]
-
[SOLVED][1.7.10] Config File Location - Access is Denied
Furgl replied to Furgl's topic in Modder Support
Haha, that simple change fixed it! Thank you very much! -
Hello, I am trying to port back my 1.8 mod to 1.7.10 and am having trouble with the config file's directory. Whenever I try to run my 1.7.10 version and it reaches this line of code in preInit: Configuration config = new Configuration(event.getModConfigurationDirectory()); it prints out a stack trace with this exception: java.io.FileNotFoundException: C:\Users\<name>\OneDrive\<workspace>\<mod> 1.7.10\config (Access is denied) I don't understand why this is happening because my 1.8 version is in the same directory (except in a <mod> 1.8 folder) and doesn't have any problems. I had both my 1.8 and 1.7.10 versions print out event.getModConfigurationDirectory(), so I know that they are both going in the correct directories to find their configs, so that's not the problem. As far as I can tell, both config folders have the same access permissions as well.
-
Essentially, I'm trying to recreate particles as entities. The main reason I'm trying to do this is so I can use Entity's onImpact() method to do server-side things, like setting an entity on fire (whereas particles are client-side). In order to render these 2D entities, do I need to: [*]Use an item-based renderer and create a new item for every particle (like every vanilla ThrowableEntity does) [*]Use a model-based renderer and create a model (that I would probably have to make 2D and always face the player) Or is there a way to render a texture in 2D without using an item or model?
-
[SOLVED] [1.8] Crashes with Certain Methods in Custom Particle Class
Furgl replied to Furgl's topic in Modder Support
That's a good point, I think I'll change my custom particles classes into entity classes and deal with things server side as you suggest. Thank you very much Ernio! -
[SOLVED] [1.8] Crashes with Certain Methods in Custom Particle Class
Furgl replied to Furgl's topic in Modder Support
One of the things I'm using my custom particle class is for something similar to fire-breathing. But I can also have my custom particles do other things like spawning explosions or giving effects when they collide with a player. Is there any way that I can just have my custom particle class detect when a server-side event should occur (as it does now) and somehow tell the server side to do something (like run a method or a line of code)? Or would I have to use a class that extends Entitythrowable or Entity that runs server side and spawns particles client side, as you suggest? -
[SOLVED] [1.8] Crashes with Certain Methods in Custom Particle Class
Furgl replied to Furgl's topic in Modder Support
Thank you for the awesome explanation Ernio! I changed my custom particle class to only be called on the client side now. Most things function as they should (the particles spawn, move, and detect collisions correctly), but how can I have the particle do things server side (such as lighting an entity on fire) when they collide with an entity? -
I've made a custom particle class that can detect when an entity has collided with the particle (among other things) and then act accordingly. My class seemed to work perfectly, but once in a while (maybe 1/1000 times) the class would cause my game to crash. Since it was so rare and I couldn't narrow down the problem, I ignored it. But now I have one of my custom particles spawning constantly from a mob and I found that killing the mob with the command: /kill @e[type=!Player] can cause the same crash occasionally (maybe 1/100 times). So I made a redstone clock to spawn the mob and then have the command run every tick so I can easily replicate the crash and fix it. I have found that running either of these codes in my custom particle class on the server side causes this crash: //get list of entities that the particle has collided with List entities = this.worldObj.getEntitiesWithinAABBExcludingEntity(action.entity /*my entity*/, new AxisAlignedBB(this.posX-0.3F, this.posY-0.3F, this.posZ-0.3F, this.posX+0.3F, this.posY+0.3F, this.posZ+0.3F)); Crashlog:
-
Well that stinks Is there anyway to detect that an entity that triggers the EntityJoinWorldEvent has just spawned? (Whether from a spawner, /summon, natural spawn, ect.) I've tried checking if entity.ticksExisted == 0, but that doesn't seem to differentiate between mobs newly spawned and mobs that are just being rendered in again.
-
Oh, then the description for the SpecialSpawn method must be out of date. I'm testing it with EntityJoinWorldEvent now instead, and it seems to be triggered whenever any mob is rendered in or unrendered, from what I can tell. Is there any way that I can detect when the entity that triggers this event has just spawned from a mob spawner?
-
I'm trying to have my custom mobs occasionally spawn in place of normal mobs that spawn from vanilla mob spawners. To do this, I was planning on subscribing to the SpecialSpawn Event in the LivingSpawnEvent class, so I have this event handler to test when the event is called: public void registerEventListeners() { // DEBUG System.out.println("Registering event listeners"); MinecraftForge.EVENT_BUS.register(new <this class>()); } @SubscribeEvent(priority=EventPriority.NORMAL, receiveCanceled=true) public void onEvent(LivingSpawnEvent.SpecialSpawn event) { System.out.println("Some event called; is this the client side? " + event.entity.worldObj.isRemote); } But the event is not being triggered when a skeleton spawns from the skeleton spawner that I placed. From what I can tell, the event is only being triggered when monsters naturally spawn (I have tried /summon, using spawn eggs, and turning /gamerule doMobSpawning on/off to test this). Am I not handling the correct event properly, or am I doing something else wrong?
-
I'm trying to figure out a way to force a player to look at a nearby entity. I know that this can be done the opposite way (forcing an entity to look at a player) using: <entity>.getLookHelper().setLookPosition(<player>.posX, <player>.posY + (double)<player>.getEyeHeight(), <player>.posZ, 10.0F, (float)<entity>.getVerticalFaceSpeed()); But seeing as a player entity doesn't have the .getLookHelper() method, I'm not sure how to do this a similar way. I understand that a player's position and rotation can be set with methods like .setPositionAndRotation(x, y, z, yaw, pitch), where yaw and pitch would determine rotation, but I'm not sure how to find/calculate what yaw and pitch to use to direct the player to look at the entity.
-
[SOLVED] [1.8] How to Have Custom Mob Spawn in Nether Fortress
Furgl replied to Furgl's topic in Modder Support
I got it working as expected now, thank you diesieben07. And I now have a basic understanding of how event handling works in Minecraft, thank you SanAndreasP. -
[SOLVED] [1.8] How to Have Custom Mob Spawn in Nether Fortress
Furgl replied to Furgl's topic in Modder Support
Thank you for the reply! I'm new to modding, so could you explain what you mean by: -
I'm creating a custom mob and I want it to spawn in a Nether Fortress, the same way blaze, magma cubes, and wither skeletons do in vanilla. The normal way that I would add a mob spawn is using this: EntityRegistry.addSpawn(Entity<Mob>.class, 15, 4, 4, EnumCreatureType.MONSTER, <Biome>)); but seeing as the Nether Fortress is a generated structure instead of a biome, I'm not sure how to go about doing that.
-
[SOLVED] [1.8] Change Eye Height & Held Item Size/Location
Furgl replied to Furgl's topic in Modder Support
I fixed #1 by overriding the getEyeHeight() method in my EntityBabySkeleton class, and I fixed #2 and #3 by adding "isChild = true;" to the render() method in my ModelBabySkeleton class. Thank you very much coolAlias! -
I'm trying to create a smaller version of the vanilla Skeleton, but I've run into a couple problems that I haven't been able to work out: [*]The location that it shoots arrows from (what I would think is the eye height) is too high. [*]The bow it holds is too big. [*]The bow it holds is too high up. https://gyazo.com/f6adb39378c587cff3e013ca5a90ebc1 (if the image doesn't work) I looked into the EntitySkeleton class and traced the arrow it shoots back to the EntityArrow class that has this line: this.posY = shooter.posY + (double)shooter.getEyeHeight() - 0.10000000149011612D; which looks like it uses eyeHeight to determine where to spawn the arrow. But .getEyeHeight() gets the height from Entity.height * 0.85F, and that height is set with .setSize(). In my own EntityBabySkeleton class, I used: this.setSize(0.6F, 1.0F); so the eyeHeight should be 0.85F, but it still shoots in the same location that a normal skeleton would. (I'm sorry if that was confusing to follow) As for the bow, is there a way to scale the bow's size or would I need to create a custom item with a smaller bow model? And is there a way to change where the bow appears on the model so I could move it down to the baby skeleton's hands?
-
I understand what you guys mean now. Thank you for the help!
-
I'm sorry if I'm missing something obvious, but I'm still new to modding. Could you tell me what I'm doing wrong or what exactly it means to substitute the scale factor and model for my entity, if I didn't do that correctly?
-
I tried to add the code you specified, jabelar, to the render() method of ModelSpider.java, but I get the error "The method getScaleFactor() is unidentified for the Type Entity." Here is what I have for render(): public void render(Entity p_78088_1_, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float p_78088_7_) { this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, p_78088_7_, p_78088_1_); // scale the whole thing for big or small entities GL11.glPushMatrix(); GL11.glTranslatef(0F, 1.5F-1.5F*p_78088_1_.getScaleFactor(), 0F); GL11.glScalef(p_78088_1_.getScaleFactor(), p_78088_1_.getScaleFactor(), p_78088_1_.getScaleFactor()); this.spiderHead.render(p_78088_7_); this.spiderNeck.render(p_78088_7_); this.spiderBody.render(p_78088_7_); this.spiderLeg1.render(p_78088_7_); this.spiderLeg2.render(p_78088_7_); this.spiderLeg3.render(p_78088_7_); this.spiderLeg4.render(p_78088_7_); this.spiderLeg5.render(p_78088_7_); this.spiderLeg6.render(p_78088_7_); this.spiderLeg7.render(p_78088_7_); this.spiderLeg8.render(p_78088_7_); // don't forget to pop the matrix for overall scaling GL11.glPopMatrix(); }