@jeffk42 wrote:Or maybe there's a rogue dev on the team that just wants to watch the world burn, cleverly obfuscating his cheese-hoarding algorithm so that it passes peer review, giggling to himself in the darkness of his corner cubicle.... 😕mileywink:
That was worth one XP all by itself! 😕mileyvery-happy:
@jeffk42 wrote:
@etamni103 wrote:
(but it would be possible without being overly complicated, using a simple weighting algorithm).
The "simple weighting algorithm" would become far less simple when you have to read the user's mind. How do you know the user is looking for a couch, or merely the lumber needed to build one? How do you know the user is looking for a table that he needs, and not a lock or a dozer part because he's more interested in expanding at the moment than building? Or do you just weight everything you think the user could possibly need? I currently have eight sets of building requirements in my city, with between 3 and 6 item requirements each. A "simple weighting algorithm" would have to weight each of those items, as well as the components used to make them, plus dozer parts and storage parts. That's probably close to everything available in HQ, making the weighting meaningless and the algorithm nothing more than a waste of CPU cycles.
To use a counter-example, would it be possible to make a "simple weighting algorithm" that helps the player find what he/she is looking for? Of course it would be. To keep it simple, let's say that the player has one building needing to be upgraded, and one ship that needs its order fulfilled. The player hasn't built an airport yet. The upgrade needs 8 nails, 3 logs, and 2 meat patties. The ship needs 4 measuring tape, 3 metal, and 2 hamburgers. For each item in the list, the game (or the server) would add +1 to the weight of that item, and +1 to each ingredient in that item. Additionally it would note that the player had not fully expanded the storage or the land, and might add some value to the weight of the expansion items as well. We'd end up with a weighted list that looks something like this:
metal +5
wood +2
plastic +2
seeds +1
textiles +1
animal feed +2
nails +1
measuring tape +1
cooking utensils +1
flour bag +1
cream +1
meat patties +2
bread roll +1
burgers +1
BBQ grill +1
storage cameras +10
storage locks +10
storage bars +10
dozer exhaust +10
dozer gear +10
dozer blade +10
Note that I have not given any weight to the quantity of each item needed. Of course, at this point it doesn't look simple any longer, but the game could calculate this faster than a human blinks. The "simple weighting algorithm" would do it's random calculation of what to show in the Global HQ, giving extra chances to the items shown in the list, based on the "weight" assigned the items. Once it selects the item types to show, it would select randomly from among all the advertised sales of those items that hadn't been sold yet, and place them on the shelf. In order to use the process to weight against the items being shown, it would do the same thing, but intead of weighting in extra chances of an item showing up, it would reduce those chances for the same items. Presto, artificial scarcity!
Having said all that, I still think the scarcity comes from everybody getting ships and planes that want the same items, around the same time. When that happens, people stop selling those items.
[edit 4/12/2015] I've changed my position on this and now believe they are using an algorithm of some kind to weight against what the player needs. Please see my newer posts below.
If you feel that the answer provided here resolves your concern, please feel free to click accept solution as this may help others with similar issues obtain resolution. XP is greatly appreciated but not required.