Open SonicX8000 opened 4 years ago
This is a valid issue, but unfortunately not one I plan on fixing at this time. This is because I was short-sighted when designing the Polishing modifier this way, not realizing that using a stat like this has some odd interactions with the way Tinkers' items are constructed. The best way to fix this is basically to not use toughness as the polishing stat, but obviously that's a radical change so that's why I won't be fixing this until this gets ported and I get to redesign everything.
Would reverting the change back be a possible fix? Polishing setting your Toughness as Bonus Toughness & the Traits boosting Toughness based on the Plate's Toughness.
The issue that was supposed to solve is described in https://github.com/TheIllusiveC4/ConstructsArmory/issues/223. The problem with reverting the change is that it mean polishing your armor can give you infinite amount of toughness (edit: Actually, I don't remember precisely. Not infinite, just more than expected at least). Between these two behaviors, I'd rather stick with the current one where it's a bit broken but not exploitable.
It's almost-infinite, as long as there is enough different Polishing Kits to keep on adding to the armor for a billion Toughness. Still is quite a problem though.
I wonder if Fortified does the same thing, now thinking about it... but that's mining level so it prob wouldn't stack.
EDIT Yup, Fortified does the same thing but the levels don't stack & it will use the last kit that you applied on it. I sharpen it with Fortified and then Firewood and when I went to re-Fortified it with Flint, it wouldn't let me.
Alright, so... an update for this.
So those traits do in fact work with polishing however... the polished modifier has to be on top of the other modifiers/traits otherwise they won't work as intended.
Example 1 I have Manyullyn Plates so... that's 3 Toughness. If your trait/modifier list is like this...
Polished(Sponge) Skeletal(Embossment) Diamond
Toughness becomes 5, with a +1.5 Bonus from Skeletal and +2 from Diamond Modifier, totaling to 8.5.
Example 2 If instead it's like this...
Skeletal Trim Polished(Sponge) Diamond
Toughness is 5, with +2 from the Diamond Modifier, totaling to 7. Skeletal was ignored so it doesn't do anything.
Example 3 Now... if you do it like this...
Skeletal Trim Diamond Polished(Sponge)
This will actually LOWER your Toughness, as the Skeletal + Diamond would put Toughness to 6.5 but because of Polishing being at the bottom of those two traits... it puts your Toughness to a total of 5.
=====
I wonder if some kind of priority could work around this? Unless there's one already.
Perhaps each trait can be given a 'priority', and a sorting function be run upon modifying. Polishing can be given a higher 'priority' than regular traits, and sorted to the top of the list, thusly preventing it from accidentally "overriding" any toughness granted through traits or modifiers.
if not the above suggestion, could we get a config to chose the way we want things to stack? i understand wanting the mod not to be broken for modpacks, but on a private server where people are all friends i'd rather not have some people being unaware they are being gimped by a bug
Minecraft: 1.12.2 Forge: 14.23.5.2854
Mods: 5 conarm-1.12.2-1.2.5.9 jei_1.12.2-4.15.0.291 Mantle-1.12-1.3.3.55 Metallurgy-4-Reforged-0.3.2 TConstruct-1.12.2-2.13.0.183
=====
Sponge Plates gives 5 Base Toughness, if I throw in Skeletal... that gets boosted to 7.5 which is a 2.5 boost.
I polish with Krik from Metallurgy as that has 9 Toughness by default. Now... with Skeletal that should put my Toughness to 11.5 due to the 2.5 Toughness from the Sponge Plates since it gives 5 Base Toughness however it appears that Polishing your armor will break Skeletal & Indomitable Traits from adding in extra Toughness from the Plates.
This may be due to this change here...
"Changed Polishing modifier back to original behavior that overrides toughness [#223]"
One more thing to note down... if you Polish Armor since it was an upgrade from the Plates with low Toughness but later change the Plates... Polishing will take Priority over the better Plates. For example...
If you had 2 Toughness from Plates, then Polish with Sponge for 5 Toughness, then later add in Krik Plates from Metallurgy for 9 Toughness... you will still have 5 Toughness from the Sponge Polish unless you re-polish your armor with Krik. Skeletal / Indomitable still won't boost your Toughness.
The Diamond Modifier is unaffected as it adds Bonus Toughness which is added onto your Overall Toughness Value.
I did do a breakdown of the Toughness Modifiers & such before the change, which is seen in [#212].
EDIT Giving that change line a read again... it says it overrides Plate's Toughness so... shouldn't that make Skeletal / Indomitable boost the Toughness as if it were the base Toughness? Like a Polished Krik which gives 9 Toughness would now give 4.5 Bonus Toughness via Skeletal?