Giter VIP home page Giter VIP logo

itemstages's Introduction

Game Stages

Game Stages provides a framework for creating modpack progression systems in Minecraft. These progression systems are built using stages which are named true/false flags which are stored on a per-player basis. Stages are not linear and have no implicit connection or dependency on each other.

Game stages only provides the framework for handling stage data. It saves the data, it synchronizes it with clients, and it provides commands that can be used to interact with the data. It does not alter game mechanics or interpret what stage flags are meant to do. This functionality is provided through Game Stage addon mods.

Addons

Other mods can hook into Game Stages and use a player's stage data to change how certain mechanics work. These addons and their mechanics provide the tools that modpack authors use to build their progression systems.

FaQ

How do I give players a stage?
This mod provides the /gamestage add @p stagename command which will give a player a stage. These commands can be used in command blocks, functions, advancements, signs, books, etc. Many mods will also allow you to run a command when a player does something. Keep in mind the @p is substituted to be the current player.

How do I stage a recipe/block/item?
Game Stages does not provide the actual progression mechanics. You will need to use addons such as ItemStages to do these things.

Maven Dependency

If you are using Gradle to manage your dependencies, add the following into your build.gradle file. Make sure to replace the version with the correct one. All versions can be viewed here.

repositories {

    maven {
    
        url 'https://maven.blamejared.com'
    }
}

dependencies {

    // compile fg.deobf("net.darkhax.gamestages:GameStages-1.16.5:7.1.2")
    compile fg.deobf("net.darkhax.gamestages:GameStages-MCVERSION:PUT_FILE_VERSION_HERE")
}

Jar Signing

As of January 11th 2021 officially published builds will be signed. You can validate the integrity of these builds by comparing their signatures with the public fingerprints.

Hash Fingerprint
MD5 12F89108EF8DCC223D6723275E87208F
SHA1 46D93AD2DC8ADED38A606D3C36A80CB33EFA69D1
SHA256 EBC4B1678BF90CDBDC4F01B18E6164394C10850BA6C4C748F0FA95F2CB083AE5

Sponsors

This project is sponsored by Nodecraft. Use code Darkhax for 30% off your first month of service!

itemstages's People

Contributors

artdude543 avatar cerus avatar darkhax avatar jriwanek avatar lykrast avatar mezz avatar remplerus avatar sam-kirby avatar theanaxman avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

itemstages's Issues

[Enhancement]: Create a Config-Option or Change how ItemStages logs mods being staged.

Realistically when doing whole mod staging ItemStages should only log:
"Adding item stage X to mod Y".

You don't have to log every item being applied to every item in that mod.
Stage > Item logging should probably be limited to the methods that actually takes an IItemstack/IIngredient component.

Why do you ask?

To avoid log spam, how much log spam?
What about 14k when staging most of a 100 count mod pack :P
https://gist.github.com/Lanse505/c029ff729b6e7888e953db0e1c276dfd

Most of those 14k lines could realistically, in this case, be condensed into something like 57 lines of logging.

This would help greatly to condense the crafttweaker.log into fewer lines and makes it a lot easier to look through :)

To save time

mods.ItemStages.stageAllItemsExcept (stage, [items not to be staged]) and mods.ItemStages.stageModItemsExcept (stage, mod, [items not to be staged]) would be a nice addition to save time and make the scripts smaller.

Enchanting Books not hidden in JEI when staged

When staging enchantment books, the books end up staged but continue to show in JEI even with all stages cleared.

With a JEI update, the book returned from JEI changed slightly from

<minecraft:enchanted_book>.withTag({StoredEnchantments: [{lvl: 1 as short, id: 0 as short}]})

to

<minecraft:enchanted_book>.withTag({StoredEnchantments: [{lvl: 1 as short, id: 0}]})

Changing the script to the new nbt tag made the books staged (the tooltips states to the player it requires the stage set, and the name is "Unknown Item" but they still show in JEI.

Previous JEI: 4.13.1.223
New JEI: 4.14.4.264
ItemStages: 2.0.46

Item stages not working correctly with .withTag (or possibly just with Mekanism)

When assigning stages to items that use the .withTag but the same ID+Meta, the .withTag appears to be ignored. I've noticed this behavior on Mekanism items.

For example, Mekanism cables:
mods.ItemStages.addItemStage("L002", <mekanism:transmitter:1>.withTag({tier: 0})); mods.ItemStages.addItemStage("XXMek", <mekanism:transmitter:1>.withTag({tier: 3}));

The tier 0 item is getting assigned the XXMek stage too,

I'm also using a mod called TechGuns that makes use of .withTag but I've not seen any issues there. So it seems like there's some weird interaction between Mekanism and Item Stages.

Can still equip armour from locked staged mods

A lot of my players are reporting that zombies are dropping Nano armour from IC2. And they are able to equip it (just not hold it in their hotbar

Also you are able to carry restricted items in your inventory as long as you don't hold them in your hand

Inventory check should run later during login.

When logging into a server, if you're holding an item that requires a stage, it is dropped. This seems to be because the check happens before Game Stages has loaded its stage data for the player.

ItemStages: Internal Server Error

While testing a server update for SevTech: Ages (3.0.2) a player right clicked a block (Immersive Chest) to which they was booted from the game and the server logged the following:

[11:51:15] [Server thread/ERROR] [FML]: Exception caught during firing event net.minecraftforge.event.entity.living.LivingEvent$LivingUpdateEvent@3f42ae64:
java.lang.NoClassDefFoundError: net/minecraft/client/resources/I18n
	at net.darkhax.itemstages.ItemStages.getUnfamiliarName(ItemStages.java:80) ~[ItemStages.class:?]
	at net.darkhax.itemstages.ItemStages.sendDropMessage(ItemStages.java:85) ~[ItemStages.class:?]
	at net.darkhax.itemstages.ItemStages.onLivingUpdate(ItemStages.java:155) ~[ItemStages.class:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_1063_ItemStages_onLivingUpdate_LivingUpdateEvent.invoke(.dynamic) ~[?:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) ~[ASMEventHandler.class:?]
	at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:179) [EventBus.class:?]
	at net.minecraftforge.common.ForgeHooks.onLivingUpdate(ForgeHooks.java:556) [ForgeHooks.class:?]
	at net.minecraft.entity.EntityLivingBase.func_70071_h_(EntityLivingBase.java:2086) [vp.class:?]
	at net.minecraft.entity.player.EntityPlayer.func_70071_h_(EntityPlayer.java:234) [aed.class:?]
	at net.minecraft.entity.player.EntityPlayerMP.func_71127_g(EntityPlayerMP.java:382) [oq.class:?]
	at net.minecraft.network.NetHandlerPlayServer.func_73660_a(NetHandlerPlayServer.java:173) [pa.class:?]
	at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher$1.func_73660_a(NetworkDispatcher.java:209) [NetworkDispatcher$1.class:?]
	at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:285) [gw.class:?]
	at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:180) [oz.class:?]
	at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:788) [MinecraftServer.class:?]
	at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:396) [nz.class:?]
	at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:666) [MinecraftServer.class:?]
	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:524) [MinecraftServer.class:?]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_151]
Caused by: java.lang.ClassNotFoundException: net.minecraft.client.resources.I18n
	at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:101) ~[launchwrapper-1.12.jar:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0_151]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_151]
	... 19 more
