Mods / RPG Item Rarity - Reborn

Category: #Magic #Other #Weapons
Author: misterandydandy
Side: Both
Created: Mar 17th at 1:41 PM
Last modified: Mar 17th at 2:00 PM
Downloads: 1408
Follow Unfollow 42

Latest file for Various v1.19.x:
rpgitemrarity-1.0.5.zip 1-click install



Makes weapons, tools, and armor get assigned a rpg-esque rarity which improves their stats.

It is written in a way that should ensure compatibility with modded items as well.

Partially an example mod for my patch I'm working on called Attributer.


How to use:

Items when obtained automatically have rarity generated, this includes loot drops and chests.

Items that don't have rarity need to be "appraised" by dropping them and picking them back up, or using them.

The mod does work on existing worlds, and can be safely removed as well.

Requirements:

Attributer

Features:

Configuration for adjusting chances and the like, and Language files! (1.0.4)

XSkills/XLib Compatibility! (v0.8.0-rc.1)

Six different item raritys that modify stats:

Rarity: Stat Modifier: Rarity Chance:
Common   0% Stat Bonus. 50%
Uncommon 10% Stat Bonus. 20%
Rare 20% Stat Bonus. 15%
Epic 30% Stat Bonus. 10%
Legendary 40% Stat Bonus. ~5%
Unique 50% Stat Bonus. ~1%

Stats Modified:

Tools:

  • Durability.
  • Attack Power.
  • Mining Speed.

Weapons:

  • Durability.
  • Attack Power.
  • Ranged Damage.

Shields:

  • Durability.
  • Damage Absorption.

Armor:

  • Durability.
  • Flat Damage Reduction.

Clothes:

  • Durability.
  • Warmth.



    I am only keeping it up to date and fixing issue.

    If Yew come back please let me know as I will remove this mod.

Version For Game version Downloads Release date Changelog Download 1-click mod install*
v1.0.5 1408 Mar 17th at 2:00 PM Show rpgitemrarity-1.0.5.zip Install now

10 Comments (oldest first | newest first)

💬 Hoinman, 3 days ago

Heya, don't know if you're planning to add things to the mod or just keeping it updated for the newer versions, but would be cool if it could also apply to backpacks and the like with common having the standard item slots and adding one extra slot per rarity :)

💬 The_True_Goo, 3 days ago

Hi there I just wanted to ask, is there a way to add new elements? I've been trying to add poor and awful as a way of creating a few worse items to make the Unique and Legendary actually feel like it's a blessing. 
I've added them to all the lines in the config but as soon as I start up the server it reverts back to the old one.  

is there any hope?

💬 umbrage, Apr 2nd at 4:26 PM

Appreciation post for continuing work on a very neat abandoned mod. You a real one. ✊

💬 Odur27, Mar 23rd at 6:44 AM

I noticed that since I have the new updated versions of Xlib/Xskills, I just downloaded and installed this mod today, still on 1.19.4 Stable. The item Rarity on blacksmithed iron items from Lore weapons (I haven't tried others yet) show increases to damage/durability before creation but once they get rarity from this mod it resets with no increased stats. I am a blacksmith with blacksmith 1/2 from xskills. The item in question rolled with a 2.1 Quality (uncommon) from my class. I would hope (unless I'm mistaken) this mod should at best leave the increases from my class in place with additional bonuses based on rarity from this mod.

💬 misterandydandyAuthor, Mar 22nd at 8:14 PM

Thanks for the crash log I'll be taking a look at it tomorrow 

💬 QuantumAnomaly, Mar 22nd at 3:53 PM

I think there may also be an issue with attributes trying to be assigned to cookware, causing a crash when handling eggs and trying to make food (mods culinary artillery and expanded foods installed)

 

