GithubHelp home page GithubHelp logo

Comments (6)

Hurleveur avatar Hurleveur commented on June 12, 2024 2

I think we dont need to go in details about it, a ship being modified by multiple plugins is unlikely anyway (and if one overwrites the other we can still say both plugins affected it)

We could just say "affected by plugin X" for all plugins that mod it (or just the last one), code-wise that'd be easy and player-wise its all we need?

Edit: for clarity, plugins will overwrite things if they dont specify "add"

from endless-sky.

Amazinite avatar Amazinite commented on June 12, 2024 1

If a plugin wants to identify its own content then that plugin could add a line to the descriptions of its content, but I don't think that this should be something that is forced upon all content in the game. If someone is reporting a bug, they should have an understanding of what content is added by the plugins they have installed. If someone suspects that the bug is vanilla, they should attempt to reproduce it on a vanilla save.

Information about planets etc. could be included in the bottom of the planet description panels.
This planet comes from plugin XYZ

Planet descriptions are limited in how long they can be before they overflow the UI. Forcefully adding a new line to every plugin planet description could very easily overflow the UI for existing plugins, and would reduce the amount of description space that's available for future plugins.

from endless-sky.

Hecter94 avatar Hecter94 commented on June 12, 2024

This could be challenging given that ships/outfits/missions, etc., can be edited/added to by multiple different plugins.

Say there's a vanilla ship that gets overwritten by one plugin and then has its stats edited by another plugin; what should the tooltip say? It's a vanilla ship but replaced by a plugin one, with the stats from another plugin.
Remember that the change from either plugin could be as small as a tweak to the sprite or as large as a total replacement.

You'd need to differentiate between what plugins have edited something and how much each has changed and display that in a way that makes sense to the user.

Otherwise, you get a situation where you're displaying incorrect information to the user, like saying that a vanilla ship was added by a plugin when, in reality, the plugin just edited some of its stats.
Or saying a ship is vanilla when it was completely overwritten by a different ship from a plugin.

from endless-sky.

xX-Dillinger-Xx avatar xX-Dillinger-Xx commented on June 12, 2024

Maybe just for unique items then. IDK Not "unique" 1 but as in unique from a plugin.
If it's too challenging then don't worry too much about it. I was just making an observation that might have a solution.

from endless-sky.

xX-Dillinger-Xx avatar xX-Dillinger-Xx commented on June 12, 2024

I have question but first lets use set up an example.
Vanilla Falcon

  • plugin 1 increases shields
  • plugin 2 adds extra guns
  • both plugins are installed

What will the player have available in game?

  • A - vanilla falcon
  • B - falcon with more shields
  • C - falcon with more guns
  • D - falcon with more shields and guns
  • E - ( A, B, and C )

How does the game engine determine which version of the falcon to use?

Could the game engine compare everything available and tag only the items that do not match what's in vanilla? Then only the tagged items would get a tool tip. Would the work load be too high and cause performance issues? Sorry, I'm not an experienced coder.

from endless-sky.

xX-Dillinger-Xx avatar xX-Dillinger-Xx commented on June 12, 2024

Edit: for clarity, plugins will overwrite things if they don't specify "add"
Thanks

If I understand this correctly, plugins will overwrite vanilla, but what order do plugins get loaded? I would just like to understand.

code-wise that'd be easy and player-wise its all we need?

Now, that's the answer I was hoping for.

from endless-sky.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.