Ambrosia Garden Archive
    • Simulating Ammo Supplies


      A question and/or challenge

      In a long campaign, a supply dump could not be expected to carry the necessary ammunition to alway completely rearm a fleet. Although a captain might like to completely fill up his hector cannon with birdseed pellets, the outpost he's defending may only be carrying 24 in stock.

      Is it possible to implement a situation like this in EVN?

      Specifically, I would like to see an outfitter only be able to sell the player a random number of munitions, ranging between a high and low. The number available should change, ideally every few days. The player could be expected to have some ammo already, but wants to add a few more, even if it doesn't fill up the weapon's capacity.

      On another note, is it possible to have an inhabited spob that won't give you the option to recharge, as if simulating an outpost with no excess energy?

      Thanks,

      Werhner

    • Two spöbs on top of each other with a crön that undestroys one and destroys the other when it starts, and vice versa when it ends. Number them above 4 and you won't be able to select the one that's nonextant. A random chance on the crön and maybe a few days holdoff should suit you. That'll cover the recharge part anyway. As for the ammo...well you could have one of the spöbs be lower-tech, to simulate a "depleted supplies" state and just not have any ammo at all for certain weapons... or you could do something really complex with G/Dxxx-ing type-27 outfits.

    • I can see a way to to this with outfits. But you are going to have a hard time indicating how many the player can buy.

      Normally, a quantity number represent what the player has on his ship already. In this case, it would be representing how many are on hand at the station. Without clear labeling, this could be confusing.

      However, if you can live with that, there are a couple ways to do it.

      You have crons set up to give random ammounts of invisible placeholder ammo to the player. Every day, it deletes them all and re-gives a random number. (there are a couple ways to do this)

      This placeholder is only visible at particular stations. When at that station, you'd have to set it up so that the player can't buy the normal ammo outfit. Instead, he has to interact with the placeholder. Make its availability dependant on itself. And when purchased it actually deducts from itself and grants a real ammo outfit. Make it so you can't sell the placeholder, and selling your real ammo could re-plenish the station.

      I'll see if I can't whip up a demo.

    • Better yet, make the placeholder entirely invisible.

      Make the ammo buyable only if you have Oxxx where xxx is the ID of the placeholder outfit, and on purchasing the ammo remove Dxxx the placeholder (it might have to Gyyy itself depending on bugs.)

    • But then you can't see how many you can purchase, and you will have purchase limits on regular planets, too.

    • Ok, this problem turned out somewhat more complicated then I originaly anticipated, but here is a possible solution.

      First off, it became more complex when the limited quantity item has mass. This is because the placeholder items have to have mass too, otherwise there are no controls to limit overloading the ship. Seeing as the invisible placeholders have mass, then they need to be paired with another invisible item to cancel it out. Which of course, complicates the random generation scheme.

      Secondly, I am not using any missions to be run when taking off/landing/entering outfitter. This is to limit collision with other potential hacks. Nor am I doing any dateposting, for the same reason. I tried to keep the basic outfit item as untouched as possible, but ultimately has to add functions to the OnSell field. It should be possible to not touch it at all, but with a large increase in complexity - mostly to prevent abuse. (It is hard to check requirements for being able to sell an item using the "sell" button.)

      Third, it is possible to make the limited quantity items cost different ammounts, however this makes for some problems.
      Say you have a basic missile cost 1,000 credits normally, but want them to cost 2,000 at the limited supply area. You can do this easy enough, but the player will only be able to sell them for 1,000 no mater where they are. It is possible to have the player get more for it in different places, but probably increases complexity more than it's worth. Not to mention that the player will turn them into a comodity item to be bought low and sold high.

      At any rate, here is a first look. Limited Quantity (16 KB)
      In this example, you can buy missiles at Earth in unlimited quantities - as many as you can hold.
      Then there is a Station that has between 2-23 missiles.
      And also an Outpost 1 system away that has 2-13 missiles.
      So the same item can be different varieties of scarceness. You'll need 1 extra outfit for each difference in quantity.
      These quanties are changed every 4 days.
      It is important to note that using the current method, you'll want to keep places that share the share the same randomness of an item further apart than the regeneration time (4 days in this example) or it will look like they share inventories (this might be usefull for stations in the same system).
      And you will not want the unlimited quantity areas near the limited areas. This is because when you sell off a missile, it adds one to the limited quantity inventory, so you can buy and sell at a particular place. There is potential for exploit if any limited ares are near an unlimited area.
      For simplicity, I did not seperate the areas by enough travel time in the plug.

      Workarounds to this are to regenerate supplies every day, or instantly regenerate when landing on specific spobs, or simply keep areas far enough apart.

      For transparency, I have made it so you can see the invisible placeholder items in the player info box.

      This post has been edited by Desprez : 30 August 2006 - 11:24 PM