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

🚀 Feature request: Use proper data for upgrades #264

Open
2 tasks done
Lenni009 opened this issue Aug 7, 2024 · 2 comments
Open
2 tasks done

🚀 Feature request: Use proper data for upgrades #264

Lenni009 opened this issue Aug 7, 2024 · 2 comments
Labels
idea This is for feature requests that need some work/investigation before work can begin

Comments

@Lenni009
Copy link
Member

Lenni009 commented Aug 7, 2024

🔖 Describe the solution you'd like

Upgrades are currently a bit confusing. This probably stems from the fact they they can be in "Module" or "Upgrade" form. The "Modules" have the item data in the game files, while the "Upgrades" only have template data. This is already implemented with the Neutron Cannon upgrades, but not with other upgrades, for example Mining Beam.

My solution would be to combine these two:

  • Use available item data from the Module
  • Add the stats from the Upgrade
  • The final item page would be for the Module, but that is more easily understood than the Upgrade I guess.

This is primarily intended for the web app for now, but transferring this to mobile should be trivial, the generated data source is the same after all.
I'm using the X-Class Mining Beam Upgrade as an example here, your script would hopefully handle everything on its own.

  • Look through NMS_REALITY_GCPRODUCTTABLE.EXML for upgrades
  • Take the following data from this file:
    • NameLower ("Suspicious Mining Beam Module")
    • Icon (TEXTURES/UI/FRONTEND/ICONS/U4PRODUCTS/PROCTECH/PROCTECH.X.LASER.DDS)
    • Subtitle ("Banned Mining Beam Upgrade")
    • Description ("A black-market modification for the Mining Beam. Use FE_ALT1 to begin upgrade installation process.
      The module is flexible, and exact upgrade statistics are unknown until installation is complete.
      Potential upgrades include: power output, heat toleration and fuel efficiency.")
    • Category, Type, etc. for the dev details
  • Search for DeploysInto property (UP_LASERX)
  • Look for this ID in NMS_REALITY_GCPROCEDURALTECHNOLOGYTABLE.EXML
  • Display upgrade stats from this file

Here's a mockup for how it would look on the web Not too crazy, it's basically just the name, subtitle and description changed.
grafik

Also note that the item now has dev details from the module item.

Implementing this would close #48 and #214.

🩹 Describe alternatives you've considered

No response

👀 Have you checked if this bug report has been created already?

  • I checked and couldn't find similar issue

🏢 Have you read the Code of Conduct?

Are you willing to submit PR?

None

@Lenni009 Lenni009 added the idea This is for feature requests that need some work/investigation before work can begin label Aug 7, 2024
@Lenni009
Copy link
Member Author

Lenni009 commented Aug 7, 2024

I expect this to also mess with URLs, so the API needs to be adjusted accordingly.

See AssistantNMS/WebApi#1

@Lenni009
Copy link
Member Author

To add to this: Sentinel Exosuit Fragment and Sentinel Weapons Shard are duplicated in the app.

One of them has dev details, the other does not.

Maybe it would be good to keep them as separate items, with their respective name, icon, description, etc., but link to each other.
So in the case of the Sentinel Exosuit Fragment, the module would have a link "Deploys into: Forbidden Exosuit Module", with a chip styling similar to how cooking and refining products are styled. The Forbidden Exosuit Module would have a link "Deployed from: Sentinel Exosuit Fragment".

As for the name of the Forbidden Exosuit Module (and other upgrades), use the subtitle. Another example would be "A-Class %NAME% Upgrade" (taken from the Subtitle in the PROCEDURALTECHNOLOGYTABLE), which is deployed from "Neutron Cannon Module" (taken from the Name in the PRODUCTTABLE).

That way you would still have two items, both with proper data, and linked to each other. Then there should hopefully be no more confusion and no lost data.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
idea This is for feature requests that need some work/investigation before work can begin
Projects
None yet
Development

No branches or pull requests

1 participant