-
Posts
1061 -
Joined
-
Last visited
Posts posted by NovaViper
-
-
Look at the error I posted, the error doesn't show in the actual log because that's were the game freezes completely. I had to close the game in order to get out of the freeze
-
53 minutes ago, diesieben07 said:
Remove these for a start:
That didn't work.. that crash still occurs
-
I thought it was Optifine but it still keeps on crashing.. And It doesn't even tell me what mods are causing the crash. Anyone have any idea why?
-
I've noticed a bug every so often I try to create a new world or enter a world. The game would finish creating it, but then when it gets to sending me to the world, it spits out this long error and it displays '0%' on the screen. I'm using Forge 14.21.1.2413 with several mods that I'm using to create a modpack. Here's my FML Log
-
@Choonster Sorry for not responding! The original developer actually came back and updated the mod to 1.11.2 and 1.10.2
- 1
-
Glad that you fixed it! I was just about to ask if I could see what the code looked like
- 1
-
I'm trying to revive this mod (Doggy Talents) that the author created about a year ago since everyone (including myself) has enjoyed it. The mod only got to 1.8.4 but stopped at that version, the author hasn't been on since. Since 1.8, many, many things in Minecraft as far as coding has changed (in addition to the fact that I haven't modded in nearly 3 years now), it's becoming a pain in the butt. So far I have gotten a good bit of the changes converted over becaused I compared the code with my previous works (Zero Quest, TetraCraft, and Cryogenic Library) however, there are still many problems I am encountering because of the major changes. I've complied up a list of current issues I'm having with updating the code, which is the following:
- Can't find an alternative method for StatCollector, which Doggy Talents utilizes for collecting and translating string components to text
- Adding Tile Entities to Blocks and the methods inside Tile Entities
- Adding custom block boundaries
- Getting the entity (i.e player) that is riding on another (i.e. horse) or entity (i.e. horse) that is being ridden on
There might be more I'm missing, but I spot more I'll add onto this list. Also, here is the source code to the forked repository
- 1
-
Thanks!
13 minutes ago, diesieben07 said:Choose a proper mappings version from MCPBot. If they are still not named, the method simply does not have a name yet, you can name it yourself, also through MCPBot.
Thanks!
-
1 hour ago, diesieben07 said:
Make sure you are using 64 Bit Java and have enough free RAM.
Switching to 64bit JDK seemed to do the trick, thanks! Also is there a way to make the func methods display names that are understandable?
- 1
-
For some reason, I keep on getting this error:
* What went wrong: Unable to start the daemon process. This problem might be caused by incorrect configuration of the daemon. For example, an unrecognized jvm option is used. Please refer to the user guide chapter on the daemon at https://docs.gradle.org/2.14/userguide/gradle_daemon.html Please read the following process output to find out more: ----------------------- Error occurred during initialization of VM Could not reserve enough space for 2097152KB object heap
I've added the gradle.properties and used the one that came with the mdk but I keep on getting this error. Anyone knows what I could be doing wrong?
-
Thanks but how do I make the biome spawn in the Overworld, just strictly to see if the biome I made is registered correctly?
-
Hey, it's been a while since I modded and with 1.9 and 1.10, what has changed with dimensions and biomes? I do notice that BiomeGenBase does not exist any longer, and the dimension register uses DimensionType instead of ids. My previous mod, Zero Quest used some of these methods located in here and here. I'm basically starting over with a new mod, called TetraCraft and I'm wondering what has changed so far and how can I use the changes.
Source Code for Zero Quest is here.
-
Ah ok. I was just wondering why it wasn't saying that it only works with 1.9.4 and vice versa with 1.10.2
-
Oh ok, so that means that 1.9.4 is compatible with 1.10.2, right?
-
Hey, I'm trying to restrict my mods' accepted minecraft versions. For some reason I have the mod set to 1.9.4, but it still activates in 1.10.2. I'm trying to figure out how to make the two versions restricted from running each other
Here is the Source code:
Main Library Mod: https://github.com/NovaViper/Cryogenic-Library
New Mod using the Library Mod: https://github.com/NovaViper/TetraCraft
-
Yep, that was what I was missing. Thanks guys!
-
Your LootPool needs a name entry.
I did put a name entry, I copied the slime JSON from the source code.. and it still didn't work
-
For some reason, whenever I kill the custom entity I made, no items drop and this is error occurs:
[10:31:45] [server thread/ERROR]: Couldn't load loot table tetracraft:entities/terrakon from file:/C:/Users/novag/MEGA/Minecraft/1.9.4/classes/production/1.9.4_main/assets/tetracraft/loot_tables/entities/terrakon.json com.google.gson.JsonParseException: Loot Table "tetracraft:entities/terrakon" Missing `name` entry for pool #0 at net.minecraftforge.common.ForgeHooks.readPoolName(ForgeHooks.java:1094) ~[ForgeHooks.class:?] at net.minecraft.world.storage.loot.LootPool$Serializer.deserialize(LootPool.java:152) ~[LootPool$Serializer.class:?] at net.minecraft.world.storage.loot.LootPool$Serializer.deserialize(LootPool.java:147) ~[LootPool$Serializer.class:?] at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?] at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:40) ~[TypeAdapterRuntimeTypeWrapper.class:?] at com.google.gson.internal.bind.ArrayTypeAdapter.read(ArrayTypeAdapter.java:72) ~[ArrayTypeAdapter.class:?] at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?] at com.google.gson.Gson.fromJson(Gson.java:868) ~[Gson.class:?] at com.google.gson.Gson$1.deserialize(Gson.java:126) ~[Gson$1.class:?] at net.minecraft.util.JsonUtils.deserializeClass(JsonUtils.java:378) ~[JsonUtils.class:?] at net.minecraft.util.JsonUtils.deserializeClass(JsonUtils.java:400) ~[JsonUtils.class:?] at net.minecraft.world.storage.loot.LootTable$Serializer.deserialize(LootTable.java:209) ~[LootTable$Serializer.class:?] at net.minecraft.world.storage.loot.LootTable$Serializer.deserialize(LootTable.java:204) ~[LootTable$Serializer.class:?] at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) ~[TreeTypeAdapter.class:?] at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?] at com.google.gson.Gson.fromJson(Gson.java:768) ~[Gson.class:?] at com.google.gson.Gson.fromJson(Gson.java:717) ~[Gson.class:?] at com.google.gson.Gson.fromJson(Gson.java:689) ~[Gson.class:?] at net.minecraftforge.common.ForgeHooks.loadLootTable(ForgeHooks.java:1018) ~[ForgeHooks.class:?] at net.minecraft.world.storage.loot.LootTableManager$Loader.loadBuiltinLootTable(LootTableManager.java:148) [LootTableManager$Loader.class:?] at net.minecraft.world.storage.loot.LootTableManager$Loader.load(LootTableManager.java:71) [LootTableManager$Loader.class:?] at net.minecraft.world.storage.loot.LootTableManager$Loader.load(LootTableManager.java:52) [LootTableManager$Loader.class:?] at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3524) [guava-17.0.jar:?] at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2317) [guava-17.0.jar:?] at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2280) [guava-17.0.jar:?] at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2195) [guava-17.0.jar:?] at com.google.common.cache.LocalCache.get(LocalCache.java:3934) [guava-17.0.jar:?] at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3938) [guava-17.0.jar:?] at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4821) [guava-17.0.jar:?] at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4827) [guava-17.0.jar:?] at net.minecraft.world.storage.loot.LootTableManager.getLootTableFromLocation(LootTableManager.java:39) [LootTableManager.class:?] at net.minecraft.entity.EntityLiving.dropLoot(EntityLiving.java:589) [EntityLiving.class:?] at net.minecraft.entity.EntityLivingBase.onDeath(EntityLivingBase.java:1164) [EntityLivingBase.class:?] at net.minecraft.entity.passive.EntityTameable.onDeath(EntityTameable.java:279) [EntityTameable.class:?] at net.minecraft.entity.EntityLivingBase.attackEntityFrom(EntityLivingBase.java:1056) [EntityLivingBase.class:?] at net.minecraft.entity.passive.EntityAnimal.attackEntityFrom(EntityAnimal.java:80) [EntityAnimal.class:?] at com.novaviper.tetracraft.common.entity.EntityTerrakon.attackEntityFrom(EntityTerrakon.java:171) [EntityTerrakon.class:?] at net.minecraft.entity.projectile.EntityArrow.onHit(EntityArrow.java:380) [EntityArrow.class:?] at net.minecraft.entity.projectile.EntityArrow.onUpdate(EntityArrow.java:280) [EntityArrow.class:?] at net.minecraft.entity.projectile.EntityTippedArrow.onUpdate(EntityTippedArrow.java:87) [EntityTippedArrow.class:?] at net.minecraft.world.World.updateEntityWithOptionalForce(World.java:2095) [World.class:?] at net.minecraft.world.WorldServer.updateEntityWithOptionalForce(WorldServer.java:872) [WorldServer.class:?] at net.minecraft.world.World.updateEntity(World.java:2061) [World.class:?] at net.minecraft.world.World.updateEntities(World.java:1881) [World.class:?] at net.minecraft.world.WorldServer.updateEntities(WorldServer.java:644) [WorldServer.class:?] at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:781) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:685) [MinecraftServer.class:?] at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:155) [integratedServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:534) [MinecraftServer.class:?] at java.lang.Thread.run(Thread.java:745) [?:1.8.0_91]
The Lootable was working before I upgraded to 1.9.4. My code is here:
Entity
package com.novaviper.tetracraft.common.entity; import com.google.common.base.Predicate; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityAgeable; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.SharedMonsterAttributes; import net.minecraft.entity.ai.*; import net.minecraft.entity.passive.EntityAnimal; import net.minecraft.entity.passive.EntityCow; import net.minecraft.entity.passive.EntityRabbit; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.projectile.EntityArrow; import net.minecraft.init.Items; import net.minecraft.init.SoundEvents; import net.minecraft.inventory.EntityEquipmentSlot; import net.minecraft.item.EnumDyeColor; import net.minecraft.item.Item; import net.minecraft.item.ItemFood; import net.minecraft.item.ItemStack; import net.minecraft.util.*; import net.minecraft.util.math.BlockPos; import net.minecraft.util.text.TextComponentTranslation; import net.minecraft.world.World; import com.novaviper.cryolib.common.helper.ChatHelper; import com.novaviper.tetracraft.common.init.ModItems; import com.novaviper.tetracraft.common.init.ModLootTables; import com.novaviper.tetracraft.common.util.ItemUtils; import com.novaviper.cryolib.lib.Constants; import com.novaviper.tetracraft.common.init.ModSoundEvents; import java.util.UUID; /** * @author NovaViper * @date 7/10/2016 * @purpose Main Entity class for the Terrakon */ public class EntityTerrakon extends EntityModRideableTameable { public EntityTerrakon(World worldIn) { super(worldIn); this.setSize(1f, 1.5f); this.setTamed(false); } @Override protected void initEntityAI() { this.tasks.addTask(1, new EntityAISwimming(this)); this.tasks.addTask(2, this.aiSit = new EntityAISit(this)); this.tasks.addTask(3, new EntityAILeapAtTarget(this, 0.4F)); this.tasks.addTask(4, new EntityAIAttackMelee(this, 1.0D, true)); this.tasks.addTask(5, new EntityAIFollowOwner(this, 1.0D, 10.0F, 2.0F)); this.tasks.addTask(6, new EntityAIMate(this, 1.0D)); this.tasks.addTask(7, new EntityAIWander(this, 1.0D)); this.tasks.addTask(9, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F)); this.tasks.addTask(9, new EntityAILookIdle(this)); this.targetTasks.addTask(1, new EntityAIOwnerHurtByTarget(this)); this.targetTasks.addTask(2, new EntityAIOwnerHurtTarget(this)); this.targetTasks.addTask(3, new EntityAIHurtByTarget(this, true, new Class[0])); this.targetTasks.addTask(4, new EntityAITargetNonTamed(this, EntityAnimal.class, false, new Predicate<Entity>() { public boolean apply(Entity entity) { return entity instanceof EntityCow || entity instanceof EntityRabbit; } })); //this.targetTasks.addTask(5, new EntityAINearestAttackableTarget(this, EntitySkeleton.class, false)); } @Override protected void applyEntityAttributes() { super.applyEntityAttributes(); this.updateEntityAttributes(); } @Override public void updateEntityAttributes() { this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.40000001192092896D); if (this.isTamed()) { if (!this.isChild()) { this.getEntityAttribute(SharedMonsterAttributes.MAX_HEALTH).setBaseValue(50.0D); this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(6.0D); } else { this.getEntityAttribute(SharedMonsterAttributes.MAX_HEALTH).setBaseValue(10.0D); this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(1.0D); } } else { if (!this.isChild()) { this.getEntityAttribute(SharedMonsterAttributes.MAX_HEALTH).setBaseValue(40.0D); this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(6.0D); } else { this.getEntityAttribute(SharedMonsterAttributes.MAX_HEALTH).setBaseValue(10.0D); this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(1.0D); } } } @Override protected SoundEvent getStepSound() { return SoundEvents.ENTITY_WOLF_STEP; } @Override protected SoundEvent getFallSound() { return SoundEvents.ENTITY_GENERIC_SMALL_FALL; } @Override protected SoundEvent getGallopSound() { return SoundEvents.ENTITY_HORSE_GALLOP; } @Override protected SoundEvent getHurtSound() { return ModSoundEvents.terrakonHurt; } @Override protected SoundEvent getDeathSound() { return ModSoundEvents.terrakonDeath; } @Override protected SoundEvent getAmbientSound() { return isAngry() ? ModSoundEvents.terrakonGrowl : rand.nextInt(3) == 0 ? isTamed() && getHealth() <= Constants.LOW_HP ? ModSoundEvents.terrakonWhine : ModSoundEvents.terrakonPanting : ModSoundEvents.terrakonBark; } /** * Returns the volume for the sounds this mob makes. */ @Override public float getSoundVolume() { return 2F; } /** * Gets the pitch of living sounds in living entities. */ @Override public float getPitch() { if (!isChild()) { return super.getSoundPitch(); } else { return super.getSoundPitch() * 1; } } /** * Called when the entity is attacked. */ @Override public boolean attackEntityFrom(DamageSource source, float amount) { if (this.isEntityInvulnerable(source)) { return false; } else { Entity entity = source.getEntity(); if (this.aiSit != null) { this.aiSit.setSitting(false); } if (entity != null && !(entity instanceof EntityPlayer) && !(entity instanceof EntityArrow)) { amount = (amount + 1.0F) / 2.0F; } return super.attackEntityFrom(source, amount); } } public boolean attackEntityAsMob(Entity entityIn) { boolean flag = entityIn.attackEntityFrom(DamageSource.causeMobDamage(this), (float) ((int) this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).getAttributeValue())); if (flag) { this.applyEnchantments(this, entityIn); this.updateEntityAttributes(); } return flag; } public void setTamed(boolean tamed) { super.setTamed(tamed); this.updateEntityAttributes(); } /** * Called when a player interacts with a mob. e.g. gets milk from a cow, gets into the saddle on a pig. */ @Override public boolean processInteract(EntityPlayer player, EnumHand hand, ItemStack stack) { if (this.isTamed()) { if (stack != null) { if (stack.getItem() instanceof ItemFood) { ItemFood itemfood = null; if (getHealthRelative() < 1) { itemfood = (ItemFood) ItemUtils.consumeEquipped(player, EntityEquipmentSlot.MAINHAND, this.populateEatableFoods()); if (itemfood != null) { float volume = getSoundVolume() * 1.0f; float pitch = getPitch(); BlockPos pos = this.getPosition(); worldObj.playSound(player, pos.getX(), pos.getY(), pos.getZ(), SoundEvents.ENTITY_GENERIC_EAT, SoundCategory.NEUTRAL, volume, pitch); this.heal(itemfood.getHealAmount(stack)); } return true; } } else if (ItemUtils.hasEquipped(player, EntityEquipmentSlot.MAINHAND, Items.SHEARS) && this.canInteract(player)) { if (isServer()) { unTame(); this.setSaddled(false); } return true; } else if (ItemUtils.hasEquipped(player, EntityEquipmentSlot.MAINHAND, Items.SADDLE) && !this.isSaddled() && isServer()) { if(this.canInteract(player)) { if (!this.isChild()) { this.setSaddled(true); this.playSound(ModSoundEvents.Saddle, 0.5F, 1.0F); ItemUtils.consumeEquipped(player, EntityEquipmentSlot.MAINHAND, Items.SADDLE); } else { TextComponentTranslation text = ChatHelper.getChatComponentTranslation("interaction.tetracraft.entity.cannotBeRidden"); this.tooYoungForInteract(this, player, text); return true; } }else{ this.doNotOwnMessage(this, player); } } else if (ItemUtils.consumeEquipped(player, EntityEquipmentSlot.MAINHAND, Items.DYE) && this.canInteract(player)) { EnumDyeColor enumdyecolor = EnumDyeColor.byDyeDamage(stack.getMetadata()); if (enumdyecolor != this.getCollarColor()) { this.setCollarColor(enumdyecolor); return true; } } /*else if (stack.getItem() == Items.stick && canInteract(player)) { if (isServer()) { player.openGui(TetraCraft.instance, CommonProxy.PetPack, this.worldObj, this.getEntityId(), MathHelper.floor_double(this.posY), MathHelper.floor_double(this.posZ)); this.worldObj.playSoundEffect(this.posX, this.posY + 0.5D, this.posZ, "random.chestopen", 0.5F, this.worldObj.rand.nextFloat() * 0.1F + 0.9F); return true; } }*/ } if (canInteract(player) && isServer() && !this.isBreedingItem(stack)) { this.aiSit.setSitting(!this.isSitting()); this.isJumping = false; this.navigator.clearPathEntity(); this.setAttackTarget((EntityLivingBase)null); } if(this.isSaddled() && !player.onGround){ if(this.canInteract(player)) { this.makePlayerRide(player); }else{ this.doNotOwnMessage(this, player); } return true; } } else if (ItemUtils.consumeEquipped(player, EntityEquipmentSlot.MAINHAND, Items.BONE) && !this.isAngry()) { if (isServer()) { tamedFor(player, this.rand.nextInt(3) == 0); } return true; } return super.processInteract(player, hand, stack); } /** * Checks if the parameter is an item which this animal can be fed to breed it (wheat, carrots or seeds depending on * the animal type) */ @Override public boolean isBreedingItem(ItemStack stack) { return (stack == null ? false : stack.getItem() == ModItems.breedingBone); } @Override public Item[] populateEatableFoods() { super.populateEatableFoods(); Item[] food = {Items.BEEF, Items.CHICKEN, Items.PORKCHOP, Items.MUTTON, Items.RABBIT, Items.FISH, Items.COOKED_BEEF, Items.COOKED_CHICKEN, Items.COOKED_PORKCHOP, Items.COOKED_MUTTON, Items.COOKED_RABBIT, Items.COOKED_FISH}; return food; } @Override protected ResourceLocation getLootTable() { return ModLootTables.LootTableTerrakon; } /** * Returns true if the mob is currently able to mate with the specified mob. */ @Override public boolean canMateWith(EntityAnimal otherAnimal) { if (otherAnimal == this) { return false; } else if (!this.isTamed()) { return false; } else if (!(otherAnimal instanceof EntityTerrakon)) { return false; } else { EntityTerrakon entityTerrakon = (EntityTerrakon) otherAnimal; return !entityTerrakon.isTamed() ? false : (entityTerrakon.isSitting() ? false : this.getGender() == entityTerrakon.getGender() ? false : this.isInLove() && entityTerrakon.isInLove()); } } @Override public EntityTerrakon createChild(EntityAgeable ageable) { EntityTerrakon entityTerrakon = new EntityTerrakon(this.worldObj); UUID uuid = this.getOwnerId(); if (uuid != null) { entityTerrakon.setOwnerId(uuid); entityTerrakon.setTamed(true); } return entityTerrakon; } }
Register
/** * Register a {@link LootTable} with the specified ID. * * @param id The ID of the LootTable without the modID * @return The ID of the LootTable */ public static ResourceLocation registerLootTable(String modid, String id, String location) { return LootTableList.register(new ResourceLocation(modid, location + "/" + id)); }
LootTable Loading Class
package com.novaviper.tetracraft.common.init; import net.minecraft.util.ResourceLocation; import net.minecraft.world.storage.loot.LootTable; import com.novaviper.cryolib.lib.Registers; import com.novaviper.tetracraft.lib.ModReference; /** * @author NovaViper * @date 7/10/2016 * @purpose Defines and registers this mod's {@link LootTable}s. */ public class ModLootTables { public static final ResourceLocation LootTableTerrakon = registerLootTable("terrakon", "entities"); private static ResourceLocation registerLootTable(String entityName, String id){ return Registers.registerLootTable(ModReference.MOD_ID, entityName, id); } }
r]
LootTable JSON
{ "pools": [ { "rolls": 1, "entries": [ { "type": "item", "name": "minecraft:slime_ball", "weight": 1, "functions": [ { "function": "set_count", "count": { "min": 0, "max": 2 } }, { "function": "looting_enchant", "count": { "min": 0, "max": 1 } } ] } ] } ] }
-
I just figured it out after playing around with the Run configurations, I had to input the Main Class and now it starts up. Yeah so it seems to work better by loading the project as an Eclipse project instead of a Gradle project like Lex said. Buuut.. I do notice something else, it looks like the IDE isn't picking up the gradle class
-
Oh wait, I found this post where LexManos said to import the project as an Eclipse project instead of a Gradle project. I'm trying this right now.
-
Thanks for trying. I'll just deal with that odd looking startup prompt or utilize IntelliJ along with NetBeans
-
I know it supports Java, but I want to use JavaScript.. which IntelliJ nags me about paying for it
-
NetBeans is that bad? I had IntelliJ and I started using NetBeans specifically because it fully supports Java without having to pay crazy amounts of money for it.. I plan on making a video game with it.
-
Welp, I got nothing from Google, I found how you could set the main class but I would get an error like this:
Error: Could not find or load main class net.minecraftforge.gradle.GradleStart :run FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':run'. > Process 'command 'C:\Program Files\Java\jdk1.8.0_91\bin\java.exe'' finished with non-zero exit value 1 * Try:Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
My configurations are like this:
Tasks: ${project}:run
Arguments: -PmainClass=net.minecraftforge.gradle.GradleStart
Build.gradle:
// For those who want the bleeding edge buildscript { repositories { jcenter() maven { name = "forge" url = "http://files.minecraftforge.net/maven" } } dependencies { classpath 'net.minecraftforge.gradle:ForgeGradle:2.2-SNAPSHOT' } } apply plugin: 'net.minecraftforge.gradle.forge' /* // for people who want stable - not yet functional for MC 1.8.8 - we require the forgegradle 2.1 snapshot plugins { id "net.minecraftforge.gradle.forge" version "2.0.2" } */ version = "0.0.1" group= "com.novaviper.cryolib" // http://maven.apache.org/guides/mini/guide-naming-conventions.html archivesBaseName = "CryogenicLibrary" srcCompat=JavaVersion.VERSION_1_8 targetCompat=JavaVersion.VERSION_1_8 // NetBeans will automatically add "run" and "debug" tasks relying on the // "mainClass" property. You may however define the property prior executing // tasks by passing a "-PmainClass=<QUALIFIED_CLASS_NAME>" argument. // // Note however, that you may define your own "run" and "debug" task if you // prefer. In this case NetBeans will not add these tasks but you may rely on // your own implementation. if (!hasProperty('mainClass')) { ext.mainClass = 'net.minecraftforge.gradle.GradleStart' } minecraft { version = "1.9.4-12.17.0.1976" runDir = "run" // the mappings can be changed at any time, and must be in the following format. // snapshot_YYYYMMDD snapshot are built nightly. // stable_# stables are built at the discretion of the MCP team. // Use non-default mappings at your own risk. they may not allways work. // simply re-run your setup task after changing the mappings to update your workspace. mappings = "snapshot_20160518" // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable. } dependencies { // you may put jars on which you depend on in ./libs // or you may define them like so.. //compile "some.group:artifact:version:classifier" //compile "some.group:artifact:version" // real examples //compile 'com.mod-buildcraft:buildcraft:6.0.8:dev' // adds buildcraft to the dev env //compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env // the 'provided' configuration is for optional dependencies that exist at compile-time but might not at runtime. //provided 'com.mod-buildcraft:buildcraft:6.0.8:dev' // the deobf configurations: 'deobfCompile' and 'deobfProvided' are the same as the normal compile and provided, // except that these dependencies get remapped to your current MCP mappings //deobfCompile 'com.mod-buildcraft:buildcraft:6.0.8:dev' //deobfProvided 'com.mod-buildcraft:buildcraft:6.0.8:dev' // for more info... // http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html // http://www.gradle.org/docs/current/userguide/dependency_management.html } processResources { // this will ensure that this task is redone when the versions change. inputs.property "version", project.version inputs.property "mcversion", project.minecraft.version // replace stuff in mcmod.info, nothing else from(sourceSets.main.resources.srcDirs) { include 'mcmod.info' // replace version and mcversion expand 'version':project.version, 'mcversion':project.minecraft.version } // copy everything else, thats not the mcmod.info from(sourceSets.main.resources.srcDirs) { exclude 'mcmod.info' }}
Not sure what to do now V_V
[Solved] Strange error whenever I create a new world/enter a world in 1.12
in Support & Bug Reports
Posted
I saw that they fixed it, I made a little issue on the Github repo and got the word that they fixed it as soon as they closed the issue. Thanks