Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CR] figure out "dynamic" eye encumbrance for eyewear #65131

Closed
3 of 5 tasks
qoreQyaS opened this issue Apr 16, 2023 · 1 comment
Closed
3 of 5 tasks

[CR] figure out "dynamic" eye encumbrance for eyewear #65131

qoreQyaS opened this issue Apr 16, 2023 · 1 comment
Labels
stale Closed for lack of activity, but still valid. <Suggestion / Discussion> Talk it out before implementing

Comments

@qoreQyaS
Copy link
Contributor

qoreQyaS commented Apr 16, 2023

Is your feature request related to a problem? Please describe.

TL/DR: what existing data (from the json files) is necessary to calculate eye encumbrance for eyewear?
this is meant as some sort of brainstorming, so please, blast out your ideas.

non-TL/DR:
i was looking for the least encumbering way to get glare protection as a vision unimpaired PC.
pair of sunglasses have eye encumbrance 1.
pair of bifocal sunglasses have no eye encumbrance and have no downside for a PC who is neither nearsighted nor farsighted.
this led to #65018: i tried to remove eye encumbrance from sunglasses which doesn't seem to reflect reality.
i found out about #57243 which introduced a weight dependent system for head encumbrance for helmets. this seems like something worthwhile implementing for exclusive eyewear.
my try to summarize how to system forks for headwear is in #65018 (comment)

Solution you would like.

general/decisions

  1. decide which existing json data should be taken into consideration for the calculation of encumbrance for items which cover eyes exclusively
    • weight
    • volume
    • flags
    • qualities
    • materials
  2. some items have flag FLASH_PROTECTION and quality [ "GLARE" : "x" ] what should happen here? should those be mutually exclusive for the encumbrance calculation?

coding

  1. unhardcode get the encumbrance_modifiers by adding the data to a new list somewhere near
    "encumbrance_per_weight": [
    and by modifiying
    std::tuple<encumbrance_modifier_type, int> armor_portion_data::convert_descriptor_to_val(
    to use these
  2. add the ability to map flags to encumbrance_modifiers. (i.e. flag SUN_GLASSES adds a FLAT:1 ), having a table in body_parts.json with the corresponging values.
  3. same goes for qualities (i.e. quality GLARE adds a FLAT:10 per its value. so [ "GLARE", 1 ] adds 10, [ "GLARE", 2 ] adds 20 and so on)

data assembly

  • get data for encumbrance_per_weight table.
  • get data for encumbrance_modifiers table.
    • "special" values like IMBALANCED or WELL_SUPPORTED for helmets which have no meaning otherwise ingame so far.
    • FLAGS to encumbrance_modifiers
    • qualities to encumbrance_modifiers

Describe alternatives you have considered.

  • tidy up the eye encumbrance data for eyewear in the json files.
  • add penalties for the non vision impaired PCs which use glasses/lenses for those who are. this will be done separately.

Additional context

No response

@github-actions
Copy link
Contributor

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not bump or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered.

@github-actions github-actions bot added the stale Closed for lack of activity, but still valid. label May 17, 2023
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Jun 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stale Closed for lack of activity, but still valid. <Suggestion / Discussion> Talk it out before implementing
Projects
None yet
Development

No branches or pull requests

1 participant