Ensure that unique items stay unique!
1e0791d7 — Hristos N. Triantafillou 5 months ago
Code cleanup, use the API to read and save cells, players
5a45ef9a — Hristos N. Triantafillou 5 months ago
Use a validator to beat a rare race condition
e3fefbe1 — Hristos N. Triantafillou 5 months ago
Added several more uniques from the UESP Unique Armor page

clone

read-only
https://git.sr.ht/~hristoast/tes3mp-uniqueitems
read/write
git@git.sr.ht:~hristoast/tes3mp-uniqueitems

You can also use your local clone with git send-email.

TES3MP-UniqueItems

Ensure that unique items stay unique!

Requires DataManager and LuaFileSystem (included in this repo)!

Unique items are now limited to one at a time. Any extras that happen to be found or spawned in will be zapped out of existence.

Players that haven't logged in for a certain amount of time (30 days by default) will lose any unique items they are holding.

Usage

  1. Place this repository into your CoreScripts/scripts/custom/ directory.

  2. Place lib/lfs.so into your CoreScripts/lib directory.

  3. Add the following to CoreScripts/scripts/customScripts.lua:

    require("custom/UniqueItems/main")

Options

  • announcePickups

Boolean. Announce to all players when a unique item is picked up. Default: true

  • dbUpdateInterval

Integer. The number of real world hours between database updates. Set to 0 to disable. Default: 24

  • deathDrop

Boolean. Set this to true if you have another script that causes items to be dropped on player death. Default: false

  • deathDropMsg

String. The message that's displayed when a player dies and drops their items. Default: "You've lost your held unique items!"

  • dupeItemMsg

String. The message that's displayed when a player picks up an already held unique. Default: "The item you found has disintegrated in your hands!"

  • idleDaysLimit

Integer. The number of days before a player is considered idle and their held uniques removed. Set to 0 to disable. Default: 30

  • rare_item_ids

Table of strings. The RefId of any item that's to be considered unique.

The below links were used as a reference for the default list: