Plan for improved items

From OHRRPGCE-Wiki
Jump to navigation Jump to search

There are many feature requests against items. There's a discussion on CP here. Here's a proposal covering many of them. It perhaps tries too hard to be flexible.

Replacing the ITM lump with a new RELOAD lump items.reld is the first part of this plan.

Current state of the items menu:

Itemsmenu.png

Equipment options[edit]

Move the existing "Equippable as", "Stat Bonuses", "Equipment Bits", "Who can equip?" and "is equipped tag" settings into a Equipment data (or Equipment entries) subsection. Let the user add zero or more (unlimited) of these entries to each item, each of which contains:

  • One or more "Only if TAG set" conditions
  • "Equippable as" bitsets (eg. weapon)
  • "Who can equip" bitsets
  • Stat bonuses
  • Elemental resists
  • "Set tag when equipped"
  • (New feature:) "Disable equip slots" bitsets (e.g. a two-hand weapon disables using the Shield/Off-hand equip slot, which becomes greyed out)

For example this allows different stat bonuses/resists or setting different tags when used by different heroes, or when equipped in different slots (a bit obscure, but something that's been requested, e.g. main weapon and off-hand weapon), or different equippability by different heroes (e.g. whether a hero can use two-handed weapons with one hand).

Adding tag conditions and tag-set options throughout the engine is also powerful.

In-game, if more than one entry is applicable (enabled by tags and affects the same hero and equip slot) the first entry is used.

Out of battle use options[edit]

Replace "Teach Spell", "When used out of battle", "Unlimited Use/One time use/etc". Instead let users add zero or more (unlimited) Out of battle use Entries to each item. Each has options:

  • One or more "Only if TAG set"
  • Consumed by use/Unlimited use
  • Effect, one of:
    • Teach Spell
    • Use attack/spell
    • Show textbox
    • Trigger script
    • Set tag

Also, give each item a separate "Cannot be Sold/Dropped" bitset.

Improved Autosort[edit]

Autosorting in the inventory screen is currently very crude. It just puts all of the items that are usable outside of battle at the top of the list, and everything else below that, with empty slots at the bottom.

A better scheme would be to give items an autosort key number. The game author could set specific values for specific items, with higher numbers sorted higher on the inventory screen. The default could be something like 1 for most items, and 10 for items usable outside of battle.

The sort should be a stable-sort, so items with equal autosort-keys would remain in the same relative order that the game player had arranged them.

Inventory Overflow Handling[edit]

When the inventory is full, and the player aquires a new item, there should be a user-interface for choosing an item to discard to make room for the new item.

See also[edit]

  • items.reld
  • Plan for increasing item limit (specifically phase 2)
  • Bug #130 - Tags involved in who can equip what items
  • Bug #230 - Level limit for equipment
  • Bug #495 - Individual item lists for heroes
  • Bug #503 - Item bitset to disable unequipping
  • Bug #505 - Equipment equippable in more than one slot
  • Bug #513 - Item pictures
  • Bug #522 - Customization of max 'grouping' of items
  • Bug #535 - Item plotscript commands
  • Bug #545 - Item Triggers