[11:51:15] [Server thread/ERROR] [FML]: Index: 30 Listeners:
[11:51:15] [Server thread/ERROR] [FML]: 0: HIGHEST
[11:51:15] [Server thread/ERROR] [FML]: 1: ASM: class WayofTime.bloodmagic.util.handler.event.LivingArmourHandler onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 2: ASM: hellfirepvp.astralsorcery.common.util.effect.time.TimeStopController@30ecf941 onLivingTickTest(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 3: NORMAL
[11:51:15] [Server thread/ERROR] [FML]: 4: ASM: class betterwithmods.event.PotionEventHandler onPotionUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 5: ASM: class WayofTime.bloodmagic.util.handler.event.GenericHandler onLivingUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 6: ASM: class WayofTime.bloodmagic.potion.PotionEventHandlers onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 7: ASM: net.darkhax.darkutils.features.misc.FeatureSheepArmor@44e430c8 onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 8: ASM: net.darkhax.darkutils.features.shulkerpearl.FeatureShulkerPearlItem@64faf164 onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 9: ASM: class flaxbeard.immersivepetroleum.common.EventHandler test(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 10: ASM: class nex.handler.EventHandler onLivingUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 11: ASM: class twilightforest.TFEventListener livingUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)Z
[11:51:15] [Server thread/ERROR] [FML]: 12: ASM: com.shinoow.abyssalcraft.common.handlers.AbyssalCraftEventHooks@2e3daece darkRealm(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 13: ASM: com.shinoow.abyssalcraft.common.handlers.KnowledgeEventHandler@7eae7b46 onLivingUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 14: ASM: betterwithmods.module.gameplay.breeding_harness.BreedingHarness@6553feef onLivingTick(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 15: ASM: vazkii.quark.misc.feature.PoisonPotatoUsage@41edcaa2 onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 16: ASM: vazkii.quark.world.feature.Biotite@300f743f onEntityTick(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 17: ASM: vazkii.quark.tweaks.feature.BabyZombiesBurn@5da9f079 entityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 18: ASM: vazkii.quark.tweaks.feature.SheepArmor@8753d2b onUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 19: ASM: vazkii.quark.tweaks.feature.LookDownLadders@29247319 onPlayerTick(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 20: ASM: vazkii.quark.tweaks.feature.ChickensShedFeathers@2dbba2e2 onLivingUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 21: ASM: betterwithaddons.handler.AssortedHandler@74fa1256 livingTick(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 22: ASM: tschipp.carryon.common.event.ItemEntityEvents@2a046ff4 onLivingUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 23: ASM: class death_compass.capabilities.base.EntityCapabilityHandler onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 24: ASM: micdoodle8.mods.galacticraft.core.event.EventHandlerGC@16c892b4 entityLivingEvent(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 25: ASM: com.mjr.extraplanets.handlers.MainHandlerServer@1b87b8cb onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 26: ASM: net.darkhax.huntingdim.handler.DimensionEffectHandler@3707e3c onLivingUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 27: ASM: net.darkhax.huntingdim.handler.DimensionEffectHandler@3707e3c onEntityJoinWorld(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 28: ASM: com.buuz135.industrial.proxy.event.MeatFeederTickHandler@6042fd85 onTick(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 29: ASM: cpw.mods.ironchest.common.util.OcelotsSitOnChestsHandler@5aa0daa3 changeSittingTaskForOcelots(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 30: ASM: net.darkhax.itemstages.ItemStages@2f155a4b onLivingUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 31: ASM: class mob_grinding_utils.capability.base.EntityCapabilityHandler onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 32: ASM: com.blakebr0.mysticalagriculture.items.armor.ItemIntermediumArmor$AbilityHandler@7c9ac1e9 updatePlayerAbilityStatus(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 33: ASM: com.blakebr0.mysticalagriculture.items.armor.ItemSuperiumArmor$AbilityHandler@e4be098 updatePlayerAbilityStatus(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 34: ASM: com.blakebr0.mysticalagriculture.items.armor.ItemSupremiumArmor$AbilityHandler@636a0c57 updatePlayerAbilityStatus(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 35: ASM: com.blakebr0.pickletweaks.feature.item.ItemNightvisionGoggles$Handler@4f3b20aa giveNightvision(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 36: ASM: rustic.common.EventHandlerCommon@2d009534 onChickenUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 37: ASM: com.shinoow.beneath.common.handler.BeneathEventHandler@4516c8d5 darkness(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 38: ASM: net.darkhax.tinkerstages.TinkerStages@78e2d74c onLivingUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 39: ASM: de.ellpeck.actuallyadditions.mod.items.ItemWingsOfTheBats@743794c livingUpdateEvent(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 40: ASM: de.ellpeck.actuallyadditions.mod.items.ItemHairyBall@1d537a37 livingUpdateEvent(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 41: ASM: blusunrize.immersiveengineering.common.EventHandler@4b4f0044 onLivingUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 42: ASM: squeek.appleskin.network.SyncHandler@cb5020b onLivingUpdateEvent(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 43: ASM: com.lothrazar.cyclicmagic.component.playerext.EventExtendedInventory@35c5fb59 playerTick(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 44: ASM: com.lothrazar.cyclicmagic.potion.EventPotionTick@2c5ca750 onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 45: ASM: Block{cyclicmagic:plate_vector} onUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 46: ASM: com.lothrazar.cyclicmagic.item.food.ItemAppleStep@6b3a0a83 onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 47: ASM: com.lothrazar.cyclicmagic.item.food.ItemChorusCorrupted@fa3cad1 onPlayerUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 48: ASM: com.lothrazar.cyclicmagic.item.food.ItemChorusGlowing@fd0fcfd onPlayerUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 49: ASM: com.lothrazar.cyclicmagic.item.gear.ItemGlowingHelmet@6a0a6cfc onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 50: ASM: com.lothrazar.cyclicmagic.enchantment.EnchantWaterwalking@2b7c4538 onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 51: ASM: com.lothrazar.cyclicmagic.enchantment.EnchantReach@4b166f7f onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 52: ASM: com.lothrazar.cyclicmagic.enchantment.EnchantLaunch@3c6401e8 onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 53: ASM: com.lothrazar.cyclicmagic.enchantment.EnchantMagnet@44f1fc8c onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 54: ASM: com.lothrazar.cyclicmagic.enchantment.EnchantQuickdraw@2d5eb976 onPlayerUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 55: ASM: com.lothrazar.cyclicmagic.module.PlayerAbilitiesModule@697a2ff8 onPlayerTick(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 56: ASM: com.lothrazar.cyclicmagic.module.FragileTorchesModule@97e725e onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 57: ASM: com.lothrazar.cyclicmagic.module.MountedTweaksModule@54f0849 onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 58: ASM: com.cjm721.overloaded.item.functional.armor.ArmorEventHandler@1ed0a300 onLivingUpdateEvent(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 59: ASM: class thebetweenlands.common.handler.PuppetHandler onUpdateLiving(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 60: ASM: class thebetweenlands.common.handler.PlayerPortalHandler teleportCheck(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 61: ASM: thebetweenlands.common.handler.ElixirCommonHandler@6785abce onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 62: ASM: class thebetweenlands.common.block.plant.BlockWeedwoodBush onLivingUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 63: ASM: thretcha.roadrunner.RoadHandler@4060ee4c livingEntityOnRoad(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 64: ASM: pokefenn.totemic.handler.EntityUpdate@e04a5d5 onEntityUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 65: ASM: mob_grinding_utils.events.ChickenFuseEvent@1f1949e8 startChickenFuse(Lnet/minecraftforge/event/entity/living/LivingEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 66: LOW
[11:51:15] [Server thread/ERROR] [FML]: 67: ASM: class nmd.primal.core.common.events.EntityEvents onLivingUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/ERROR] [FML]: 68: ASM: class nmd.primal.core.common.init.ModPotions$RegistrationHandler onPotionUpdate(Lnet/minecraftforge/event/entity/living/LivingEvent$LivingUpdateEvent;)V
[11:51:15] [Server thread/WARN] [net.minecraft.network.NetworkSystem]: Failed to handle packet for /cheesecakes
net.minecraft.util.ReportedException: Ticking player
	at net.minecraft.entity.player.EntityPlayerMP.func_71127_g(EntityPlayerMP.java:459) ~[oq.class:?]
	at net.minecraft.network.NetHandlerPlayServer.func_73660_a(NetHandlerPlayServer.java:173) ~[pa.class:?]
	at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher$1.func_73660_a(NetworkDispatcher.java:209) ~[NetworkDispatcher$1.class:?]
	at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:285) ~[gw.class:?]
	at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:180) [oz.class:?]
	at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:788) [MinecraftServer.class:?]
	at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:396) [nz.class:?]
	at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:666) [MinecraftServer.class:?]
	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:524) [MinecraftServer.class:?]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_151]
Caused by: java.lang.NoClassDefFoundError: net/minecraft/client/resources/I18n
	at net.darkhax.itemstages.ItemStages.getUnfamiliarName(ItemStages.java:80) ~[ItemStages.class:?]
	at net.darkhax.itemstages.ItemStages.sendDropMessage(ItemStages.java:85) ~[ItemStages.class:?]
	at net.darkhax.itemstages.ItemStages.onLivingUpdate(ItemStages.java:155) ~[ItemStages.class:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_1063_ItemStages_onLivingUpdate_LivingUpdateEvent.invoke(.dynamic) ~[?:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) ~[ASMEventHandler.class:?]
	at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:179) ~[EventBus.class:?]
	at net.minecraftforge.common.ForgeHooks.onLivingUpdate(ForgeHooks.java:556) ~[ForgeHooks.class:?]
	at net.minecraft.entity.EntityLivingBase.func_70071_h_(EntityLivingBase.java:2086) ~[vp.class:?]
	at net.minecraft.entity.player.EntityPlayer.func_70071_h_(EntityPlayer.java:234) ~[aed.class:?]
	at net.minecraft.entity.player.EntityPlayerMP.func_71127_g(EntityPlayerMP.java:382) ~[oq.class:?]
	... 9 more
Caused by: java.lang.ClassNotFoundException: net.minecraft.client.resources.I18n
	at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:101) ~[launchwrapper-1.12.jar:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0_151]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_151]
	at net.darkhax.itemstages.ItemStages.getUnfamiliarName(ItemStages.java:80) ~[ItemStages.class:?]
	at net.darkhax.itemstages.ItemStages.sendDropMessage(ItemStages.java:85) ~[ItemStages.class:?]
	at net.darkhax.itemstages.ItemStages.onLivingUpdate(ItemStages.java:155) ~[ItemStages.class:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_1063_ItemStages_onLivingUpdate_LivingUpdateEvent.invoke(.dynamic) ~[?:?]
	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) ~[ASMEventHandler.class:?]
	at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:179) ~[EventBus.class:?]
	at net.minecraftforge.common.ForgeHooks.onLivingUpdate(ForgeHooks.java:556) ~[ForgeHooks.class:?]
	at net.minecraft.entity.EntityLivingBase.func_70071_h_(EntityLivingBase.java:2086) ~[vp.class:?]
	at net.minecraft.entity.player.EntityPlayer.func_70071_h_(EntityPlayer.java:234) ~[aed.class:?]
	at net.minecraft.entity.player.EntityPlayerMP.func_71127_g(EntityPlayerMP.java:382) ~[oq.class:?]
	... 9 more
[11:51:15] [Server thread/INFO] [net.minecraft.network.NetHandlerPlayServer]: artdude543 lost connection: Internal server error

Seems Client Side methods is being called Server side.

changeRestrictionTooltip No Longer Working

Hey o/
Tooltips are no longer modified in any way when staged with mods.ItemStages.addItemStage(stage, item);. Is that intended?
changeRestrictionTooltip is set to true.

Staging items with state NBT data doesn't work

Items with NBT data used to store their state (energy, settings, etc) cannot be locked behind a stage. This is problematic on servers where player progression happens independently, where certain items might be found in loot tables and in case of recipes that upgrade items (although these could be locked using Recipe Stages). An example of such item are the Simply Jetpacks jetpacks. Here's an example jetpack:

<simplyjetpacks:itemjetpack:2>.withTag({JetpackHoverModeOn: 0 as byte, Energy: 39415, JetpackParticleType: 0})

Trying to lock this jetpack with any of the following doesn't prevent it from being used:

mods.ItemStages.addItemStage("one", <simplyjetpacks:itemjetpack:2>);
mods.ItemStages.addItemStage("one", <simplyjetpacks:itemjetpack:2>.withTag({}));
mods.ItemStages.addItemStage("one", <simplyjetpacks:itemjetpack:2>.withTag({}, false));

Other examples of such items include the Reliquary Rending Gale and Blood Magic Sigils.

Minecraft: 1.12.2
CraftTweaker: 4.1.19
GameStages: 2.0.115
ItemStages: 2.0.49
Bookshelf: 2.3.585

[Request] Would it be possible to get a removeItemStage command?

Heya,

i'm currently trying to lock a bunch of items of several mods behind stages. It's easy to do with something like this:

for item in loadedMods["betterwithmods"].items {
	mods.ItemStages.addItemStage("betterwithmods", item);
}

However, if you want to to whitelist certain items within that mod to to require a stage (lets say better with mods seeds), instead i'd have to make an array of all items i want to block and go over that instead.

Instead it would be awesome to have a removeItemStage command that can be called after the loop i posted on top, to remove certain items again. Something like:

for item in loadedMods["betterwithmods"].items {
	mods.ItemStages.addItemStage("betterwithmods", item);
}

mods.ItemStages.removeItemStage("betterwithmods", <betterwithmods:seeds>);

Would this be posssible?

Cheers,
SC

Thermal Expansion machines are not staged properly

Well I want to stage differents machines of thermal expansion at differents stages but when I do :
ItemStages.addItemStage("thermal1", thermalexpansion:machine:0); //Resdstone furnace

The Redstone furnace is staged to "thermal1" but Compactor, Magma Crucible, Energetic Infuser, Sequential Fabricator, Alchemical Imbuer, Arcane Ensorcellator, Glacial Precipitator and Igneous Extruder get staged to "thermal1" too. Those machines have same ID (thermalexpansion:machine) but differents meta.
After some researches I found that all the machines that get the stage have the same nbt, don't know I this is linked to this issue.

When I stage the machines recipes with Recipes Stages this works correctly and only stage recipes for the redstone furnace, that's why I think it's an issue with Item Stages.

Language file and locked item name

In the en_US.lang file, there is

tooltip.itemstages.name.default=Unfamiliar Item

But changing it (via resource loader/resource pack overriding) does not change the name of locked items within the game. Changing the other lines for the tooltips, however, do change them in game.

Is there a way to change the default name of locked items, or be able to in an update?

Latest alpha build + Latest GameStages = crash on load

` > net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from Item Stages (itemstages)

Caused by: java.lang.NoClassDefFoundError: net/darkhax/gamestages/event/StageDataEvent$SyncRecieved
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
at java.lang.Class.getDeclaredMethods(Unknown Source)
at net.minecraftforge.fml.common.FMLModContainer.gatherAnnotations(FMLModContainer.java:387)
at net.minecraftforge.fml.common.FMLModContainer.constructMod(FMLModContainer.java:570)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
at com.google.common.eventbus.EventBus.post(EventBus.java:217)
at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:278)
at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:256)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
at com.google.common.eventbus.EventBus.post(EventBus.java:217)
at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:148)
at net.minecraftforge.fml.common.Loader.loadMods(Loader.java:568)
at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:231)
at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:466)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:377)
at net.minecraft.client.main.Main.main(SourceFile:123)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
Caused by: java.lang.ClassNotFoundException: net.darkhax.gamestages.event.StageDataEvent$SyncRecieved
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 40 more
Caused by: java.lang.NullPointerException `

Items not being removed from stage

I am trying to remove items from being staged after staging whole mods and I can seem to get it working. Here is one example of a script I'm using

#priority 3400

import crafttweaker.item.IIngredient;
import crafttweaker.item.IItemStack;
import mods.zenstages.Stage;
import mods.zenstages.ZenStager;


// Unstage Powders
mods.ItemStages.removeItemStage(<enderio:item_material:30>);
mods.ItemStages.removeItemStage(<enderio:item_material:31>);

I'm not getting any errors, but it's also not unstaging any of the items I am using with the mods.ItemStages.removeItemStage method. Any idea what I'm doing wrong here?

staged mods

i have staged all my mods via recipe and item stages and there still showing up in jei and i dont know what to do to fix this and i cant get any help :(

Option to remove an item from a stage

I've got some mods were I want to add pretty much everything to a single stage. But there are one or two items that I'd like to leave open.

For example, I'd like ancient warfare to be a single stage, but I want players to be able to make the fire pit and totem pole from its structures module . . . and just those two items. They are very theme oriented towards a different line of stages entirely.

Right now it looks like I'd have to add each item I want to block individually just to leave these things out . . . rather than adding the entire mod "ancient warfare" and then removing two or three items from the list.

I'm hoping this is already a feature and just not shown in the wiki or on the project page; but if it's not please add it. :)

stageModItems does not work correctly for items with Tags

Using AgriCraft as an example...

Executing mods.ItemStages.stageModItems("one", "agricraft") does correctly stage the basic Wooden Irrigation Channel with recipe name
<agricraft:water_channel_normal>

But does not stage the variants of the tunnel with different wood types. Such as
<agricraft:water_channel_normal>.withTag({agri_material_meta: 8, agri_material: "chisel:planks-spruce"})

the difference seems to be the ones that aren't staged have ".WithTag()"

Config suggestions

Make "Hidden in JEI" and "Renamed to Restricted Item" options configurable.

Because i WANT to see this item in JEI, and i want to see it's recipe. Just a small hint saying "You need this stage to use it"

staged items are not hidden consistently in JEI

Items that are in a stage that the player does not have access to are not hidden in JEI unless the hide ingredients option in JEI is toggled. i.e. hide ingredients off => on => off which doesn't survive a reboot of the game.

Items handled oddly when having more than one stage

If an item is staged in two stages, and the player has one of the two, the item shows in JEI but still is restricted to the player.

Ideally, if the player has any stage of the stages an item has, they can see the item in JEI (which it does) as well as not being restricted to the player. I could see uses for the opposite - making it so the item is hidden and restricted until the player has all stages it has - possibly a way to give the modpack developer an option to specify which way to handle it?

[Feature?] Block Player Interaction if missing stage

Today, If I do this:

mods.ItemStages.addItemStage("one", <minecraft:furnace>);

While I cannot place a furnace in the world, I can still right click one that has been placed in the world and interact with it. I'd like to block interacting with blocks in the world that the player does not have access to.

Brewing stand is a good example. Even if I have stage-blocked all potions and ingredients, a player can still brew a potion with a brewing stand that happens to exist in the world (A few mods generate dungeons with them in the world).

Server JEI Item Hiding Syncing Issue

It seems the syncing for hiding items is broken on servers; loading into a single player world all the items which you don't have access to are hidden. But on the server, JEI shows more pages that the player even has access too.

In 3.0.1 of SevTech: Ages this was not an issue. But with the newest update, it's now an issue. Could be related #14 but I don't think so.

Feature Request: Hide all items until staged

Greetings,

have read around, and haven't found a way to do this easily without a ton of scripts.

it is possible to have a configuration option, to Hide all items/recipes until staged?

basically, nothing shows up (In JEI) until you add it to a stage (and the stage is unlocked).

Add additional option this this, would be "automatically set player to stage". This would allow a player to be added to a stage on first world join.

[Request]Light restriction option

With my pack being exploration oriented, forcing the player to drop an item they aren't allowed to use yet if they happen to find it is a bit heavy handed. As such I would like the option to still prevent the player from using the item, but also still be able to carry it and see its name.

Suggestion: scan players' inventories and throw locked items away

Now ItemStage is only checking items which are held by players.
But for armors like chestplates, leggings, or rings and necklaces added by Baubles Mod, They can be used without being held in hand.
I hope there could be a more effective or "aggressive" way to lock items with ItemStage Mod,
for example, ItemStage scans players' inventories every several ticks, and throw all of locked items onto ground.
Maybe this is better than which ItemStage can do now.
This is my suggestion. If you have different opinions, please tell me.
Look forward to your reply!
Thanks in advance!

Unable to break or interact with blocks while holding a staged item.

While holding any staged item, whether or not the corresponding stage is unlocked, I am unable to break blocks, or interact with blocks (such as opening and closing doors). I am able to break blocks that break instantly, such as grass, but when I do no sound is played. When trying to break other blocks, simply no progress gets made, no cracks appear. When trying to interact with a block, it appears to work, but then it quickly reverts, such as a door re-closing itself. I am playing on a dedicated server - that is probably related.

I am using CraftTweaker2 4.1.9, GameStages 2.0.91, and ItemStages 2.0.35.

And before you ask, yes I have confirmed the CraftTweaker scripts are the same on both the client and server.

EDIT: Oh and using the items themselves works just fine, such as eating food. It's just interacting with the world that has issues.

EDIT 2: Unsurprisingly, after changing the config to allow interaction with restricted items, it now works fine. However, since the problem is with items that have been un-restricted, this is clearly an issue, and the config change is merely a workaround.

JEI catalyst still shown when staged

I'm not sure if this falls in the domain of JEI or ItemStages.

What

When I log into a new world with zero stages unlocked, most, but not all, staged recipe catalysts are hidden by JEI properly. Hiding recipe categories when all their crafting catalysts are hidden was introduced in JEI v4.9.0.

I am able to consistently reproduce this issue with the HorsePower mod's <horsepower:chopper>. When I log in with zero stages unlocked, the catalyst remains visible:

2018-05-16_12 55 20

If I run the command /gamestage add @p artisan then the command /gamestage clear @p, the catalyst disappears and is displayed (or rather not displayed) as expected:

2018-05-16_12 56 09

Versions

  • MC: 1.12.2
  • Forge: 14.23.3.2675
  • GameStages: 1.12.2-2.0.90
  • ItemStages: 1.12.2-2.0.35
  • JEI: 1.12.2-4.9.1.187

Not working for hiding whole mods

I get this error and none of the mods get hidden

ERROR: [crafttweaker]: Error executing {[0:crafttweaker]:Quaesitum_Stages_Mods.zs}: null

only an issue with this script; ive been able to stage ores and things without issue

/*
Staging for mods
*/

import mods.ItemStages.stageModItems;

//Stage 1
stageModItems("stage1", "quark");
stageModItems("stage1", "akashictome");
stageModItems("stage1", "architecturecraft");
stageModItems("stage1", "charset");
stageModItems("stage1", "thermalfoundation");
stageModItems("stage1", "betterwithmods");
stageModItems("stage1", "betterwithlib");
stageModItems("stage1", "chisel");
stageModItems("stage1", "chiselsandbits");
stageModItems("stage1", "cookingforblockheads");
stageModItems("stage1", "rustic");
stageModItems("stage1", "exchangers");
stageModItems("stage1", "forgemultipartcbe");
stageModItems("stage1", "microblockcbe");
stageModItems("stage1", "minecraftmultipartcbe");
stageModItems("stage1", "jaopca");
stageModItems("stage1", "mcmultipart");
stageModItems("stage1", "forge");

//Stage 2
stageModItems("stage2", "ironchest");
stageModItems("stage2", "funkylocomotion");
stageModItems("stage2", "drawbridges");
stageModItems("stage2", "buildinggadgets");
stageModItems("stage2", "buildcraftcompat");
stageModItems("stage2", "buildcraftsilicon");
stageModItems("stage2", "buildcrafttransport");
stageModItems("stage2", "buildcraftrobotics");
stageModItems("stage2", "buildcraftfactory");
stageModItems("stage2", "buildcraftenergy");
stageModItems("stage2", "buildcraftbuilders");
stageModItems("stage2", "buildcraftcore");
stageModItems("stage2", "buildcraftlib");
stageModItems("stage2", "forestry");

//Stage 3
stageModItems("stage3", "harvestcraft");
stageModItems("stage3", "magneticraft");
stageModItems("stage3", "industrialrenewal");
stageModItems("stage3", "theoneprobe");
stageModItems("stage3", "openblocks");
stageModItems("stage3", "poweradapters");

//Stage 4
stageModItems("stage4", "immersiverailroading");
stageModItems("stage4", "immersivepetroleum");
stageModItems("stage4", "immersiveengineering");

//Stage 5
stageModItems("stage5", "ic2");
stageModItems("stage5", "techreborn");
stageModItems("stage5", "logisticspipes");
stageModItems("stage5", "rsgauges");
stageModItems("stage5", "translocators");
stageModItems("stage5", "worldcontrol");
stageModItems("stage5", "wrcbe");

//Stage 6
stageModItems("stage6", "rftools");
stageModItems("stage6", "portalgun");
stageModItems("stage6", "openmodularturrets");
stageModItems("stage6", "powersuits");
stageModItems("stage6", "galacticraftcore");
stageModItems("stage6", "galacticraftplanets");
stageModItems("stage6", "computercraft");

//Stage 7 Magic
stageModItems("stage7", "thaumcraft");
//stageModItems("stage7", "");
//stageModItems("stage7", "");

//Stage 8 Avaritia
stageModItems("stage8", "avaritia");

// Locks all items from a mod to a stage
stageModItems("stagedisabled", "mowziesmobs");

Armor still equipable

As long as you don't take it in your hand armors that are behind a stage can still be equiped.

Duplicate entries being synced

When you declare a stage for an item with variants, that item and it's variants will all be registered once for each variant. So if there are 5 variant items, it will actually track 25 items.

[feature request] Ability to change the restricted tool tip

I'd like to change the tooltip "you do not know how to use this yet" to something else that fits my pack better. Unfortunately, I can't seem to find a way to alter it in the configuration files or on the WIKI.

I'm using stages to restrict entire sets of mods into what amounts to player classes. If you haven't chosen the right class option you won't be able to use an entire large mod such as Blood Magic or Immersive Engineering.

If you find something that is restricted there is a good chance you aren't eventually going to learn how to use it. So I'd rather give the player a different message that works with the lore and progression of my pack.

ItemStages causes JEI desyncs

Using ItemStages 1.12.2-2.0.49 with JEI 4.15.0.291 on Forge 14.23.5.2847.

When using ItemsStages serious, consistent JEI desyncs can occur.

In detail: if I hit the + button on JEI to auto-insert items into any crafting grid they are inserted only on the server but not on the client, which not only makes further crafting impossible until the GUI is closed, but also causes heavy inventory desync issues. Sometimes just looking up a recipe (so without hitting +) is causing a desync and makes the crafting table unusable until the GUI is closed. I can't see a pattern here, but the issues happen very consistently, rendering JEI unusable.

This happens in singleplayer and LAN games. Switching between that sometimes cures the desync for a while.

Note: mezz/JustEnoughItems#1808

Renamed items aren't properly hidden in JEI

Examples of this include Actually Additions' block inputter, which has a changing name, and Opencomputers' cards, which have an italic name as a vanilla renamed item would. It looks like sometimes they don't have the stage applied at all and sometimes they just don't load correctly. In these screenshots, the entire mod is staged. My scripts include staging for these items:

opencomputers:storage:1,
opencomputers:storage:*,

actuallyadditions:block_inputter,
actuallyadditions:block_inputter_advanced,
2018-08-11_03 47 28
2018-08-11_03 47 37

Non-NBT version of item being staged as well as the NBT specified item

I'm trying to stage the normal bucket in stage one, and 2 buckets filled with something in stage 3. The end result is that the empty bucket is staged in 3, as is the NBT ones (with fluids)

It does show in JEI when stage one is unlocked, but the item is still restricted, and the tooltip states that stage three is required. Unlocking stage three then un-restricts it. (which is common interaction when an item has multiple stages assigned from my experience)

Script:

mods.ItemStages.addItemStage("one", <ceramics:clay_bucket>);
mods.ItemStages.addItemStage("three", <ceramics:clay_bucket>.withTag({fluids: {FluidName: "redstone", Amount: 1000}}));
mods.ItemStages.addItemStage("three", <ceramics:clay_bucket>.withTag({fluids: {FluidName: "redstone_alloy", Amount: 1000}}));

ItemStages on server has issues with items that have multiple right click functions

Running Modern Skyblock 3 Departed Modpack 3.5

Description of the problem including expected versus actual behavior:
When rightclicking the PSD anywhere, no manual shows.
When rightclicking the PSD onto a machine block, two dimension travels happen, one to go in, the next instantly to go out.
When rightclicking the Engineer's Manual anywhere, no manual shows.
All these behaviours don't happen in Creative mode (/gamemode 1)
Opping player has no effect.

Steps to reproduce:
Install the Modern Skyblock 3 pack locally (allocate at least 6GB of ram...).
Download and run the Modern Skyblock 3 server locally (allocate at least 3GB of ram...)
Log into server, run commands (op yourself on server):
/island create 1
/give yourname dirt 1
/give yourname sapling 1
Rightclick quest book (should be in inventory), select "Kitchensink Mode" and claim the quest reward (this unlocks everything)
/give yourname compactmachines3:psd
/give yourname compactmachines3:machine
Go into machine using PSD.
Observe a loading screen and then appearing right back in dimension 0.
/give yourname immersiveengineering:tool 1 3
Right click while holding manual and nothing occurs.

If you edsit the stages.zs script on both client and server and comment out line 830 "mods.ItemStages.addItemStage("up", compactmachines3:psd);" and line 811 "mods.ItemStages.addItemStage("hm", immersiveengineering:tool:*);" it resolves both these issues.

Request: Status effect task

I'd like to see a task for being affected by a specific potion effect (maybe with parameters for duration under effect). It'd help for the quest book I'm writing currently.

[Bug] Items added to JEI cannot be hidden.

I've used CraftTweaker to show a specific item in JEI, then set its stage, for some reason the item does not get hidden by ItemStages in JEI thereafter.

Adding the item to JEI was done above the item stages script too, as follows:

mods.jei.JEI.addItem(horsepower:chopping_block.withTag({textureBlock: {id: "tfc:wood/log/kapok", Count: 1 as byte, Damage: 0 as short}}));

mods.ItemStages.addItemStage("craftingachoppingblock_kapok_log", horsepower:chopping_block.withTag({textureBlock: {id: "tfc:wood/log/kapok", Count: 1 as byte, Damage: 0 as short}}));

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.