EverlastingAbilities

EverlastingAbilities

4M Downloads

1.19.2 abilities spawning that are disabled in config.

PurpleHel opened this issue ยท 17 comments

commented

Issue type:

  • ๐Ÿ› Bug

Short description:

Abilities that are disabled in the config are spawning as loot.

Steps to reproduce the problem:

Find abilities in the world, such as in mine carts.
Discover disabled abilities.

Expected behaviour:

disabling via config to disable


Versions:

  • This mod: EverlastingAbilities-1.19.2-1.8.2.jar, CyclopsCore-1.19.2-1.17.0.jar
  • Minecraft: 1.19.2
  • Forge: 43.1.47

Log file:

Config -https://pastebin.com/S8k16Hst

commented

Thanks for reporting!

commented

How did you disable the abilities exactly?
Did you use obtainableOnLoot?

commented

I put my config file on pastebin? Here's an example tho.

ability.speed]
#If this can be obtained by spawning mobs.
obtainableOnMobSpawn = false
#If this can be obtained by combining totems in a crafting grid.
obtainableOnCraft = false
#The maximum ability level.
maxLevel = 5
#The xp required per level.
xpPerLevel = 10
#If this can be obtained by initially spawning players.
obtainableOnPlayerSpawn = false
#Rarity of this ability.
rarity = 0
#If this can be obtained in loot chests.
obtainableOnLoot = false

commented

Oops, looked over that.

commented

It's all good, it's easy to overlook one line! This config file has been in use since like 1.12 I think? I copy my configs over each time I upgrade versions, so maybe that's causing the problem?

commented

Oh, and disabled abilities aren't just spawning as loot, they spawn on spawn and crafting too. I should have been more clear initially. I haven't actually noticed any abilities dropping from mobs, so I dunno if disabled abilities are spawning from mobs.
And I'm playing single player.

commented

I can't seem to reproduce this myself. Disabling from loot and crafting seem to be working fine here.
Can you try without any other mods installed? Or regenerating your config?

commented

I tested with just everlasting, cyclops core, and jei before I reported. I'll try redoing my config this weekend and let you know if that fixes it.

commented

Second Config does not seem like it is mapping in some/all values.

I set:
totemMaximumSpawnRarity = 0
and also set everything that is not rarity 0 to:
obtainableOnPlayerSpawn = false

Start a new world and spawn in with a yellow rarity item.

mining_fatigue
repeat test spawn in with magnetize, repeat again, spawn in with power_stare.

Forge: 43.1.47
EverlastingAbilities-1.19.2-1.8.2.jar

Was also experimenting with totemCraftingRarityIncreasePercent = 99

Had it at 100 and did not see any difference in the upgrade chance. But i don't know if it is going from 15% chance to 99/100% chance or modifying some underlining chance like 50% base * .15 with default vs 50% *.99.

Full config:
https://pastebin.com/LLQeDVae

Pastebin
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
commented

Just setup a spawner in creative and even though the config above has:
mobAbilityChance = 0, the spawner mobs are still dropping abilities.

Updated all abilities to and exited/reloaded minecraft:
obtainableOnMobSpawn = false

Spawner mobs are dropping abilities:
mining fatigue
speed
magnetize

I'll update if more types drop.

Additional abilities:
jump boost
water breathing
fire resist
step assist
poison
fertility
resistance
luck
Haste
night vision
regeneration
invisibility

commented

I see in game the config looks correct.

And /everlastingabilities commands seem to show the correct config values. Like:
/everlastingabilities config general.mobAbilityChance
output: 0

But mobs are still dropping abilities.

commented

Versions:
CyclopsCore-1.19.2-1.17.0.jar
EverlastingAbilities-1.19.2-1.8.2.jar
glassential-forge-1.19-1.2.4.jar
jei-1.19.2-forge-11.4.0.285.jar
mob_grinding_utils-1.19.2-0.4.46.jar

commented

Built a custom jar only changing values in GeneralConfig.java and saw the behaviour in game I expected from myeverlastingabilities-common.toml.

@ConfigurableProperty(category = "general", comment = "The maximum rarity of totems to spawn when a player first logs in. [0-3], -1 disables totem spawning.", configLocation = ModConfig.Type.SERVER)
    public static int totemMaximumSpawnRarity = 0;

@ConfigurableProperty(category = "general", comment = "1/x chance for mobs to have abilities.", configLocation = ModConfig.Type.SERVER, isCommandable = true)
    public static int mobAbilityChance = 0;

Same spawners that were generating ability totems stopped generating any.
Started a few new worlds and only received rarity 0 totems.

Think some code is missing to use the values from the everlastingabilities-common.toml. Appear to be mapping into variables the /evalastingabilties commands access / read, but the code is somehow always getting the default values?

commented

Yeah, I blew away my config and recreated it, and I still see abilities I disabled. https://imgur.com/a/Vobib3u

Imgur
Imgur: The magic of the Internet
commented

That's really weird. That's not what I observe on my end.

Could you try sharing a video where you start from a clean world (no other mods installed), change the config, and observe the problem? Perhaps there's something else that we're doing differently.

commented

@rubensworks

Your config values work?

I can try to recreate again.

What Java do you run?

I am using the Microsoft launcher on windows 10 with Java 17 Adoptium, Instance config:
Executable:
C:\Program Files\Eclipse Adoptium\jre-17.0.1.12-hotspot\bin\javaw.exe

Args:
-Xms4g -Xmx6g -XX:+UnlockExperimentalVMOptions -XX:+UseZGC -XX:+ZUncommit -XX:+ZProactive -XX:+AlwaysPreTouch

commented

I tried just:
CyclopsCore-1.19.2-1.17.0.jar
EverlastingAbilities-1.19.2-1.8.2.jar
Forge: 43.1.47

Oracle java 17 and default Vanilla launch vm args.

totemMaximumSpawnRarity = 0

Started 3 new worlds in creative mode and spawned with a yellow rarity item each time. Did not try -1, but it says that should disable spawning in with a totem at all.

Did not see a in game command to check the spawn in config value, but I have other values changed in the config and confirmed:
mobAbilityChance = 0

and in game command to read that value returned 0. So it seems it can read the config, but it is not using the values.