[crossfire] Shop prices overhaul
Mark Wedel
mwedel at sonic.net
Tue Dec 2 01:48:31 CST 2014
On 11/30/14 11:00 AM, Kevin Zheng wrote:
> Hi all,
>
> At the moment, Crossfire's shops aren't particularly useful. For
> medium-level players, prices seem unreasonable, while new players can't
> afford to buy from shops at all. Old players with high charisma and
> bargaining, on the other hand, don't notice a huge discrepancy.
The shops (and economy) in crossfire have many problems, many have been
discussed before, so I won't restate them, but I think any change is just going
to be one piece of the puzzle.
>
> The attached patch attempts to fix some of these issues:
>
> Charisma and bargaining now only affect the shop buy price, with
> multipliers ranging from 2x for new players to 0.5x for very advanced
> players. This is consistent with rogue-style shopkeeper greed but still
> better than the existing situation. Bargaining is now significantly less
> useful; the hope is that in the near future it is replaced with
> interactive "haggling".
If you are going to reduce the importance of bargaining, is there any reason
to just not remove it all together then? The passive skills were always a
little odd (passive skills being those that the player just automatically uses
without any effort, and likewise, can't really focus much on improving them).
I'm not quite sure how interactive haggling will work out - it will seem like
someone would pretty quickly figure out how it works, write a plugin to the
client to just do the work and get maximum value, at which point, one asks why
not just skip all those steps and just give the player the best price to start with.
I do think that having stats & skills affect buy price is a good improvement -
high level players tend to have more money than they can do anything with and
never buy anything, so therefor, don't really see the advantage.
>
> The sell price is clamped down to 0.5x base price, subject to additional
> shop specialization and greed. This sell price is mostly better than the
> existing prices, and at the very least prevents high level players from
> buying and selling for a profit.
One thing to be absolute sure to check is that it is never possible for a
character to sell something for more than they can buy it (eg, buy for 100, sell
for 101), because that clearly breaks the game. In fact, even doing it equal
would probably break the game.
For those not looking at the patch, it appears to be that the character will
get best price if their charisma is 30 or they have maximum bargaining level (or
some combination in between (level 20 bargaining and 25 charisma would appear to
do it also)
I'd personally rather that instad of shop_buy_multiplier() having a hardcoded
formula that is used, that is instead stored in the stat_bonus file, and if not
set there, perhaps fill in the array based on that formula.
I'm not sure how many people actually use the stat_bonus file, but all the
code is there so it is a pretty simple matter to just keep using it - at also
lets player admins adjust things more easily (with the formula as is, it is
pretty much impossible to adjust things - at least with the old compiled in
arrays, one could change those to get different behavior)
Otherwise, looks good to me.
More information about the crossfire
mailing list