Running on 64 bit Windows 10.0.22631.0 with 32715 MB RAM
Game Version: v1.19.5 (Stable)
3/22/2024 10:46:51 AM: Critical error occurred in the following mod: attributerreborn@1.0.6
Loaded Mods: tadmorecharcoal@1.0.0, aculinaryartillery@1.1.3, arachnidreplacer@1.0.0, arrowrecovery@1.0.0, attributerreborn@1.0.6, autowalk@1.0.4, betterbalance@2.1.3, bettersticks@1.1.0, bushmeatpemmican@0.1.3, buzzwords@1.6.0, cairns11bigcairn@1.1.0, carpet@1.0.2, cavecontent@1.0.1, chiseltools@1.10.7, craftablecompanion@1.0.0, hqzlights@1.1.1, geodesandgemstones@1.1.1, geoaddons@1.3.3, haybales@1.1.2, hideandfabric@1.3.0, instanddrifterdrops@1.1.0, lowershield@1.0.0, millwright@1.1.4, palisademod@1.1.0, pieontheshelf@1.0.0, TA_plainsandvalleys@1.0.5, plantmat@1.7.2, primitivesurvival@3.4.9, qptech@1.14.4, repairablelocust@1.2.0, rpgitemrarityreborn@1.0.5, salty@1.0.1, she1fish@1.2.0, shepherdmod@1.0.2, spidersilk@1.2.2, spyglass@0.5.1, temporal_gears_stack@1.0.0, upgradeablelocust@1.0.1, game@1.19.5, warmerclothing@1.0.0, alchemy@1.6.25, ancienttools@1.5.12, animalcages@3.0.2, beehivekiln@1.5.1, betterfirepit@1.1.4, blacksmithenhancements@1.0.5, canjewelry@0.2.18, chickenfeed@1.1.1, clockmakergoggles@1.1.0, clrd@1.0.0, commonlib@2.3.7, earlychiseling@1.0.1, expandedfoods@1.6.8, farmlanddropssoil@1.4.0, freedomunits@1.1.3, GuibibiQOLS@1.0.2, sailboat@1.3.0, knapster@2.9.3, mio@0.9.5, meteoricexpansion@1.2.5, pigfeed@1.0.2, primitivetools@1.4.1, prospecttogether@1.3.0, simplecloth@1.0.2, stepup@1.2.0, stonebakeoven@1.1.3, stonerailings@1.2.1, storageoptions@1.0.2, survivalnutrition@1.0.0, th3dungeon@0.2.1, thecritterpack@0.9.1, vmetp@1.1.1, creative@1.19.5, survival@1.19.5, wildfarmingrevival@1.1.8, woodstain@1.0.1, ageofconfession@1.3.1, metalrecovery@0.1.19-pre.1, buzzybees@1.0.1, cavebeacons@1.0.8, em@2.5.1, RedDyeFromBerries@1.1.1, stonequarry@3.2.1, wattleworld@1.0.1, bricklayers@2.5.1
System.NullReferenceException: Object reference not set to an instance of an object.
at attributer.src.CollectibleObjectPatch.GetHeldItemInfo(CollectibleObject __instance, ItemSlot inSlot, StringBuilder dsc, IWorldAccessor world, Boolean withDebugInfo) in C:\Users\andy-\Documents\GitHub\VS-Attributer\mod-src\patch\CollectibleObjectPatch.cs:line 33
at Vintagestory.API.Common.CollectibleObject.GetHeldItemInfo_Patch5(CollectibleObject this, ItemSlot inSlot, StringBuilder dsc, IWorldAccessor world, Boolean withDebugInfo)
at Vintagestory.API.Common.ItemStack.GetDescription(IWorldAccessor world, ItemSlot inSlot, Boolean debug) in VintagestoryApi\Common\Collectible\ItemStack.cs:line 401
at Vintagestory.Client.NoObf.HudMouseTools.OnRequireInfoText(ItemSlot slot) in VintagestoryLib\Client\Systems\Gui\Huds\HudMouseTools.cs:line 167
at Vintagestory.API.Client.GuiElementItemstackInfo.AsyncRecompose() in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Text\GuiElementItemstackInfo.cs:line 142
at Vintagestory.API.Client.GuiElementItemstackInfo.SetSourceSlot(ItemSlot nowSlot, Boolean forceRecompose) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Text\GuiElementItemstackInfo.cs:line 252
at Vintagestory.Client.NoObf.HudMouseTools.OnMouseEnterSlot(ItemSlot slot) in VintagestoryLib\Client\Systems\Gui\Huds\HudMouseTools.cs:line 208
at Vintagestory.Client.NoObf.ClientEventManager.TriggerOnMouseEnterSlot(ClientMain game, ItemSlot slot) in VintagestoryLib\Client\Util\ClientEventManager.cs:line 514
at Vintagestory.API.Client.GuiElementItemSlotGridBase.OnMouseMove(ICoreClientAPI api, MouseEvent args) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Inventory\GuiElementItemSlotGridBase.cs:line 809
at Vintagestory.API.Client.GuiComposer.OnMouseMove(MouseEvent mouse) in VintagestoryApi\Client\UI\GuiComposer.cs:line 512
at Vintagestory.API.Client.GuiDialog.OnMouseMove(MouseEvent args) in VintagestoryApi\Client\UI\Dialog\GuiDialog.cs:line 608
at Vintagestory.Client.NoObf.GuiManager.OnMouseMove(MouseEvent args) in VintagestoryLib\Client\Systems\Gui\GuiManager.cs:line 433
at Vintagestory.Client.NoObf.ClientMain.OnMouseMove_Patch0(ClientMain this, MouseEvent args)
at Vintagestory.Client.NoObf.ClientPlatformWindows.UpdateMousePosition() in VintagestoryLib\Client\ClientPlatform\Input.cs:line 111
at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame(FrameEventArgs e) in VintagestoryLib\Client\ClientPlatform\GameWindow.cs:line 88
at OpenTK.Windowing.Desktop.GameWindow.Run()
at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs) in VintagestoryLib\Client\ClientProgram.cs:line 324
at Vintagestory.Client.ClientProgram.<>c__DisplayClass9_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 128
at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 93

💬 misterandydandyAuthor, Mar 21st at 3:14 PM

QuantumAnomaly Okay I'll take a look on the weekend I don't have the source files on this laptop.

there are couple of things I want to change.

also thanks for letting me know.

💬 QuantumAnomaly, Mar 20th at 7:07 PM

Is this strictly percentage based? I use 200% durability on my world so i dont want to lose durability on common items. (EDIT - Yes, and durability is saved, however if you get a better item by dropping a crafted one you'll need to repair it because the current durability wont change, just the max does.)

Additionally, you might want to round off your adjustments.  Wolf helmet (from hide and fabirc) went from .8 hp protection to .96000004 hp protection (upgraded to rare).  I wouldnt float that variable, give it a floor or some kinda rounding, just to save screen realestate and prevent future bugs.  .96 is prolly fine.

 

Also bow bonus when lolool  Got a legendary bow, only gets durability XD.  Awesome mod

💬 misterandydandyAuthor, Mar 17th at 7:15 PM

Lohn your most welcome. 

someone asked for it to be fixed on discord.

💬 Lohn, Mar 17th at 5:43 PM

Thank you so much for updating this! I first used this last year and really enjoyed it for my 200%+ scaled difficulty worlds (which I just happened to start on 1.19.4 yesterday) so this came at perfect timing! :)

(edit comment delete)