I think he meant putting the bin reagent before the weapon reagent, since the contains tag looks for a reagent with the same ID as the argument. In this case the ID/argument is 'weapon'.
That being said, vanilla reactions do not do that with containers, so either it's unnecessary or incorrect to put the container first, or it's an unnoticed bug.
yea, i put the weapon before the container because thats how its done in vanilla reactions, so i adopted it for all my custom reactions as well,
that being said both before or after fail to produce anything in this reaction
i dont know, the syntax seems good, maybe it's just not meant to be...
EDIT:sorry i'm not trying to mock you, i just adopted your speech pattern unintentionally... ha ha ... thats what happens when you read and write code for tooooo long....
also just had a thought, the problem is positively in the third reaction, ... welllll maybe improvement reactions just can't handle a container .?.?.?
EDIT:ugh thats dumb... vanilla improvements accept bins full of items... but maybe there is something about a container as a reagent that is doesn't like... i don't know... the hardcoded reactions must have some magic that we're not meant to wield
EDIT:so i add [PRESERVE_REAGENT] to the [REAGENT:plasterweaponbin:...] and there is still a cancelation "needs metal weapon" at the third reaction, but then jeweler gets a small gem and completes the job... the improvement is applied to the weapon correctly but the weapon is still in the bin... weird
EDIT:i fixed up another improvement reaction, just a simple one to test this
[REACTION:ENCRUST_METAL_WEAPON]
[NAME:encrust a metal weapon]
[BUILDING:JEWELERS2:NONE]
[REAGENT:weapon:1:WEAPON:NONE:METAL:NONE][NOT_IMPROVED][PRESERVE_REAGENT]
[REAGENT:weaponbin:1:BIN:NONE:NONE:NONE][CONTAINS:weapon][PRESERVE_REAGENT]
[REAGENT:smallgem:1:SMALLGEM:NONE:NONE:NONE]
[IMPROVEMENT:100:weapon:COVERED:GET_MATERIAL_FROM_REAGENT:smallgem:NONE]
[SKILL:ENCRUSTGEM]
the reaction is preformed without cancelation or error, the improved weapon remains in the bin, guess it never leaves the bin
so its possible to require a container as reagent, but if you don't preserve it, what it contains does not get preserved either,
even though the code specified it beforehand
AFAIK