ItemVersion

ItemVersion

216k Downloads

Community vs Canonical Mode (or, why does this item have the wrong expansion?)

t-mart opened this issue ยท 2 comments

commented

What version of ItemVersion are you running?

N/A

What is your issue?

As commonly commented, people expect ItemVersion to report the first version of the game in which an item is accessible, not when it was introduced in the game data. For example, see #24.

To implement this, we'll need a few things:

  • An options UI with mode switching between "Introduced" (reports when an item was introduced to the game) and "Accessible" (reports when an item became accessible to players). By default, I think it should be set to Accessible because it is less surprising.

  • A Lua table that maps items to versions that have different Accessible-mode versions. E.g.:

    overrides = {
      [168586] = {major=9, minor=0, patch=0, build=0}
    }

    Contributors should be able to easily edit this file (in contrast to the compressed Data.lua file).

    As a convention, the build number could be set to 0 to indicate this is a symbolic version. (Build numbers are usually strictly monotonically increasing, and a build 0 seems to never have existed, so there will be no conflict)

  • New logic during tooltip lookup (pseudocode):

    if accessible mode is set:
      override_version = override_db[item_id]
      if override_version:
        return override_version
    return db[item id]
    
  • Documentation for the new feature

Any comments are appreciated.

Can you provide any screenshots of what you describe?

No response

commented

I think the names should be "Community" vs "Canonical" versioning.

commented

Implemented in ItemVersion-2022.47.1.