MineColonies

MineColonies

53M Downloads

Knight changed enchantment of given sword (fulfilling requeset)

Strohtaler opened this issue ยท 15 comments

commented

Minecolonies version

Minecolonies: unspecified, commit 1295188
Structurize: 0.10.324-ALPHA
Minecraft: 1.15.2
Forge: 31.2.20
Single-player/survival gamemode

Description

  1. Knight is requesting a sword.
  2. Have two iron swords in inventory enchanted with:
    • Sharpness II, Unbreaking III
    • Unbreaking I, Bane of Arthropods I
  3. Go to the Knight and fulfill the request (press Fulfill in request detail view)

Expected behavior

The Knight gets one of the swords, without changing the other swords any enchantment.

Actual behavior

The Knight got the first sword (Shrapness II, Unbreaking III) but changed its enchantment to Unbreaking I, Bane of Arthropods I - that is, both swords ended up with Unbreaking I, Bane of Arthropods I.

More details in comment below.

commented

I'll try with a new world, had some trouble with request system (got about 40 stone pickaxes by now; one miner requesting 32 planks despite having more than 2 stacks with 78 each; ...) but I didn't got enough time at the moment

Info: the first (Sharpness II, Unbreaking III) was on first position of the toolbar (player's preferred sword); second one somewhere in normal inventory. Second one was just created and enchanted for the knight.

commented

@Strohtaler if you can tell us exactly how your inventory was when you did this and you can reproduce this, that'd be awesome.

commented

I can't reproduce this.
I tried it with two iron swords with the same enchantments as described above, clicked on "More details please" and the "Fulfill", but both swords kept their enchantments.

commented

Did you try it in different orders in the inv too?

commented

yes, and i tried it with a Guard Tower, and a Training Academy.

commented

i can just try it a few more times with different inv alignements, but i doubt that helps.

commented

wow in that world i can reproduce it actually :)

commented

For me it is fixed with that PR, but you should be able to relatively easily check it for yourself.

commented

@ToMe25 nice! I'm not able to break it!

commented

great :)
Lets hope no one else is.

commented

I was able to reproduce it with a new world.

Versions:

  • Forge 1.15.2-31.2.20
  • Structurize: 0.10.324-ALPHA
  • Minecolonies: commit f40a58f (actual HEAD of branch version/1.15)
  • Resourcepack: Minecolonies+Voicepack+v1.3.1+for+MC+1.15.2
  • no other mods

Steps:

  • create new creative world (cheats: ON; no mob spawning)
  • create town hall and start new colony
  • create guard tower
  • change Assign the guard to the job: Manually and then Guard-actions: Knight
  • create first stone sword with Sharpness II, first hotbar slot
    /give @p minecraft:stone_sword{Enchantments:[{id:"minecraft:sharpness",lvl:2}]}
  • create 2nd stone sword with Unbreaking I, second hotbar slot (or elsewhere in inventory)
    /give @p minecraft:stone_sword{Enchantments:[{id:"minecraft:unbreaking",lvl:1}]}
  • change to survival mode
    /gamemode survival
  • open Knights GUI
  • select More details please!
  • select Fulfill
  • knight gets first sword - originally Sharpness II but now Unbreaking I
  • second sword is still Unbreaking I, as expected

Note 1: this also worked without using creative mode, initially all done in survival mode, just needed more time.

See screenshots (first row is just before fulfilling, second row after):
EnchantmentChanger

Note 2: in my original (survival) world the second sword was in some inventory slot, not in the hotbar, and the inventory was 3/4 full.

Note 3: I can post the test world, saved just before fulfilling the request (~724KB zipped)

commented

Sorry, but i still can't reproduce this.
I can try with your world, but i tried exactly what you described, even the no mob spawning thing, and it still didn't worked.

commented

@ToMe25 too strange - I even deleted the config directory entries.
The test world is available here if you want

commented

In the description above, I missed that I was saving and restarting before fulfilling (to copy the world)

commented

i will try it with that world then.