massif-press / lancer-data

LANCER JSON Data
30 stars 29 forks source link

feat(data): add license_id to tie mechequipment to license #174

Closed msprijatelj closed 2 years ago

msprijatelj commented 2 years ago

Description

Due to the growing popularity of homebrew LCPs, homebrew users and authors are inevitably run into license name collisions. This PR aims to introduce a new data field, license_id, to ILicensedItemData, which will refer back to the ID of the frame for a given license. This will enable homebrew creators to keep their content from overlapping with other creators, since LCP IDs allow for more uniqueness than just names.

This pattern will also continue to enable homebrew items made for an existing license (e.g. a new system for the Blackbeard), whereas a pattern of matching items based upon "Brew" would prevent such additions (e.g. if Blackbeard's brew is "Core", its license would only include LicensedItems from the same brew).

To implement this in COMP/CON proper, this license_id will become the primary matching ID for licenses; if the field does not exist, COMP/CON will fall back to the v2.3.7a logic of matching License Name to Frame Name (and potentially License Source to Frame Source; see https://github.com/massif-press/compcon/pull/1982).

Issue Number

Will help enable a robust solution for https://github.com/massif-press/compcon/issues/1981