Ambrosia Garden Archive
    • Need help with outfit availability and visibility


      I want several outfits, A1, A2, …, An, and B, with the following properties:

      Each outfit Ak can never be bought or sold.
      Outfit B can be bought or sold anytime.
      Each outfit Ak can be seen in the outfitter if and only if the player has both outfit Ak and outfit B.

      I am pretty sure this can't be done "trivially". I want a solution that is simple to implement and uses few resources. Let's say a maximum of 3 additional resources. In particular, I will not accept a solution that involves a crön, nor a solution that involves a duplicate outfit Ck for each Ak. A mission is allowable if and only if it is offered from the BBS, so the player actively chooses to start it.

    • (as NebuchadnezzaR)

      Setting the Availability of Ak to "Okkk & Obbb" should solve this for you completely, if I am understanding correctly. Thusly it checks if you own both said item itself and item B when drawing the outfitter. Non-purchasability is set elsewhere, single flag in the outfit.

      /edit
      I feel like:

      0x0100 Don't show this item unless the player meets the Require bits, or already has
      at least one of it.

      mixed with Availability should work, but the more that I think about it, i'm not sure if they dissapear at the correct times.

      This post has been edited by byteme : 09 March 2009 - 09:46 AM

    • The problem is the "or" in "don't show unless requirements met or the player already has one". That little conjunction makes it so each Ak outfit is visible whenever you have one, even if you don't meet the availability, if set up as you describe.

      This post has been edited by Qaanol : 09 March 2009 - 11:12 AM

    • This is a tough one. I'm thinking along the lines of setting the tech level high enough that it doesn't show except on planets where you'd like it to with special tech. I believe this is how the Vell-os outfits are designed. The problem that I see with that is that you'd have to change the special tech of the spob by changing the spob or syst resource when a player has both outfits. It would require a duplicate system that would show if both outfits set two mutually needed bits. I don't particularily like that solution, and it's far from elegant or simple.

      Could you give me something of an example of what this is supposed to do? It might help me to know what you're trying to implement this to do.

    • The A's are things you don't know about unless you notice them, and B is a detector.

    • How instant does the appearance of these things need to be?

    • So, if I get this straight, the As are hidden outfits that you can ID when you get the detector? Interesting idea... If you can't sell the outfits, is the detector a lot of good?

      I do actually have one really odd idea that might need some tweaking. There is a flag for "hide other outfits of equal display weight." You could give the hidden outfits a specific display weight, then actually give an outfit that would in essence be a reverse outfit - an invisible outfit that would hide the other outfits. If you buy the detector, it could set an expression bit to remove the invisible outfit that hides the others. It would have to set the "on purchase" bit flag, and then if you sold the detector, it would have reset the expression to give back the "no detector detected" outfit. I am not sure if this would really work in practice as well as principle, but it might be worth a shot. The thing that I wouldn't be sure if it could do is that I don't know if you set the hidden outfit to a higher tech level but same display weight as the show/not shown outfits if it would still hide the other outfits. Maybe you could just set the hider outfit to say something like "mass discrepancy" or something to that effect?

    • That is perfect, krugeruwsp. Thank you.

    • That's what the Polaris cloaked weapons use (i.e. the "unused" new invisible outfit); the non-cloaked versions (i.e. the stuff to hide) still appear if you have them.

    • You'll have to let me know if this actually works. I have some ideas that could use this very idea.